This example models blood flow in a simple, symmetric pulmonary arterial network by solving the Navier-Stokes flow equations, including the effects of gravity. The main arterial trunk vessels are read in and 4 generations of symmetric branching are created from these end points. The reduced Navier-Stokes equations are solved using a Lax-Wendroff numerical technique, the solution procedure used is detailed in Smith (2002) .
Created by Kelly Burrowes, 08/2004.
Orthogonal views of the solution, pressure solution (kPa) shown on the left; velocity solution (mm/s) shown on the right. Spectrums extend from minimum values (dark blue) to maximum values (red).
To create an image in order to visualise the results of the simulation, use CMGUI with the file draw.com.
# Example 9822 # If the example path is not set, default to current directory if (! defined $example) { $example = "./"; } # Drop off the trailing / in the example path $chopped = chop $example; if ($chopped ne "/") { $example .= $chopped; } fem define param;r;$example/flow; fem define coord;r;$example/flow; fem define base;r;$example/flow; fem de node;r;$example/trunk as parent; fem de elem;r;$example/trunk as parent; #evaluate ordering of parent vessels before creating symmetric mesh fem evaluate order; #Now set up a symmetric mesh fem de mesh;c lung symmetric num_generation 4 branch_angle 40 elem parent; fem define mesh;c lung field only_radius; #only sets up radius field fem evaluate order; #fem update mesh geometry radius_field 1 anatomical Arteries; fem update mesh geometry radius_field 1 element 1 constant 12; fem update mesh geometry radius_field 1 Rd_strahler ratio_diameter 1.5997; fem de elem;w;test; fem de elem;r;test; #sets up NLL - element length array #adds two more fields to store the pressure and velocity fields, adds 0 as default value fem define;add field;d;$example/arteries field_variables 2; #fem define field;w;test; fem define element;d;$example/arteries field; fem define grid;r;$example/flow coronary; # Defines grid points with coronary option to discretise the spatial computational domain. fem update grid geometry; fem define equation;r;$example/flow; # Defines equations fem define material;r;$example/flow; # Reads in physical & mechanical properties fem update material field material 4 no_field 1; fem define time;r;$example/step; fem define initial;r;$example/flow; # Defines initial conditions fem define solve;r;$example/flow; # Defines solution parameters $time_initial=0.00; # Sets the initial time $time_final=1.5; # Sets the final time $time_step=0.001; # Sets the time step time $write_out_period=0.1; # Sets the results write out period fem export points;$time_initial grid as vessel offset 0; fem export grid;vessel as vessel offset_node 0 elastic_tube; # Results output loop for ($time=$time_initial;$time<$time_final;$time=$time+$write_out_period) { fem solve restart to $write_out_period delta_t $time_step; fem export points;$time+$write_out_period grid as vessel offset 0 }
fem list nodes
Name Modified Size
example_9822.com 22-Jan-2007 2.4k draw.com 26-Aug-2004 1.4k flow.ipbase 26-Aug-2004 893 flow.ipcoor 26-Aug-2004 572 flow.ipequa 22-Nov-2005 1.3k flow.ipgrid 26-Aug-2004 216 flow.ipinit 01-Dec-2005 907 flow.ipmate 26-Aug-2004 6.7k flow.ippara 23-Jun-2005 5.9k flow.ipsolv 26-Aug-2004 759 step.iptime 26-Aug-2004 1.5k test.com 22-Jan-2007 2.5k test.ipelem 26-Aug-2004 40k test_output.com 26-Aug-2004 15 trunk.ipelem 26-Aug-2004 2.8k trunk.ipnode 26-Aug-2004 2.4k vessel.exelem 26-Aug-2004 62k
Name Modified Size
examples_9_98_982_9822.tar.gz 23-Jan-2007 59k
Status | Tested | Real time (s) | |
i686-linux | |||
cm | Failure | Sun Mar 6 00:19:30 2016 | 5 |
last break | Sun Aug 23 02:15:00 2009 | 16 | |
last success | Sun Aug 16 01:20:00 2009 | 10 | |
cm-debug | Failure | Sun Mar 6 00:05:12 2016 | 0 |
last break | Fri Jun 5 00:18:00 2015 | 0 | |
last success | Fri Aug 21 00:40:00 2009 | 16 | |
mips-irix | |||
cm | Success | Sun Aug 19 01:52:09 2007 | 22 |
cm-debug | Success | Wed Aug 15 02:10:41 2007 | 108 |
cm-debug-clear-malloc | Success | Sat Aug 18 02:29:24 2007 | 114 |
cm-debug-clear-malloc7 | Success | Mon Aug 20 02:23:39 2007 | 121 |
cm64 | Success | Sun Aug 19 01:52:58 2007 | 23 |
cm64-debug | Success | Tue Aug 21 02:11:39 2007 | 111 |
rs6000-aix | |||
cm | Success | Wed Mar 4 01:09:44 2009 | 4 |
cm-debug | Success | Mon Mar 2 01:16:24 2009 | 26 |
cm64 | Success | Wed Mar 4 01:10:52 2009 | 4 |
cm64-debug | Success | Tue Mar 3 01:19:52 2009 | 25 |
x86_64-linux | |||
cm | Failure | Sun Mar 6 00:11:54 2016 | 207 |
last break | Sun Sep 6 01:32:00 2009 | 942 | |
last success | Sun Aug 16 02:33:00 2009 | 941 | |
cm-debug | Failure | Sun Mar 6 00:01:25 2016 | 0 |
last break | Fri Jun 5 00:11:00 2015 | 1 | |
last success | Fri Aug 21 01:38:00 2009 | 1162 |
i686-linux | |||
SIGABRT | cm-debug: | exit due to SIGABRT signal. | |
x86_64-linux | |||
SIGABRT | cm-debug: | exit due to SIGABRT signal. |
i686-linux | |||
Success | cm: | cmiss_test.log.retain. | |
Success | cm-debug: | cmiss_test.log.retain. | |
mips-irix | |||
Success | cm: | cmiss_test.log.retain. | |
Success | cm-debug: | cmiss_test.log.retain. | |
Success | cm-debug-clear-malloc: | cmiss_test.log.retain. | |
Success | cm-debug-clear-malloc7: | cmiss_test.log.retain. | |
Success | cm64: | cmiss_test.log.retain. | |
Success | cm64-debug: | cmiss_test.log.retain. | |
rs6000-aix | |||
Success | cm: | cmiss_test.log.retain. | |
Success | cm-debug: | cmiss_test.log.retain. | |
Success | cm64: | cmiss_test.log.retain. | |
Success | cm64-debug: | cmiss_test.log.retain. | |
x86_64-linux | |||
Success | cm: | cmiss_test.log.retain. | |
Success | cm-debug: | cmiss_test.log.retain. |
i686-linux | |||
Failure | cm: | ndiff test: significant differences with generic answer. | |
Missing | cm-debug: | output file not generated for ndiff; generic answer. | |
mips-irix | |||
Success | cm: | ndiff test: no significant differences with generic answer. | |
Success | cm-debug: | ndiff test: no significant differences with generic answer. | |
Success | cm-debug-clear-malloc: | ndiff test: no significant differences with generic answer. | |
Success | cm-debug-clear-malloc7: | ndiff test: no significant differences with generic answer. | |
Success | cm64: | ndiff test: no significant differences with generic answer. | |
Success | cm64-debug: | ndiff test: no significant differences with generic answer. | |
rs6000-aix | |||
Success | cm: | ndiff test: no significant differences with generic answer. | |
Success | cm-debug: | ndiff test: no significant differences with generic answer. | |
Success | cm64: | ndiff test: no significant differences with generic answer. | |
Success | cm64-debug: | ndiff test: no significant differences with generic answer. | |
x86_64-linux | |||
Failure | cm: | ndiff test: significant differences with generic answer. | |
Missing | cm-debug: | output file not generated for ndiff; generic answer. |
Html last generated: Sun Mar 6 05:50:36 2016
Input last modified: Mon Jan 22 13:53:33 2007