From 4e6f4836693900e9d2038a4301c6638014ae2d40 Mon Sep 17 00:00:00 2001 From: Ugo Pattacini Date: Sun, 7 Mar 2021 17:28:31 +0100 Subject: [PATCH] add model to study lungs compliance --- .../lungs_compliance/lungs_compliance.slx | Bin 0 -> 28496 bytes models/simulation/lungs_compliance/run.m | 55 ++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 models/simulation/lungs_compliance/lungs_compliance.slx create mode 100644 models/simulation/lungs_compliance/run.m diff --git a/models/simulation/lungs_compliance/lungs_compliance.slx b/models/simulation/lungs_compliance/lungs_compliance.slx new file mode 100644 index 0000000000000000000000000000000000000000..09a57ad044ee6dd1550f8d240d06eb791942e49b GIT binary patch literal 28496 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 literal 0 HcmV?d00001 diff --git a/models/simulation/lungs_compliance/run.m b/models/simulation/lungs_compliance/run.m new file mode 100644 index 0000000..d8032ec --- /dev/null +++ b/models/simulation/lungs_compliance/run.m @@ -0,0 +1,55 @@ +function run + +lungs{1} = struct('Em',60,'E',2.6,'Rm',0.9,'R0',0.4,... + 'Kv',-0.45,'Kf',0.01,... + 'Vdot_max',50,'Vdot_min',-30,... + 'type','Respiratory System High Compliance'); + +lungs{2} = struct('Em',60,'E',5.9,'Rm',0.4,'R0',0.3,... + 'Kv',-0.35,'Kf',0.4,... + 'Vdot_max',50,'Vdot_min',-50,... + 'type','Respiratory System Mid Compliance'); + +lungs{3} = struct('Em',60,'E',9.1,'Rm',0.85,'R0',0.1,... + 'Kv',-0.6,'Kf',0.8,... + 'Vdot_max',50,'Vdot_min',-70,... + 'type','Respiratory System Low Compliance'); + +model_name = 'lungs_compliance'; +load_system(model_name); +simin = Simulink.SimulationInput(model_name); +tstop = str2double(get_param(model_name, 'StopTime')); +mdlws = get_param(model_name, 'ModelWorkspace'); + +figure('color', 'white'); +tiledlayout(2,3); +for i=1:3 + assignin(mdlws, 'Em', lungs{i}.Em); + assignin(mdlws, 'E', lungs{i}.E); + assignin(mdlws, 'Rm', lungs{i}.Rm); + assignin(mdlws, 'R0', lungs{i}.R0); + assignin(mdlws, 'Kv', lungs{i}.Kv); + assignin(mdlws, 'Kf', lungs{i}.Kf); + assignin(mdlws, 'Vdot_max', lungs{i}.Vdot_max); + assignin(mdlws, 'Vdot_min', lungs{i}.Vdot_min); + simout = sim(simin); + + nexttile(i); + plot(simout.yout.time, simout.yout.signals(1).values, 'linewidth', 2); + xlim([0 tstop]); xlabel('time [s]'); + ylim([-70 60]); + grid('on'); grid('minor'); + title(lungs{i}.type); + if i == 1 + ylabel('Flow rate [lpm]'); + end + + nexttile(i+3); + plot(simout.yout.time, simout.yout.signals(2).values, 'linewidth', 2); + xlim([0 tstop]); xlabel('time [s]'); + ylim([0 100]); + grid('on'); grid('minor'); + if i == 1 + ylabel('Pressure [cmH2O]'); + end +end