A Cardiovascular Simulator for Research

Computational modeling and simulation studies can facilitate the advancement of cardiovascular research by complementing experimental studies. Through computational studies, the researcher may formulate hypotheses which may be subsequently tested through experimental studies or the researcher may develop and evaluate inverse modeling algorithms for determining important cardiovascular parameters from experimental data. Experimental studies, in turn, permit the researcher to construct more accurate computational models thereby improving the researcher's understanding of the cardiovascular system and ability to devise new experimental hypotheses and inverse modeling algorithms.

We introduce here the Research CardioVascular SIMulator (RCVSIM) software in order to complement research with the experimental data sets provided by PhysioBank. The human cardiovascular model upon which RCVSIM is based includes three major components. The first component is a lumped parameter model of the pulsatile heart and circulation. The second component is a short-term regulatory system model which includes an arterial baroreflex system, a cardiopulmonary baroreflex system, and a direct neural coupling mechanism between respiration and heart rate. The final component is a model of resting physiologic perturbations which includes respiration, autoregulation of local vascular beds (exogenous disturbance to systemic arterial resistance), and higher brain center activity impinging on the autonomic nervous system (1/f exogenous disturbance to heart rate). The model is capable of generating reasonable human pulsatile hemodynamic waveforms, cardiac function and venous return curves, and beat-to-beat hemodynamic variability. RCVSIM has been previously employed in cardiovascular research by its author for the development and evaluation of system identification methods aimed at the dynamical characterization of autonomic regulatory mechanisms.

The data simulated by RCVSIM is written in a format which is identical to the experimental data sets of PhysioBank. As such, the open-source data analysis software provided by PhysioToolkit may be readily applied to the simulated data as well. The data generated by RCVSIM may be viewed as they are being calculated or any time after they have been calculated with the WAVE display system (provided by PhysioToolkit) and Gnuplot. The RCVSIM software is open-source and heavily commented so that it can be extended and modified by the cardiovascular research community. The RCVSIM software includes pre-compiled Linux binaries which may be executed at the Linux or MATLAB prompts. It should also be possible to compile the source code to create binaries that may be executed on the other platforms that support WAVE (e.g., Solaris, SunOS). (Note that MATLAB and its compiler (version 1.2) is required for compiling the source code.)

[Sample RCVSIM output]

Arterial pressure (Pa) and volume (Qa) waveforms simulated by RCVSIM during nominal conditions and following a 50% step decrease in arterial compliance (Ca). Note how Pa transiently increases at the time of the Ca step decrease in order to preclude an instantaneous change to Qa.

This directory includes RCVSIM sources, documentation, and Linux binaries; it may also be downloaded as a gzip-compressed tar archive, The RCVSIM User's Manual and Software Guide is available in HTML, PDF, PostScript, and LaTeX source formats.

Within this directory are:


  1. Mukkamala R, Cohen RJ. A forward model-based validation of cardiovascular system identification. Am J Physiol: Heart Circ Physiol 2001; 281(6):H2714-H2730.
  2. Mukkamala R, Toska K, Cohen RJ. Noninvasive identification of the total peripheral resistance baroreflex. Am J Physiol: Heart Circ Physiol 2003; 284(3):H947-H959.

Questions and Comments

If you would like help understanding, using, or downloading content, please see our Frequently Asked Questions.

If you have any comments, feedback, or particular questions regarding this page, please send them to the webmaster.

Comments and issues can also be raised on PhysioNet's GitHub page.

Updated Thursday, 20 October 2016 at 17:46 EDT

PhysioNet is supported by the National Institute of General Medical Sciences (NIGMS) and the National Institute of Biomedical Imaging and Bioengineering (NIBIB) under NIH grant number 2R01GM104987-09.