<<

Quantification of the instantaneous pressure- volume relationship in the left : Comparison of four models

Masters Thesis F.A. Rövekamp August 2005

Eindhoven University of Technology Faculty of Biomedical Engineering Department of Materials Technology Supervisor: Prof.Dr.Ir F.N.v.d.Vosse

VU University medical center Amsterdam Department of Pulmonology Supervisors: Prof. Dr. N. Westerhof Ir. J.W.Lankhaar

1 Samenvatting

Druk-volumelussen van de linkerventrikel (verkregen door de druk in de linkerventrikel uit te zetten tegen het volume in de linkerventrikel) zijn belangrijk in het analyseren van de ventrikel- functie. Modelmatig simuleren van deze lussen geeft inzicht in de hemodynamica van het hart en kan mogelijk voorspellingen doen over cardiovasculaire ziekten zoals hypertensie, hypertrofie en hartfalen. Een algemeen bekend model is het elastantiemodel van Suga et al.1 Hierin worden de isochronen van de druk-volumelussen lineair verondersteld. Isochronen zijn lijnen die de punten verbinden die op hetzelfde tijdstip in de cardiale cyclus plaatsvinden van druk-volumelussen on- der verschillende vullingsdrukken verkregen. Er zijn twee nadelen aan dit model. Als eerste blijkt dat in werkelijkheid deze isochronen niet linear zijn2 en ten tweede blijkt dat het volume- intercept (snijpunt van de isochroon met de volume-as) constant en negatief is. In dit afstudeer- verslag zijn drie andere modellen opgesteld en met elkaar vergeleken: een lineair model maar dan met een tijdsafhankelijk volume-intercept, een niet-lineair model met isochronen die lopen van convex tot concaaf en een niet lineair model met sigmoïdale isochronen. Het arteriële systeem wordt gemodelleerd met een drie-elementen windketel model.3 De parameters werden geschat aan de hand van het fitten aan schapen-data. De modellen worden vergeleken met een statistisch criterium. Het Suga-model en het niet-lineaire model met isochronen van convex naar concaaf fitten het slechts. Het sigmoïde model en het lineaire model met vrij volume-intercept zijn bijna vergelijkbaar maar de laatste heeft veel minder parameters.Voor het simuleren van de instantane druk-volumerelatie van de ventrikel voor fysiologische toepassingen, kan het beste een lineair model met een vrij volume-intercept worden gebruikt.

Abstract

Pressure-volumeloops of the left ventricle (obtained by plotting the ventricle pressure against ventricle volume) are important in analysing ventricular function. Simulating these loops with a model can give understanding of the of the and might give insight in cardio- vascular diseases like hypertension, hypertrophy and . A well known model is the Elastance model of Suga et al.1 In this model the isochrones are assumed to be linear. Isochrones are instantaneous pressure-volume relations, which means that the points that occur at the same time in de but in PV-loops with different filling pressure, are connected. This model has two shortcomings. First, it seems that in reality the isochrones are nonlinear2 and second, the volume-intercept (intersections of the isochrone with the volume axis) is constant and negative. In this thesis we made three other models and compared them: a linear model with a time- dependent volume-intercept, a non-linear model with isochrones from convex till concave and a non-linear model with sigmoidal isochrones. The arterial system is loaded with a three element windkessel model.3 The unknown parameters of the model are obtained by fitting the loops to sheep data. The models are compared with a statistical criterion. The Suga-model and the non- linear model with isochrones from convex till concave fit the worst. The sigmoidal model and the linear model with free volume intercept are comparable but the latter has less parameters. The linear model with free volume intercept is the best in simulating the instantaneous pressure- volume relation of the ventricle for physiological applications.

2 Contents

Acknowledgments...... 5 List of symbols...... 6 1 Introduction ...... 8 1.1 Circulation...... 8 1.2 The Heart...... 9 1.3 The Cardiac cycle...... 10 1.3.1 Phase 1: Atrial contraction ...... 11 1.3.2 Phase 2: Isovolumic contraction ...... 11 1.3.3 Phase 3: Rapid, early ejection ...... 11 1.3.4 Phase 4: Reduced ejection...... 11 1.3.5 Phase 5: Isovolumic relaxation ...... 11 1.3.6 Phase 6: Rapid filling (passive)...... 12 1.3.7 Phase 7: Reduced filling...... 12 1.4 Electrocardiogram ...... 12 1.5 Ventricular pressure-volume relationship ...... 14 1.6 Elastance...... 16 1.7 Aim of this study...... 17 2 Simulation of the instantaneous pressure-volume relationship in the left ventricle: four different models ...... 20 2.1 Introduction ...... 20 2.2 The models ...... 20 2.2.1 Linear model with fixed volume intercept ...... 20 2.2.2 Linear model with free volume intercept ...... 21 2.2.3 Nonlinear model with isochrones from convex till concave: n-model ...... 21 2.2.4 Non-linear model with sigmoidal isochrones...... 21 2.3 Arterial system ...... 22 2.4 Simulations...... 25 3 Methods...... 26 3.1 Introduction ...... 26 3.2 The Least Squares Method...... 26 3.3 Fitting of isochrones...... 27 3.4 Testing the implementation...... 27 3.5.1 Testing errors by noise ...... 28 3.5.2 Testing initial values ...... 29 3.5.3 Conclusion...... 29 3.6 The Akaike information criterion...... 30 4 Results of estimations...... 32 4.1 Introduction ...... 32 4.2 The arterial system ...... 33 4.3 The models ...... 34 4.3.1 Linear model with fixed volume-intercept...... 34 4.3.2 Linear model with free volume intercept ...... 37 4.3.3 Non-linear model with isochrones from convex till concave: n-model...... 39 4.3.4 Non-linear model with sigmoidal isochrones...... 42

3 4.4 Comparison of the models...... 44 4.4.1 Comparing the models by plotting them in one figure...... 44 4.4.2 Comparing the models by looking at the physiological variables ...... 46 4.2.2 Comparing the models with the Akaike information criterion ...... 47 5 Conclusion...... 50 5.1 Comparing the models ...... 50 5.2 A Suggestion for future analysis ...... 53 5.3 Modelling the right ventricle...... 53 References ...... 55 A MATLAB Source Code...... 58 A.1 Fitting the models...... 58 A.1.1 Linear model with fixed volume intercept...... 58 A.1.2 The Linear model with free volume intercept...... 58 A.1.3 Non-Linear model with isochrones from convex till concave ...... 59 A.1.4 Non-Linear model with sigmoidal isochrones ...... 61 A.2 The Akaike information criterion...... 62 A.3 The Simulations...... 63 A.3.1 The linear model with fixed volume intercept...... 63 A.3.2 Linear model with free volume intercept...... 67 A.3.3 A non-linear model with isochrones from convex till concave...... 68 A.3.4 Non-Linear model with sigmoidal isochrones ...... 77 A.4 Fitting with Fourier series ...... 77 A.4.1 Fitting the whole system at once ...... 77 A.4.2 Fourier transformation...... 79 B Windkessel parameters loops ...... 82 C Fitting with Fourier series...... 84 C.1 Fitting the whole system at once ...... 84 C.2 Fourier transformation on the non-linear model with isochrones from convex till concave...... 84 C.3 Fourier transformation on the non-linear model with sigmoidal isochrones...... 86 C.4 Results ...... 87 C.5 Discussion...... 89

4

Acknowledgments

Vanaf oktober tot augustus 2005 heb ik aan dit afstudeerproject gewerkt aan het VU medisch centrum Amsterdam op de afdeling longziekten. Allereerst wil ik graag mijn begeleiders van het VU medisch centrum, Ir. J.W. Lankhaar en Prof. Dr N. Westerhof, bedanken voor hun samenwerking, inzicht en vertrouwen. Tijdens problemen en andere vragen kon ik altijd bij hen terecht en ik ben erg blij met alle tijd die zij in me hebben gestoken. Prof. Dr. Ir F.N.v.d.Vosse was mijn begeleider van de Technische Universiteit Eindho- ven. Ik ben hem heel erg dankbaar dat hij me in contact heeft gebracht met Nico Westerhof en me daarmee de mogelijkheid heeft geboden mijn afstuderen in Amsterdam te doen, zodat het te com- bineren was met mijn geneeskunde studie in Amsterdam. Verder wil ik ook alle leden van de werkgroep pulmonale hypertensie in het VU medisch cen- trum bedanken, zij hebben mij ondersteund in mijn onderzoek op het cardiovasculaire gebied. In het bijzonder wil ik van deze groep Dr. A. Vonk Noordergaaf bedanken, omdat hij het mogelijk maakte dat ik ook nog een hoop medische dingen te zien kreeg, wat zorgde voor leuke afwisse- ling en mijn kamergenoot Serge van Wolferen voor zijn praktische hulp en gezelligheid. Als laatste wil ik Dr. P. Steendijk uit het LUMC in Leiden bedanken voor het vertrekken van data.

5

List of symbols

Symbol Description Unit Amplitude of the ith harmonic of n(t) [-] ai C Total arterial compliance [ml/mmHg] CO [l/min] Left Ventricle, time varying compliance(=1/E(t)) [ml/mmHg] Crv E(t) Time-Varying elastance [mmHg/ml] End-systolic Elastane [mmHg/ml] Ees d Deviation(error) [-] EF [%] HR [beats/min] J Sum of squares [-] K Number of parameters [-] N Total number of samples [-] nt() Time function, that described the shape of the isochrones in [-] non-linear-n-model p Pressure [mmHg]

pas Aortic systolic pressure [mmHg]

pad Aortic diastolic pressure [mmHg]

pes End-systolic pressure [mmHg]

ped End-diastolic pressure [mmHg] Left ventricle pressure [mmHg] plv

pmax (t) Time function in non-linear-sigmoidal-model that describes [mmHg] the maximum pressure of each isochrone

pmin (t) Time function in non-linear-sigmoidal-model that describes [mmHg] the minimum pressure of each isochrone

ptref () Time function in non-linear-n-model to make the equation [mmHg] of the model dimensionless Peripheral pressure [mmHg] pp Venous pressure [mmHg] pv PP Pressure [mmHg] Venous resistance [mmHg⋅s/ml] Rv SV [ml] SW Stroke work [ml⋅mmHg] Interbeat period [s ] Ti End-systolic volume [ml] Ves End-diastolic volume [ml] Ved

6 Vthalf () Time function in non-linear-sigmoidal-model that describes [ml] the volume halfway the sigmoidal isochrone

Vtref () Time function in non-linear-n-model to make the equation [ml] of the model dimensionless Left ventricle volume [ml] Vlv Volume intercept [ml] Vd

Vd (t) Volume intercept as function of time [ml] Characteristic impedance [mmHg⋅s/ml] Z0 ∆p Difference of pressure [mmHg] ∆V Difference of volume [ml] th φi Phase of the i harmonic of n(t) [-] α (t) Time function in non-linear-sigmoidal-model that describes [mmHg/ml] the slope of the sigmoidal shape of the isochrone

7 1 Introduction

1.1 Circulation

The tissues of the human body need nutrients to survive. To accomplish this, blood is circulated through the body. Besides supplying tissues with nutrients, blood also transports waste products and hormones from one part of the body to another. To transport nutrients, waste products, hor- mones from one part of the body to another, and to maintain an appropriate environment in all the tissue fluids there are two circulations. These are the systemic circulation and the pulmonary cir- culation (Figure 1.1). In the systemic circulation, blood flows from the left ventricle of the heart via the aorta and other main arteries and arterioles to the capillaries in the periphery of the body and from the capillaries via the veins back to the heart. Resistance arteries and arterioles regulate the amount of blood that flows locally. The capillaries form the exchange vessels between blood and tissue. In the pulmonary circulation the blood which returns from the systemic veins, flows into the right side of the heart and is pumped into the lungs, from which it returns to the left side of the heart. The systemic circulation serves to transport oxygen to all parts of the body, while the pulmonary circulation serves to supply the blood with oxygen and to remove carbon dioxide. The systemic circulation is the largest circulation because it supplies all the tissues of the body with oxygenated blood. About 84% of the entire is in the systemic circulation and the majority of that is in the systemic veins.4

Figure 1.1: Distribution of blood volume in the different portions of the .4

8 1.2 The Heart

The heart consists of four chambers: right atrium, right ventricle, left atrium and left ventricle (Figure 1.2). The right atrium receives blood from the superior and inferior vena cavae, which carry blood returning from the systemic circulation (venous return). The right atrium is a highly distensible chamber that can easily expand to accommodate the venous return at low pressure. Blood flows from the right atrium, across the tricuspid valve (atrio-ventricular valve, AV-valve), into the right ventricle. The outflow tract of the right ventricle is the main , which is separated from the ventricle by the semilunar pulmonic valve. Blood returns again to the heart from the lungs via the four pulmonary veins that enter the left atrium. The pressure in the left atrium normally ranges from 8-12 mmHg. Blood flows from the left atrium via the mitral valve (atrio-ventricle valve, AV-valve), and into the left ventricle. The left ventricle ejects blood across the aortic valve and into the aorta.5

Figure 1.2: A cross-section of the heart. The four chambers are denoted by RA (right atrium), RV (right ven- tricle), LA (left atrium) and LV (left ventricle). Blood is ejected into the aorta. After circulating to the body, it returns to the RA. It then enters the RV and is ejected into the pulmonary artery. After reoxygenation in the lungs it enters the LA, from which it enters the LV and is ejected into the aorta again.5

9 1.3 The Cardiac cycle

There is a continuous demand for blood in the human body. To fulfill this demand the heart beats about seventy times a minute to pump the blood through the human body. The events that occur from the beginning of one heart beat to the beginning of the next is called the cardiac cycle. Each cycle is initiated by spontaneous generation of an electrical pulse in the sinus node. The voltage pulse (action potential) causes contraction of cells. The action potential travels rapidly through both atria and then, via a specialized system, the AV-nodes and His bundles, over the ventricles. In the AV-node there is a delay between passage from the atria into the ventricles. This is why the atria contract earlier than the ventricles and because of that the atria fill the ven- tricles with blood before the strong ventricular contraction. The cardiac cycle can be divided into two periods; a period of relaxation called , during which the heart fills with blood, fol- lowed by a period of contraction, called , and ejection of blood. During every beat the heart goes trough seven different phases. Below each of these phases is reviewed in more detail (Figure 1.3).

Figure 1.3: Cardiac cycle. The seven phases of the cardiac cycle are (1) atrial systole; (2) isovolumetric con- traction; (3) rapid ejection; (4) reduced ejection; (5) isovolumetric relaxation; (6) rapid filling and (7) reduced filling. LV, left ventricle; ECG, electrocardiogram; AP, ; LVP, left ventricle pressure; LAP, left atrial pressure; LVEDV, left ventricle end-diastolic volume; LVESV, left ventricle end-systolic volume; 6 S1-S4, four .

10

1.3.1 Phase 1: Atrial contraction In this phase, the AV-valves are open and the aortic and pulmonary valves are closed. As the atria contract, the pressure within the atrial chambers increase; this drives blood from the atria into the ventricles. This is the last phase in ventricular filling. Backflow of blood due to the atrial contrac- tion into the veins is impeded by venous return (inertial effect). However, the atrial contraction does produce a small increase in venous pressure, noted as the a-wave in Figure 1.3. The atrial systole normally accounts for 10% of the left ventricular filling when a person is at rest, up to 40% when the heart rate increases or becomes pathological. After finishing the contraction the atrial pressure falls causing the closure of the AV-valves, which results in the first heart sound (S1). At this time the ventricle volumes are at their maximum value. Sometimes a heart sound is heard during atrial contraction (S4)

1.3.2 Phase 2: Isovolumic contraction In this phase, all valves are closed. The ventricular muscle depolarizes. Consequently, cardiac muscle contraction leads to a rapid increase in intraventricular pressure. The abrupt rise in pres- sure causes the AV valves to close and the intraventricular pressure exceeds the atrial pressure. During the time between the closure of the AV valves and the opening of the aortic and pulmo- nary valves, ventricular pressure rises rapidly, without a change in ventricular volume: isovolu- metric, or better isovolumic, contraction. Early in this phase, the rate of pressure development becomes maximal. The maximal rate of pressure development, dP/dt max, is the maximal slope of the ventricular pressure tracing plotted against time, during isovolumetric contraction. Atrial pressure increases due to continuous venous return.

1.3.3 Phase 3: Rapid, early ejection In this phase the aortic and pulmonary valves are open and the AV valves remain closed. When the intraventricular pressures exceed the pressures in the aorta and pulmonary artery, the aortic and pulmonary valves open and blood is ejected from the ventricles. While blood is being ejected and ventricular volumes decrease, the atria continue to fill with blood from their respec- tive venous inflow tracts. Although atrial volumes are increasing, atrial pressures initially de- crease as the base of the atria is pulled downward, expanding the atria.

1.3.4 Phase 4: Reduced ejection In this phase, the aortic and pulmonary valves are open and the AV valves remain closed. It is the ventricular repolarization. This causes ventricular active tension to decrease and the rate of ejec- tion to fall. Ventricular pressure falls slightly below the outflow tract pressure, but flow still con- tinous due to kinetic energy of the blood that propels the blood into the aorta and pulmonary ar- tery. Atrial pressures gradually rise during this phase due to continued venous return into the atria.

1.3.5 Phase 5: Isovolumic relaxation In this phase, all valves are closed. As the ventricles continue to relax and intraventricular pres- sures fall, a pressure gradient reversal causes the aortic and pulmonic valves to close, causing a second heart sound (S2). Ventricular volumes remain constant during this phase because all valves are closed. The residual volume of the blood that remains in the ventricle is called the end-

11 systolic volume, this is approximately 50 ml. The difference between the end systolic volume and the end-diastolic volume represents the stroke volume of the ventricles and is about 70 ml. The ratio of stroke volume and end-diastolic volume is called the ejection fraction of the ventri- cle, which is normally greater than 0.55. Although ventricular volume does not change, atrial volume and pressure continue to increase due to venous return.

1.3.6 Phase 6: Rapid filling (passive) In this phase, the AV valves open, aortic and pulmonic valves closed. When the ventricular pres- sure fall below arterial pressure, the AV valves open and passive ventricular filling begins. The ventricles briefly continue to relax, which causes an extra fall in intraventricular pressures of sev- eral mmHg despite ongoing ventricular filling. Filling is very rapid because the atria are maxi- mally filled just prior to AV valve opening. The opening of the AV valves causes a rapid fall in atrial pressure and proximal venous pressure. If the AV valves are functioning normally, no prominent sounds will be heart during filling. When a third heart sound (S3) is audible it may represent tensing of the chordae tendineae and the AV ring, which is the connective tissue sup- port for the valve leaflets.

1.3.7 Phase 7: Reduced filling In this phase, the AV valves are still open and the aortic and pulmonic valves are still closed. This is the period between diastole when passive ventricular filling is nearing completion. As the ventricles continue to fill with blood and expand, they become less compliant. Aortic pressure and pulmonary arterial pressure continue to fall during this period as blood leaves the large blood vessels through the systemic and pulmonary micro circulations.5

1.4 Electrocardiogram

An action potential of the heart muscle occurs when the cell membrane potential suddenly depo- larizes and then repolarizes back to its resting state. The summated effects of all the action poten- tials can be registered using an electrocardiogram (ECG). (Figure 1.4) Three basic characters are visible in the ECG: The P-wave, QRS-complex and the T-wave. In addition, the QRS-complex can be separated into a Q-,R- and S-wave. The P-wave is a result of depolarization of the atria, the QRS-complex of the depolarization of the ventricles and the T-top of the repolarization of the ventricles . Repolarization of the atria occurs roughly at the same time as depolarization of the ventricles and is hence difficult to observe on the ECG. 5

12

Figure 1.4: A Typical electrocardiogram (ECG) of a healthy heart. See text for an explanation of the events that correspond to the P, Q, R, S and T wasves.5

13

1.5 Ventricular pressure-volume relationship

Although measurement of pressures and volumes over time can provide important insight into ventricular function, pressure-volume loops provide an even more powerful tool for analyzing ventricular function. Pressure-volume loops are generated by plotting the ventricular pressure against ventricular volume. In Figure 1.5 the right bottom corner represents the ventricular cavity pressure and volume at which the ventricle begins its contraction. The subsequent period is the isovolumic contraction period. All valves are closed and the ventricle rapidly builds up pressure without changing its volume. This isovolumic period is represented by line b. When the ventricu- lar pressure exceeds the aortic , the pressure difference pushes open the aortic valve. The ventricle then ejects its contents in the face of mildly changing ventricular pressure. Curve c in the pressure-volume diagram represents this ejection process. Subsequently the ventri- cle undergoes the isovolumic relaxation process, which is represented by line d. As the ventricu- lar pressure falls below the atrial pressure, the mitral valve opens and the relaxing ventricle fills along curve a, the end-diastolic pressure-volume relation. 7

Figure 1.5: Ventricular pressure-volume loop. a, ventricle filling ; b, isovolumetric contraction; c, ventricular ejection; d, isovolumetric relaxation. EDV and ESV, left ventricle end- diastolic and end-systolic volumes, respectively; EDPVR, end-diastolic pressure-volume relationship; ESPVR, end-systolic pressure-volume rela- tionship; SV, stroke volume (EDV-ESV) .

14

The end-diastolic volume (EDV) is the maximal volume achieved at the end of filling and the end-systolic volume (ESV) is the minimal volume (residual volume) of the ventricle found at the end of the ejection. The width of the loop therefore represents the difference between EDV and ESV, which is stroke volume (SV). Three primary mechanism regulate EDV and ESV, and therefore stroke volume: (end diastolic pressure), (end systolic pressure) and inotropy (contractility). Preload is the initial stretching of the cardiac myocytes prior to contrac- tion; therefore it is related to the sarcomere length at the end of diastole. Sarcomere length can not be determined in the intact heart, therefore indirect indices of preload, such as ventricular end-diastolic volume or pressure, must be used. Several factors alter preload: Venous blood pres- sure, diastolic ventricular compliance and atrial contractility. Afterload is the stress in the cardiac muscle cells in systole. Since this stress can also not be de- termined it is often equal to the ‘load’ against which the heart must contract to eject blood. A major component of the afterload for the left ventricle is the systolic ventricular or aortic pres- sure. The higher the aortic pressure the larger the afterload on the ventricle. Inotropy or contrac- tility is an intrinsic property of the cardiac muscle. Contractility depends on intracellular calcium, brought about by changes in hormones. A change in preload primarily alters EDV, whereas changes in afterload and inotropy primarily affect ESV.

An advantage of the pressure-volume loops is that Stroke Volume, Ejection Fraction and (systolic pressure-diastolic pressure) can be determined from it. The area within the pressure-volume loop is the ventricular stroke work on the external (arterial) system, which is the energy imparted to the blood by contraction of the ventricle. The pump function of the heart can be evaluated using pressure-volume loops. Changes in the pressure-volume level are comparable to changes in the pump function and contractile state of the heart

Pressure-volume loops are especially interesting because it has been suggested that from the loops changes in the contractile state can be derived.1 Such changes lead to shifts or deforma- tions of the pressure-volume loop. Connecting the end-systolic points (left top corner in Figure 1.5) for different cardiac contractions with different preloads, and thus different loops, the end- systolic-pressure-volume relation is obtained (ESPVR). When connecting the end-diastolic points the end-diastolic-pressure-volume relation can be obtained (EDPVR). The ESPVR shifts with changes in the contractile state of the myocardium, or with changes in the ratio of the wall thickness to the cavity volume. For example, sympathetic stimulation of the heart makes the slope of the ESPVR curve steeper, as does concentric hypertrophy of the ventricle. Incomplete relaxation resulting from tachycardiac hypoxia shifts the EDPVR curve upward, which results in decreased filling. It is thus possible to detect alterations in the ventricular state from the shifts of the end-systolic and end-diastolic pressure-volume relationship curves.7

If the points of different PV-loops that occur at the same time in a series of cardiac cycles are connected, isochrones or instantaneous PV relations result (Figure 1. 6). Little is known about the isochrones of the cardiac cycle, but the general approach is to assume that they are straight. It is not known whether they should be linear or nonlinear and how they vary over time. Furthermore it is not known whether they might give as much, or even more, information about the contractile state of the myocardium or the pump function of the heart.

15

Figure 1. 6: Two pressure–volume loops obtained by changing venous loading conditions. Connecting simul- taneous time points in the cardiac cycle of the two loops results in isochrones. Connecting the end-systolic time points gives the End-systolic pressure-volume relation (ESPVR) however this is not necessarily an isochrone. The end-diastolic time points gives the end-diastolic pressure-volume relation (EDPVR).

1.6 Elastance

In several ways it has been tried to give a good definition for the contractility of the heart, be- cause it is important in determining the condition of the heart. One way is to look at the slope of the ESPVR. The volume intercept is determined by taking the intersection of the ESPVR with the volume axis and than all isochrones are forced to cut the volume axis at this volume intercept. The isochrones are straight lines , the slope than being pressure over volume and is called Elastance (E). The analogy is as follows: An elastic sac (like a rubber balloon) is filled with water, and meas- urements show that its pressure-volume relationship is like the segment of line a in Figure 1. 7 As the volume of water in the sac is increased from zero, no measurable pressure is built up in the sac until the volume exceeds a value V0, which is called the unstressed or dead volume. Volumes greater than the unstressed volume are called stressed volume. Volume elastance E, is the recip- rocal of volume compliance and is defined by: ∆P E = (1) ∆V here the slope, of line a is E1. When the relationship is linear (i.e. the slope is constant over the entire PV-range of interest). E can be described by P E = (2) V −V0

16 The ratio of absolute sac pressure (P) i.e. pressure inside the balloon minus external atmospheric pressure and stressed volume, V-V0 is the same as the incremental pressure-volume ratio ∆p / ∆v , and thereby represents the elastance of the sac. However, the ventricular muscle in systole is stiffening with time, and as a result, its pressure- volume relationship rotated to the line labelled b in Figure 1. 6 . The slope is increased to a greater value E2, but the unstressed volume V0 is assumed not to have changed . This means in our rubber balloon model that the size is similar but the rubber wall is thicker or more stiff. It is presently assumed in the literature that the isochrones measured during cardiac contraction showed this behaviour of a constant V0 and increasing and subsequently decreasing slope i.e. an E(t). From this it can be stated that the ventricle acts as a time-varying elastance E(t), which can be described by: P(t) E(t) = (3) V (t) −V0

Figure 1. 7: Schematic diagram to explain the concept of time-varying elastance in the pressure-volume plane. Line a represents the end-diastolic pressure-volume relationship of the ventricle, with slope E1, and a volume axis intercept V0. When the ventricle contracts, the slope increases gradually with time as indicated by the arrow, eventually reaching line b with slope E2, at the end systole, without a change in V0. Thus, ventricular contraction manifests itself as a counter clockwise rotation of the pressure-volume relationship around V0, and relaxation as a clockwise rotation to the diastolic state.

1.7 Aim of this study

In almost all reports in the literature, the end-systolic and end-diastolic pressure-volume relation- ships (ESPVR and EDPVR) and isochrones are assumed to be linear, with a constant volume intercept.1 There are, however, two problems with this assumption: First, there is evidence that these relations are non-linear (Figure 1. 8).2 In isolated the relation is often found to be linear. 1 However Nonlinearity of the ESPVR and EDPVR has been increasingly observed.2;8 Burkhoff et al. demonstrated contractility-dependent curvilinearity of ESPVRs in isovolumically contracting isolated canine ventricles.2 This means that at higher and

17 much lower contractile states (Ees ≥ 7.8 or ≤3.4 mmHg/ml), the former, being typical of isolated animal ventricles, nonlinearity is significant.2 In reality, the instantaneous PV-relations are convex in diastole to concave in systole.(Figure 1. 8). Nonlinearity is not surprising since the length-force relation of the cardiac muscle is also nonlinear. Ventricular pressure is related to force and ventricular volume is related to the resting fiber (and hence sacromere) length (Figure 1. 9).6 Second, V0 in the linear model is often forced to be negative. A negative volume is physiologi- cally not possible. This implies that in reality the relations must be curved. These two shortcom- ings of the varying elastance model brought us to the objective of the present study.

The objective of this study is to quantify the differences between linear and non-linear models for the instantaneous pressure-volume relationships. This is done with four different models: two linear models (one with a fixed volume intercept and one with a free volume intercept) and two non-linear models (one with isochrones from convex till concave and one with sigmoidal isoch- rones). By simulating these models, the hemodynamic consequences can be studied under vary- ing circumstances. With a statistical criterion these models can be compared, and a choice be- tween the models can be made as to which model fits the data obtained from animal experiments (sheep) the best.

Figure 1. 8: Representative example of a series of 24 pressure-volumes loops under transient preload reduc- tion. Isochronal ventricular PV-couples are shown as black dots with an interval of 2.5 ms. The open circles represent the onset and end of systole.9

18

Figure 1. 9: Relationship of myocardial resting fiber length (sacromere length) or end-diastolic volume to developed force or peak systolic ventricular pressure during ventricular contraction in the intact dog heart.

19

2 Simulation of the instantaneous pressure- volume relationship in the left ventricle: four dif- ferent models

2.1 Introduction

To quantify the differences between linear and non-linear instantaneous pressure-volume rela- tionships, we made four models of the left ventricle of increasing accuracy: Two models that generate PV-loops with linear isochrones (one that has a fixed volume intercept, and the other one has a free volume intercept which varies in time.) The other two models generate PV-loops with non-linear isochrones (one with isochrones that change in shape from convex to concave and the other with isochrones with a sigmoidal shape.) In this chapter these models, with increasing number of parameters, are described. First we study how the left ventricle is modelled for these linear and the non-linear models and then all models are combined with the three-element windkessel model of the arterial system.10

2.2 The models

2.2.1 Linear model with fixed volume intercept The classical assumption of the instantaneous pressure-volume relationship is the linear time- varying elastance (E(t)) model that was proposed by Suga et al.1 In this model pressure P(t) and volume V (t) are related by the time-varying elastance E(t) according to

Pt()=E()t[V()t −V0 ] (4)

For each moment in time t , P is a linear function of V . The volume V0 represents the intercept of the instantaneous pressure-volume relations with the volume axis. This intercept is assumed to be time-invariant. The value of V0 is determined by determining the intercept of the linear ESPVR of the real data by linear extrapolation to the volume axis. Thus the model is fitted with a linear fit for each isochrone and the fit is forced to intersect the volume axis at the V0 we deter- mined from the ESPVR. (for details of fitting see Chapter 3)

As can be seen from paragraph 1.6 Elastance is a function which shows the slope of the isoch- rones in time. When the model is fitted to the real data, this slope can be determined per isochrone and plotted as function of time, the E(t) curve . We call this a one plus one parameter model, indicating that one parameter is time dependent and one is a constant. (See for the MATLAB-code Appendix A.3.1 The linear model with fixed volume intercept.)

20 2.2.2 Linear model with free volume intercept In this model the pressure-volume isochrones are also assumed to be linear so that they can be related with the time varying elastance E(t) , However now also V0 is free to change with con- traction. Thus the model reads:

P(t) = E(t)[V (t) −V0 (t)] (5) The difference with the linear model above is that de volume intercept is not fixed, but a function of time V0 (t) .

This model is also fitted with a linear fit per isochrone (for details of fitting see chapter 3). Now not only the slope E(t) of this fit is time-varying, but the intercept of the isochrones with the vol- ume axis, V0 (t) is also time dependent. We call this a two-parameter model. (See for the MATLAB-code Appendix A.3.2 Linear model with free volume intercept.)

2.2.3 Nonlinear model with isochrones from convex till concave: n-model A simple model with a limited number of parameters that fulfils the requirements of mimicking instantaneous nonlinear PV-relations with convexity of the diastolic and concavity of the systolic relation is: n(t) ⎛V (t) −V (t) ⎞ P(t) = P (t)⎜ 0 ⎟ (6) ref ⎜ ⎟ ⎝ Vref (t) ⎠ The choice of the time-dependent function n(t) is essential in this model. For n(t) = 1 the pres- sure-volume relationship is linear, for n(t) < 1 it is concave and for n(t) > 1 convex.

The model is thus based on a limited number of parameters; Vref (t) as a reference volume to make the equation dimensionless, Pref (t) , as a reference value for the pressure, V0 (t) as the intercept with the volume axis and the time function n(t) .

This model is fitted for each isochrone, (for details see chapter 3) which means that for every isochrone, the four parameters have a new value. In other words all four parameters are a func- tion of time. (See for the MATLAB-code Appendix A.1.3 Non-Linear model with isochrones from convex till concave)

2.2.4 Non-linear model with sigmoidal isochrones A model generating isochrones with a sigmoidal shape is:

α (t) ⎛ ⎞ ⎜ V (t) ⎟ ⎜ ⎟ ⎝Vhalf (t) ⎠ P(t) = Pmax (t) α (t) + Pmin (t) (7) ⎛ V (t) ⎞ 1+ ⎜ ⎟ ⎜ ⎟ ⎝Vhalf (t) ⎠

21 We choose this model because we saw that Stergiopulos et al. 11 used a ‘double-hill’ function to describe the elastance curve. The half of this function is equation (7) and describes the sigmoidal form we want. In this model the four time varying parameters Pmax (t),Vhalf (t),α(t) and

Pmin (t) describe the shape of the sigmoid (Figure 2. 1). Pmax is the maximum value of the pres- sure, Vhalf is the volume exactly halfway the sigmoid, α is the slope at the bending point of the sigmoid and Pmin the minimum value of the pressure.

Figure 2. 1: A sigmoidal curve, which can be described with four parameters: Pref, the maximum value of the pressure, Vhalf, The volume exactly halfway the sigmoid, α, the slope at the bending point of the sigmoid and

Pmin, the minimum value of the pressure.

Each isochrone is described by these 4 parameters, all parameters are a function of time.(See for the MATLAB-code Appendix A.3.4 Non-Linear model with sigmoidal isochrones)

2.3 Arterial system

The blood pressure and flow will be obtained from each of the four heart models above men- tioned loaded with the three element windkessel. If voltage corresponds to pressure, current to flow and charge to blood volume, all relations that originally apply to electrical circuits (e.g. Ohm’s law and Kirchhoff’s current law), can be applied to the circulation. The model shown in Figure 2. 2 shows the ventricular and arterial models.

22

Figure 2. 2: The model in electrical form used for the simulation. Between the diodes , the left ventricle is modeled as one of the four tested models; the simplest, the time varying elastance model with fixed volume intercept (E(t)) is shown here. A constant venous pressure Pv with small valve resistance Rv is used. On the right the arterial system is modeled by the three element windkessel model. The Z0 and Ca are the characteris- tic impedance of the proximal aorta and the total arterial compliance. The micro vascular bed is modeled by a resistance, peripheral resistance Rp. Note that the excitation of the system is not by the pressure source pv, but by variations of the ventricle elastance.

The arterial system is represented by a linear three-element windkessel model. The whole arterial system is conceived as a point load with the aortic characteristic impedance, connected in series with a parallel combination of the peripheral resistance and the total arterial compliance. The left ventricle is modeled with each of the four models discussed above.

Venous pressure is assumed to be constant and is modelled as a voltage pv with a small valvular resistance Ro . With proper choice of parameters, the three element windkessel can model the arterial input im- pedance well and can thus provide an accurate description of the heart load .12;13 (Figure 2. 3)

23

Figure 2. 3: Hemodynamic representation of the three element windkessel model. The arterial system is mod- eled with a characteristic impedance of the proximal aorta (Zc), total arterial compliance (C) and peripheral resistance (R). 12

The arterial compliance, the peripheral resistance and the aortic characteristic impedance can be estimated from the experimental data. This is done as follows:

Arterial compliance, C : V C = s (8) Pp in which:

VVse= d-Ves= Stroke volume (9)

PPpa= s−=PadPulse Pressure (10)

The peripheral resistance: 1 T Pdt T ∫ a R = 0 (11) CO in which Cardiac Output is: CO = SV gHF (12)

3 The aortic characteristic impedance Z 0 is taken as 7% of the peripheral resistance Rp .

24

2.4 Simulations

The models were implemented in an existing MATLAB simulation model (MATLAB v7, The Mathworks, Natick) of the ventricle and the arterial system 14. In short, simulations were per- formed as follows. Heart and arterial system are modelled as described above. Parameters which describe the heart and the arterial system are used after they are estimated by fitting the model to the data. Valves are modelled as ideal valves: in case of a positive pressure gradient across the valves, valvular resistance is negligible (valves open) and in case of a negative pressure gradient resistance is infinitely high (valves closed). For each combination of the valve states (open-open, open-closed, closed-open, closed-closed), the governing differential equations were identified and rewritten in state-space representation.* This resulted in a system with two states: ventricular volume and peripheral pressure. For each moment of the cardiac cycle, the state of the valves was identified and then the correct state-space system matrix was passed to the differential equation solver. Solving was repeated until pressure and volume were periodic, i.e. in a steady state of oscillation. After solving, the remaining quantities in the model (other pressures and flows) were derived from the state variables. To mimick vena cava occlusions , i.e. the procedure used in the experiments, different values of venous pressure were studied. For each of the 14 loops the parameters of ventricular models were derived (as a function of time). Also for each loop the windkessel parameters were estimated. After the calculations are completed the resulting PV-loops were drawn. Isochrones were ob- tained by connecting corresponding time points. The results of the simulation were also presented in terms of aortic and ventricular pressure and ventricular volume as time functions.

* A system that is described by a differential equation of order n can be represented by a set of n first-order differen- tial equations. This latter is called state-space representation.

25 3 Methods

3.1 Introduction

The aim of this study is to compare different models which generate instantaneous pressure- volume relations, based on linear and non-linear isochrones. To make this comparison, the mod- els, that will be presented in the next chapter, have to be fitted to real data. There must be a statis- tical criterion, to determine which model is the best. The fitting is done with the least square method. The ways these models are fitted and how the statistical criterions works are explained in this chapter

3.2 The Least Squares Method

The method of least squares assumes that the best fit-curve of a given type is the curve that has the minimal sum of the deviations squared (least square error) from a given set of data. Suppose that the data points are (x1 , y1 ) , (x2 ,y 2 ) …., (xn , yn ) , where x is the independent variable and y the dependent variable. The fitting curve f (x) has a deviation (error) d from each data point , i.e., d1 = y1 − f (x1 ) , d 2 = y2 − f (x2 ) , ..., d n = yn − f (xn ) . According to the method of least squares, the best fitting curve has the property that:

n n 2 2 2 2 2 J = d1 + d 2 + ..... + d n = ∑ d i = ∑[yi − f (xi )] is minimal. i=1 i=1

2 For example, if the model f (x) = a + bx + cx has to be fitted to data points (x1 , y1 ),...... (xn , yn ) with a least squares method, the parameters a,b and c of the optimal fit are those that result in an minimum of J .

n n 2 2 2 J = ∑∑[yi − f (xi )] = [yi − (a + bxi + cxi )] (13) i==11i

These parameters can be calculated by setting the derivatives of J to the parameters equal to zero, i.e.

26 n ∂J 2 = −2∑[yi − (a + bxi + cxi )] = 0 ∂a i=1 n ∂J 2 = −2∑ xi [yi − (a + bxi + cxi )] = 0 (14) ∂b i=1 n ∂J 2 2 = 2∑ xi [yi − (a + bxi + cxi )] = 0 ∂c i=1 Expanding the equations(14), we have: n n n n 2 ∑∑yi = a 1+b∑∑xi + c xi i==11i i==11i n n n n 2 3 ∑ xi yi = a∑ xi +b∑xi + c∑xi (15) i=1 i=1 i==11i n n n n 2 2 3 4 ∑ xi yi = a∑ xi + b∑ xi + ∑ xi i=1 i=1 i=1 i=1

The unknown coefficients a,b and c can hence be obtained by solving equation (15)15

In the above example J is a linear function of the parameters, ab, and c. In that case explicit expressions for the optimal parameters can be obtained. For a non-linear model, minimization of J is more complicated, because no explicit expressions can be obtained. Numerous methods have been developed to solve the problem. In our study, MATLAB’s standard non-linear least-squares method was used (lsqnonlin).

3.3 Fitting of isochrones

With this least-squares method the models can be fitted to measured data by fitting the model of the instantaneous pressure-volume relation to each measured isochrone. Because the instantane- ous pressure-volume relation varies over time, each isochrone fit will yield a set of different model parameter values. Thus, for a complete cardiac cycle, the number of estimated values for a parameter is equal to the number of isochrones in the cycle. The latter is determined by the sam- ple period and the interbeat period. For example, when the data has an interbeat period of 0.72s and pressure and volume are sampled with 0.004s, there are 180 data points per loop. When 14 loops are determined 14 data points are given on each of the of 180 isochrones and. Thus each of the 180 isochrones is fitted with lsqnonlin of MATLAB.(See Appendix A.1 Fitting the models for the MATLAB- code).

3.4 Testing the implementation

To see if the MATLAB implementation is correct, it is tested as follows. A model is used to ob- tain pressure-volume loops and isochrones. Then the isochrones are estimated. Which should lead to accurate results. If the algorithm is correct, the fit should yield the same values for the parame- ters as the values that were initially used.

27 The accuracy of a fitting algorithm is determined by noise on the signals and its sensitivity to the initial values. Noise gives, of course, estimation errors and the wrong initial values can lead to a local minimum in the error function J and consequently a wrong estimation of the parameters.

3.5.1 Testing errors by noise Because measurement data will be corrupted by noise, also the sensitivity of the estimation algo- rithm to noise was tested. The function is therefore fitted to loops generated with one of the mod- els, before and after some noise is added. The noise is generated with random variables with a standard deviation of 1 trough 3 on the normal data. Figure 3. 1shows PV-loops obtained with the model and with an increase amount of noise added and Figure 3. 2 shows the result of this test.

data without noise noise 1 STD 80 80

60 60 mmHg mmHg

n n

i 40 i 40 e e r r 20 20 ssu ssu e e r r

p 0 p 0 180 200 220 240 260 180 200 220 240 260 volume in ml volume in ml noise 2 STD noise 3 STD 80 80

60 60 mmHg mmHg n n

i 40 i 40 e e r r 20 20 ssu ssu e e r r

p 0 p 0 180 200 220 240 260 180 200 220 240 260 volume in ml volume in ml

Figure 3. 1: The data used for testing the algorithm. Top, left panel: Original noise free data; PV-loops gener- ated with a model. Top, right-panel: same data with random noise with a standard deviation of 1 mmHg/ml added. Bottom left-panel: random noise with standard deviation of 2 added. Bottom right-panel: random noise with standard deviation of 3 added.

28 110

e) 100 u l

a 90

80 ue v 70 of tr

% 60 ( r

o 50 r r 40 on E

ti 30 a

m 20 ti s

E 10

0 1 2 3 SD of noise

Figure 3. 2: Example of a sensitivity analysis of the estimation algorithm to measurement noise. Results are shown for a model with nine parameters (See Appendix C Fitting with Fourier series) for detailed description of the model)

3.5.2 Testing initial values The algorithm of the non-linear fit requires initial values for the parameters. When the correct initial values are given the algorithm obviously yields the exact values. To study the sensitivity of the algorithm for the initial values, we tested it using random noise on the initial values with a standard deviation from 10% till 50% of the initial value(All initial values have the noise with same standard deviation at the same time, so they are all tested simultaneously). When the error of the initial values increases the error on the parameters increases too.

3.5.3 Conclusion It can be concluded that the algorithm is correct, because when the correct initial values are given, the fit gives exactly the same values as used to obtain the PV-loops . The algorithm is not very sensitive for noise on the data, but the error increased with the magni- tude of the noise. The noise on the PV loops, as measured in vivo, appears small enough for the algorithm to produce accurate parameters estimates (see Figure 3. 1 and Figure 3. 2). The algo- rithm is also not very sensitive for the initial values. Even when the standard deviation of noise is 50% of the initial value, the estimation error is smaller than 5% of the true value.

29 Because the noise on the starting values and on the data is random it would have been better to perform the test many more times, than just once. This has not been done because the calculation is very time consuming and we just want to have an overall look, to see how the algorithm works.

3.6 The Akaike information criterion

To decide which model is the best, the fit of a model to the data can be compared using the akaike information criterion (AIC). This is a method for comparing models, based on information theory. It combines maximum likelihood theory, information theory, and the concept of the en- tropy of information. The AIC is for comparing models, and therefore it is only the difference in AIC values that suggest the choice of model. The criterion balances the change in goodness of fit as assessed by sum-of-squares with the change in the number of parameters of the model, be- cause a model with more parameters usually fits the data better. The model with the lower AIC score is the model more likely to be correct. If the usual assumptions of nonlinear regression are accepted (that the scatter of points around the curve follows a Gaussian distribution), the AIC is defined by the following equation: ⎛ J ⎞ AIC = N ⋅ ln⎜ ⎟ + 2K (16) ⎝ N ⎠ Where N is the number of data points, K is the number of parameters fitted by the regression plus one (because regression is ‘estimating’ the sum-of-squares as well as the values of the pa- rameters), and J is the sum of the squares of the distances of the points from the curve. In our case we have for each isochrone 1,2 or 4 parameters. Because we have 180 isochrones, this means K is 180, 360 or 720. We have 14 loops, so N is 14x180= 2520.16 When N is small compared to K , it can be shown that AIC is too small. A corrected AIC value, called AICc is then more accurate: 2K(K +1) AIC = AIC + (17) c N − K −1 If the sample size is large, with at least a few dozen times more data points than parameters, this correction will be trivial. N will be much larger than K , so the numerator is small compared to the denominator, so the correction is tiny. With smaller samples, the correction will matter.16 (See Appendix C Fitting with Fourier seriesfor the MATLAB-code)

30

31 4 Results of estimations

4.1 Introduction

When the models, presented in the previous chapter, are fitted to the experimentally obtained isochrones, the parameters can be calculated and the models can be compared by studying the generated PV-loops and pressure and volume data as time functions. The experimental data are PV-loops from an open chest anesthetized sheep, kindly provided by Dr. P. Steendijk, LUMC in Leiden, The Netherlands. The different loops are obtained by vena cava occlusion (Figure 4. 1 and Figure 4. 2). The data consists of 14 loops, with 180 time points in each loop ( sample rate 4ms. ,for more details see appendix B Windkessel parameters loops).

100

80

Hg 60 m m

in 40 e r ssu

e 20 r p

0

-20 10 20 30 40 50 60 70 80 90 100 volume in ml

Figure 4. 1: 14 differently loaded pressure-volume loops of a sheep, obtained by vena cava occlusion. Every tenth isochrone is plotted, i.e. with an interval of 40 ms.

32 aortic and ventricular pressure 100 Hg m m

in 50 e r ssu e r 0 p 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 time in s Ventricular volume 80 l m 60 in e

m 40 lu vo 20 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 time in s

Figure 4. 2: a) Aortic and ventricular pressure (top) and ventricular volume (bottom) as function of time measured in a sheep at a filling pressure of 3.2 mmHg.

4.2 The arterial system

For each loop (each venous pressure obtained by vena cava occlusion), an estimation of the arte- rial system parameters can be made, by assuming a three-element windkessel as arterial load (Figure 4. 3). In the models each loop is made with the corresponding windkessel parameters.

33 3

2.5 C

2 0 9.9 9.7 8.5 7.3 5.6 4.1 3.2 2.0 1.0 0.6 -0.3 -0.3 -1.1 -1.5 2

1.5 R

1 0 9.9 9.7 8.4 7.3 5.6 4.1 3.2 2.0 1.0 0.6 -0.3 -0.3 -1.1 -1.5 0.12

0.1

Z0 0.08

0.06 9.9 9.7 8.5 7.3 5.6 4.1 3.2 2.0 1.0 0.6 -0.3 -0.3 -1.1 -1.5 Left ventricle end-diastolic pressure

Figure 4. 3: The Windkessel parameters of the arterial system. From top to bottom: Arterial Compliance (C), Peripheral resistance(Rp), Aortic characteristic impedance (Z0), plotted as function of left ventricular end- diastolic pressure. All values of the 14 loops are presented.

4.3 The models

4.3.1 Linear model with fixed volume-intercept When the linear model with fixed volume intercept is fitted to the sheep data as explained in paragraph 3.2, the unknown parameters of the model are determined.(Table 4. 1) Simulating with this model gives the PV-loops and isochrones as shown in Figure 4. 5. Pressure and volume are shown in (Figure 4. 6) and can be compared to the sheep data (Figure 4. 7)

Table 4. 1: Values of the unknown parameters of the linear model with fixed volume intercept. Value Unit V0 -66 ml Elastance Figure 4. 4 mmHg/ml

34 2

1.8

1.6 l

1.4 g/m H

m 1.2 m

n 1

e i 0.8

0.6 astanc l

E 0.4

0.2

0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 time in s

Figure 4. 4: Elastance curve when linear model with fixed volume intercept is fitted to sheep data.

450

400

350

g 300 H m 250 m n 200

150 sure i

100 pres

50

0

-50 -100 -50 0 50 100 150 volume in ml

Figure 4. 5: PV-loops and isochrones generated with the linear model with fixed volume intercept. Isochrones are plotted each 0.08s. Three loops are shown corresponding to filling pressures of 9.9, 5.6, 1.0 and –1.5 mmHg.

35 Aortic and Ventricular Pressure 80 Hg

m 60 m

in 40 e r 20 ssu e r 0 p 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 time in s Ventricular volume 10 l

m 0 in

e -10 m

lu -20 o v -30 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 time in s

Figure 4. 6 Aortic and ventricular pressure (top) and ventricular volume (bottom) as function of time gener- ated with the linear model with fixed volume intercept at a filling pressure of 3.2 mmHg.

250

200 g

H 150 m m n 100 re i u s 50 pres

0

-50 -100 -50 0 50 100 150 volume in ml

Figure 4. 7: PV-loops of the linear model with fixed volume intercept compared to the sheep PV-loops (dashed lines).

36 4.3.2 Linear model with free volume intercept After fitting the isochrones with the linear model with the time-dependent volume intercept the following results for the elastance and the volume intercept (Figure 4. 8), the representative loops and isochrones (Figure 4. 9), the hemodynamic consequences (Figure 4. 10) and the comparison to the sheep loops (Figure 4. 11) are given.

4 l

/m 3 g H

m 2 m

n 1 i E 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 time in s

100

l 0 m

n -100 i

V0 -200

-300 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 time in s

Figure 4. 8: Elastance curve (top) and volume intercept (bottom) as a function of time when the linear model with free volume intercept is fitted to the sheep data.

37 250

200

150 Hg m

m 100 in e r 50 ssu e r 0 p

-50

-100 -20 0 20 40 60 80 100 120 volume in ml

Figure 4. 9: PV-loops and isochrones generated with the linear model with free volume intercept. Isochrones are plotted each 0.08s. Three loops are shown corresponding to filling pressures of 9.9, 5.6, 1.0 and –1.5 mmHg aortic and ventricular pressure g 100 H mm n 50 sure i

0 pres 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 time in s Ventricular volume 80 l m 60 in e

m 40 lu vo 20 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 time in s

Figure 4. 10 Aortic and ventricular pressure (top) and ventricular volume (bottom) as function of time gener- ated with the linear model with free volume intercept at a filling pressure of 3.2 mmHg.

38 140

120

100 Hg

m 80 m

in 60 e r

40 ssu e r p 20

0

-20 10 20 30 40 50 60 70 80 90 100 110 volume in ml

Figure 4. 11: PV-loops of the linear model with free volume intercept compared to the sheep PV-loops (dashed lines).

4.3.3 Non-linear model with isochrones from convex till concave: n-model After fitting the model for all isochrones, the four unknown parameters of this model can be es- timated.(Figure 4. 12). Then the loops and isochrones (Figure 4. 13) ,the pressure and ventricular volume (Figure 4. 14) and the comparison to the sheep loops (Figure 4. 15) are given.

39 400 f

e 200 Pr 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8

400 f

e 200 Vr 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8

200 0 V0 -200 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8

10

n 5

0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 time in s

Figure 4. 12: the four parameters as function of time of the non-linear model with isochrones from convex till concave when fitted to the sheep data.

200

150 g H m 100 m n re i

u 50 s pres

0

-50 20 30 40 50 60 70 80 90 100 volume in ml

Figure 4. 13: PV-loops and isochrones generated with the non-linear model with isochrones from convex till concave. Isochrones are plotted each 0.08s. Three loops are shown corresponding to filling pressures of 9.9, 5.6, 1.0 and –1.5 mmHg

40 aortic and ventricular pressure 100 Hg m m

in 50 e r ssu e r 0 p 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 time in s ventricular volume 80 l 70 m

in 60 e

m 50 lu

o 40 v 30 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 time in s

Figure 4. 14 Aortic and ventricular pressure (top) and ventricular volume (bottom) as function of time gener- ated with the non-linear model with isochrones from convex till concave at a filling pressure of 3.2 mmHg.

160

140

120 g

H 100 m

m 80 in e

r 60 ssu

e 40 r p 20

0

-20 10 20 30 40 50 60 70 80 90 100 volume in ml

Figure 4. 15: PV-loops of the non- linear model isochrones from convex till concave compared to the sheep PV-loops (dashed lines).

41 4.3.4 Non-linear model with sigmoidal isochrones After fitting the model for all isochrones, the four unknown parameters can be estimated.(Figure 4. 16). Then the loops and isochrones (Figure 4. 17), the pressure and volume (Figure 4. 18) and the comparison to the sheep loops (Figure 4. 19) are given.

1000 x a 500

Pm 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8

1000 f 500 hal

V 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8

40 a f 20 al 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8

100

in 50

Pm 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 time in s

Figure 4. 16: The four parameters as function when time of the non-linear model with sigmoidal isochrones is fitted to the sheep data.

42 120

100

g 80 H m

m 60 n

re i 40 u s

20 pres

0

-20 0 10 20 30 40 50 60 70 80 90 100 volume in ml

Figure 4. 17: PV-loops and isochrones generated with the non-linear model with sigmoidal isochrones. Isoch- rones are plotted each 0.08s. Three loops are shown corresponding to filling pressures of 9.9, 5.6, 1.0 and –1.5 mmHg aortic and ventricular pressure 100 Hg m m

in 50 e r ssu e r 0 p 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 time in s ventricular volume 80 l m 60 in e

m 40 lu o v 20 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 time in s

Figure 4. 18 Aortic and ventricular pressure (top) and ventricular volume (bottom) as function of time gener- ated with the non-linear model with sigmoidal isochrones at a filling pressure of 3.2 mmHg.

43 100

80

Hg 60 m m

in 40 e r ssu

e 20 r p

0

-20 10 20 30 40 50 60 70 80 90 100 volume in ml

Figure 4. 19: PV-loops of the non- linear model with sigmoidal isochrones compared to the sheep PV-loops (dashed lines).

4.4 Comparison of the models

4.4.1 Comparing the models by plotting them in one figure. To make a comparison between the models, the loops of the sheep and of a model are plotted in a combined figure. (Figure 4. 20)

44 400 g H m 200 m n i e r

u 0 s es

pr -200 20 40 60 80 100 120 140 volume in ml

100 g H m 50 m n i e r 0 ssu e r

p -50 -40 -20 0 20 40 60 80 volume in ml

100 g H m 50 m n i e r

u 0 s es pr -50 -80 -60 -40 -20 0 20 40 60 volume in ml

Figure 4. 20: All simulated loops with venous pressure: 9.9 (top), 3.2 (middle) and 1.5 (bottom) mmHg. Solid thick: original sheep data. dashed: non-linear sigmoidal model. solid: non-linear n-model. Dashed-dotted: Linear model with free volume intercept. Dotted: Linear model with fixed volume intercept.

45

Also aorta and ventricular pressure are plot in one figure (Figure 4. 21) aortic and ventricular pressure 100 Hg 80 m

60 m

in 40 e

r 20 su 0 s e

r -20

p 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 time in s ventricular volume 80 l 60 m 40 in

e 20

m 0 lu -20 vo

-40 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 time in s

Figure 4. 21: The aortic and ventricular pressure of all models in one Figure with a filling pressure of 3.2 mmHg. Solid thick: original sheep data. Dashed: non-linear sigmoidal model. Solid: non-linear n-model. Dashed-dotted: Linear model with free volume intercept. Dotted: Linear model with fixed volume intercept.

4.4.2 Comparing the models by looking at the physiological variables

By looking at the range of the physiological variables (which means from the loop with the low- est venous pressure till the loop with the highest venous pressure) the models can be compared.

46 Table 4. 2: Ranges of Physiological data of experimental data (sheep) and the four models. Sheep Linear_ Linear_ Non-linear_ Non- fixedVd freeVd n Linear_ sigmoidal LVESP 70.0 94.6 12.0 207.1 75.0 131.1 84.6 156.0 72.1 96.9 [mmHg] LVEDP -1.5 9.9 -1.5 9.9 -1.5 9.9 -1.5 9.9 -1.5 9.9 [mmHg] SV 26.3 54.8 1.0 104.6 26.7 58.2 22.9 56.8 25.3 49.1 [ml] EF 58 67 2 82 58 66 49 59 52 69 [%] ET 0.44 0.47 0.46 0.48 0.38 0.47 0.51 0.48 0.45 0.47 [s] PF N/a 1096 1139 618 649 222 533 613 647 [ml/s] LVESP = left ventricle end-systolic pressure , LVEDP= left ventricle end-diastolic pressure , SV= Stroke Volume, EF = Ejection Fraction, ET = Ejection time and PF = Peak Flow.

4.2.2 Comparing the models with the Akaike information criterion

For comparing the models with a statistical criterion, the Akaike Information Criterion (as ex- plained in paragraph 2.6) is used. All the loops of the models are included in the calculation. Re- sults are given in Table 4. 3 and Figure 4. 22

Table 4. 3: The Corrected AIC value for each model. 4 Model AICc •10

Linear: fixed Vd 2.21 Linear: free Vd 1.21 Non-linear:n 1.57 Non-linear :sigmoidal 1.16

47 x 104 2.5

2

1.5 c C AI 1

0.5

0 Linear Linear free Vd Non-linear n Non-linear sigmoid

Figure 4. 22: Bar-plot of the AICc values for each model.

We see that the linear model with the free volume intercept and the non-linear sigmoidal model are the best, and that they are not much different in their behavior.

48

49 5 Conclusion

Simulating the instantaneous pressure-volume relationship of the left ventricle can be very useful. It can predict how a (human) heart will react on pathological changes, by changing just one pa- rameter in the model. It can thus, for example, give more insight in hypertension, hypertrophy and heart failure.17 Description of the pumping characteristics of the heart can also assist in modelling the entire car- diovascular system. In this analysis one wishes to describe the system with a minimal number of parameters and with maximal accuracy.

The elastance model from Suga et al.1 is well known for simulating the instantaneous pressure- volume relationship. This model assumes a time-varying relation of linear instantaneous pres- sure-volume relations (isochrones). In this model the isochrones are thus linear. There is a prob- lem with this model, because, in reality, the isochrones are non-linear2. So the aim of the present study was to develop models of the left ventricular pump which simulate non-linear instantaneous pressure-volume relations with a minimal number of parameters. These descriptions are quanti- fied and compared to measured data. After quantification of the differences between these models and the real data a decision is made which model fits best to reality. We have investigated four different models: 1. Linear model with fixed volume intercept (Suga’s elastance model):

Pt()=−E()t[V()t V0 ] 2. Linear model with a free volume intercept which varies in time:

Pt()=−E()t[V()t V0 ()t] 3. Non-linear model with isochrones from convex to concave n(t) ⎛V (t) −V (t) ⎞ P(t) = P (t)⎜ 0 ⎟ ref ⎜ ⎟ ⎝ Vref (t) ⎠ 4. Non-linear model with sigmoidal isochrones: α (t) ⎛ ⎞ ⎜ V (t) ⎟ ⎜ ⎟ ⎝Vref (t) ⎠ P(t) = Pmax (t) α (t) + Pmin (t) ⎛ V (t) ⎞ 1+ ⎜ ⎟ ⎜ ⎟ ⎝Vref (t) ⎠

The arterial system is modelled with a three element windkessel model 10 and after the models are fitted to sheep PV-loops, the models are implemented in an existing MATLAB model of the left ventricle and the arterial system.

5.1 Comparing the models When comparing the models in a qualitative sense we compared them in terms of pressures and volumes as time functions and in terms of pressure-volume loops. The pressure-volume loops give the best qualitative comparison because the differences are more obvious than the differ-

50 ences in the pressure and volume in time of the models. From this qualitative comparison we see that the linear model with fixed volume intercept fits worst. This model is also not comparable with reality because of the negative volume in the left ventricle at low filling pressures. This is because of the negative volume intercept. The non-linear model with isochrones from convex till concave fits much better to the sheep data than the linear model with fixed volume intercept. The loops are closer to those of the sheep loops, but with high venous pressure the ESP is too high and of all loops the ejection fraction is too small. The linear model with time-dependent volume intercept and the non-linear model with sigmoidal isochrones both fit best to the sheep data, because the accuracy of the fit show only small differences.

The overall quantative comparison is performed on the basis of the Akaike information Criterion (AIC). This criterion confirms what is qualitatively seen. The best model is the non-linear sig- moidal model, then the linear model with time dependent intercept is the best description of real- ity. The linear model with fixed volume intercept and the non-linear model with isochrones from convex till concave are both not very suitable for simulating instantaneous pressure-volume rela- tions. To make a good decision between the linear model with time-varying volume-intercept and the non-linear sigmoidal model all positive and negative points are presented in table Table 5. 1.

Table 5. 1: Comparison of the linear model with free volume intercept and the non-linear model with sigmoi- dal isochrones. Non-linear model with sig- Linear model with free vol- moidal isochrones ume intercept Fit loops High venous pressure + Low venous pressure C C Physiological range ESPVR + EDPVR C C SV + EF + ET C C AICc + Negative volume intercept + - Easiness of using model ---- ++++ C = comparable, which means no differences. + = a small advantage and - = a disadvantage On the base of this analysis, the non-linear model with sigmoidal isochrones is slighly better than the linear model with time-varying model. However this small advantage of the non-linear model with sigmoidal isochrones requires a much more complicated model with more parameters than the linear model with free volume intercept.

When we compare the results of the models with the sheep data, we see that the sheep data differ from all models in the isovolumetric contraction and relaxation phases. The isovolumetric con- traction in the sheep data does not have a constant volume, while the models have. This is proba-

51 bly a limitation of the measurement technique, because in this phase of the cardiac cycle all valves are closed, so the volume must stay constant and that is also how we modelled it.18

So overall we can conclude that the linear model with the time-varying volume intercept is in practice an acceptable model, because it gives a good fit and is easy to use. There is however still a disadvantage. The sheep data show that the isochrones have a sigmoidal shape, while linear isochrones work almost as well. We can not explain this physiologically but we also see this in other mammals, like the mouse and the human (Figure 5. 1 Figure 5. 2).

Figure 5. 1: PV-loops of an open-chest anesthetized mouse during caval vein occlusion. Isochronal ventricular PV-couples are shown as black dots with an interval of 2.5 ms. The open circles represent the onset and end of systole.9

52 90

80

70

60

mmHg 50 n i e r 40 ssu e

r 30 p

20

10

0 30 40 50 60 70 80 90 100 110 120 volume in ml

Figure 5. 2: 9 Differently loaded PV-loops of a human, obtained by vena cava occlusion. Isochrones are plot- ted with an interval of 0.04s (Data from Dr. P. Steendijk, LUMC Leiden, The Netherlands).

5.2 A Suggestion for future analysis Simulating with sigmoidal isochrones gives a better discription, but due to the many degrees of freedom in the current formulation of the model, its explanatory value is limited. Note that in all models the time-dependency is implicitly defined by the time variation in parameters. It could even be argued that the number of parameters should therefore be a factor as large as the number of isochrones in one cycle times the number of isochrones (for each time-varying parameter). To reduce the number of parameters in a natural way without loosing too much freedom, each pa- rameter could be expressed as a Fourier series with a limited number of harmonics. For the linear 19 model with fixed Vd this has been done by Senzaki et al. . This approach is suggested as a sepa- rate study (see appendix C Fitting with Fourier series).

5.3 Modelling the right ventricle In this study the left ventricle is modelled, but the model can probably be easily translated to the right ventricle. The reason for modelling the left heart and arterial system is that at present more good data on the left ventricle are available than on the right ventricle. The description of the right heart and pulmonary arterial system may especially be of importance in the study of pulmo- nary hypertension. Most of the patients with pulmonary hypertension eventually die because of right ventricular failure.20 The mechanisms that lead to failure are still poorly understood. It is suggested that the results of this study are now applied to the right heart and pulmonary circula- tion.

53

54 References

1. Suga H, Sagawa K, Shoukas AA. Load independence of the instantaneous pressure-volume ratio of the canine left ventricle and effects of epinephrine and heart rate on the ratio. Circ Res. 1973;32:314-322.

2. Burkhoff D, Sugiura S, Yue DT, Sagawa K. Contractility-Dependent Curvilinearity of End- Systolic Pressure-Volume Relations. American Journal of Physiology. 1987;252:H1218- H1227.

3. Westerhof N, Elzinga G, Sipkema P. Artificial Arterial System for Pumping Hearts. Journal of Applied Physiology. 1971;31:776-&.

4. Guyton AC, Hall JE. Textbook of medical physiology. 1996. Saunders Company, Pennsyl- vania.

5. Klabunde RE. Cardiovascular Physiology concepts. 2005. Lippincott, Williams&Wilkins, Baltimore.

6. Berne RM, Levy MN. Cardiovascular Physiology. 2001. Mosby, St. Louis.

7. Sagawa K, Maughan WL, Suga H, Sunagawa K. Cardiac Contraction and the Pressure- Volume Relationship. 1988. Oxford University Press, New York.

8. Kass DA, Beyar R, Lankford E, Heard M, Maughan WL, Sagawa K. Influence of Contrac- tile State on Curvilinearity of Insitu End-Systolic Pressure-Volume Relations. Circulation. 1989;79:167-178.

9. Claessens, T. E., Georgakopoulos, D., Fanasyeva, M., Miller, H. D., Stergiopulos, N., Westerhof, N., Verdonck, P. R., and Segers, P. Non-linear isochrones in murine left ven- tricular pressure-volume loops: How well does the time varying elastance concept hold? 2005.

10. Westerhof.N, Elzinga G, Sipkema P. Artificial Arterial System for Pumping Hearts. Journal of Applied Physiology. 1971;31:776-&.

11. Stergiopulos N, Meister JJ, Westerhof N. Determinants of stroke volume and systolic and diastolic aortic. American Journal of Physiology-Heart and Circulatory Physiology. 1996;39:H2050-H2059.

12. Westerhof N, Stergiopulos N, Noble M. Snapshots of Hemodynamics. 2005. United States of America.

13. Westerhof N, Strackee J. Arterial hemodynamics. In: The Physics of heart and circulation. 2005.

55 14. Lankhaar, J. W. Modelling the pulmonary circulation:simulation and parameter estimation. Masters Thesis 2002.

15. least square method. 2005. http://www.efunda.com/math/leastsquares/leastsquares.cfm

16. Motulsky H, Christopoulos A. Fitting models to biological data using linear and nonlinear regression. 2005. GraphPad Prism, San Diego.

17. Segers P, Stergiopulos N, Schreuder JJ, Westerhof BE, Westerhof N. Left ventricular wall stress normalization in chronic pressure-overloaded heart: a mathematical model study. American Journal of Physiology-Heart and Circulatory Physiology. 2000;279:H1120- H1127.

18. Baan J, Koops J, Vandervelde ET, Temmerman D, Buis B. Dynamic Absolute Left- Ventricular Volume Measured with Conductance Catheter. Circulation. 1981;64:177.

19. Senzaki H, Chen CH, Kass DA. Single-beat estimation of end-systolic pressure-volume relation in humans. A new method with the potential for noninvasive application. Circula- tion. 1996;94:2497-2506.

20. D'Alonzo GE, Barst RJ, Ayres SM, Bergofsky EH, Brundage BH, Detre KM, Fishman AP, Goldring RM, Groves BM, Kernis JT, . Survival in patients with primary pulmonary hyper- tension. Results from a national prospective registry. Ann Intern Med. 1991;115:343-349.

56

57 Appendix A MATLAB Source Code

This appendix gives the most important files that are used during this project. The files are listed in a top-down-order. The first file listed, is the main file that calls other files. Fitting and model- ling the different models can have a different main-file, but calling the same files. When such a file is already shown (but only with a few parameters changed), it will not be shown again. Functionality of all files is explained by comments. The implementation of the simulation is a continuation of the work of Lankhaar.14

A.1 Fitting the models

A.1.1 Linear model with fixed volume intercept. function E = elastance

%Elastance makes a linear fit of the isochrones and gives the elastance. % E = ELASTANCE gives the elastance of the PVloops from the sheepdata.

% 01/02/2005, F.A.Rövekamp

%Get the Sheep Data [V,P] = Get_Data_Sheep;

%constants nIsochrones = 180; Vd = -66;

%Solve the lineair equation per isochrone for i=1:10:nIsochrones viso = V(i,:); piso = P(i,:);

viso = [Vd viso]'; piso = [0 piso]';

x(i) = viso\piso;

end plot(x)

A.1.2 The Linear model with free volume intercept. function x = elastance_frVd

% elastance_frVd plot the Elastance and Vd which are determind when the % linear model is fitted to each isochrone of the sheep loops.

58 % 01/02/2005, F.A.Rövekamp

% Get data sheep [V,P] = Get_Data_Sheep; nIsochrones = 180; nLoops = 14; Vrange =[-70:100]; viso2 = zeros(nLoops,1)+1; for i=1:nIsochrones viso1 = V(i,:)'; piso = P(i,:)';

viso = [viso1 viso2];

x = viso\piso; E(i) = x(1); Vd(i) = -(x(2)/x(1)); end plot(E) figure plot(Vd)

A.1.3 Non-Linear model with isochrones from convex till concave function x = plot_iso

%plot_iso fits the nonlineair n model to each isochrone from the %sheep model. % X = plot_iso gives in x the four parameters (Pmax, Vref, Vd and n(t)) of % the nonlinear model, when fitted to each isochrone of the sheep and plots % these isochrones and the fitted PV-loops.

%10-06-2005, F.A.Rövekamp

%Get sheep data [V,P] = Get_Data_Sheep;

%Get the fitted loops and plot nloops of them [Vfit_loop,Pfit_loop] = collectpv; nloops = [1:4:14]; plot(Vfit_loop(:,nloops),Pfit_loop(:,nloops)) hold on

% Solve the least square problem for every isochrone. for i = 1:20:length(V(:,1)) curV = V(i,:); curP = P(i,:);

x(i,:) = test(curP,curV); disp(i)

% Variables

59 Viso = [20:100]; % range of over which the isochrones are plotted nIsochrones = size(V,1); % number of isochrones Ti = 0.72; % Heart period ts = 0.004; % sample time t = [0:nIsochrones-1]*ts; Pmax = x(i,1); Vmax = x(i,2); Vd = x(i,3); n = x(i,4);

Piso = Pmax*(((Viso-Vd)/Vmax).^n);

plot(Viso,Piso,':') % plot the isochrone hold on VcurIso = Vfit_loop(i,nloops); PcurIso = Pfit_loop(i,nloops); VcurIso_b = min(Vfit_loop(i,nloops)):max(Vfit_loop(i,nloops)); PcurIso_b = Pmax*(((VcurIso_b-Vd)/Vmax).^n); plot(VcurIso_b,PcurIso_b,'Linewidth',2) % plot the parts of the isochrones on the loops bold plot(VcurIso,PcurIso,'o') % plot the time points from the isochrones on each loop hold on

end

function [V,P] = collectpv

% collectpv collects the Pressure and volume of each loop with its own % windkessel parameters and puts them in one matrix % [V,P] = COLLECTPV Gives a matrix V and a matrix P in wich each column % represents the pressure/volume of one PVloop with its own end diastolic % pressure and windkesselparameters( which must be already saved in the work- space) and saves it to collectedPV

%10-06-2005, F.A. Rövekamp

% Make a matrix with all zeros with length of the number of isochrones and % the width, the number of loops P = zeros(181,14); V = P;

for i = 1:14

fname = sprintf('loop%d.mat',i);

S = load(fname,'P','V');

P(:,i) = S.P(:); V(:,i) = S.V(:);

60 end save('collectedPV','P','V');

function x = test(P,V)

% test solves the least square fit of the nonlinear n model with the % sheep PVloops % X = TEST(P,V) gives in x the four parameters of the non linear model % (Pmax, Vref, Vd and N) when fitted to the sheep loops.

%13-05-2005, F.A.Rövekamp

%starting values of x Pmax = 116; Vmax = 185; Vd = 11; n = 1;

% set options Options = optimset('MaxFunEvals',1E50,'MaxIter',1E50);

%define x x0 = [Pmax Vmax Vd n];

%solving nonlinear lest square problem [x,J] = lsqnonlin(@(x) ntest(x,P,V),x0,[],[],Options); function J = ntest(x,P,V)

% ntest defines the least square of the function you want to fit

% 11-05-2005, F.A. Rövekamp

% define x Pmax = x(1); Vmax = x(2); Vd = x(3); n = x(4);

% calculate least square J = P - Pmax*(((V-Vd)/Vmax).^n);

A.1.4 Non-Linear model with sigmoidal isochrones function x = est_sigm

%est_sigm fits the nonlineair sigmoide model to each isochrone from the %sheep model. % X = EST_SIGM gives in x the four parameters (Pmax, Vref, B and alfa) of % the nonlinear model, for each isochrone fitted to the sheep isochrone.

%10-07-2005, F.A.Rövekamp

61 %load the sheep loops [V,P] = Get_Data_Sheep;

%solve for each isochrone the least square fit for i = 1:10:length(V(:,1)) curV = V(i,:); curP = P(i,:);

x(i,:) = test(curP,curV); disp(i) end

A.2 The Akaike information criterion function sum_of_squares

%sum_of_squares gives the sum of squares, the AIC and the AICc of the model and the sheep data

%14-06-2005, F.A.Rövekamp

%get the P and V from the model [Vm,Pm] = collectpv;

%Get the P and V from the sheep data [Vs,Ps] = Get_Data_Sheep;

Vm = real(Vm); Pm = real(Pm);

%Calculate the horizontal and vertical distance hor_dist = Vm-Vs; vert_dist = Pm-Ps; hor_dist = hor_dist(:); vert_dist = vert_dist(:);

%Calculate sum of squares for i = 1:(length(Vm)*14)

SS(i) = (hor_dist(i)^2+vert_dist(i)^2); end

SS = sum(SS);

N = 180*14; K = (180*4)+1; AIC = N*log(SS/N)+2*K AICC = AIC+((2*K*(K+1))/(N-K-1))

62 A.3 The Simulations

A.3.1 The linear model with fixed volume intercept. function [P,V,P_ao,F_ao] = main

% Simulates heart and circulation by a three-element % windkessel model for the arterial system and an elastance curve % which is generated from sheep PV-loops. % % Reference: % [1] Segers, P et al. (2000). Quantification of the contribution % of cardiac and arterial remodeling to hypertension. % Hypertension 36:760-765. % % November 2004, F.A.Rövekamp

% Main procedure: call other files

% System parameters WkPars.Pv = []; % Venous pressure WkPars.Rv = 0.02; % Venous resistance [2] WkPars.Emin = 0.047; % Elastance offset WkPars.Emax = 1.5; % Maximum elastance WkPars.Vd = -66; % Intercept of pV-relation WkPars.Ti = 0.72; % Interbeat period WkPars.Z0 = 0.1119; % Arterial impedance WkPars.Ca = 2.1950; % Arterial compliance WkPars.Rp = 1.5991; % Peripheral resistance

WkPars.Va0 = 50; % Aortic rest volume WkPars.P0 = 80; % Peripheral rest pressure

% Initial conditions (t = 0 in E corresponds with R-wave of ECG [1]) WkInit = zeros(2,1); WkInit(1) = 104.9; % Vrv(0) (optimized for current % parameters WkInit(2) = 5; % Pp(0) (optimized for current % parameters

% Duration of simulation Tstart = 0; % Start of simulation ts = 0.004; % Time step Tend = 12*WkPars.Ti; % End of simulation WkPars.TSpan = [Tstart:ts:Tend]; % Time vector WkPars.ts = ts;

% Plot Parameters PlotT1 = Tend-2.3*WkPars.Ti; %Start Time Plot

63 PlotT2 = Tend; %End time plot

WkPars.Tend = Tend;

% loop to run simulation for different Pv PvStart = -1.0; PvEnd = 9.0; PvStep = 1;

%Pv_arr = [PvStart:PvStep:PvEnd]; Pv_arr = -1.1295; t = WkPars.TSpan; Ti = WkPars.Ti; PlotTimeIndex = find(t>=PlotT2-Ti & t<=PlotT2);

P = zeros(length(Pv_arr),length(PlotTimeIndex)); V = zeros(length(Pv_arr),length(PlotTimeIndex)); P_ao = zeros(length(Pv_arr),length(PlotTimeIndex)); F_ao = zeros(length(Pv_arr),length(PlotTimeIndex)); for j=1:length(Pv_arr)

WkPars.Pv=Pv_arr(j);

[Prv,Vrv,Pa,Fi,Va,E] = simul(WkPars,WkInit); % Run simulation

P(j,:) = Prv(PlotTimeIndex); V(j,:) = Vrv(PlotTimeIndex); P_ao(j,:) = Pa(PlotTimeIndex); F_ao(j,:) = Fi(PlotTimeIndex);

% Plot PV-loop

% Time index of beat to plot % plotcol(Vrv(PlotTimeIndex),Prv(PlotTimeIndex),Phase(PlotTimeIndex)) plot(Vrv(PlotTimeIndex),Prv(PlotTimeIndex)) title('Left ventricle: pV-relation') xlabel('Vrv') ylabel('Prv') hold on

TimeIndexLastBeat = find(t > Tend-Ti & t <= Tend); relTimes = [0.1:0.1:0.6]; iIso = TimeIndexLastBeat(round(length(TimeIndexLastBeat)*relTimes));

isoV =Vrv(iIso); isoP =Prv(iIso); plot(isoV,isoP,'ks') drawnow %%isoV(j)=isoVrv; %%isoP(j)=isoPrv; %%plot(isoVrv,isoPrv,'ks') end

%plot isochroon

64

%isoV=isoV'; %isoP=isoP'; %plot(isoV,isoP)

[LVESP,LVESV] = parametersl(t,WkPars,Tend,Vrv,Prv,Fi) %calaculates paramets and shows them in a dialog box hold on plot(LVESV,LVESP,'r+')

plotsstationair %plots results

fname = input('filename: ','s'); save(fname) function [Prv,Vrv,Pa,Fi,Va,E] = simul(WkPars,WkInit) % Runs simulation and calculates remaining quantities in % model of left ventricle.

% December 2004, F.A.Rövekamp

% Assign WkPars fields to parameters [V,P] = Get_Data_Sheep; dummy = struct2cell(WkPars); [Pv,Rv,Emin,Emax,Vd,Ti,Z0,Ca,Rp,alpha1,alpha2,n1,n2,Va0,P0,TSpan,Tend,ts ] = deal(dummy10);

% Set integration options options = ode- set('OutputSel',[12],'MaxStep',Ti/10,'outputFcn','odeplot');

% Solve differential equations for windkessel (simulation) [t,Wk] = ode15s(@ode_wk3,TSpan,WkInit,options,WkPars,V,P); % close (1) %close figure

% Initialise remaining quantities Vrv = Wk(:,1); %isoVrv=Vrv(845); Pp = Wk(:,2); Vrv0 = WkInit(1); Pp0 = WkInit(2);

TimeIndexLastBeat = find(t > Tend-Ti & t <= Tend);

% Calculate E and Prv for i = 1:length(t) E(i) = elastance(V,P,t(i),Ti); % E(i) = elast_senz(t(i),Emin,Emax,Ti); % Elastance Prv(i) = E(i)*(Vrv(i)-Vd); % Right ventricular pressure

65 end %isoPrv=Prv(845); % Calculate remaining quantities

Va = Ca*(Pp-Pp0)+Va0; for i = 1:length(t) if Pv >= Prv(i) & Prv(i) < Pp(i) % Diastole Phase(i) = 'd'; Pra(i) = Prv(i); Pa(i) = Pp(i); Fra(i) = (Pv-Prv(i))/Rv; Fi(i) = 0; elseif Pv < Prv(i) & Prv(i) >= Pp(i) % Systole Phase(i) = 's'; Pra(i) = Pv; Pa(i) = Prv(i); Fra(i) = 0; Fi(i) = (Prv(i)-Pp(i))/Z0; elseif Pv < Prv(i) & Prv(i) < Pp(i) % Isovolum contr/relax Phase(i) = 'i'; Pra(i) = Pv; Pa(i) = Pp(i); Fra(i) = 0; Fi(i) = 0; end end Fo = Pp./Rp; Frv = (Fra-Fi)'; Fca = Fi'-Fo;

% Compute stroke volume (of last beat) SV = ts*trapz(Fi(TimeIndexLastBeat)); % Stroke volume

function dWk=ode_wk3(t,Wk,WkPars,V,P)

% ODE-file with hemodynamic equations of right ventricle and % pulmonary circulation for numerical solver. Returns the right ODE % in dWk at time t. % %December 2004, F.A.Rövekamp

% Assign WkPars fields to parameters dummy = struct2cell(WkPars); [Pv,Rv,Emin,Emax,Vd,Ti,Z0,Ca,Rp,alpha1,alpha2,n1,n2,Va0,P0,TSpan,Tend,ts ] = deal(dummy10);

% Initialization dWk = zeros(2,1); % New states of the system Vrv = Wk(1); % Right ventricular volume Pp = Wk(2); % Aortic volume

% Current values of E and Prv E = elastance(V,P,t,Ti);

66

Prv = E*(Vrv-Vd); % Right ventricular pressure

% Conditional structure: returns right ODE for current state % of the system

if Pv > Prv & Prv < Pp % Diastole dWk(1) = (Pv-Prv)/Rv; % dVrv/dt dWk(2) = -Pp/(Rp*Ca); % dPp/dt elseif Pv < Prv & Prv > Pp % Systole dWk(1) = -(Prv-Pp)/Z0; % dVrv/dt dWk(2) = ((Prv-Pp)/Z0-Pp/Rp)/Ca; % dPp/dt elseif Pv < Prv & Prv < Pp % Isovolumetric contr/relax dWk(1) = 0; % dVrv/dt dWk(2) = -Pp/(Rp*Ca); % dPp/dt else disp('Unlikely state of windkessel') end function E = elastance(V,P,t,Ti)

% elastance returns the elastance fitted to the sheep data at % given time.

% June, 2005, F.A.Rövekamp

nIsochrones = 180; Vd = -66; for i=1:nIsochrones viso = V(i,:); piso = P(i,:);

viso = [Vd viso]'; piso = [0 piso]';

x(i) = viso\piso; end t = rem(t,Ti); t_test = [0:0.004:0.716]; if t == 0 index = 1; else [current_t,index] = min(abs((t_test./t)-1)); end

E = x(index);

A.3.2 Linear model with free volume intercept.

67 The main file is exactly the same as from the linear model with fixed volume intercept. Also simul, and ODE_wk3 is the same, only then instead of calling E = elastance(V,P,t,Ti), this program calls [Vd(i),E(i)] = free_intercept(V,P,t(i),Ti); function [Vd,E] = free_intercept(V,P,t,Ti)

% FREE_INTERCEPT determines the volume intercept and the elastance for a given time % Vd = free_intercept(V,P,t,Ti) gives for a given PV-loop the values for % the free volume intercept and the elastance per isochrone.

% 06-06-2005, F.A.Rövekamp

%variables nIsochrones = 180; %number of isochroner per loop nLoops = 14; %number of loops viso2 = zeros(nLoops,1)+1; %column of ones, with length viso, %which must be used for solving the %lineair equation

%solving lineair equation for i=1:nIsochrones viso1 = V(i,:)'; piso = P(i,:)';

viso = [viso1 viso2];

x = viso\piso; E(i) = x(1); Vd(i) = -(x(2)/x(1)); end

%giving the right value of E and V for the given time. t = rem(t,Ti); t_test = [0:0.004:0.716]; if t == 0 index = 1; else [current_t,index] = min(abs((t_test./t)-1)); end

Vd = Vd(index); E = E(index);

A.3.3 A non-linear model with isochrones from convex till concave. function [P,V,P_ao,F_ao] = mainnl

% Simulates heart and pulmonary circulation by a three-element % windkessel model for the arterial system and the non-linear % model with isochrones from convex till concave % Main procedure: call other files

68

% System parameters WkPars.Pv = []; % Venous pressure WkPars.Rv = 0.02; % Venous resistance [2] WkPars.Ti = 0.72 % Interbeat period WkPars.Z0 = 0.11; % Arterial impedance WkPars.Ca = 2.5985; % Arterial compliance WkPars.Rp = 1.3570; % Peripheral resistance

WkPars.Va0 = 50; % Aortic rest volume WkPars.P0 = 80; % Peripheral rest % pressure

% Initial conditions (t = 0 in E corresponds with R-wave of ECG [1]) WkInit = zeros(2,1); WkInit(1) = 104.9; % Vrv(0) WkInit(2) = 5; % Pp(0)

% Duration of simulation Ti = WkPars.Ti; Tstart = 0; % Start of simulation ts = 0.004; % Time step Tend = 12*Ti; % End of simulation WkPars.TSpan = [Tstart:ts:Tend]; % Time vector WkPars.ts = ts;

% Plot Parameters PlotT1 = Tend-2.3*WkPars.Ti; %Start Time Plot PlotT2 = Tend; %End time plot

WkPars.Tend = Tend;

% loop to run simulation for different Pv PvStart = 1; PvEnd = 8.0; PvStep = 1;

%Pv_arr = [PvStart:PvStep:PvEnd]; Pv_arr = [9.9 9.7 8.4 7.3 5.6 4.1 3.2 2.0 1.0 0.6 -0.3]; Pv_arr = 3.2417

t = WkPars.TSpan; Ti = WkPars.Ti; PlotTimeIndex = find(t>=PlotT2-Ti & t<=PlotT2);

P = zeros(length(Pv_arr),length(PlotTimeIndex)); V = zeros(length(Pv_arr),length(PlotTimeIndex)); P_ao = zeros(length(Pv_arr),length(PlotTimeIndex)); F_ao = zeros(length(Pv_arr),length(PlotTimeIndex)); for j=1:length(Pv_arr)

69 WkPars.Pv=Pv_arr(j);

[Prv,Vrv,Pa,Fi,Va,E] = simulnl(WkPars,WkInit); % Run simulation

P(j,:) = Prv(PlotTimeIndex); V(j,:) = Vrv(PlotTimeIndex); P_ao(j,:) = Pa(PlotTimeIndex); F_ao(j,:) = Fi(PlotTimeIndex);

% Plot PV-loop

% Time index of beat to plot % plotcol(Vrv(PlotTimeIndex),Prv(PlotTimeIndex),Phase(PlotTimeIndex)) plot(Vrv(PlotTimeIndex),Prv(PlotTimeIndex),'r') hold on %plot(Vrv(PlotTimeIndex(1)),Prv(PlotTimeIndex(1)),'*k') %plot(Vrv(PlotTimeIndex(2:5:end)),Prv(PlotTimeIndex(2:5:end)),'ok') title('Left ventricle: pV-relation') %axis([30 180 0 120]) xlabel('Vrv') ylabel('Prv') hold on

TimeIndexLastBeat = find(t > Tend-Ti & t <= Tend); relTimes = [0.1:0.1:0.6]; iIso = TimeIndexLastBeat(round(length(TimeIndexLastBeat)*relTimes));

isoV =Vrv(iIso); isoP =Prv(iIso); %plot(isoV,isoP,'ks') drawnow end

%plot isochroon

%isoV=isoV'; %isoP=isoP'; %plot(isoV,isoP)

[LVESP,LVESV] = parametersnl(t,WkPars,Tend,Vrv,Prv,Fi) %cala- culates paramets and shows them in a dialog box hold on plot(LVESV,LVESP,'r+') plotsstationair %plots results

fname = input('filename: ','s'); save(fname)

function [Prv,Vrv,Pa,Fi,Va,E] = simulnl(WkPars,WkInit) % Runs simulation and calculates remaining quantities in % model of left ventricle.

70

% December 2004, F.A.Rövekamp

% Assign WkPars fields to parameters %dummy = struct2cell(WkPars); %[Pv,Rv,Emin,Emax,Vd,Ti,Z0,Ca,Rp,alpha1,alpha2,n1,n2,Va0,P0,Pmax,Vmax,TS pan,Tend,ts] = deal(dummy10);

Pv = WkPars.Pv; Rv = WkPars.Rv; Ca = WkPars.Ca; Rp = WkPars.Rp; Z0 = WkPars.Z0; TSpan = WkPars.TSpan; Tend = WkPars.Tend; P0 = WkPars.P0; Va0 = WkPars.Va0; Ti = WkPars.Ti; ts = WkPars.ts;

% Set integration options options = ode- set('OutputSel',[12],'MaxStep',Ti/10,'outputFcn','odeplot');

% Solve differential equations for windkessel (simulation) [t,Wk] = ode15s(@ode_wk3nl,TSpan,WkInit,options,WkPars); % close (1) %close figure

% Initialise remaining quantities TimeIndexLastBeat = find(t > Tend-Ti & t <= Tend);

Vrv = Wk(:,1);

Pp = Wk(:,2); Vrv0 = WkInit(1); Pp0 = WkInit(2);

% Calculate E and Prv for i = 1:length(t)

[Pmax(i),Vmax(i),Vd(i),n(i)] = parameters_sigm(t(i),Ti);

Prv(i) = Pmax(i)*(((Vrv(i)-Vd(i))/Vmax(i))^n(i));

Right ventricular pressure end

E = [];

% Calculate remaining quantities

71

Va = Ca*(Pp-Pp0)+Va0; for i = 1:length(t) if Pv >= Prv(i) & Prv(i) < Pp(i) % Diastole Phase(i) = 'd'; Pra(i) = Prv(i); Pa(i) = Pp(i); Fra(i) = (Pv-Prv(i))/Rv; Fi(i) = 0; elseif Pv < Prv(i) & Prv(i) >= Pp(i) % Systole Phase(i) = 's'; Pra(i) = Pv; Pa(i) = Prv(i); Fra(i) = 0; Fi(i) = (Prv(i)-Pp(i))/Z0; elseif Pv < Prv(i) & Prv(i) < Pp(i) % Isovolum contr/relax Phase(i) = 'i'; Pra(i) = Pv; Pa(i) = Pp(i); Fra(i) = 0; Fi(i) = 0; end end Fo = Pp./Rp; Frv = (Fra-Fi)'; Fca = Fi'-Fo;

% Compute stroke volume (of last beat) SV = ts*trapz(Fi(TimeIndexLastBeat)); % Stroke volume

function dWk=ode_wk3nl(t,Wk,WkPars)

% ODE-file with hemodynamic equations of right ventricle and % pulmonary circulation for numerical solver. Returns the right ODE % in dWk at time t. % % December 2004, F.A.Rövekamp % Assign WkPars fields to parameters

Pv = WkPars.Pv; Rv = WkPars.Rv; Ti = WkPars.Ti; Z0 = WkPars.Z0; Ca = WkPars.Ca; Rp = WkPars.Rp; Va0 = WkPars.Va0; P0 = WkPars.P0; TSpan = WkPars.TSpan; Tend = WkPars.Tend; ts = WkPars.ts;

% Initialization dWk = zeros(2,1); % New states of the system

72 Vrv = Wk(1); % Right ventricular volume Pp = Wk(2); % Aortic volume %load estimation of parameters

[Pmax,Vref,alfa,B] = parameters_sigm(t,Ti);

% Current values of E and Prv

Prv = Pmax*(((Vrv-Vd)/Vmax)^n); ;% Right ventricular pressure

% Conditional structure: returns right ODE for current state % of the system

if Pv > Prv & Prv < Pp % Diastole dWk(1) = (Pv-Prv)/Rv; % dVrv/dt dWk(2) = -Pp/(Rp*Ca); % dPp/dt elseif Pv < Prv & Prv > Pp % Systole dWk(1) = -(Prv-Pp)/Z0; % dVrv/dt dWk(2) = ((Prv-Pp)/Z0-Pp/Rp)/Ca; % dPp/dt elseif Pv < Prv & Prv < Pp % Isovolumetric contr/relax dWk(1) = 0; % dVrv/dt dWk(2) = -Pp/(Rp*Ca); % dPp/dt else disp('Unlikely state of windkessel') end

function [Pmax,Vmax,Vd,n] = parameters_sigm(t,T)

%parameters_sigm returns the parameters of Pmax,Vref, Vd and n for the %current time

%F.A.Rövekamp,11-07-2005 t = rem(t,T); t_test = [0:0.004:0.716]; if t == 0 index = 1; else [current_t,index] = min(abs((t_test./t)-1)); end

x = [... 75.84 224.81 49.588 1.2654 112.04 188.99 26.603 2.2636 29.783 271.29 -150.81 8.5186 13.594 287.64 -195.39 7.7091 15.997 288.37 -197.39 5.9277 20.412 280.67 -188.23 4.5944 25.588 272.19 -178.88 3.635

73 29.285 271.77 -183.98 3.0787 37.538 260.24 -166.09 2.376 43.522 257.04 -164.44 1.9545 52.975 248.02 -146.72 1.4927 62.298 238.7 -128.09 1.1303 79.355 221.69 -60.785 0.60845 84.667 216.35 8.9782 0.21524 86.035 214.97 22.274 0.13402 90.06 210.94 22.241 0.12405 93.487 207.52 22.213 0.11924 96.308 204.69 21.522 0.11914 98.637 202.37 20.854 0.12124 99.875 201.13 22.404 0.11631 101.32 199.69 21.637 0.12166 101.75 199.26 22.445 0.12021 102.21 198.79 21.746 0.12429 102.13 198.88 21.555 0.12473 102.07 198.94 21.455 0.12544 102.48 198.53 19.745 0.13241 102.76 198.24 18.949 0.13571 103.36 197.64 17.265 0.1426 103.71 197.3 16.367 0.14562 103.92 197.09 16.223 0.14533 104.55 196.46 14.417 0.152 104.74 196.27 14.344 0.15066 105.43 195.57 12.852 0.15648 105.95 195.06 12.146 0.15853 106.35 194.66 11.924 0.15833 106.95 194.04 10.746 0.16191 107.25 193.75 10.655 0.16017 107.57 193.43 10.21 0.15977 107.82 193.18 10.17 0.15789 107.77 193.23 11.15 0.151 108.46 192.54 10.245 0.15422 108.85 192.14 10.212 0.15295 109.41 191.59 9.4059 0.15542 109.69 191.31 9.2308 0.15459 109.98 191.03 9.432 0.1532 110.96 190.04 8.0774 0.16088 111.91 189.1 7.3517 0.1665 113.06 187.94 6.1408 0.17489 113.89 187.11 5.6948 0.17896 114.43 186.57 6.2284 0.17768 115.62 185.38 5.0638 0.18629 116.31 184.69 5.0498 0.18773 117.39 183.6 4.2734 0.19422 117.71 183.29 4.6861 0.19165 118 183 5.6133 0.18682 118.7 182.3 5.2446 0.18924 119.01 181.98 5.739 0.1862 119.74 181.25 5.4263 0.18859 119.84 181.14 5.8793 0.18476 120.17 180.82 6.3713 0.18205 121.18 179.8 5.6745 0.18766 121.9 179.08 5.4694 0.18987 122.89 178.11 4.9613 0.19468 123.25 177.75 4.9648 0.19443

74 123.42 177.57 5.6591 0.19031 124.38 176.62 5.1507 0.19556 124.95 176.05 5.4807 0.19523 125.95 175.04 5.3119 0.19939 126.2 174.8 5.7683 0.19707 126.6 174.4 6.64 0.1939 128.12 172.88 6.5094 0.20088 130 171 6.7846 0.20787 132.04 168.84 6.9107 0.21649 134.66 166.31 7.0737 0.22816 137.27 163.73 7.8021 0.23647 142.31 158.76 7.501 0.26287 147.94 153.14 7.7784 0.28871 155.93 145.19 7.5107 0.33163 164.77 136.14 7.3776 0.38135 174.58 126.37 7.5196 0.43694 185.33 115.62 7.028 0.51352 196.31 104.67 6.8771 0.59774 206.59 94.412 6.3758 0.70115 215.69 85.276 5.8662 0.8204 223.01 77.962 6.0352 0.92416 230.15 70.833 4.4945 1.1293 235.56 65.227 3.528 1.3406 239.52 61.314 1.016 1.6912 241.41 59.213 -0.75817 2.0198 243.71 56.816 -1.1219 2.2928 241.41 57.271 -4.4851 2.8479 244.09 56.483 -5.4001 3.2472 242.42 57.208 -7.4823 3.7805 243.5 55.003 -4.4721 3.6378 241.46 50.155 3.47 2.8191 244.67 49.488 8.6411 2.2705 243.69 51.465 13.882 1.718 242.21 54.219 14.671 1.6636 238.84 58.284 15.418 1.5879 235.91 62.679 15.891 1.5337 234.78 65.508 16.157 1.5422 166.84 131.2 17.872 0.87711 227.55 70.667 18.539 1.4004 122.01 178.97 17.822 0.76144 121.87 179.13 18.472 0.79271 121.52 179.48 18.957 0.83092 124.09 176.9 19.951 0.86819 124.18 176.81 20.867 0.89682 122.63 178.37 21.889 0.91595 122.31 178.69 22.896 0.93676 113.09 187.92 23.809 0.92958 112.92 188.1 24.95 0.94843 112.61 188.41 26.012 0.96831 113 188.03 27.192 0.98925 112.96 188.05 28.537 0.99948 117.73 182.96 29.849 1.0311 116.48 184.01 30.998 1.0413 115.85 184.45 32.132 1.0545 114.54 185.45 33.262 1.0656 99.265 201.47 33.952 1.0348 97.839 202.61 35.223 1.0452

75 96.725 203.64 36.361 1.0517 96.076 203.98 37.62 1.0622 106.41 192.19 39.181 1.1046 104.47 193.66 40.451 1.1135 105.25 191.92 41.833 1.1326 108.75 186.75 43.183 1.1563 99.523 196.54 44.188 1.1392 104.3 190.33 45.758 1.1663 92.486 202.98 46.69 1.1403 73.295 224.55 47.12 1.0839 70.945 226.56 47.903 1.0833 68.473 228.99 48.613 1.0828 64.76 233.09 49.015 1.0769 62.219 235.84 49.553 1.0744 61.165 236.59 50.213 1.0755 59.542 238.37 50.846 1.073 58.04 240.18 51.205 1.069 55.734 243.16 51.298 1.0607 53.534 245.95 51.259 1.0528 56.618 242.3 51.905 1.0715 54.611 244.3 52.272 1.0565 56.948 241.06 53.105 1.067 57.46 240.2 53.789 1.0697 55.592 242.44 54.041 1.0651 55.177 242.93 54.472 1.0638 54.326 243.99 54.508 1.0617 54.086 244.2 54.878 1.0617 53.492 244.82 55.051 1.0612 53.119 245.27 55.365 1.0611 55.331 242.09 56.136 1.0712 56.009 241.01 56.633 1.0749 56.865 239.61 57.127 1.0787 56.881 239.6 57.323 1.0783 55.493 241.47 57.362 1.0735 56.739 239.75 57.73 1.0778 56.795 239.62 57.932 1.0784 59.197 236.14 58.336 1.0869 59.151 236.17 58.466 1.0864 59.543 235.59 58.521 1.0875 61.146 233.59 58.609 1.0912 62.08 232.11 58.56 1.0955 63.47 229.97 58.473 1.1019 62.776 231 58.121 1.1006 62.447 231.71 57.764 1.0996 63.187 230.97 57.674 1.1015 62.023 232.79 57.089 1.0984 63.201 231.4 57.039 1.1027 62.505 233.94 56.259 1.1026 65.179 231.08 56.349 1.1164 67.15 229.7 56.45 1.1237 69.464 226.54 56.679 1.1361 72.033 223.12 57.192 1.1469 70.884 225.63 56.868 1.1428 69.865 227.52 56.495 1.1404 69.159 228.8 56.262 1.1354 71.651 226.03 56.415 1.149 75.032 222.02 56.759 1.1674

76 75.655 220.42 56.791 1.1748 77.304 221.31 56.051 1.1948 ];

Pmax = x(index,1); Vmax = x(index,2); Vd = x(index,3); n = x(index,4);

A.3.4 Non-Linear model with sigmoidal isochrones

The main file is the same as the one from the non-linear model with isochrones from convex till concave. The simul and ODE_wk3 files are also almost the same. The only difference is that the function Prv(i) is different in these files (adjusted to the model) and that the file parameters_sigm consists of other parameter values.

A.4 Fitting with Fourier series

A.4.1 Fitting the whole system at once function [x,J] = nonlinfitfunc(Prv,Vrv,Pmax,Vd,Vmax,modN,angN)

%NONLINFITFUNC returns the parameters fitted to the linear model. % J = NONLINFITFUNC(PRV, VRV, PMAX, VD, VMAX, N) returns the parameters % Pmax, Vd, Vmax, n fitted to the linear model. % % % 01-03-2005, F.A.Rovekamp

% Define x if nargin == 0 Pmax = 95; Vd = -16.15; Vmax = 155 ; modN(1) = 2.4353; modN(2) = 3.4415; modN(3) = 1.0099; modN(4) = 0.5430; modN(5) = 0.3921; modN(6) = 0.3403; angN(1) = 0; angN(2) = 0.9446; angN(3) = 1.5535; angN(4) = 0.6062; angN(5) = 0.5508; angN(6) = 0.1825;

end x0 = [Pmax Vd Vmax modN(:)' angN(:)']; Options = optim- set('Display','iter','Diagnostics','on','MaxFunEvals',1E50,'MaxIter',1E50);

77

[V,P] = Get_Data_Sheep;

%Solve non linear least-squares

[x,J] = lsqnonlin(@(x) PV_func(x,P,V),x0,[],[],Options); est_Pmax = x(1); est_Vd = x(2); est_Vmax = x(3); est_modN(1:6) = x(4:9); est_angN(1:6) = x(10:15);

Viso = [-20:100]; nIsochrones = size(V,1); Ti = 0.72; ts = 0.004; t = [0:nIsochrones-1]*ts; figure for i = 1:nIsochrones est_n(i) = n_fourier(t(i),est_modN,est_angN,Ti);

Piso = est_Pmax*(((Viso-est_Vd)/est_Vmax).^est_n(i)); plot(Viso,Piso,':') hold on VcurIso = min(V(i,:)):max(V(i,:)); PcurIso = est_Pmax*(((VcurIso-est_Vd)/est_Vmax).^est_n(i)); plot(VcurIso,PcurIso,'Linewidth',2) end [Vkwart,Pkwart] = Get_Data_Sheepkwart; plot(Vkwart',Pkwart') function [J] = PV_func(x,P,V)

%PV_FUNC return the residual. % J = PV_FUNC(X,P,V) returns the residual of the ad hoc nonlinear % pressure-volume model. % % [J,Jacob] = PV_FUNC(...) also returns the Jacobian of J. % % 28 February 2005, F.A. Rövekamp Pmax = x(1); Vd = x(2); Vmax = x(3); modN(1:6) = x(4:9); angN(1:6) = x(10:15);

Ti = 0.72; ts = 0.004; nIsochrones = size(V,1); nLoops = size(V,2); t = (0:nIsochrones-1)*ts;

%Define function nCol = n_fourier(t,modN,angN,Ti); n = nCol*ones(1,nLoops); J = P - Pmax*(((V-Vd)/Vmax).^n);

78

A.4.2 Fourier transformation function test_fourier_n

% test_fourier_n makes a fourier transformation on the given data

%February 2005, F.A.Rövekamp

% Constants. PMAX = 95; VMAX = 155; Vd = -16.1; % Calculate n from simulated pressure and volume. [n,Ti,ts] = calculate_n(PMAX,VMAX,Vd);

% Get modulus and phase of n. [modN,angN] = getmodang(n);

% Calculate modulus and phase back to n in time domain. n_backtransformed = n_fourier(modN,angN,Ti,ts); plot(n_backtransformed) function [n,Ti,ts] = calculate_n(Pmax,Vmax,Vd)

%Caluculate_n calculates the function n with the sheep data

%31-03-2005, F.A.Rövekamp

[V1,P1] = Get_Data_Sheep; ts = 0.004; Ti = length(V1)*ts; Pmax = 95; Vmax = 155; Vd = -16,1;

% make column vectors P1 = P1(:); V1 = V1(:);

% function n n = log(P1/Pmax)./log((V1-Vd)/Vmax); function [modX,angX] = getmodang(x)

% GETMODANG gets the modulus and phase of FFT of x. %[modX,angX,f] = getmodang(x) gives the modulus and phase of a %function x, which is dependent on Plv and Vlv.

%31-03-2005, F.A.Rövekamp

% constants

79 N = length(x); n = round(N/2); iHarmonics = 6; %fs = 1/ts;

% Fast Fourier transform X = fft(x);

% modulus of X modX = abs(X(1:n))/N; modX(2:n) = 2*modX(2:n); modX = modX(1:iHarmonics);

% phase of X angX = angle(X(1:n)); angX = angX(1:iHarmonics); function n = n_fourier(modN,angN,Ti,ts)

% n = n_fourier(modN,angN,Ti,ts) % % Calculates n with fourier analysis at t. One needs the modulus and the % angular of N. n is normalized with respect to Ti.

% Construct variables. n = length(modN); k = [0:n-1]; % Harmonics t = [0:ts:Ti]; t = t(:); N = length(t); omega = 2*pi/Ti;

% Calculate n. n = cos(omega*t*k + ones(N,1)*angN')*modN;

80 81 Appendix B Windkessel parameters loops

This is all the information about the sheep loops, we got from the LUMC in Leiden.

Table B. 1: Information about the sheep loops. HR= heart rate, SV= stroke volume. CO= cardiac output, Ves= end-systolic volume, Ved= end-diastolic volume, EF= ejection fraction, Pes=end-systolic pressure, Ped=end- diastolic-pressure, DpdtMax= maximum value of derivative of pressure, DpdtMin=minimum value of deriva- tive of pressure, SW=stroke-work and tau

HR SV CO Ves Ved EF Pes Ped DPdt DPdt SW tau Max Min mean 83.4 42.0 3502.5 26.5 66.6 63.6 82.7 3.5 1742.9 -1255.8 3203.8 55.7 Se 0.27 11.4 944.8 9.1 19.6 3.9 9.5 4.1 45.7 261.0 1195.5 8.1 1 83.3 56.6 4719.0 38.3 92.9 60.9 93.1 9.9 1687.4 -1578.9 4553.4 46.6 2 83.8 57.2 4792.1 37.0 92.6 61.7 92.1 9.7 1697.6 -1589.4 4649.6 45.2 3 83.3 55.9 4658.2 36.9 89.9 62.2 92.9 8.5 1671.1 -1571.2 4673.8 46.1 4 83.3 54.5 4538.0 35.2 85.5 63.7 91.8 7.3 1696.8 -1530.2 4596.6 47.8 5 83.3 51.7 4311.6 32.8 80.8 64.1 90.2 5.6 1699.4 -1441.0 4331.0 50.4 6 82.9 46.1 3817.8 31.5 75.3 61.2 89.2 4.1 1713.4 -1340.9 3854.9 52.3 7 83.3 42.6 3547.4 28.1 69.8 61.0 86.2 3.2 1754.5 -1297.4 3332.9 54.2 8 83.3 38.0 3168.5 25.9 62.5 60.8 83.6 2.0 1779.3 -1243.9 2788.7 55.0 9 83.3 32.5 2705.1 23.7 55.1 59.0 80.5 1.0 1786.6 -1158.5 2250.0 57.4 10 83.8 31.6 2651.0 21.2 51.5 61.4 77.2 0.6 1791.4 -1059.8 2083.0 59.9 11 83.3 32.1 2678.0 18.0 49.3 65.2 74.2 -0.3 1799.8 -1007.5 2092.4 64.0 12 83.8 31.1 2610.3 16.4 46.5 67.0 71.5 -0.3 1777.5 -959.7 2046.4 67.5 13 83.8 29.3 2454.3 13.8 41.9 69.9 68.8 -1.1 1777.5 -939.3 1843.4 66.1 14 83.3 28.6 2384.0 12.1 39.3 72.8 66.7 -1.5 1768.9 -862.9 1756.7 66.9

82

83 Apendix C Fitting with Fourier series

C.1 Fitting the whole system at once

The models that have to be fitted contain parameters that are a function of time. This means that in fact every moment in time a new parameter is found. This results, for example, for the two non-linear models in 4x180 = 720 parameters. To reduce the number of parameters the time func- tion of each parameter can be described by Fourier series. For example when there is in the model the parameter n(t) . With Fourier transformation the function becomes: k 2π n(t) = ∑ ai sin( it + ϕ i ) (18) i=0 T

th With T the interbeat period, ai and ϕi the amplitude and phase of the i harmonic of n(t) . When the function can be described with three harmonics, this means that the number of parameters is reduced from 180 to 9, i.e. a0 , a1 , a2 ,φ0 ,ϕ1 ,ϕ 2 , Pref ,Vref and V0 . This fit can only be done when all isochrones are fitted at once. This means that lsqnonlin fits all data points (in the example this means 14loopsx180points a loop) at once. (See Appendix A.4.1 Fitting the whole system at once for the MATLAB-code)

C.2 Fourier transformation on the non-linear model with isochrones from convex till concave.

Because all isochrones are fitted at once, we can consider V0 ,Vref and Pref as time independent parameters. Only the function n(t) is still a time dependent function.

For fitting the whole system at once, the initial values are very important. This means that from the real data we are using for our fit we have to make an estimation of n(t),V0 , Pref and Vref . We do this, using the schematic presentation given in Figure C. 1

V0 V0 is the intercept of the isochrones with the volume axis. These can be estimated from the data, by extrapolating (making a quadratic fit) the End-Systolic-Pressure-Volume relation and the End- Diastolic-Pressure-Volume relation .The point where the two lines intersect the volume axis, is defined as V0.

Pref

84 For small n(t) the systolic pressure-volume isochrone is approached. In other words for a refer- ence volume Vref the maximal isovolumic pressure is estimated. Theoretically this pressure is found at n = 0 for all volumes. When n(t) = 0

n(t) 0 ⎛V (t) −V ⎞ ⎛V (t) −V ⎞ P(t) = P ⎜ 0 ⎟ = P ⎜ 0 ⎟ = P ref ⎜ ⎟ ref ⎜ ⎟ ref ⎝ Vref ⎠ ⎝ Vref ⎠ Figure C. 1 shows that at n(t) = 0 ,P(t) is the maximum value of the Pressure in the loops, so

Pref = Pmax is the maximal isovolumic ventricular pressure.

Figure C. 1: Isochrones of the non-linear n-model, from n=0 to n=4.5 with steps of 0.1. From this data we can estimate initial parameter values.

Vref For making it easy to calculate Vref We take the isochrone at n(t) = 1 When n(t) = 1

V (t) −V0 1 V (t) −V0 P(t) = Pref ( ) = Pref ( ) Vref Vref then P V = ref V (t) −V ref P(t) 0

85

So with a random point at the isochrone with n=1 (Figure C. 1)and one of the PVloops Vref can be calculated. n(t) To estimate n(t) , we rewrote Eq. (2.3) into ⎛ P(t) ⎞ ⎛V (t) −V ⎞ n(t) = log⎜ ⎟ / log⎜ 0 ⎟ () ⎜ ⎟ ⎜ ⎟ ⎝ Pref ⎠ ⎝ Vref ⎠

After V0 , Pref ,Vref are estimated the pressure and volume of the real data can be used for this equation and n(t) can be estimated.(Figure C. 2a) After Fourier transformation n can probably be described with three harmonics.(Figure C. 2b) (See Appendix

A.4.2 Fourier transformation for the MATLAB-code)

function n(t) 8

6

n 4

2

0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 time in ms fourier transformation of n with three harmonics 8

6

4 n 2

0

-2 0 5 10 15 20 25 30 35 40 45 50

Figure C. 2 a) : n(t) estimated from sheep PV-loops. b): Fourier transformation of a) with three harmonics.

C.3 Fourier transformation on the non-linear model with sigmoidal isochrones.

86 In this model the four parameters stay ,also when fitting the whole system at once, time depend- ent. To make a good estimation of the initial values, the fit per isochrone is used. From these function fourier transformation is done with 20 harmonics(Figure C. 3).

30 20 fa

al 10 0 0 0.08 0.16 0.24 0.32 0.40 0.48 0.56 0.64 0.72

x 500 a Pm 0 0 0.08 0.16 0.24 0.32 0.40 0.48 0.56 0.64 0.72 f

e 500 Vr 0 0 0.08 0.16 0.24 0.32 0.40 0.48 0.56 0.64 0.72 60 n i 40 20 Pm 0 0 0.08 0.16 0.24 0.32 0.40 0.48 0.56 0.64 0.72 time in s

Figure C. 3: Parameters of the non-linear sigmoidal model. Red: Parameter after fitting per isochrone to the sheep data. Blue: fourier transformation of the fitted functions with 20 harmonics. a) alfa(t) b)Pmax c)Vref d)Pmin.

C.4 Results

When using the fourier transformation for the parameters, which are time-dependent, and thus using to fit the whole system at once. It give the following loops (Figure C. 4 Figure C. 5)

87 120

100

80 Hg m

m 60 in e r 40 ssu e r 20 p

0

-20 10 20 30 40 50 60 70 80 90 100 volume in ml

Figure C. 4: PV-loops generated with the non-linear n model, when the parameters are fitted at once and there is made use of fourier series.

140

120

100 g

80 mmH n

i 60 e r u

s 40 es

pr 20

0

-20 0 20 40 60 80 100 120 140 160 180 200 volume in ml

Figure C. 5: PV-loops generated with the non-linear sigmoidal model, when the parameters are fitted at once and there is made use of fourier series (with 20 harmonics).

88 C.5 Discussion

As can be seen from the loops, a lot of important information of the time dependent parameters is lost when using Fourier series. It seems that all peaks in the functions are important in generating smooth PV-loops. It might be useful taking more harmonics. We have tried this for the n-model with 6 and with 15 harmonics, but the simulation then doesn’t become stable. For the sigmoidal model we even tried 50 harmonics (Figure C.6)

120

100

80 Hg m

m 60 in e r 40 su s e r 20 P

0

-20 0 20 40 60 80 100 120 Volume in ml

Figure C. 6: PV-loops generated with the non-linear sigmoidal model, when the parameters are fitted at once and there is made use of fourier series (with 50 harmonics). X-axis: volume in ml. Y-axis: pressure in mmHg.

89