|
OOFEM 3.0
|
#include <pythonfield.h>
Public Member Functions | |
| PythonField (void) | |
| Constructor. | |
| void | setFunctionName (std::string functionName) |
| void | setModuleName (std::string moduleName) |
| int | evaluateAt (FloatArray &answer, const FloatArray &coords, ValueModeType mode, TimeStep *tStep) override |
| int | evaluateAt (FloatArray &answer, DofManager *dman, ValueModeType mode, TimeStep *tStep) override |
| void | saveContext (DataStream &stream) override |
| void | restoreContext (DataStream &stream) override |
| const char * | giveClassName () const override |
| Public Member Functions inherited from oofem::Field | |
| Field (FieldType b=FieldType::FT_Unknown) | |
| virtual | ~Field () |
| virtual int | evaluateAt (FloatArray &answer, Element *elem, ValueModeType mode, TimeStep *tStep) |
| FieldType | giveType () |
| Returns the type of receiver. | |
| void | setType (FieldType b) |
| Sets the type of receiver. | |
| void | setSetsNumbers (const IntArray sets) |
| Defines a list of sets used to impose a field on specific elements. | |
| virtual bool | hasElementInSets (int nElem, Domain *d) |
| Searches if element number exist in IntArray regionSets for given domain. | |
| std::string | errorInfo (const char *func) const |
| Returns string for prepending output (used by error reporting macros). | |
| virtual void | initializeFrom (InputRecord &ir) |
Private Attributes | |
| std::string | moduleName |
| Name of python module containing evaluating function function. | |
| std::string | functionName |
Additional Inherited Members | |
| Protected Attributes inherited from oofem::Field | |
| FieldType | type |
| IntArray | regionSets |
Custom user supplied python scripts for field. The python module should contain the functions
Definition at line 64 of file pythonfield.h.
| oofem::PythonField::PythonField | ( | void | ) |
|
overridevirtual |
Evaluates the field at given point.
| coords | Coordinates of the point of interest |
| answer | Field evaluated at coordinate. |
| tStep | Time step to evaluate for. |
| mode | Mode of value (total, velocity,...). |
Implements oofem::Field.
Definition at line 73 of file pythonfield.C.
References functionName, and moduleName.
|
overridevirtual |
Evaluates the field at given DofManager. This potentially can be resolved quickly, as receiver data may be described using values at dofManagers. Here an additional issue exists: one needs to make sure, that passed dman is from the same domain, so that its number can be used to perform suggested quick evaluation.
If this is not the case (the field is described differently), the response can be evaluated using dofman coordinates in a standard way.
| [out] | answer | Evaluated field for dman. |
| dman | Reference to dofManager. | |
| mode | Mode of value (total, velocity,...). | |
| tStep | Time step to evaluate for. |
Implements oofem::Field.
Definition at line 97 of file pythonfield.C.
References OOFEM_ERROR.
|
inlineoverridevirtual |
Implements oofem::Field.
Definition at line 88 of file pythonfield.h.
|
inlineoverridevirtual |
Restores the receiver state previously written in stream.
| stream | Input stream. |
| Throws | an ContextIOERR exception if error encountered. |
Implements oofem::Field.
Definition at line 86 of file pythonfield.h.
|
inlineoverridevirtual |
Stores receiver state to output stream.
| stream | Output stream. |
| Throws | an ContextIOERR exception if error encountered. |
Implements oofem::Field.
Definition at line 85 of file pythonfield.h.
| void oofem::PythonField::setFunctionName | ( | std::string | functionName | ) |
Definition at line 63 of file pythonfield.C.
References functionName.
| void oofem::PythonField::setModuleName | ( | std::string | moduleName | ) |
Definition at line 68 of file pythonfield.C.
References moduleName.
|
private |
Definition at line 69 of file pythonfield.h.
Referenced by evaluateAt(), and setFunctionName().
|
private |
Name of python module containing evaluating function function.
Definition at line 68 of file pythonfield.h.
Referenced by evaluateAt(), and setModuleName().