CircD Sim icon

CircD Sim

Circulatory Dynamics Simulator

Select a scenario to enable reflexes.
Reference adult · 70 kg · 167 cm · BSA 1.8 m²
00:00
—/—mmHg
MAP—mmHg
Resting baseline
—L/min
CI—L/min/m²
Resting baseline
—mL
SVI—mL/m²
Resting baseline
—mmHg
Resting baseline
—mmHg
Resting baseline
—mmHg
Resting baseline

The connected circulation

Live diagram · summaries from last beat

The connected circulation A continuous schematic loop: body veins, right atrium and ventricle, pulmonary arteries, lung capillary network, pulmonary veins, left atrium and ventricle, systemic arteries and body capillary network. Organ panels open detailed views; the whole heart is one link. PULMONARY CIRCULATION Pulmonary arteries — Pulmonary veins — Systemic veins — Systemic arteries — Lungs ↗ Capillary pressure — Body tissues ↗ Capillary pressure — PVR — SVR — Heart ↗ SYSTEMIC CIRCULATION
RV output —L/min
LV output —L/min
Outputs balanced

Control guide

Reading the circulation

Follow the loop

Body veins → right atrium → right ventricle → lungs → left atrium → left ventricle → body arteries → body tissues → body veins.

Blue identifies the right-heart and systemic-venous side. Red identifies the left-heart and systemic-arterial side. Colours are schematic; oxygen levels are not calculated.

Branching networks represent many capillaries. Moving markers follow the calculated flow, including any reverse flow. They do not represent individual red blood cells. Thicker chamber outlines show active contraction in beat-by-beat view.

Live versus averaged readings

In beat-by-beat view, diagram pressures and chamber volumes are instantaneous. The top readings, ventricular output comparison and summary pressures/rates describe the last completed beat. In averaged view, these pressure, volume and flow readings use the last five completed beats. This is why a live right atrial pressure can differ from mean right atrial pressure (RAP), also shown as central venous pressure (CVP).

Excess interstitial fluid is the current change from the resting tissue pool. Positive net rate means fluid accumulating; negative means clearing. The organ shading is a bounded illustration, not a clinical oedema grade: it grows smoothly with excess fluid, using separate visual scales for lung and body tissues. The numbers give the actual model values. Blue around the body cells illustrates extracellular fluid. No alveolar flooding is depicted.

The atrial boxes are smaller schematic chambers. Their shaded areas use the same approximate mL-to-area scale as the ventricles, capped at each box’s boundary; the numeric volumes remain the precise values.

Pressure is in mmHg and chamber blood volume is in mL. Resistance labels follow the selected resistance units. PVR means pulmonary vascular resistance; SVR means systemic vascular resistance. Pmsf means mean systemic filling pressure.

Click the lungs, body tissues, systemic veins, the heart area or a Details link to explore further.

Systemic filling & return

Volume, venous tone & the right heart

Pmsf is the pressure the systemic arteries, capillaries and veins would reach at zero flow, with their current blood volume and tone. It is calculated separately; the circulation keeps running.

Venous-return relationship

Current vascular relationshipComparison baselineActual mean RAP & return flow

Each curve holds systemic blood volume, tone and resistance fixed. A change in any of these gives a new curve. The live point can depart during redistribution or changing reflexes. Negative-RAP flow limitation is outside this view.

Systemic stressed volume

Blood within systemic arteries, capillaries and veins; heart, pulmonary blood and tissue fluid are excluded.

Unstressed —Stressed —

Try volume or tone

Pmsf is model-derived, not a measured pressure or a volume-status diagnosis. Systemic venous pressure is the actual flowing pressure shown separately. The heart and vascular circuit jointly determine flow.

Copyright & terms

© 2026 JK Lee. All rights reserved except as expressly permitted below.

Free for learning and teaching

You may use the unmodified app free of charge for personal learning and teaching, including during paid educational courses. Share the official website link freely. Attributed screenshots and educational demonstration recordings are welcome: credit CircD Sim and JK Lee and, where practicable, link to cdsim.myem.app.

A course fee is permitted; selling or charging specifically for access to the app is not. Do not imply endorsement by JK Lee.

Written permission required

Unless required or permitted by applicable law, please obtain written permission before:

Educational use only

This simplified simulation must not be used for individual patient prediction, matching, diagnosis or treatment decisions. It is supplied as is, without warranties of accuracy, fitness for a particular purpose or uninterrupted availability. To the extent permitted by applicable law, JK Lee is not liable for loss or damage arising from its use.

Sources and other rights

Referenced publications and any third-party material retain their own rights and licence terms. This notice does not override those terms or claim exclusive ownership of established scientific facts or equations. Nothing here restricts rights or exceptions that applicable law does not permit to be restricted.

This is a custom educational-use licence, not an open-source or Creative Commons licence. Rights not expressly granted are reserved.

Contact & feedback

Feedback, suggestions and permission enquiries are welcome at contact@myem.app.

Welcome to CircD Sim

Explore how pressure, flow and the heart work together.

CircD Sim is for independent learning and teaching. Change a haemodynamic parameter, predict the effect, then watch how the connected circulation responds.

Built on physical principles

The simulation uses established physical principles and haemodynamic equations, combined with simplified physiological relationships and selected model assumptions. Scenario reflex endpoints are prescribed assumptions; pressures, flows, volumes and fluid exchange are calculated.

Start here

  1. Choose Normal circulation for free exploration, or select a scenario and open its ? guide.
  2. Change one slider at a time. Compare blood pressure, cardiac output and filling pressures.
  3. In a selected scenario, compare Reflexes off and on. Click the heart, lungs, venous-return view or body tissues for detail.
  4. Pause or slow playback to inspect a cardiac cycle. Allow simulated time for blood redistribution and tissue fluid to accumulate or clear.
  5. Reset restores normal circulation. Set comparison baseline only changes the reference used for comparison.

Best displayed on tablets and monitors. The full interface contains a lot to explore; you do not need to understand every control before starting.

The reference adult

An illustrative adult weighing 70 kg, height 167 cm, body surface area (BSA) approximately 1.8 m², with resting blood volume 5 L. Indexed values use the fixed 1.8 m² reference. Weight and height do not independently scale the equations.

For learning, not patient prediction

This app must not be used to predict or match an individual patient's haemodynamic parameters or to guide clinical treatment. It illustrates relationships within a simplified model rather than reproducing every person's physiology.

Free for learning and teaching, including paid educational courses. Please credit CircD Sim and JK Lee when sharing screenshots or demonstration recordings. for permissions and restrictions.

Start with one slider and see what happens. Make a prediction, try it out, and reset whenever you like—no patients harmed!

Parameter guide

Scenario guide

Understanding the heart

One beat, drawn as pressure against volume

A left ventricular (LV) pressure–volume loop traces one heartbeat. Move right for more blood in the ventricle; move up for higher pressure. Follow the arrows anticlockwise. These are explanatory drawings, not live measurements.

End-diastolic volume (EDV) is the volume just before contraction. End-systolic volume (ESV) is the blood remaining after ejection. Their difference is stroke volume (SV) in an ordinary beat with normally functioning valves. Left ventricular end-diastolic pressure (LVEDP) is the filling pressure at the end of diastole.

The four phases and valve events of a left ventricular pressure–volume loop Filling moves from end-systolic to end-diastolic volume along the bottom. Mitral closure starts isovolumetric contraction upwards on the right. Aortic opening starts ejection leftwards along the top. Aortic closure starts isovolumetric relaxation down the left until the mitral valve opens. Loop width is stroke volume and enclosed area is stroke work. 150100500 LV pressure · mmHg EjectionDiastolic fillingIsovolumetriccontractionIsovolumetric relaxation Enclosed area= stroke work Aortic valveclosesMitral valveopensAortic valve opensMitral valve closesEnd-diastolic pressureat this corner (LVEDP) 1234 Stroke volume = EDV − ESVEnd-systolic volumeEnd-diastolic volumeLV volume · mL
Illustrative loop. Aortic-valve closure pressure is not the peak systolic pressure. During ejection, pressure can rise and then fall.
PhaseWhat happens?Valves
1 → 2 · Isovolumetric contractionPressure rises while blood volume stays almost constant.Both closed
2 → 3 · EjectionBlood leaves for the aorta; ventricular volume falls.Aortic open; mitral closed
3 → 4 · Isovolumetric relaxationPressure falls while blood volume stays almost constant.Both closed
4 → 1 · FillingBlood enters from the left atrium. Atrial contraction adds a late filling contribution.Mitral open; aortic closed

“Isovolumetric” means the volume stays constant. Pressure opens a valve when upstream pressure exceeds downstream pressure; the valve is not actively pulling blood through.

Read the width, height and position. Width shows ejected volume; height reflects pressure. The area enclosed represents external mechanical stroke work, not the heart’s total oxygen or energy use. Ejection fraction (EF) is SV ÷ EDV × 100% for an ordinary beat.

Frank–Starling: filling changes the next beat

At the same contractility and afterload, greater filling usually lets the ventricle eject more blood. The response becomes smaller as the curve flattens. More filling is therefore not a guarantee of a useful increase in output.

Preload movement along a Frank–Starling curve and shifts with contractilityHigher preload moves the operating point from A to B along the same curve. Greater contractility shifts the curve upwards; reduced contractility shifts it downwards. Axes are schematic with no clinical numeric thresholds. Stroke volume Greater contractilityReference contractilityReduced contractility AB Preload: end-diastolic volume or filling pressure
Schematic curves at a fixed afterload. A → B is more filling on the same curve; a change in contractility gives a different curve.

Preload describes the muscle’s loading before contraction; this app represents it using end-diastolic volume or filling pressure. Contractility describes active pumping strength. Afterload is the load against which the ventricle ejects; arterial pressure, resistance and compliance all contribute.

Volume and filling pressure are related but are not interchangeable: a stiff ventricle can have high filling pressure without a large volume. Watch the loop and filling pressure together.

Try a small experiment

  1. Increase circulating volume slightly and watch filling, stroke volume and atrial pressure.
  2. Reduce LV contractility and see how the loop and Frank–Starling curve change.
  3. Increase systemic resistance. Compare ejection pressure, blood remaining after ejection and the next beats as the whole circulation adjusts.
Inside the heart

Filling, contraction & ejection

These loops come from the same running circulation. The moving point shows instantaneous ventricular pressure and volume; dashed loops show the comparison baseline.

Left ventricle

—

Right ventricle

—

LV–arterial coupling

Compare the load faced by the left ventricle with an estimated end-systolic pressure–volume relationship. The loading experiment updates automatically after a completed beat.

Completed LV loopCopied preload loopsArterial load lineSelected maximum-elastance pointsPreload ESPVR · dashed extrapolation

Try contractility or resistance

These controls change the same connected circulation. Allow a new beat to complete after adjusting them. Arterial compliance also changes with pressure.

Equations & loading-experiment details

The preload ESPVR slope is an estimated Ees. The slope, fitted V₀ and Ea/Ees can depend on loading. The independent afterload fit is a consistency check; the ratio has no clinical normality classification.

Frank–Starling relationship

Same ventricular equations, with aortic pressure held fixed during each reference beat.

Increased · 1.50×Normal · 1.00×Reduced · 0.45×Dashed: current settings · dot: live circulation

Overload susceptibility is a separate teaching assumption. Normal and increased reference curves use zero susceptibility; reduced and current curves use the selected value. The dot can lie off the reference curve because the connected circulation has a pulsatile, changing afterload.

Atrial filling & contraction

Atrial pressure rises progressively as the chamber fills. Both atria contract together near end diastole. Their strength stays at baseline below LV 1.00× and increases proportionally above it. Passive stiffness is unchanged; chronic remodelling is omitted. Maximum volume is distinct from mean volume.

Live pressure waveforms mmHg · 6-second sweep
LVRVAorta

Ventricular pressure

Preload is represented by end-diastolic volume and passive filling pressure. Afterload includes the arterial pressure encountered during ejection; resistance is one component.

Compliance here changes passive stiffness. Active relaxation, septal interaction and pericardial restraint are not separately modelled.

Inside the lungs

Pressure, filtration & fluid accumulation

Pulmonary capillary pressure drives filtration. Lymph returns fluid to systemic veins. Oedema develops when more fluid enters the lung interstitium than leaves it, over simulated time.

Where the fluid goes

Values from the last completed beat

Pulmonary arteries—
Capillaries—
Pulmonary veins—
Filtration —

Lung interstitium

At baseline
—mL change from resting pool
Interstitial pressure —Display scale: 0–250 mL excess
Lymphatic return —
Systemic veins—Drainage is limited; raised central venous pressure impedes return in this approximation.
Net accumulation—

Interstitial fluid only. Alveolar flooding, gas exchange and SpO₂ are not calculated. Volume and rate estimates depend on the chosen filtration and drainage parameters.

Track the conserved volume

Filtration transfers fluid out of blood; lymph returns it. External volume adjustments change the combined total.

Fluid accumulation over time

Last 20 simulated minutes

Use 15× or 30× playback on the main screen to follow the slower fluid response. Heart, circulation and lung fluid use the same clock.

Inside the body tissues

Pressure, filtration & fluid accumulation

Venous back-pressure can reduce the pressure gradient through an organ and promote filtration. Compare forward output, venous pressure and the slower accumulation of tissue fluid.

CVP waveform · modelled RAPmmHg · 6-second sweep
RAPDashed: last-beat meanShading: ventricular activation

Calculated atrial pressure, including atrial contraction and tricuspid filling. Valve leaflet displacement, annular motion, respiration and catheter effects are omitted; this is not a complete textbook CVP trace.

Arterial pressure · MAP—
CVP · mean RAP—
Approximate driving pressure—

MAP − CVP is a systemic teaching approximation, not a calculation of renal perfusion or GFR. Local venous, tissue and abdominal pressures also matter. The capillary pressure below comes from its own blood compartment.

Venous congestion and tissue fluid

Kidneys, liver and lower legs — illustrative regions of the shared body tissue model
KidneysLiverLegs

Values from the last completed beat

Systemic arteries—
Capillaries—
Systemic veins—
Filtration —

Body interstitium

At baseline
—mL change from resting pool
Interstitial pressure —Display scale: 0–250 mL excess
Lymphatic return —
Systemic veins—Drainage is limited; raised central venous pressure impedes return in this approximation.
Net accumulation—

One shared body-tissue pool. Illustrations identify affected regions; individual organ swelling, urine output, GFR and VExUS waveforms are not calculated.

Track the conserved volume

Filtration transfers fluid out of blood; lymph returns it. External volume adjustments change the combined total.

Fluid accumulation over time

Last 20 simulated minutes

Use 15× or 30× playback on the main screen to follow the slower fluid response. Heart, circulation and both tissue pools use the same clock.

How to interpret this model

Physiology, assumptions & sources