CVSim 1.0.0

File: <base>/old-content/index-orig.shtml (18,399 bytes)
<!--#set var="TITLE" value="CVSim"-->
<!--#include virtual="/head.shtml"-->

<h1 align=center>CVSim: a cardiovascular simulator</h1> <br><br>

<p>
<b>CVSim</b> is a lumped-parameter model of the human cardiovascular system
that has been developed and used for teaching quantitative physiology courses
at MIT and Harvard Medical School for over 20 years.  The current
six-compartment model presented here is implemented in Java, with computational
components in C.  The portable C code has been compiled for popular platforms,
and users of Linux (x86), Mac OS X (PPC and x86), and MS Windows (x86) should
be able to use the links below to run CVsim.

Follow the instructions in the <a href="user_manual.html">CVSim User
Manual</a> to launch CVSim.


<h3>Related Links</h3>
<ul>
<li> <a href="../rcvsim/">A Cardiovascular Simulator for Research</a>.
     <b>RCVSIM</b> is based on an earlier version of the CVSim model, and
     was developed using MATLAB.  MATLAB is not required to run RCVSIM
     under Linux.  The output of RCVSIM can be read and manipulated further
     using the <a href="../wfdb.shtml">WFDB</a> software package.
<li> <a href="../xcvsim/">XCVSim</a>.  Sources and Linux binaries for an
     even older implementation of CVSim for the X11 Window System.
</ul>

<!--

<a href="http://penelope.mit.edu/trac/cvsim/report/6">Bug List</a> <br>

<a href="http://penelope.mit.edu/trac/cvsim/newticket">Report A Bug</a> <br>

<h2> Important Project Documents</h2>

<a href="requirements.xls">Project Requirements</a> (updated 9/6/06) <br>

<a href="user_analysis.doc">User Analysis</a> <br>


<h2> Release History </h2>

<h4> Version 1.8 - 3/4/07 <a href="v1p8/cvsim_deploy.jnlp">(Launch v1.8)</a> </h4>
<ul>
<li> Added help menu
</ul>

<h4> Version 1.7 - 2/25/07 <a href="v1p7/cvsim_deploy.jnlp">(Launch v1.7)</a> </h4>
<ul>
<li> Fixed bug in patient mode setPercent()
<li> Duplicate measurements no longer displayed in multi-scale mode
<li> It's no longer possible to close the default strip chart and plot
windows. Previously, if all the plots were closed, it was impossible
to create new ones. This avoids that problem.
<li> Add units to output table
</ul>

<h4> Version 1.6 - 2/14/07 <a href="v1p6/cvsim_deploy.jnlp">(Launch v1.6)</a> </h4>

<ul>
<li> Cosmetic changes
</ul>

<h4> Version 1.5 - 2/11/07 <a href="cvsim_deploy.jnlp">(Launch v1.5)</a> </h4>
<ul> 

<li> Fixed plot layout bug where the checkboxes and sliders were not
visible unless you maximized the plot window
<li> Increased the default buffer size for XY plots

<li> On the XY plot, swapped the position of the X and Y dropdown
boxes. Now, the x variable is on the left. I know this is a bit
confusing since that puts the x dropdown box closer to the y scale,
but I think the order of the dropdown boxes should match the order of
the variables in the legend at the bottom of the plot.
<li> On the XY plot, change default selection of the x dropdown
box. Now, it matches the default trace.
<li> Add labels to the plot sliders
<li> Fixed bug with mapping of systemic venous
compartment. Previously, the wrong variables were highlighted when the
user moused over the systemic venous compartment.
<li> Only display one x,y value for measurements if the plot is in single scale mode. (Both axes have to be in single scale mode. If one of the axes is in multi-scale mode, multiple measurements are displayed, as before.) 
<li> Fixed x scale resizing bug
<li> Changed "Arterial Resistance" to "Arteriolar Resistance" in simulation outputs
<li> Fixed bug in parameter setPercent() method. The percentage entered by the user
should be treated as the percentage of the default value,
not the percentage of the current parameter value.
<li> Got rid of the submenus for the parameter load, snapshot, and
restore buttons and menus. Now, the user uses Select All, Visible, or None
to select parameters and outputs and the single-function
load, snapshot, and restore buttons and menu items to execute the command.
<li> Fixed bug where the parameter menu submenus were not visible once
the same function had been accessed from the parameter table buttons.
</ul>

<h4> Version 1.4 - 2/8/07 <a href="v1p4/cvsim_deploy.jnlp">(Launch v1.4)</a> </h4>

<ul> 
<li> Fixed a number of bugs with the plot scales.
<li> Made the default ranges for the left and right ventricular volumes the same.
<li> New: Disable the control system in patient mode.
<li> Fixed layout problem.
<li> Ali updated the anatomical images files.
<li> New: Remove scale from plot when the last trace is removed.
<li> Catch exception if the user enters text in the parameter table value column.
<li> Improved parameter table labeling.
<li> Bug fix: The main window is now maximized at start-up on Linux.
<li> Got rid of the "Select Inverse" menu item in the Output panel; Also made cosmetic improvements.
<li> Made location category names consistent between output and parameter tables.
</ul>

<h4> Version 1.3 - 1/29/07 <a href="v1p3/cvsim_deploy.jnlp">(Launch v1.3)</a> </h4>
<ul>
<li> Added x scale to XY plotter
<li> Added ability to switch between single and multiple x scales on XY plotter
<li> Added ability to switch between single and multiple y scales on the XY plotter and strip chart
<li>Fixed two bugs in the parameter table:
<ul>
    <li>If a value was selected when you loaded patient data, the value was not
overwritten; the old value continued to be displayed.
    <li>The percent variable was not being reset when the parameter value was reset.
</ul>
<li> Use 6C model by default; Don't allow user to choose model
</ul>


<p> <b> If you are using Firefox: In order to get this version of the GUI to download properly, you need to clear your browser cache. To do so, go to Tools->Clear Private Data. Uncheck everything but cache. Then click "Clear Private Data Now". </b>

<h4> Version 1.2  - 1/24/07 <a href="v1p2/cvsim_deploy.jnlp">(Launch v1.2)</a> </h4>

<ul>
<li> Upgrade anatomical and circuit graphics. (Barring any serious bugs, this is the version we will be using for Dr. Mark's class.)
<li> Fixed bug 77: Patient history not displayed in dialog window when using Java Web Start 
<li> Fixed bug 78: Fixed zero-pressure filling volume in patient 6.
<li> Fixed bug 89: Make patient history window minimizable.
<li> Fix bug 95: User should not be able to edit text in patient history window.<li> Fixed bug 99: Patient history window should minimize when main window is minimized.
<li> Fixed systolic compliances parameter update
<li> Switched position of X and Y trace comboboxes in XY plot window
<li> Simulation Variables Tab:
   <ul>
   <li> Add "Clear Highlighting" button, "Turn Highlighting Off" checkbox (bug 82), and "Exit Patient Mode" button (bug 83)
   <li> Improved labeling of buttons and menu item (bugs 65, 97)
   <li> Get rid of "Select Inverse" menu item
   <li> Cosmetic improvements (bug 87)
   </ul>
</ul>

<h4> Version 1.1  - 1/24/07 </h4>
<ul>
<li> Disregard
</ul>

<h4> Version 1.0  - 1/17/07 <a href="v1p0/cvsim_deploy.jnlp">(Launch v1.0)</a> </h4>
<ul>
<li> New layout
<li> Added docking window functionality to plot windows. Strip charts
and XY plots are now displayed as a series in separate tabbed windows
in a split pane. To view only the strip charts or only the XY plots,
use the maximize button. To view both tabbed windows again, use the
minimize button. Use the up arrow to undock plots. Use the down arrow
to redock plots.  
<li> Swapped variables in example trace on default XY plot
<li> Only add example trace to initial plots, not every one
<li> Make the 6C model the default selection
</ul>

<h4> Version 0.24  - 1/15/07 <a href="v24/cvsim_deploy.jnlp">(Launch v0.24)</a> </h4>
<ul>
<li> Display error message if the user tries to enter a value for systolic compliance that exceeds the respective diastolic compliance.
<li> Change left ventricle systolic compliance lower limit to 0.1
</ul>


<h4> Version 0.23  - 1/15/07 </h4>
<ul>
<li> Disregard
</ul>

<h4> Version 0.22  - 1/12/07 <a href="v22/cvsim_deploy.jnlp">(Launch v0.22)</a> </h4>
<ul>
<li> Fixed bug in pulmonary arterial compliance, pulmonary venous compliance, and intra-thoracic pressure update equations. Previously, total blood volume was not conserved. Now it is. <b> Changes to 6C only. Still need to change 21C. </b>
<li> Fixed bug in patient parameter mappings
<li> Updated parameter ranges. Previously used normal physiological ranges. Now using valid ranges. <b> Changes to 6C only. Still need to change 21C. </b>
<li> Use toggle buttons for control panel (makes buttons look depressed)
<li> Fixed XY plotter plot transform. The sign change made to the strip chart plotter should not have been applied to the XY plotter.
</ul>


<h4> Version 0.21  - 1/8/07 <a href="v21/cvsim_deploy.jnlp">(Launch v0.21)</a> </h4>
<ul>
<li> Added controlled reflex variables (heart rate, arterial resistance,
venous tone, right ventricle contractility, and left ventricle
contractility) to list of simulation outputs
<li> Made traces move from right to left on strip chart plot 
<li> Made patient history dialog window non-modal (can be minimized) Bug #54
<li> Added File->Exit menu item
<li> Organized parameters alphabetically Bug #61
</ul>


<h4> Version 0.20  - 1/1/07 <a href="v19/cvsim_deploy.jnlp">(Launch v0.20)</a> </h4>

<ul>
<li> <B> 6C Model Only:</B> Fixed some of the parameter update constraints. Total blood volume is now
conserved (as it should be) when arterial compliance and venous
compliance are changed. Total blood volume is not conserved when
intra-thoracic pressure, pulmonary arterial compliance, and pulmonary
venous compliance are changed.
<li> Replace control panel
buttons with toolbar and menu items 
<li> Added XY plotter 
<li> Improvements to plotters
</ul>

<h4> Version 0.19  - 12/15/06 <a href="v19/cvsim_deploy.jnlp">(Launch v0.19)</a> </h4>

<ul>

<li> GUI 
<ul>
<li> Re-added parameter update constraints to 6C model 
<li> Update parameter mapping to include microvascular resistances and heart valves
<li> Parameter name changes (use valve names)
<li> Upgrade anatomical and circuit graphics
<li> New feature: Display x,y value when user clicks on plot; Only works when simulation is paused.
<li> Many plotter improvements / bug fixes
</ul>

<li> Model
<ul>
<li> Fixed zero pressure filling volume calculation in 6C model
<li> Change microvascular resistances min and max
</ul>

</ul>

<h4> Version 0.18  - 12/06/06 <a href="v18/cvsim_deploy.jnlp">(Launch v0.18)</a> </h4>

<ul>
<li> Added anatomical and circuit graphics
<li> Added filtering and highlighting to the parameter table based on
user selection in the graphics panel
<li> Optimized 6-compartment and 21-compartment models 
<li> Added parameter logging capability
<li> Added log panel
<li> Associated ranges with the parameters in the parameter table; An error 
message is displayed if the user enters a value outside the normal 
physiological range
<li> Improvements to plotter
<ul>
   <li> Improvements to buffer handling
   <li> Improvements to transform handling
   <li> Improvements to trace handling
   <li> Added speed slider to plots
   <li> New legend
</ul>
<li> <b> The plotter is in an transitional state; It has lots of bugs! </b>
</ul>

<h4> Version 0.17  - 12/05/06 </h4>

Disregard.

<h4> Version 0.16 - 12/05/06 </h4>

Disregard.

<h4> Version 0.15 - 11/07/06 <a href="v14/cvsim_deploy.jnlp">(Launch v0.15)</a> </h4>
<ul>
<li> Added ability to load patient data
<li> Added patient display mode to table
<li> Change the order of the output variables in the log file to
match the order of the outputs in the table. Previously, the order of 
the outputs in the log file depended on the order in which they were 
selected.
<li> Use XML for loading and saving parameters
<li> Use ".hea" extension for header files
<li> Change position of delete ("X") button in PlotLegendPanel
<li> Change all output variable max ranges to 200
</ul>

<h4> Version 0.14 - 11/01/06 <a href="v14/cvsim_deploy.jnlp">(Launch v0.14)</a> </h4>
<ul>
<li> Improvements to log output functionality:
   <ul>
   <li> Fixed bugs observed during meeting on 10/26 
   <li> Can stop and start logging without restarting the simulation
   <li> Output filename displayed in output table
   <li>	A default filename based on the date and time is used for output 
   files (i.e. cvsim_outputs_11012006_103726.txt for an output file created on 11/1/06 at 10:37:26 am). An alternate filename can be provided by the user.
   </ul>
<li> Improvements to output data handling (necessary for maintainability and extensibility)
<li> Fixed Select Inverse behavior (previously behaved like Select Not Visible)
<li> Added the control system parameters to the parameter table for the 21-compartment model
<li> Changed table edit behavior; Only need to click on values once to edit them; Previously, had to double-click
</ul>

<h4> Version 0.13 - 10/25/06 <a href="v13/cvsim_deploy.jnlp">(Launch v0.13)</a> </h4>
<ul>
<li> Fixed parameter and output panel layout problems on Windows
</ul>

<h4> Version 0.12 - 10/25/06 <a href="v12/cvsim_deploy.jnlp">(Launch v0.12)</a> </h4>
Added several major new features

<ul>
<li> Added ability to select model (6-compartment versus 21-compartment)
<li> Changed parameter display from treetable to table
<li> Added ability to save selected parameters
<li> Added ability to load selected parameters
<li> View an example <a href="examples/set_all_6comp_parameters_zero.txt">parameter file</a> (sets all the 6-compartment parameters to zero.)
<li> Added ability to reset selected parameters
<li> Added ability to display parameters based on anatomical location and type
<li> Display non-default parameters in red
<li> Changed table behavior: Now, only the selected cell is highlighted; Previously, the entire selected row was highlighted  
<li> Changed table behavior: If you double click on a parameter value, the value is highlighted. To overwrite the old value, hit delete and enter the new value. If you change your mind, hit escape. Previously, the new value typed in by the user was appended to the old value.
<li> Added outputs tab
<li> Added ability to save selected outputs
<li> Added ability to display outputs based on anatomical location and type
<li> View an example <a href="examples/all_6comp_outputs.txt">output file</a> and <a href="examples/all_6comp_outputs_header.txt">output header file</a>
</ul>

<h4> Version 0.11 - 10/04/06 <a href="v11/cvsim_deploy.jnlp">(Launch v0.11)</a> </h4>
<ul>
<li> Updated outputs to reflect 21 compartment model
</ul>


<h4> Version 0.10 - 09/29/06 <a href="v10/cvsim_deploy.jnlp">(Launch v0.10)</a> </h4>

<ul>
<li> Using the 21-compartment model 
<li> Get rid of the temporary trace that automatically appears in the plot window for the selected dataset; Now, users have to explicitly click "+" if they want to add a trace to a plot
<li> Change the color of the middle y scale values when you change the color of the corresponding trace (Bug 34)
<li> Make all plot y scales start at 0.0 by default (Bug 36)
<li> No longer have to resize the plot window on Windows to get the plot background to appear (Bug 39)
<li> Plot window with example traces appears when you start the GUI (Bug 17)
<li> Change y scale limits by directly entering text, no more clicking and dragging (Bug 23)
</ul>

<h4> Version 0.9 - 09/13/06 <a href="v09/cvsim_deploy.jnlp">(Launch v0.9)</a> </h4>
<ul>
<li> Filled in y scale
<li> Got rid of "step" in plot variables (Bug #22)
<li> Regrouped plot variables anatomically (Bug #27)
<li> Got rid of duplicate y scale when adding a trace to the plotter (Bug #29)
<li> Y scale works for ranges less than 1 (Bug #8)
</ul>

<h4> Version 0.8 - 09/11/06 <a href="v08/cvsim_deploy.jnlp">(Launch v0.8)</a> </h4>
<ul>
<li> Fixed parameter compliance update behavior.
<li> Changed CVP plotter range
</ul>

<h4> Version 0.7 - 09/11/06 <a href="v07/cvsim_deploy.jnlp">(Launch v0.7)</a> </h4>
<ul>
<li> Fixed bug in central venous pressure update behavior
</ul>

<h4>Version 0.6 - 09/08/06  <a href="v06/cvsim_deploy.jnlp">(Launch v0.6)</a> </h4>   
<ul>
<li> Flow outputs no longer zero (Bug #1)
<li> Added zero pressure filling volume to volume outputs (Bug #10)
<li> Left ventricular output, intra-thoracic pressure, systemic venous 
compliance, pulmonary venous compliance , and total blood volume updates 
working in the parameter treetable (Bugs #4, #5, #6, and #7)
<li> Added default plot ranges for flow and volume variables
</ul>

<h4>Version 0.5 - 09/06/06   <a href="v05/cvsim_deploy.jnlp">(Launch v0.5)</a> </h4>   
<ul> 

<li> The Windows version is working (Bug #20). There are some Windows-specific
problems, however. The first is that the GUI runs very slowly on
Windows. The second is that you need to resize the plot windows after
you open them. Otherwise, you won't see anything.  
<li> Improvements to the Plotter
<ul>
<li> No more automatic auto-scaling. The limits on the y scale(s) start out fixed, but the user can change them by dragging the min and max values up or down
<li> Separate y scale for each trace. (Color-coded to match the trace.) Right now, separate y scales is the only option. In the future, users will be able to select multiple or single y scales.
</ul>
<li> Changed slider range from 0-10 to 1-10 (Bug #21)
<li> Changes to parameter treetable data interface. (The changes aren't visible in the GUI.)
</ul>

<h4>Version 0.4  - 08/15/06</h4>
<ul>
<li>Changed plot controls; Now, the selected trace is automatically added to the plot; You do not have to click the "+" to add it.
 <li>Traces added to the plot now use one of six colors (instead of being black by default). If all six colors are in use, black is used for subsequent traces.
<li>Got rid of broken view->parameters menu
<li>Display version number in the title bar
<li> Replace speed and data compression sliders with one speed slider
</ul>

<h4> Version 0.3  - 08/10/06 (post-release meeting)</h4>
Changed slider behavior

<h4> Version 0.2  - 08/10/06 (pre-release meeting)</h4>
Replace plot format panel with plot legend

<h4> Version 0.1  - 08/09/06 </h4>
Go back to original 6-compartment model

<h4> Version 0.0  - 08/08/06 </h4>
Uses 6-compartment state model
Parameter update feature is broken

</body>
</html>

<li>
<b>Mirror users:</b> 
The first of the two links is located on the master PhysioNet server.
</ul>
-->

<hr>
<!--#include virtual="/footer.shtml"-->
</body>
</html>