Toolyard

Heart and Cardiac Cycle Simulator

Equations in this simulation

P_LV = E(t) × (V − V₀)
E(t)elastance of the ventricle wallhow stiff the muscle is: low while it relaxes and fills, rising to E_max as it contracts; the shape over each beat is the measured double-hill curve
E_maxContractility E_max (mmHg/mL)raised by adrenaline, lowered by heart failure
Vvolume of the left ventricleV₀ = 10 mL is the volume at zero pressure
P_LVpressure in the left ventricle

With the current values:

C dP_ao/dt = Q_out − (P_ao − P_v) ÷ R
Ccompliance of the arteries1.4 mL/mmHg: the aorta stretches as blood is pushed in, then recoils
RSystemic vascular resistance R (mmHg·s/mL)the afterload: narrow arteries raise it
P_aopressure in the aortaswings between the diastolic and systolic blood pressure
Q_outflow through the aortic valveonly while P_LV is above P_ao

With the current values:

SV = EDV − ESV, EF = SV ÷ EDV, CO = HR × SV
EDV, ESVend-diastolic and end-systolic volumethe volume when the ventricle is fullest and emptiest
SVstroke volumeabout 70 mL at rest
EFejection fraction55 to 70% in a healthy heart; below 40% is heart failure
COcardiac outputabout 5 L/min at rest, up to 20 or more in exercise

With the current values:

MAP ≈ DBP + (SBP − DBP) ÷ 3
MAPmean arterial pressurethe heart spends longer relaxed than squeezing, so the mean sits nearer the diastolic pressure

With the current values:

How to use the cardiac cycle simulator

  1. The heart beats in front of you: the ventricles swell as they fill and shrink as they squeeze, the yellow valves tilt open and snap shut, and red dots trace blood from the left atrium through the left ventricle into the aorta. The numbers come from a model of the left heart: a ventricle whose stiffness rises and falls each beat, pumping into elastic arteries.
  2. Follow one beat on the charts: the ventricle pressure rises with all valves shut, opens the aortic valve and ejects blood, then falls, the mitral valve opens and the ventricle fills again. The pressure-volume loop below the picture traces the same beat as one closed loop; its width is the stroke volume.
  3. Raise the heart rate, the contractility (as adrenaline does), the filling pressure or the vascular resistance, and see how the stroke volume, ejection fraction, blood pressure and cardiac output answer. Higher filling stretches the loop wider (the Frank–Starling law); higher resistance raises the pressure and narrows it.

Frequently asked questions

What are the phases of the cardiac cycle?

Four, for each ventricle. Filling: the mitral valve is open and blood flows in from the atrium. Isovolumic contraction: the ventricle squeezes with both valves shut, so the pressure shoots up without the volume changing. Ejection: the pressure passes the aortic pressure, the aortic valve opens and blood leaves. Isovolumic relaxation: the valves are shut again and the pressure falls until the mitral valve reopens.

How is cardiac output calculated?

Cardiac output = heart rate × stroke volume. At rest, 70 beats per minute times 70 mL per beat is about 4.9 L/min; in hard exercise a trained heart can reach 25 to 35 L/min by raising both. The stroke volume is the end-diastolic volume minus the end-systolic volume.

What is the ejection fraction?

The share of the blood in the full ventricle that is pumped out in each beat: EF = stroke volume ÷ end-diastolic volume. A healthy heart ejects 55 to 70%. An ejection fraction below about 40% is one of the main signs of heart failure, and it is what an echocardiogram is usually asked to measure.

What do preload and afterload mean?

Preload is how much the ventricle is filled and stretched before it contracts, set here by the filling pressure; more stretch gives a stronger beat, the Frank–Starling law. Afterload is what the ventricle has to push against, mainly the arterial pressure and vascular resistance; more afterload means less blood ejected per beat unless contractility rises.

It says WebGL is turned off.

The 3D view needs WebGL, which every current browser has. It can be switched off by hardware acceleration being disabled in the browser settings, or by a very old graphics driver. Turn hardware acceleration on, or try another browser.

Is anything uploaded?

No. The simulation is drawn by your own browser with WebGL; nothing is sent anywhere, and it keeps working offline once the page has loaded.

More science simulations

Related calculators and tools