FieldML concepts
Shane's FieldML notes from 2003: http://www.physiome.org.nz/xml_languages/fieldml/documents/minutes_20030305.html
Richards Region Notes particularly the "DAG or Tree?" and "Fields in Regions" paragraphs about 2/3 way through
Shanes FieldML Notes on these objects
Examples
To be done
- Tricubic with scale factors
- Multiple fields in the same file, nodes etc.
- Embedded mesh
- Grid / Image data
- Simplicies
- Polygons? Finite volume types bases?
FieldML objects
Base Concepts
Integer
Real
Complex
Set
Unordered collection of objects.
List
Ordered collection of objects.
Set of X
Unordered collection of objects of type X.
List of X
Ordered collection of objects of type X.
Region Concepts
Region
Synonyms: Manifold (with fewer restrictions); Space.
Region is a container for Regions of the same, or lower, dimension.
Dimension: {1} Integer ≥0
A Region has a single dimension.
Regions: set of {0,1,2,...} Region Regions.Region.Dimension≤Dimension
Enables a tree-like hierarchy of embedded Region, all having the same, or lower, Dimension.
Region Point
Specialisation of Region with restriction Dimension=0.
Region Curve
Specialisation of Region with restriction Dimension=1.
Region Surface
Specialisation of Region with restriction Dimension=2.
Element Concepts
Element
Synonyms: Coordinate system; Chart
Dimension: {1} Integer ≥0
Interior: {1} MathML ('condition' element or 'domain' element?)
Inequality specifies what Element Points are interior to the Element.
Boundary points can be inferred by replacing inequalities with equalities.
Element Point
Denotes a position within a Element by specifying its coordinates.
Element: {1} Element
Coordinates: {1} Coordinates
The number of coordinate in Coordinates must equal Element.Dimension.
Coordinates
- Coordinates: list of Coordinate
Coordinate
- Coordinate: Real
Element Point to Region Point Link
Associates an Element Point with one and only one Region Point. Because different Element Point may be associated with the same Region Point, this enables any Element Point to be linked to a Element Point of another Element. This association is the mechanism for defining the topology, or connectedness, of multiple Element in the same Region. http:ShanesFieldMLNotes#ref1
- Element Point: {1} Element Point
- Region Point: {1} Region Point
Ensemble Concepts
Ensemble
Synonyms: Mesh; Atlas; Topology.
An Ensemble is a collection of Ensemble and/or Element. OED defines ensemble as "a group of items viewed as a whole"
Region: {1} Region
An Ensemble defines a covering of a Region, enabling each Region Point to be located with respect to other Region Point(s).
A Region may have several Ensemble.
Ensembles: set of {0,1,2,...} Ensemble
An Ensemble of a Regions.Region can be incorporated into a Region.
This enables a hierarchy of Ensemble to be constructed.
Elements: set of {0,1,2,...} Element
Multiple Element may be added to an Ensemble.
Element Field Concepts
Element Field
Element: {1} Element
An Element Field is defined over a single Element
Element Field Function: {1} Element Field Function
Element Field Parameters: list of {0,1,2,...} Element Field Parameter
These are a list of arguments to the Element Field Function to evaluate the Element Field at an Element Point
Element Field Function
Element Field Function: {1} MathML lambda
This function takes Element Field Parameters as arguments to evaluate the Element Field at an Element Point
Element Field Basis Functions
This is a specialisation of Element Field Function for the case where the Element Field is a linear combination of Element Field Basis Functions weighted by the Element Field Parameters
- Element Field Basis Functions: list of {0,1,2,...} Element Field Basis Function
Element Field Basis Function
- Element Field Basis Function: {1} MathML lambda
Element Field Parameter
The type of Element Field Parameter is the same type as Element Field.
Some thought must go into how this is handled: do we allow arbitrary types (e.g. tensors, discrete, non-numeric, etc.)?
How do we handle fields that are composed of components with different Element Field Function (e.g. different interpolations for different components)?
- Element Field Parameter: {1} X
Ensemble to Element Concepts
Ensemble Field Parameters to Element Field Parameters Maps
This specifies a general mapping from Ensemble Field Parameters to Element Field Parameters of an Element Field
Element Field: {1} Element Field
Field Parameters Maps: {1} MathML lambda
This function takes all Ensemble Field Parameters as arguments and returns all Element Field Parameters for Element Field of Element.
Ensemble Field Parameters to Element Field Parameters Linear Maps
This is a specialisation of Ensemble Field Parameters to Element Field Parameters Map thet specifies a linear mapping from Ensemble Field Parameters to Element Field Parameters of an Element
Element Field: {1} Element Field
Field Parameters Maps: list of Field Parameters Linear Map
This linear function takes all Ensemble Field Parameters as arguments and returns all Element Field Parameters for Element Field of Element.
The list length is equal to the number of Element Field Parameters in Element Field
Field Parameters Linear Map
For a specific Element Field Parameter, specifies the associated Ensemble Field Parameters and their weights.
- Ensemble Parameters: list of Ensemble Parameter
- Ensemble Parameter Weights: list of Real
Ensemble Field Parameters to Element Field Parameters Real Maps
This is a specialisation of Ensemble Field Parameters to Element Field Parameters Linear Map thet specifies a real mapping from Ensemble Field Parameters to Element Field Parameters of an Element
Element Field: {1} Element Field
Field Parameters Maps: list of Field Parameters Real Map
This linear function takes all Ensemble Field Parameters as arguments and returns all Element Field Parameters for Element Field of Element. The list length is equal to the number of Element Field Parameters in Element Field
Field Parameters Real Map
For a specific Element Field Parameter, specifies the associated Ensemble Field Parameter and its weighting (i.e. scale factor).
- Ensemble Parameters: Ensemble Parameter
- Ensemble Parameter Weights: Real
Ensemble Field Parameters to Element Field Parameters Boolean Maps
This is a specialisation of Ensemble Field Parameters to Element Field Parameters Real Map thet specifies a boolean mapping from Ensemble Field Parameters to Element Field Parameters of an Element
Element Field: {1} Element Field
Field Parameters Maps: list of Field Parameters Boolean Map
This linear function takes all Ensemble Field Parameters as arguments and returns all Element Field Parameters for Element Field of Element.
The list length is equal to the number of Element Field Parameters in Element Field
Field Parameters Boolean Map
For a specific Element Field Parameter, specifies the associated Ensemble Field Parameter and its weighting (i.e. scale factor).
Note that there is no requirement for Ensemble Parameter Weights as these are all unit weights.
- Ensemble Parameters: Ensemble Parameter
Ensemble Field Parameters to Element Field Parameters Boolean Map
This is a specialisation of Ensemble Field Parameters to Element Field Parameters Linear Map thet specifies a boolean mapping between Ensemble Field Parameters and Element Field Parameters of an Element
Element: {1} Element
Field Parameters Map: {1} MathML Boolean matrix
This boolean function takes all Ensemble Field Parameters as arguments and returns all Element Field Parameters for Element Field of Element.
Ensemble Field Concepts
Ensemble Field
Synonyms: Field.
Ensemble: {1} Ensemble
An Ensemble Field is defined over a single Ensemble
Ensemble Field Function: {1} Ensemble Field Function
Ensemble Field Parameters: list of {0,1,2,...} Ensemble Field Parameter
These are a list of arguments to the Ensemble Field Function to evaluate the Ensemble Field at an Ensemble Point
Ensemble Field Function
This is the union of Element Field Function over all Element in Ensemble.
- Ensemble Field Function: {1} union over all Element in Ensemble of Element Field Function
Ensemble Field Parameter
The type of Ensemble Field Parameter is the same type as Ensemble Field.
Some thought must go into how this is handled: do we allow arbitrary types (e.g. tensors, discrete, non-numeric, etc.)?
How do we handle fields that are composed of components with different Ensemble Field Function (e.g. different interpolations for different components)?
- Ensemble Field Parameter: {1} X