Itasca C++ Interface
|
The structure used to pass information to the joint constitutive model. More...
#include <state.h>
Public Member Functions | |
virtual double | getTimeStep () const =0 |
The current time step. | |
virtual bool | isThermal () const =0 |
true if thermal is configured. | |
virtual bool | isCreep () const =0 |
true if creep is configured. | |
virtual bool | isFluid () const =0 |
true if fluid/flow is configured. | |
virtual bool | trackEnergy () const =0 |
true if energy tracking is on. | |
virtual void * | getTableIndexFromID (const string &s) const =0 |
virtual double | getYFromX (void *index, const double &x) const =0 |
The index pointer should be previously obtained from a getTableIndexFromID() call. | |
virtual double | getSlopeFromX (void *index, const double &x) const =0 |
The index pointer should be previously obtained from a getTableIndexFromID() call. | |
Public Attributes | |
uint32 | state_ |
Contact state mask. | |
double | area_ |
Contact area. | |
double | normal_force_ |
Contact normal force. | |
DVect3 | shear_force_ |
Contact shear force. | |
double | normal_disp_ |
Normal displacement. | |
DVect3 | shear_disp_ |
Shear displacement. | |
double | normal_disp_inc_ |
Normal displacement increment. | |
DVect3 | shear_disp_inc_ |
Shear displacement increment. | |
double | normal_force_inc_ |
Normal force increment (output only). | |
DVect3 | shear_force_inc_ |
Shear force increment (output only). | |
double | dnop_ |
double | working_ [max_working_] |
This is a working area for values that must be stored between run() calls. | |
int32 | iworking_ [max_iworking_] |
This is a working area for values that must be stored between run() calls. | |
Static Public Attributes | |
static const uint32 | max_working_ = 10 |
static const uint32 | max_iworking_ = 2 |
The structure used to pass information to the joint constitutive model.
The most important link between 3DEC and a user-written joint model is the member-function run(unsigned dim, State *ps), which computes the mechanical response of the model during cycling.
A structure, State (defined in state.h?, is used to transfer information to and from the model.
State is also sent to the initialize() method, although not all fields are guaranteed to be valid in that case.
The members of State (all public) are as follows.
Not all the information may be used by a particular code; the structure is intended to serve all Itasca codes.
|
pure virtual |
Finding a table given an id number can be an expensive operation.
In general, it is better to store a reference pointer using this function during initialize(), and use it to access the table during run(). Index pointers should not be saved and restored, and should be found during every initialize() call. (Table data may have changed in the interim).
double jmodels::State::dnop_ |
Fraction of normal displacement increment that causes contact tension or separation (output only)