This example illustrates the solution to the coupled flow/solid mechanics problem. An eleven-element (linear in polar-cylindrical coordinate system) asymmetric coronary mesh is embedded within a homogeneous Mooney Rivlin cylinder with finite wall thickness. The cylinder is inflated and subject to an axial compressive force in the Z-direction in steps over a period of 0.005s. The transient flow equations are solved incorporating the additional force exerted on the embedded vessels walls due to the deformation of the cylinder. The fluid flow pressure at the inlet of the network is increased from 10.6 - 14.6 kPa linearly over the same period while the pressure at the exit or distal ends of all the daughter links are maintained constant at 10.6 kPa. For the theory and further details of this problem, see section 5.4 of the PhD thesis "Coronary flow mechanics" by N.P.Smith.
Simulation of coupled flow/solid mechanics
# Note : region 1 - solid: a cylinder with finite thickness; region 2 - fluid flow # class 1 - Finite elasticity problem ; class 2 - Flow through elastic tube fem define para;r;cylinder_flow_mech;example fem reallocate fem define region;r;cylinder_flow_mech;example # Defines no. of regions fem define coordinate;r;cylinder_mech;example reg 1 # Defines coordinates for solid fem define node;r;cylinder_mech;example reg 1 # Reads in nodal information fem define base;r;cylinder_mech;example reg 1 # Defines basis functions (05) fem define element;r;cylinder_mech;example reg 1 # Reads in element information fem define fibre;r;cylinder_mech;example reg 1 # Reads in fibre information for solid fem define element;r;cylinder_mech;example fib reg 1 # Defines fibre interpolation fem define equation;r;cylinder_mech;example reg 1 class 1 # Defines equations for solid fem define material;r;cylinder_mech;example reg 1 class 1 # Reads in mech properties of solid fem define initial;r;cylinder_mech;example reg 1 class 1 # Defines initial & boundary conds. fem define solve;r;cylinder_mech;example reg 1 class 1 # Defines solution parameters fem define coordinate;r;cylinder_flow;example reg 2 # Defines coordinates for fluid flow fem define node;r;cylinder_flow;example reg 2 # Reads in nodal information fem define;add base;r;cylinder_flow;example # Defines basis functions (01) fem define element;r;cylinder_flow;example reg 2 # Reads in element information fem define xi;r;cylinder_flow;example node of 2 in 1 # Reads in xi positions of reg 2 wrt reg 1 fem update mesh position of 2 in 1 undeform # Updates relative positions fem define field;r;cylinder_flow;example reg 2 # Reads in field information fem define element;r;cylinder_flow;example field reg 2 # Defines field interpolation fem define grid;r;cylinder_flow;example coronary reg 2 # Reads in spatial discretisation fem update grid geometry reg 2 # Updates grid point coordinates fem define equation;r;cylinder_flow;example reg 2 class 2 # Defines equations for fluid flow fem define material;r;cylinder_flow;example reg 2 class 2 # Reads in phy. & mech. properties fem update material field material 4 no_field 1 reg 2 class 2 # # Updates unstressed radii fem define time;r;cylinder_flow;example # Defines boundary conditions fem define initial;r;cylinder_flow;example reg 2 class 2 # Defines initial conditions fem define solve;r;cylinder_flow;example reg 2 class 2 # Defines solution parameters fem define coup;r;cylinder_flow_mech;example # Defines solid & fluid mech. coupling $time_initial=0.000; $time_final=0.005; $time_step=0.0001; $write_out_period=0.0005; fem export nodes;solid${time_initial} field as solid offset 500 reg 1 class 1 fem export elements;solid field as solid offset_elem 500 offset_node 500 reg 1 class 1 fem export grid;fluid as flow offset_elem 0 offset_node 0 elastic_tube reg 2 class 2 fem export points;fluid${time_initial} grid as flow offset 0 reg 2 class 2 for ($time=$time_initial;$time<$time_final;$time=$time+$write_out_period) { $w_time=$time+$write_out_period; fem solve restart to $write_out_period delta_t $time_step reg 1,2 class 1,2; fem update geometry from solution reg 1; fem export nodes;solid${w_time} field as solid offset 500 reg 1 class 1; fem update nodes derivative 1 linear reg 2 fem update mesh position of 2 in 1 undeform fem update grid geometry reg 2 fem export points;fluid${w_time} grid as flow offset 0 reg 2 class 2 }
fem list nodes reg 2 fem list elem reg 2
Name Modified Size
example_844.com 02-Oct-2001 3.9k cylinder_flow.ipbase 02-Oct-2001 929 cylinder_flow.ipcoor 02-Oct-2001 681 cylinder_flow.ipelem 02-Oct-2001 3.5k cylinder_flow.ipelfd 02-Oct-2001 2.8k cylinder_flow.ipequa 22-Nov-2005 1.3k cylinder_flow.ipfiel 02-Oct-2001 3.0k cylinder_flow.ipgrid 27-Nov-2001 258 cylinder_flow.ipinit 01-Dec-2005 713 cylinder_flow.ipmate 02-Oct-2001 6.8k cylinder_flow.ipnode 02-Oct-2001 2.5k cylinder_flow.ipsolv 27-Aug-2002 801 cylinder_flow.iptime 02-Oct-2001 1.4k cylinder_flow.ipxi 02-Oct-2001 792 cylinder_flow_mech.ipcoup 21-Aug-2002 730 cylinder_flow_mech.ipcoup.old 02-Oct-2001 704 cylinder_flow_mech.ippara 12-Nov-2002 5.9k cylinder_flow_mech.ipregi 02-Oct-2001 136 cylinder_mech.ipbase 02-Oct-2001 6.8k cylinder_mech.ipcoor 02-Oct-2001 681 cylinder_mech.ipelem 02-Oct-2001 1.0k cylinder_mech.ipelfb 02-Oct-2001 393 cylinder_mech.ipequa 02-May-2004 2.1k cylinder_mech.ipfibr 02-Oct-2001 1.4k cylinder_mech.ipinit 12-Dec-2002 8.6k cylinder_mech.ipmate 12-Dec-2002 2.3k cylinder_mech.ipnode 02-Oct-2001 2.2k cylinder_mech.ipsolv 16-Aug-2010 2.4k cylinder_mech.ipsolv.old 13-Apr-2007 2.2k fluid.exelem 02-Oct-2001 30k fluid0.0005.exnode 02-Oct-2001 22k fluid0.001.exnode 02-Oct-2001 22k fluid0.0015.exnode 02-Oct-2001 22k fluid0.002.exnode 02-Oct-2001 22k fluid0.0025.exnode 02-Oct-2001 22k fluid0.003.exnode 02-Oct-2001 22k fluid0.0035.exnode 02-Oct-2001 22k fluid0.004.exnode 02-Oct-2001 22k fluid0.0045.exnode 02-Oct-2001 22k fluid0.005.exnode 02-Oct-2001 22k fluid0.exnode 02-Oct-2001 22k solid.exelem 02-Oct-2001 6.9k solid0.0005.exnode 02-Oct-2001 1.6k solid0.001.exnode 02-Oct-2001 1.6k solid0.0015.exnode 02-Oct-2001 1.6k solid0.002.exnode 02-Oct-2001 1.6k solid0.0025.exnode 02-Oct-2001 1.6k solid0.003.exnode 02-Oct-2001 1.6k solid0.0035.exnode 02-Oct-2001 1.6k solid0.004.exnode 02-Oct-2001 1.6k solid0.0045.exnode 02-Oct-2001 1.6k solid0.005.exnode 02-Oct-2001 1.6k solid0.exnode 02-Oct-2001 1.6k test_output.com 02-Oct-2001 41
Name Modified Size
examples_8_84_844.tar.gz 17-Aug-2010 503k
Status | Tested | Real time (s) | |
i686-linux | |||
cm | Success | Sun Mar 6 00:02:17 2016 | 2 |
cm-debug | Success | Sat Mar 5 00:14:29 2016 | 6 |
mips-irix | |||
cm | Success | Sun Aug 19 01:52:08 2007 | 23 |
cm-debug | Success | Wed Aug 15 01:56:13 2007 | 73 |
cm-debug-clear-malloc | Success | Sat Aug 18 02:17:53 2007 | 131 |
cm-debug-clear-malloc7 | Success | Mon Aug 20 02:15:25 2007 | 91 |
cm64 | Success | Sun Aug 19 01:52:59 2007 | 24 |
cm64-debug | Success | Tue Aug 21 01:56:30 2007 | 76 |
cm64-debug-clear-malloc | Success | Thu Apr 1 10:50:40 2004 | 34 |
rs6000-aix | |||
cm | Success | Wed Mar 4 01:09:38 2009 | 3 |
cm-debug | Success | Mon Mar 2 01:14:31 2009 | 23 |
cm64 | Success | Wed Mar 4 01:09:40 2009 | 4 |
cm64-debug | Success | Tue Mar 3 01:19:18 2009 | 23 |
x86_64-linux | |||
cm | Success | Sun Mar 6 00:01:10 2016 | 2 |
cm-debug | Success | Sat Mar 5 00:01:53 2016 | 4 |
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. | |
Success | cm64-debug-clear-malloc: | 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 | |||
Success | cm: | ndiff test: no significant differences with generic answer. | |
Success | cm-debug: | ndiff test: no significant differences with 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. | |
Success | cm64-debug-clear-malloc: | 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 | |||
Success | cm: | ndiff test: no significant differences with generic answer. | |
Success | cm-debug: | ndiff test: no significant differences with generic answer. |
i686-linux | |||
Success | cm: | ndiff test: no significant differences with generic answer. | |
Success | cm-debug: | ndiff test: no significant differences with 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. | |
Success | cm64-debug-clear-malloc: | 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 | |||
Success | cm: | ndiff test: no significant differences with generic answer. | |
Success | cm-debug: | ndiff test: no significant differences with generic answer. |
i686-linux | |||
Success | cm: | ndiff test: no significant differences with generic answer. | |
Success | cm-debug: | ndiff test: no significant differences with 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. | |
Success | cm64-debug-clear-malloc: | 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 | |||
Success | cm: | ndiff test: no significant differences with generic answer. | |
Success | cm-debug: | ndiff test: no significant differences with generic answer. |
Html last generated: Sun Mar 6 05:50:33 2016
Input last modified: Mon Aug 16 11:22:35 2010