310 likes | 452 Views
Implementace rozsáhlého modelu fysiologických funkcí organismu v prostředí jazyka Modelica. Obhajoba diplomové práce. Bc. Tomáš Kroček. Zadání práce. Implementace modelu fysiologických funkcí organismu dle Guytona a spol. Odladění a verifikace modelu
E N D
Implementace rozsáhlého modelu fysiologických funkcí organismu v prostředí jazyka Modelica Obhajoba diplomové práce Bc. Tomáš Kroček
Zadání práce • Implementace modelu fysiologických funkcí organismu dle Guytona a spol. • Odladění a verifikace modelu • Ověření chování modelu simulačními experimenty • Návrh uživatelského rozhraní
Komenského krédo Staré čínské přísloví Motivace
Staré čínské přísloví: „Co slyším, to zapomenu,…“ „...co spatřím, to si pamatuji,...” „...co dělám, tomu rozumím“.
Cíle práce • Demonstrovat přednosti jazyka Modelica • Vytvořit „živý“ Guytonuv model
Modelica • Objektově orientovaný jazyk • Obsahuje popis zobecnělých vlastností reálného světa • Umožňuje kauzální i akauzální modelování • Aktuální verze: Modelica 3.2
Modelica – zobecnělé vlastnosti • Úsilí (napětí, tlak) • Tok (proud, průtok) • Hybnost (indukce, průtočná hybnost) • Akumulace (náboj, objem tekutiny)
Ikony Ikony Ikony p.v n.v Rezistor p.i n.i R*i = v p.v v = p.v-n.v n.v p.i v Kapacitor n.i Induktor i = p.i = n.i n.v p.v n.i p.i p.v n.v p.i n.i i = C*der(v) L*der(i) = v p.v v = p.v-n.v n.v p.v v = p.v-n.v n.v p.i v n.i v p.i n.i v = L*der(i) Rovnice na pozadí Rovnice na pozadí Rovnice na pozadí i = p.i = n.i i = p.i = n.i
Guytonuv model • 1972 – model cirkulačního systému a jeho návazností v jazyce Fortran (Guyton, Coleman a Grander ), vznik nové disciplíny – integrativní fysiologie • 2007 – implementace originálního diagramu v Simulinku (Kofránek a spol.) • 2011 – implementace originálního diagramu v Modelice (Kroček)
AnnualReviewofPhysiology 1972 Formalizace fyziologických vztahů Integrativní fysiologie A. C. Guyton
Děličky Formalizace Formalizace fyziologických vztahů Násobičky fyziologických vztahů Integrátory Sumátory + + - 20 0 50 -4 Funkční bloky …??!! PPA PLA PCP=0.55 PLA+0.45 PPA PCP
20 20 0 0 50 50 -4 -4 + + - Guyton Guyton Guyton Guyton + + - Simulink Simulink Simulink Simulink Modelica Modelica Modelica Modelica Guyton Simulink, Modelica
Guytonuv model Kauzální vs. akauzální přístup
Kauzální modelování • Modely složeny z bloků • Bloky realizují konkrétní funkci • Výsledný model reprezentuje algoritmus výpočtu
Akauzální modelování • Deklarativní zápis proměnných • Bloky tvořeny rovnicemi • Výsledný model vystihuje modelovanou realitu
Diagram byl jen obrázek, vlastní model byl v roce 1972 implementován ve Fortranu Implementace v Simulinku (Kofránek a spol. 2007) Oprava chyb v diagramu (Kofránek, Rusz, 2007)
Subsystémy zapouzdřeny do bloků Implementace v Modelice (Kroček 2011) Subsystémy jsou reprezentovány ikonami a konektory pro vstup a výstup proměnných Jednodušší lokalizace chyb a odladění oproti flat modelu ESCTAIC 2006
Kauzální přístup Akauzální přístup
Komponenty obsahují rovnice Akauzální modelování Komponenty reprezentovány ikonami Propojení komponent přes konektory Soustava rovnic Způsob řešení nalezne počítač
Čerpadlo pravá komora Čerpadlo levá komora Cirkulační dynamika Signálové (kauzální) propojení Akauzální propojení (flow/nonflow proměnné)
Elastický kompartment plicních arterií Elastický kompartment levé síně a plicních žil Elastický kompartment pravé síně a velkých žil Elastický kompartment systémových artérií Elastický kompartment systémových žil
Odpor plicních arteriol Odpor kolabovaných velkých žil Odpor ve svalech Odpor v dalších tkáních Odpor v ledvinách Odpor velkých žil
Matematický operátor Odpor v nesvalovýcha non-renálních tkáních Výpočetní bloky Signálové (kauzální) propojení Signálové (kauzální) propojení Signálové (kauzální) propojení Signálové (kauzální) propojení Tlak Tlak Průtok Akauzální propojení
Algoritmus akauzálního modelu je totožný jako v kauzálním modelu
Sémantický význam bloku: vliv tlaku v kapilárách na odpor venul Odpor v nesvalovýcha non-renálních tkáních Umístění instance bloku v diagramu ukazuje jeho sémantický význam Tlak v kapilárách Odpor venul
Editace modelicového modelu v prohlížeci a běh modelu v prohlížeči (Privitzer a spol. 2011) Internetový model Editor Modeliky v prohlížeči • Flat model v internetovém prohlížeči • Možnost simulace • Spustitelný ve všech internetových prohlížečích na platformě Windows • V budoucnu i na Unixových systémech, díky technologii Moonlight Běh modelu v prohlížeči Model v C++
Technologie tvorby webových simulátorů (Kofránek, Privitzer a spol.) Tvorba modelů v jazyce Modelica Tvorba interaktivní grafiky Vývoj simulátoru Běh simulátoru v prohlížeči Testování ve výuce Tvorba scénářů
Internetový model • http://patf-biokyb.lf1.cuni.cz/~tomkro/GuytonModel1972/
Děkuji Vámza Vaši pozornost! Rád zodpovím Vaše dotazy