Description
Base interface for the per-node and per-materialpoint properties of some material.
Used, among others, in ChField and ChDomain. Suggestion: if you want to inherit from this, rather consider to inherit from these ready-to-use helping subclasses: ChFieldDataStateless (if you just want to attach some generic data structures) or ChFieldDataGeneric<int n> (if you want a n-dimensional state, with its ChVariable, with automatic bookkeeping etc.)
#include <ChFieldData.h>

Public Member Functions | |
| virtual ChFieldData * | GetNthSubData (int n) |
| Optionally, a ChFieldData could have children ChFieldData objects, like a tree structure. More... | |
| template<typename VisitorFunc > | |
| void | VisitTree (VisitorFunc &&visitor) |
| template<typename VisitorFunc > | |
| void | ForEach (VisitorFunc &&visitor) |
Member Function Documentation
◆ GetNthSubData()
|
inlinevirtual |
Optionally, a ChFieldData could have children ChFieldData objects, like a tree structure.
This can be useful in cases when one has a compound material like plastic law + viscous law, each willing to introduce their own ChFieldData per material point, hence per each material point the viscoplastic material will generate a ChFieldDataCompound with two children: a ChFieldDataForPlasticity and a ChFieldDataForViscosity, for example. When using ChFieldData in a ChField, instead, we require that there are no sub data. Return nullptr for n=0 to tell that there are no sub data.
The documentation for this class was generated from the following file:
- /builds/uwsbel/chrono/src/chrono/fea/ChFieldData.h