/guyton92

Primary LanguageC++

This is a modular implementation of the Guyton 1992 model, based on the
original (monolithic) Fortran 77 code and a faithful translation of this
code into C++ by Thibault Grosse.

The intention of this project is to develop a significantly more detailed
model of renal function to replace the renal block of the Guyton 1992 model.



This directory contains the following files:

  README                This file.
  Makefile              The Makefile to build a binary of the model.

  src/                  The directory containing the source of the model.
    guyton92            The main module of the Guyton 1992 model.
    guyton92_step       A module for simulating time-steps of the model.
    params              A module that defines a struct of all model parameters.
    read_params         A module for reading parameter values from files.
    read_vars           A module for reading state variable values from files.
    read_exp            A module for processing model experiments.
    debug               Support for debugging and instrumentation of the model.
    utils               Utility functions for performing calculations.
    sensitivity         A sensitivity analyser for individual modules.

    params.sh           A script to build the params module.
    params.lst          The list of all model parameters.
    params.val          The list of default parameter values.

    vars.sh             A script to build vars module.
    vars.lst            The list of all model state variables.
    vars.val            The list of default state variable values.

    module_renal        The renal portion of the model, in a separate module.
    module_circdyn      The circulatory dynamics portion of the model.
    module_autonom      The autonomic circulation control module.
    module_aldost       The aldosterone module.
    module_angio        The angiotensin module.
    module_anp          The atrial natriuretic peptide (ANP) module.
    module_rbc          The red blood cell (RBC) and viscosity module.
    module_o2deliv      The O2 delivery and blood flow autoregulation module.
    module_volrec       The volume receptors module.
    module_adh          The antidiuretic hormone (ADH) module.
    module_stress       The stress relaxation module.
    module_thirst       The thirst drive module.
    module_baro         The baroreceptor adaptation module.
    module_special      The special circulatory variables module.
    module_capdyn       The capillary dynamics module.
    module_puldyn       The pulmonary fluid dynamics module.
    module_electro      The electrolytes module.
    module_kidney       The replacement for the original renal module.

    model_moore94       The Moore 1994 model of renal autoregulation.

    exp_rapidreg        An experiment in rapid autoregulation.
    exp_transfuse       An experiment in transfusion and blood loss.

    filter_times        A filter to reduce the number of state notifications.
    instr_pa            A simple instrument that displays arterial pressure.
    instr_renal         An instrument that displays the renal module outputs.
    instr_vars          An instrument to display arbitrary model outputs.

    Doxyfile            The configuration file for source code documentation.
    mainpage.h          The main page of the Doxygen documentation.

  build/                The directory containing the compiled binary.
    guyton92            The binary of the model.

  doc/                  The directory containing the source code documentation.
    index.html          The main page of the documentation.

  exps/                 The directory containing model experiments.

  utils/                The directory for utilities related to the model.
    find_vars.sh        A script to find parameter and variable references.
    sens_plots.sh       A script to produce plots of module output sensitivity.



The following targets are defined in the Makefile:

  all:     Build the model binary and documentation (default target).

  model:   Build the model binary.

  docs:    Generate documentation of the model source code (using doxygen).

  clean:   Remove temporary files.

  clobber: Remove the model binary in addition to temporary files.