Itasca C++ Interface
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
jmodels::State Struct Referenceabstract

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
 

Detailed Description

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.

Member Function Documentation

◆ getTableIndexFromID()

virtual void * jmodels::State::getTableIndexFromID ( const string & s) const
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).

Member Data Documentation

◆ dnop_

double jmodels::State::dnop_

Fraction of normal displacement increment that causes contact tension or separation (output only)


The documentation for this struct was generated from the following files: