OpenCMISS-Zinc C++ API Documentation
Public Member Functions | List of all members
OpenCMISS::Zinc::FieldFiniteElement Class Reference

A real-valued interpolated field. More...

#include <fieldfiniteelement.hpp>

Inheritance diagram for OpenCMISS::Zinc::FieldFiniteElement:
OpenCMISS::Zinc::Field

Public Member Functions

 FieldFiniteElement (cmzn_field_finite_element_id field_finite_element_id)
 
cmzn_field_finite_element_id getDerivedId ()
 
int getNodeParameters (const Fieldcache &cache, int componentNumber, Node::ValueLabel nodeValueLabel, int versionNumber, int valuesCount, double *valuesOut)
 
int setNodeParameters (const Fieldcache &cache, int componentNumber, Node::ValueLabel nodeValueLabel, int versionNumber, int valuesCount, const double *valuesIn)
 
bool hasParametersAtLocation (const Fieldcache &cache)
 
- Public Member Functions inherited from OpenCMISS::Zinc::Field
 Field (cmzn_field_id field_id)
 
 Field (const Field &field)
 
Fieldoperator= (const Field &field)
 
bool isValid () const
 
cmzn_field_id getId () const
 
Fieldassignment createFieldassignment (const Field &sourceField)
 
bool isManaged ()
 
int setManaged (bool value)
 
char * getComponentName (int componentNumber)
 
int setComponentName (int componentNumber, const char *name)
 
double getCoordinateSystemFocus ()
 
int setCoordinateSystemFocus (double focus)
 
CoordinateSystemType getCoordinateSystemType ()
 
int setCoordinateSystemType (CoordinateSystemType coordinateSystemType)
 
int getNumberOfComponents ()
 
char * getName ()
 
int setName (const char *name)
 
int getNumberOfSourceFields ()
 
Field getSourceField (int index)
 
bool isTypeCoordinate ()
 
int setTypeCoordinate (bool value)
 
ValueType getValueType ()
 
Fieldmodule getFieldmodule () const
 
int assignMeshLocation (const Fieldcache &cache, const Element &element, int coordinatesCount, const double *coordinatesIn)
 
int assignReal (const Fieldcache &cache, int valuesCount, const double *valuesIn)
 
int assignString (const Fieldcache &cache, const char *stringValue)
 
Element evaluateMeshLocation (const Fieldcache &cache, int coordinatesCount, double *coordinatesOut)
 
int evaluateReal (const Fieldcache &cache, int valuesCount, double *valuesOut)
 
char * evaluateString (const Fieldcache &cache)
 
int evaluateDerivative (const Differentialoperator&differentialOperator, const Fieldcache &cache, int valuesCount, double *valuesOut)
 
bool isDefinedAtLocation (const Fieldcache &cache)
 
int smooth (const Fieldsmoothing &fieldsmoothing)
 
FieldComponent castComponent ()
 
FieldEdgeDiscontinuity castEdgeDiscontinuity ()
 
FieldEigenvalues castEigenvalues ()
 
FieldElementGroup castElementGroup ()
 
FieldFindMeshLocation castFindMeshLocation ()
 
FieldFiniteElement castFiniteElement ()
 
FieldGroup castGroup ()
 
FieldImage castImage ()
 
FieldImagefilterBinaryThreshold castImagefilterBinaryThreshold ()
 
FieldImagefilterDiscreteGaussian castImagefilterDiscreteGaussian ()
 
FieldImagefilterHistogram castImagefilterHistogram ()
 
FieldImagefilterThreshold castImagefilterThreshold ()
 
FieldMeshIntegral castMeshIntegral ()
 
FieldNodeGroup castNodeGroup ()
 
FieldStoredMeshLocation castStoredMeshLocation ()
 
FieldStoredString castStoredString ()
 

Additional Inherited Members

- Public Types inherited from OpenCMISS::Zinc::Field
enum  ChangeFlag {
  CHANGE_FLAG_NONE = CMZN_FIELD_CHANGE_FLAG_NONE, CHANGE_FLAG_ADD = CMZN_FIELD_CHANGE_FLAG_ADD, CHANGE_FLAG_REMOVE = CMZN_FIELD_CHANGE_FLAG_REMOVE, CHANGE_FLAG_IDENTIFIER = CMZN_FIELD_CHANGE_FLAG_IDENTIFIER,
  CHANGE_FLAG_DEFINITION = CMZN_FIELD_CHANGE_FLAG_DEFINITION, CHANGE_FLAG_FULL_RESULT = CMZN_FIELD_CHANGE_FLAG_FULL_RESULT, CHANGE_FLAG_PARTIAL_RESULT = CMZN_FIELD_CHANGE_FLAG_PARTIAL_RESULT, CHANGE_FLAG_RESULT = CMZN_FIELD_CHANGE_FLAG_RESULT,
  CHANGE_FLAG_FINAL = CMZN_FIELD_CHANGE_FLAG_FINAL
}
 
enum  CoordinateSystemType {
  COORDINATE_SYSTEM_TYPE_INVALID = CMZN_FIELD_COORDINATE_SYSTEM_TYPE_INVALID, COORDINATE_SYSTEM_TYPE_RECTANGULAR_CARTESIAN = CMZN_FIELD_COORDINATE_SYSTEM_TYPE_RECTANGULAR_CARTESIAN, COORDINATE_SYSTEM_TYPE_CYLINDRICAL_POLAR = CMZN_FIELD_COORDINATE_SYSTEM_TYPE_CYLINDRICAL_POLAR, COORDINATE_SYSTEM_TYPE_SPHERICAL_POLAR = CMZN_FIELD_COORDINATE_SYSTEM_TYPE_SPHERICAL_POLAR,
  COORDINATE_SYSTEM_TYPE_PROLATE_SPHEROIDAL = CMZN_FIELD_COORDINATE_SYSTEM_TYPE_PROLATE_SPHEROIDAL, COORDINATE_SYSTEM_TYPE_OBLATE_SPHEROIDAL = CMZN_FIELD_COORDINATE_SYSTEM_TYPE_OBLATE_SPHEROIDAL, COORDINATE_SYSTEM_TYPE_FIBRE = CMZN_FIELD_COORDINATE_SYSTEM_TYPE_FIBRE
}
 
enum  DomainType {
  DOMAIN_TYPE_INVALID = CMZN_FIELD_DOMAIN_TYPE_INVALID, DOMAIN_TYPE_POINT = CMZN_FIELD_DOMAIN_TYPE_POINT, DOMAIN_TYPE_NODES = CMZN_FIELD_DOMAIN_TYPE_NODES, DOMAIN_TYPE_DATAPOINTS = CMZN_FIELD_DOMAIN_TYPE_DATAPOINTS,
  DOMAIN_TYPE_MESH1D = CMZN_FIELD_DOMAIN_TYPE_MESH1D, DOMAIN_TYPE_MESH2D = CMZN_FIELD_DOMAIN_TYPE_MESH2D, DOMAIN_TYPE_MESH3D = CMZN_FIELD_DOMAIN_TYPE_MESH3D, DOMAIN_TYPE_MESH_HIGHEST_DIMENSION = CMZN_FIELD_DOMAIN_TYPE_MESH_HIGHEST_DIMENSION
}
 
enum  ValueType { VALUE_TYPE_INVALID = CMZN_FIELD_VALUE_TYPE_INVALID, VALUE_TYPE_REAL = CMZN_FIELD_VALUE_TYPE_REAL, VALUE_TYPE_STRING = CMZN_FIELD_VALUE_TYPE_STRING, VALUE_TYPE_MESH_LOCATION = CMZN_FIELD_VALUE_TYPE_MESH_LOCATION }
 
typedef int ChangeFlags
 
typedef int DomainTypes
 
- Protected Attributes inherited from OpenCMISS::Zinc::Field
cmzn_field_id id
 

Detailed Description

A real-valued interpolated field.

A real-valued field with a specified number of components defined by interpolation with an element basis over elements of a mesh, and/or with parameters including direct field values stored at nodes.

Member Function Documentation

cmzn_field_finite_element_id OpenCMISS::Zinc::FieldFiniteElement::getDerivedId ( )
inline

Return the C handle of the derived FieldFiniteElement object.

Returns
C handle of the derived FieldFiniteElement if this objects is valid, 0 otherwise.
int OpenCMISS::Zinc::FieldFiniteElement::getNodeParameters ( const Fieldcache cache,
int  componentNumber,
Node::ValueLabel  nodeValueLabel,
int  versionNumber,
int  valuesCount,
double *  valuesOut 
)
inline

Get parameters for finite element field at node. Note that the node and other part locations such as time must be set in the field cache passed to this function. Note if parameters only exist for some of the requested components, absent parameters are set to zero, and WARNING_PART_DONE is returned.

See also
Fieldcache::setNode
Parameters
cacheStore of location to get values and working cache. Must have set the node in the cache, and time if field is time-varying.
componentNumberThe component to get parameters for, from 1 to the number of field components, or -1 to get all components together. Must be at least one component for version; missing components are set as zero.
nodeValueLabelThe nodal value / derivative label to get parameters for.
versionNumberThe nodal version number to get parameters for, starting at 1.
valuesCountSize of values array. Checked that it equals or exceeds the number of components of field, or 1 if setting one component.
valuesOutArray of real values to be set from the parameters.
Returns
Result OK on full success, WARNING_PART_DONE if only some components have parameters (and which were obtained), ERROR_NOT_FOUND if field not defined or none of the requested components have parameters, otherwise any other error code.
bool OpenCMISS::Zinc::FieldFiniteElement::hasParametersAtLocation ( const Fieldcache cache)
inline

Query whether any parameters are stored for field at the location specified in the field cache.

Parameters
cacheThe field to query.
cacheStore of location to check, and intermediate field values.
Returns
True if field has parameters at location, otherwise false.
int OpenCMISS::Zinc::FieldFiniteElement::setNodeParameters ( const Fieldcache cache,
int  componentNumber,
Node::ValueLabel  nodeValueLabel,
int  versionNumber,
int  valuesCount,
const double *  valuesIn 
)
inline

Set parameters for finite element field at node. Note that the node and other part locations such as time must be set in the field cache passed to this function. Note if parameters only exist for some of the requested components, sets those that do exist and returns WARNING_PART_DONE.

See also
Fieldcache::setNode
Parameters
cacheStore of location to assign at and working cache. Must have set the node in the cache, and time if field is time-varying.
componentNumberThe component to set parameters for, from 1 to the number of field components, or -1 to set all components together. Must be at least one component for version; missing component values are ignored.
nodeValueLabelThe nodal value / derivative label to set parameters for.
versionNumberThe nodal version number to set parameters for, starting at 1.
valuesCountSize of values array. Checked that it equals or exceeds the number of components of field, or 1 if setting one component.
valuesInArray of real values to be assigned to the parameters.
Returns
Result OK on full success, WARNING_PART_DONE if only some components have parameters (and which were set), ERROR_NOT_FOUND if field not defined or none of the requested components have parameters, otherwise any other error code.

The documentation for this class was generated from the following file: