Common algebraic typesΒΆ

SAF_ALGTYPE is a collection of related C preprocessor symbols defined in SAFalgebraic.h.

Synopsis:

SAF_ALGTYPE_SCALAR: Used to specify fields that obey properties of scalar algebra.

SAF_ALGTYPE_VECTOR: Used, generically, for fields that obey properties of vector algebra.

SAF_ALGTYPE_COMPONENT: Used, generically, for any component of a multi-component field. In many cases, it might be just as well to treat each component of a multi-component field as a scalar field. However, this is not entirely mathematically correct.

SAF_ALGTYPE_TENSOR: Used for general, non-symmetric tensor fields

SAF_ALGTYPE_SYMTENSOR: Used for general, symmetric tensor fields.

SAF_ALGTYPE_TUPLE: Used to identify a field which evaluates to a group of otherwise unrelated fields. Typically used in a State field.

SAF_ALGTYPE_FIELD: This algebraic type is used for fields that are, in reality, simply references to other fields. These are called field indirections or, indirect*fields. Indirect fields are used, primarily for two kinds of fields; *inhomogeneous fields and cross-product fields. An inhomogeneous field is represented as references to pieces of the field over subsets of its base-space over which each piece is homogenous. Likewise, a cross-product field is used to work around the fact that SAF does NOT deal with cross product sets in the base-spaces of fields. Thus, we represent such fields as references to fields over other base spaces.

SAF_ALGTYPE_ANY: Wildcard for find operations.

Description: SAF supports the characterization of various algebraic types for fields. An algebraic type specifies the algebraic properties of the field.

We should probably identify an algebraic type for a Barycentric field; a field whose components are between 0.0 and 1.0 and which sum to 1.0.

See Also: