Personal tools
You are here: Home / openCMISS / Wiki / Shanes FieldML notes
Log in

Forgot your password?

Shanes FieldML notes

1Element Point to Region Point Link

This link could be made implicitly by assuming that a name of an element point in a region defines a region point of that name, removing the requirement to predefine all the region points and provide these explicit linking objects. Addtionally when appropriate I would like to imply the relationship with groups of element field values and region points.


Does a region know who it's children are? Can you find out all the ensembles defined on a region.

The region hierarchy is a graph? No unique parent? Do the regions have names? Richard made regions so that a region assigns it's own names to is children. Also ontologies should ultimately be providing this hierarchy information although we need to reflect it in .


What name does an imported ensemble have? region.ensemble

Is there really a dual hierarchy then at all, if all the inheritance and names comes from the Regions anyway?

Scope of an ensemble

When defining a new field based on the mesh of an existing field is it useful to be able to progressively define a field? Say in an editor when you are selecting and setting values.

Time based fields

How do we treat fields that vary with time? Do we have a special case where the field parameters are time varying?


There are three primary interfaces I can think of. One for
creating/defining a mesh, one for computing on it and one for allowing the calling program to provide information about how its data will be used providing clues about optimal storage.

The Creating/defining API allows access to most of these objects.

Use of templates and copies will facilitate efficient creation of these objects.

The computing API are additional functions not described in the existing documents.

  • Field

    Field_evaluate(IN Field *field, IN Position *position, OUT Values *values)

    • Evaluate the field at the specified position. In the case of an Ensemble field

    the position will be an Element_point.

    • It may be useful to create some intermediate object which can store a cache of

      ensemble parameters for a particular element when repeatedly evaluating the same field on

    the same element.

    • Do we treat time varying fields in a special way?
    Field_evaluate_derivative(IN Field *field, IN Position *position, IN Derivative *derivative,

    OUT Values *values)

    • How to specify the derivative, or do we just get a full set of derivatives of a particular order?
    • Do we require 2nd+ order derivatives? Do we have functions to test whether a particular derivative can be calculated and allow some bases to have more calculable derivatives than other?
    • Do we have separate functions for evaluating derivatives wrt field parameters and derivatives wrt element coordinates?