OOF2: The Manual

Name

AuxiliaryProperty — A Property that doesn't contribute directly to a Flux or Equation

Synopses

C++ Synopsis

#include "engine/property.h"
class AuxiliaryProperty: , public Property {
  AuxiliaryProperty(const std::string& name,
                    PyObject* registration);

}

Python Synopsis

There are no Python methods for AuxiliaryProperty other than those defined in the base class and derived classes.

Source Files

  • SRC/engine/property.C: C++ source code
  • SRC/engine/property.h: C++ headers
  • SRC/engine/property.swg: SWIG source code

Description

An AuxiliaryProperty is one that does not make direct contributions to a Flux or Equation. All of its methods are defined in the Property base class.

Other Properties can use the cross reference mechanism to locate a Material's AuxiliaryProperties and extract data from them. For example, anisotropic Properties fetch their orientation data from their Material's Orientation. Orientation is an AuxilliaryProperty because other Properties use it to compute their Flux and Equation contributions, but Orientation does no computation on its own.

Currently AuxilliaryProperties cannot be defined in Python, but an existing C++ AuxilliaryProperty can be retrieved and queried in Python. For example, if a Material named “material” contains an Orientation named “orient”, it can be retrieved like this:

>>> mat = getMaterial("material")
>>> prop = mat.fetchProperty("Orientation")
>>> prop.name()        # name() is a base class method
'Orientation:orient'
>>> prop.orientation() # orientation() is defined in OrientationProp 
COrientABG(alpha=45, beta=0, gamma=10)
      

AuxilliaryProperty defines no methods that are not in the Property base class.