Itasca C++ Interface
state.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "jmodelbase.h"
4 
10 namespace jmodels
11 {
24  struct State
25  {
26  public:
27  static const uint32 max_working_ = 10;
28  static const uint32 max_iworking_ = 2;
29 
30  virtual double getTimeStep() const=0;
31  virtual bool isThermal() const = 0;
32  virtual bool isCreep() const = 0;
33  virtual bool isFluid() const = 0;
34  virtual bool trackEnergy() const = 0;
40  virtual void * getTableIndexFromID(const string &s) const=0;
42  virtual double getYFromX(void *index,const double &x) const=0;
44  virtual double getSlopeFromX(void *index,const double &x) const=0;
45 
46  JMODEL_EXPORT State();
47  uint32 state_;
48  double area_;
49  double normal_force_;
50  DVect3 shear_force_;
51  double normal_disp_;
52  DVect3 shear_disp_;
54  DVect3 shear_disp_inc_;
59  double dnop_;
60  double working_[max_working_];
61  int32 iworking_[max_iworking_];
62  };
63 } // namespace jmodels
64 
65 // EoF
The Joint Constitutive Model interface library.
Definition: jointmodel.cpp:6
The structure used to pass information to the joint constitutive model.
Definition: state.h:25
DVect3 shear_force_inc_
Shear force increment (output only).
Definition: state.h:56
virtual double getTimeStep() const =0
The current time step.
int32 iworking_[max_iworking_]
This is a working area for values that must be stored between run() calls.
Definition: state.h:61
double normal_disp_
Normal displacement.
Definition: state.h:51
virtual bool isCreep() const =0
true if creep is configured.
virtual double getSlopeFromX(void *index, const double &x) const =0
The index pointer should be previously obtained from a getTableIndexFromID() call.
virtual double getYFromX(void *index, const double &x) const =0
The index pointer should be previously obtained from a getTableIndexFromID() call.
virtual bool isThermal() const =0
true if thermal is configured.
virtual bool isFluid() const =0
true if fluid/flow is configured.
uint32 state_
Contact state mask.
Definition: state.h:47
double dnop_
Definition: state.h:59
DVect3 shear_disp_inc_
Shear displacement increment.
Definition: state.h:54
double working_[max_working_]
This is a working area for values that must be stored between run() calls.
Definition: state.h:60
virtual bool trackEnergy() const =0
true if energy tracking is on.
virtual void * getTableIndexFromID(const string &s) const =0
DVect3 shear_force_
Contact shear force.
Definition: state.h:50
double normal_force_
Contact normal force.
Definition: state.h:49
DVect3 shear_disp_
Shear displacement.
Definition: state.h:52
double normal_disp_inc_
Normal displacement increment.
Definition: state.h:53
double normal_force_inc_
Normal force increment (output only).
Definition: state.h:55
double area_
Contact area.
Definition: state.h:48