In-vivo soft tissue is load bearing in its natural state. When estimating material parameters from in-vivo experiments it is important obtain values for these residual forces and add this to the experimentaly applied forces. This example illustrates how the optimiser is used to evaluate the residual force in a in-vivo multiaxial loading experiment on human skin.
#This example uses a linear approximation for small deformations to estimate the residual force (natural tension) from a in-vivo multiaxial #loading experiment on human skin. The result is used as an input in the material parameter estimation in example 7182. Note the example takes a LONG time to run # 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; } #************************************************************** set num_threads 4 @DATASETS = (5,6,8,9) #Deformed states used in the parameter estimation fem define parameters;r;multiaxes;example fem define bases;r;bases_cube;example #Bi-cubic hermite for geomety, bi-linear for fibre fem define nodes;r;coordinates_cube_undeformed;example fem define elements;r;elements_cube;example #Circular mesh with 192 elements fem define fibre;r;fibre;example fem define elements;r;fibreelem_cube;example fibre fem define equation;r;equation;example #Incompressible membrane (uses plain-stress) fem define material;r;tongfung;example #Tong and Fungs skin function fem group nodes 1..32 as BOUNDARY fem define data;r;datapoints_undeformed;example #Reads the undeformed coordinates of the datapoints foreach $index (@DATASETS[1..$#DATASETS]){ fem define data;r;datapoints_undeformed;example append } fem define xi;c closest #Defines the xi positions of the datapoints fem define data;r;datapoints_${DATASETS[0]};example as IMAGE_${DATASETS[0]} #Reads the deformed coordinates of the datapoints foreach $index (@DATASETS[1..$#DATASETS]){ fem define data;r;datapoints_${index};example append as IMAGE_${index} } fem define initial;r;initskin_cube;example #Defines a fixed boundary coordinate problem fem define solve;r;solve;example fem define optimise;r;tongfung_linetwo_cube;example #Estimate two linear parameters (alfa1 and alfa2) fem define nodes;r;displacements_cube_ref;example dep 2 nc 1 #Reads the boundary conditions for $M (1..10){ fem solve increment 0.1 iterate 1000 #Solves the fixed boundary problem in 10 increments } fem evaluate reactions noview fem define heading force_cube_residual;example #Evaluates the residual force using the current parameter values fem define nodes;w;force_cube_residual;example dep 4 nc 1 #Writes the residual force to file fem define nodes;r;force_cube_ref;example dep 4 nc 1 #Reads in zero values to reset the array for $M (1..10){ #Repeates the parameter estimation and residual force evaluation optimise #The optimiser calles the eval_resid_cube.com file fem list data errors deformed fem define initial;r;initskin_cube;example #Defines a fixed boundary coordinate problem fem define solve;r;solve;example fem define nodes;r;displacements_cube_ref;example dep 2 nc 1 #Reads the boundary conditions for $M (1..10){ fem solve increment 0.1 iterate 1000 #Solves the fixed boundary problem in 10 increments } fem evaluate reactions noview fem define heading force_cube_residual #Evaluates the residual force using the current parameter values fem define nodes;w;force_cube_residual;example dep 4 nc 1 #Writes the residual force to file fem define nodes;r;force_cube_ref;example dep 4 nc 1 #Reads in zero values to reset the array }
Name Modified Size
example_7181.com 24-May-2004 3.4k bases_cube.ipbase 20-Apr-2004 2.6k coordinates_cube_undeformed.ipnode 20-Apr-2004 155k datapoints_5.ipdata 20-Apr-2004 37k datapoints_6.ipdata 20-Apr-2004 37k datapoints_8.ipdata 20-Apr-2004 37k datapoints_9.ipdata 20-Apr-2004 37k datapoints_undeformed.ipdata 20-Apr-2004 37k displacements_cube_5.ipnode 20-Apr-2004 156k displacements_cube_6.ipnode 20-Apr-2004 156k displacements_cube_8.ipnode 20-Apr-2004 156k displacements_cube_9.ipnode 20-Apr-2004 156k displacements_cube_ref.ipnode 20-Apr-2004 154k elements_cube.ipelem 24-May-2004 72k equation.ipequa 02-May-2004 1.8k evalresid_cube.com 20-Apr-2004 877 fibre.ipfibr 20-Apr-2004 53k fibreelem_cube.ipelfb 20-Apr-2004 79k force_cube_5.ipnode 20-Apr-2004 154k force_cube_6.ipnode 20-Apr-2004 154k force_cube_8.ipnode 20-Apr-2004 154k force_cube_9.ipnode 20-Apr-2004 154k force_cube_ref.ipnode 20-Apr-2004 154k force_cube_residual.ipnode 24-May-2004 120k initskin_cube.ipinit 20-Apr-2004 1.3k initskinsolve_cube.ipinit 20-Apr-2004 1.8k multiaxes.ippara 20-Apr-2004 5.8k solve.ipsolv 16-Aug-2010 2.3k solve.ipsolv.old 13-Apr-2007 2.2k tongfung.ipmate 24-May-2004 5.2k tongfung_linetwo_cube.ipopti 20-Apr-2004 1.2k
Name Modified Size
examples_7_71_718_7181.tar.gz 17-Aug-2010 258k
Html last generated: Sun Mar 6 05:50:30 2016
Input last modified: Mon Aug 16 11:21:47 2010