HumMod - Large Scale Physiological Models in Modelica

4 downloads 99143 Views 5MB Size Report
on component (Peripheral class). Figure 8: Structure of ... on gatrointestinal vascular resistance (AlphaReceptors class). ... NET and Adobe Flash environments ...
HumMod - Large Scale Physiological Models in Modelica Jiri Kofranek Marek Matejak Pavol Privitzer Institute of Pathophysiology, First Faculty of Medicine, Charles University U nemocnice 5, 128 53 Praha 2, Czech Republic [email protected] [email protected] [email protected]

Abstract Modelica is being used more and more in industrial applications, but Modelica is still not used as much in biomedical applications. For a long time we have mostly been using Matlab/Simulink models, made by Mathworks, for the development of models of physiological systems. Recently, we have been using a simulation environment based on the Modelica language. In this language, we implemented a large scale model of interconnected physiological subsystems containing thousands of variables. Model is a richly hierarchically structured, easily modifiable, and “self-documenting”. Modelica allows a much clearer than other simulation environments, to express the physiological nature of the modeled reality. Keywords: simulation; physiology; large-scale model

1 Introduction It is simply amazing how fast the Modelica simulation language adopted various commercial development environments. Modelica is being used more and more in industrial applications. However, Modelica is still not used as much in biomedical applications. The vast majority of biomedical simulation applications are still done in casual, block-oriented environments. These include referencing database development environments for biomedical models (such as the JSIM language - http://physiome.org/model/doku. php or CellML language - http://www.cellml.org/). A frequently used environment in biology and medicine is Matlab/Simulink – monographs dedicated to biomedicine models are usually equipped with additional software used in this environment, but so far without the use of new acasual or non-casual Simulink libraries, such as [24, 28, 32]. However, already in 2006, Cellier and Nebot [5] pointed out the benefits of Modelica, when used for clear implementation of physiological systems descriptions and interpretations. The classic McLeod‘s circulation system model was implemented by PHYSBE (PHYS-

iological Simulation Benchmark Experiment) [25, 26, 27]. The difference is clearly seen, if we compare the Cellier model implementation [5] with the freely downloadable version of the PHYSBE model implementation in Simulink http://www.mathworks.com/ products/demos/simulink/physbe/. Haas and Burnhan, in their recently published monograph, pointed out the benefits and large potential of the Modelica language used for modeling medically adaptive regulatory systems [9]. The most recent, Brugård [4] talks about work on the implementation of the SBML language (http://sbml.org/) in the Modelica language. This would enable us in the future, to simply run models, whose structure is described in the SBML language, on development platforms, based on the Modelica language.

2 Web of physiological regulations Thirty-nine years ago, in 1972 Guyton, Coleman and Granger published an article in the Annual Review of Physiology [9] which at a glance was entirely different from the usual physiological articles of that time. It was introduced by a large diagram on an insertion. Full of lines and interconnected elements, the drawing vaguely resembled an electrical wiring diagram at first sight (Fig. 1). However, instead of vacuum tubes or other electrical components, it showed interconnected computation blocks (multipliers, dividers, adders, integrators and functional blocks) that symbolized mathematical operations performed on physiological variables. In this entirely new manner, using graphically represented mathematical symbols; the authors described the physiological regulations of the circulatory system and its broader physiological relations and links with the other subsystems in the body – the kidneys, volumetric and electrolyte balance control, etc. Instead of an extensive set of mathematical equations, the article used a graphical representation of mathematical relations. This syntax allowed depicting relations between individual physiological variables graphically in the form of interconnected blocks representing mathematical operations. The whole dia-

Figure 1: Guyton’s blood circulation regulation diagram from 1972. gram thus featured a formalized description of physiological relations in the circulatory system using a graphically represented mathematical model. Guyton’s model was the first extensive mathematical description of the physiological functions of interconnected body subsystems and launched the field of physiological research that is sometimes described as “integrative physiology” today. Just as theoretical physics tries to describe physical reality and explain the results of experimental research using formal means, “integrative physiology” strives to create a formalized description of the interconnection of physiological controls based on experimental results and explain their function in the development of various diseases. From this point of view, Guyton’s model was a milestone, trying to adopt a systematic view of physiological controls to capture the dynamics of relations between the regulation of the circulation, kidneys, the respiration and the volume and ionic composition of body fluids by means of a graphically represented network. Guyton’s graphical notation was soon adopted by

other authors – such as Ikeda et al. (1979) in Japan [13] and Amosov et al. (1977) in the former USSR [2]. However, the graphical notation of the mathematical model using a network of interconnected blocks was only a graphical representation – Guyton’s model and later modifications (as well as the models of other authors that adopted Guyton’s representative notation) were originally implemented in Fortran and later in C++. Today the situation is different. Now, there are specialized software simulation environments available for the development, debugging and verification of simulation models, which allow creating a model in graphical form and then testing its behavior. One of these is the Matlab/Simulink development environment by Mathworks, which allows building a simulation model gradually from individual components – types of software simulation elements that are interconnected using a computer mouse to form simulation networks. Simulink blocks are very similar to the elements used by Guyton for the formalized representation of

NON-MUSCLE OXYGEN DELIVERY 1 s xo

OSV

168

AOM 1

RDO 512

u^3

40

2688

lower limit 50

263

238

198.7

2400

POT

Xo

SRK

BFN

248

RMO

57.14

200

244

VPF

1 s xo

VIM

203

GF4

512

EXC

219

0.009

1 220

211

1

216

CNY

NOD

214

CNA

142

0.001

2.5

177

PRA

0

CNX

178

AHM

1

1.211 REK

PPC

NON-MUSCLE LOCAL BLOOD FLOW CONTROL POB

276

274

275

181 AH8

AK1

1

273

ARM

POK

lower limit 0.2

1

AR1

40

AMM VIM RAM AUM

96.3 POA

281

282

285

279

280

xo

A2K

1

lower limit 0.5

VIM

PON

20

RAM

RSM

RAR

100

287

283

286

POJ

284b

0.495 0.33

lower limit 0.3

A3K

1

0.3

1

289

xo

0.85

33

32

VAS

2.86

5

VBD

30

QAO

upper limit 8 PA lower limit 4 294

298

295

A1B

1

303

when PA1PA1=170: AUB=0

AUK

AUB

304

0.0005

305 1 s

PLA

AUN

AUN

AUM

PL1

23

6

RPT

QPO

311

AUJ

22

0.21 0.85

314

312

AUV

1.001 AUL

0.3 AUD

1

18

xo

-4

0.25

QRN = f(PRA)

0.005

PRA

1

AUY

318

0.5

319

313

102

14

1

320

1.001

1

AVE

1

AUH

150

136

15

CPP

28

146

0.55

AUM

137

VPF 1 s

0.000225 138

AVE

0.4

148

PPD

QLO

0.5

1

152 PPO

AU 1

HM2

336

336c

112

141

PLF

0.0125

xo

VPF

PPI = 2 - (0.15/VPF)

DFP

333

-3.994e-010

0.01252

1 s

335

HM

RC2

40

PGR

94

PGC

upper limit 1

344

VB

2

RED CELLS AND VISCOSITY

5 1

1

349

1 xo s HPL

1

1

1 xo s

1 xo s

HMD HPR

1

VG

KE

5

123

HEART HYPERTROPHY OR DETERIORATION

90 CHY -5.9

124

CKE

126 0.00042

KOD

CHY^2

NOD

99

0.25

117

CNA

118

NED

1 xo s

2130

0.1

119

NAE

116

CNA

142

142 NID

PGH PTS

89

57 HYL

140

125

PGP

1 334

VRC

VRC

KE1

REK u^2

PTC

RKC

2850

127

0.00014

122

KED 75

96

PG2

95

121

0.013332

PIF

57600

348

128

KIR

CKE

AM

120

HMD

0.0125

PULMONARY DYNAMICS AND FLUIDS

57600

343

40

100

VPF

KCD

KID

0.1 93

129

KIE

KCD

5

0.0028

VGD

V2D

1 s

VIC

1 xo s

25

0.013

xo

97

xo

1.001

130 3550

11.4

1

352

HPR 347

135

VID

1 1 s

85 (u/12)^2

100

0.4

0.0000058

143

2-(0.15/u)

142

0

DHM 1

0

134

113

101

98

HPL

xo

GPR

u^0.625 PP3^0.1

342

1600

0.01

VG

HM

2

PPI

PTT = (VTS/12)^2

6

CCD

CNA

KI 1 s

1 s

88 10

PTS = f(VIF)

86

0.0025

351

131 171

xo

POT

350

345

PP3

346

xo

336b

VRC PFI

1

15

1

PPA4

u^0.625 PA4^0.625

1 s

2 xo

341

GPD

-6.3

xo

11.99

1 s

11

DFP

HEART RATE AND STROKE VOLUME

40

RCD 332

144

40

HMD

5

0.0003

CPF 0.0003

321

324

325

PTS

0

133

VIC

PTT

331 PLF 145

PPI

140

VID CKI 132

111

PIF

VTS

PPA

HSR

100

1

340

PLF

POS

0

HSL

337

0.00092 RC1

2 PRA

VIE

464e-7

POS

PPC

322

323

1.115e-006

VG

8

15

PA

1.5

lower limit 0.2375

330

6.822e-008

0

139 32

327 HR

100

POY 0.375

PPD PPN

151

xo

147

VIF

20

0

338

1

110

VIF

12

VTS

0.333

170 xo

ALDOSTERONE CONTROL

GP2

87

VID

0

VIM

PO2

1 s

109

0.0005

83

VTC

12 339

1

8.25

PPR

149

PPC

PCP

SVO

IFP

1 xo s

12

0.9897

VIM

POT 329

PO1

CPN

AMC lower limit 6

GPD

1 s 8 70 0.4667

169

60

166

CNA

20

103

DPI

DPL

84

PLA 0 PPA

AMT

AMR

200

AMP = f(PA) KN1

PTT

VTL

VTD

VVR

0

165

CKE

GP1

0

CIRCULATORY DYNAMICS

VVR

171

AM1

104

0.1

0.09914

0.00352 5

DPC

0.04

VRA 15

QRO

0.38

0

PLD 7.8

CPI

PIF

VPA

0.0048

106

142

-6.328

lower limit 4

20

AMP

-0.017

168

9

1 s

PR1

PIF

20.17 CPI

0.04

VV9

2.949

AUH

1

1

0.004

PTC

3.159

AU

u

AM2

AM3

PA

107 VTL

108

DPL

PRA

PRA

1 s

VPA

0.30625

105

xo QRN

19

VPE

1

AUTONOMIC CONTROL

1

0.1

VRA

20

21 PPA

15

2.95

0.7 315

326

15

QPO 15.22

PLA

PGL

172

19.8

167

DPL

lower limit 5

0.002

5

13

AUH 51

0.026

0.03825

0.001896 VTL 5.043 PTC

DRA

AUJ^AUZ 316

AU9

0.0704

QVO

12

0.002

1 s xo

uv

0.15

328

50 RVM = f(PP2)

1

310

1 AU

1

SVO

0

PPA

AUN calculation 317

0

PP2

AUZ

when PA1PA1=50: AUC=0

HSR

1 QRO

0

Z8

309

0

173

AM5

10

1

16

AUH

AU8

20.039

174

AM

1 ANM 164

HPR HMD

HMD

52

xo

AM

1

PPA 1

AUB calculation

1.003

RVM

lower limit 0

RPT

308

DPC

VP

100

1.4

55

0.0357

57

15 ANT

11

AUH

50 PP1

56

AU2

AUN CALCULATION PA1

49 48

RPA

20

20

DLA

0.1

ANGIOTENSIN CONTROL

RVG

1

53

RPV

DAU

AUB^3

54

QLN = f(PLA) 1

0.4 24

301 u^3

AUB CALCULATION PA1

-4

xo

307

AU6

3

1

158

DPC

2.738

RVM

sqrt 0

QLO 1 s

VLA

302

CPA

VLA

1

ANM

4

1

QLN

157 AN1

3.004

VTL 0.002

10

PR1

PVS

0.6

152

156

155

CNE

0.03838 20

QRF

15

PLA

AUC

AUC calculation

QLO

QLN

10

74

0.04 VP

1 xo s

3

1 s xo

(1.2/RFN)^3

154

CPI 71

VPD

0 PVS 45

260

47

28

VLE

25

EXC

Z12

AUC

VRA

46 0

159

ANC

(1.2/u)^3

CNE CNA

142

75

70

VUD

10

CPP

CP1

0.042

153b

153a

RFN

1.2

69.78

74

PC^3

DFP

LVM = f(PA2)

26 1.24

when PA1PA1=80: AUC=0

PA1

0.001 5

VPA

0

1

0.4

AUC CALCULATION PA1

PPC

160 AN2

10u

REK

44

0.1

8

296

297

EXE

P2O

0.001897

TVD

0.001

VVS

3.3 161

AN3 4.0

0.4

u^3

VTC

PA2

LVM

0.02255

27

293

28

73

0.002

3.7

VB

VLA

58

QLN

PLA

5.085

8

3

0.0825 CV

0

100

POQ

VTC PTC

AN5

lower limit 0.7

210

1.6283e-007

1.4

1

HMD HPL

QLO

8

lower limit 0.0001

VVE QVO

1.004 ANM

1 s xo

CPP

5

PA

59

HSL LVM

PLA

8

PRP

CPK

29

5

QLO

POT

VVS

61

16.81

9

VV8

PPC

69

0.007

60 VAS

POQ

8

162

163

1

ANM

80

70 CPP

VP CFC

PIF

PVS

PVS

VAS3

291

7

VVS

16.81 62

-6.3

3.781

0.3

QVO

2.8

VVR

2.95 1 s

xo

3.25

DAS

292

6

DVS

BFN

PGS

DPP

0.00047 PC

68

72

VP PVS

2

RSN

1

PA

VAE 100

AR3

1 s

xo

if (POD

Suggest Documents