Example b212f: Using Grid-based FEM with 2D BoxMG as the elliptic solver on a Two-Element Domain


This example uses Grid-based FEM and BoxMG as a solver for the elliptic part of the bidomain equations. The model is a simple Cubic Ionic Activation model and BoxMG uses its point relaxation method as a smoother.

There are a few things to note about BoxMG. First, it can only be used for domains that can be mapped to a square in 2D or a cube in 3D. It was brought into CMISS for solving large scale cardiac tissue problems as it is ideally suited for such domains. We often say that such domains are logically rectangular. Second, there are many options when using BoxMG but I have hidden most of them from the unexperienced user. The most important option to be aware of is the relaxation (or smoothing) method. If the problem is highly anisotropric, either from conductivities or a stretched mesh, then you must use line relaxation in 2D and plane relaxation in 3D. Finally, it should be noted that no benefit will be gained until the number of unknowns begins approaching 500,000. For less than 250,000 unknowns it will probably be faster to use either LU or CG with ILU. These are not hard and fast rules but something to keep in mind.

References:

Solving the cardiac bidomain equations for discontinuous conductivities, IEEE Trans. Biomedical Engineering, 53, 7, pp. 1265-1272, 2006

Fast elliptic solvers for cardiac bioelectric modeling on structured meshes, submitted to Computers in Biology and Medicine in 2007


The comfile run by this example is as follows:

#Example b211f
# ------------
fem define para;r;box;example
fem define coor;r;box;example

fem define node;r;box;example
fem define base;r;box;example
fem define elem;r;box;example

fem define fibr;d
fem define elem;r;box;example fibre

fem define grid;r;box;example
fem update grid geometry
fem define equa;r;box;example class 1,2
fem group grid xi1=low as stimulus
fem group grid xi1=high as dirichlet

fem define mate;r;box;example class 1,2
fem define cell;r;box;example class 1,2
fem define init;r;box;example class 1,2
fem define solv;r;pcg;example class 1
fem define solv;r;bmg;example class 2

fem solve to 1.0 class 1,2

Additional testing commands:

#Testing example b212f
fem li grid yq index v class 1

Files used by this example are:

Name               Modified     Size

example_b212f.com 24-Apr-2007 629 bmg.ipsolv 23-Apr-2007 2.5k box.exelem 23-Apr-2007 3.9k box.exnode 23-Apr-2007 896 box.ipbase 23-Apr-2007 1.1k box.ipcell 23-Apr-2007 1.7k box.ipcoor 23-Apr-2007 858 box.ipelem 23-Apr-2007 589 box.ipelfb 23-Apr-2007 360 box.ipequa 23-Apr-2007 1.4k box.ipfibr 23-Apr-2007 828 box.ipgrid 23-Apr-2007 539 box.ipinit 23-Apr-2007 905 box.ipmate 23-Apr-2007 1.7k box.ipnode 23-Apr-2007 2.1k box.ippara 23-Apr-2007 5.9k pcg.ipsolv 23-Apr-2007 2.2k test_output.com 23-Apr-2007 54

Download the entire example:

Name                                 Modified     Size

examples_b_b2_b21_b212_b212f.tar.gz 28-Apr-2007 13k

Testing status by version:

StatusTestedReal time (s)
i686-linux
cmSuccessSun Mar 6 00:02:21 20160
cm-debugSuccessSat Mar 5 00:04:20 20161
mips-irix
cmSuccessSun Aug 19 01:31:21 20075
cm-debugSuccessWed Aug 15 01:29:57 200716
cm-debug-clear-mallocSuccessSat Aug 18 01:37:54 200721
cm-debug-clear-malloc7SuccessMon Aug 20 01:34:00 200720
cm64SuccessSun Aug 19 01:31:43 20075
cm64-debugSuccessTue Aug 21 01:29:56 200717
rs6000-aix
cmSuccessWed Mar 4 01:07:41 20091
cm-debugSuccessMon Mar 2 01:08:11 20094
cm64SuccessWed Mar 4 01:07:41 20091
cm64-debugSuccessTue Mar 3 01:13:23 20095
x86_64-linux
cmSuccessSun Mar 6 00:01:05 20160
cm-debugSuccessSat Mar 5 00:01:36 20161

Testing status by file:


Html last generated: Sun Mar 6 05:51:11 2016

Input last modified: Fri Apr 27 08:50:17 2007


CMISS Help / Examples / b / b2 / b21 / b212 / b212f