OpenCMISSIron Internal API Documentation

Regions are one of the primary objects in openCMISS. Regions are hierarchical in nature in that a region can have one parent region and a number of daughter subregions. Daughter regions are related in space to parent regions by an origin and an orientation of the regions coordinate system. Daughter regions may only have the same or fewer dimensions as the parent region. There is a global (world) region (number 0) that has the global (world) coordinate system.
Region has the following attributes
There are three places storing nodal information. Nodes associated with region defines the nodes identification and the nodes geometric (initial) position.
Node has the following attributes
Meshes are topological constructs within a region which fields use to define themselves. Meshes are made up of a number of mesh components. All mesh components in a mesh must "conform", that is have the same number of elements, Xi directions etc.
Mesh has the following attributes:
Mesh components (Topology) are made up from nodes, elements and basis functions. A new mesh component is required for each different form of interpolation e.g., one mesh component is bilinear Lagrange and another is biquadratic Lagrange.
Mesh topology has the following attributes:
Mesh decomposition (partitioning) is used to split a computationally expensive mesh into smaller subdomains (parts) for parallel computing.
Decomposition has the following attributes
Each domain stores domain information for relevant mesh component.
The domain object contains the following attributes:
Stores information for each mapped object e.g. nodes, elements, etc.
The domain mapping contains the following attributes:
Fields are the central object for storing information and framing the problem. Fields have a number of field variables i.e., u, du/dn, du/dt, d2u/dt2. Each field variable has a number of components. A field is defined on a decomposed mesh. Each field variable component is defined on a decomposed mesh component.
Field can contains the following attributes:
Field variable stores variables for the field such as dependent variables. For example, in the Laplace's equation(FEM), it stores two variables: u and du/dn. Each field variable has a number of components.
Field variable has the following attributes:
Field Variable Component has the following attributes:
Parameter set stores values for each field variable component.
Parameter set has the following Attributes:
Equations sets are aimed to have multiple classes, e.g. Elasticity, Fluid mechanics, Electromagnetics, General field problems, Fitting, Optimisation. Different equations are within each class, e.g. Bidomain, Navierstokes etc. Each equation can use different solution techniques, e.g. FEM, BEM, FD, GFEM. The equation set is associated with a region and is built using the fields defined on the region.
The numerical methods are used which will result in a discretised matrixvector form of the governing equations. openCMISS is designed to generate equations sets with a number of "equations" matrices.
e.g, damped mass spring system Mu + Cu + Ku = f will be represented as:
Equations Set has the following attributes:
Equation holds the matrices and mapping information.
The Field variable to matrix mappings maps each field variable onto the equations matrices or RHS vector.
e.g. Laplace(FEM): 2 variables, 1 component
e.g. Laplace(BEM): 2 variables, 1 component
e.g. Heat equation(explicit time/FEM space): 2 variables, 1 component
TODO matrix distribution
Equations has the following attributes: