31 #ifndef TOTALEQUATION_H
32 #define TOTALEQUATION_H
99 bool bPos[3],
bool bVel[3],
101 bool bRot[3],
bool bAgv[3],
113 virtual std::ostream&
Restart(std::ostream& out)
const;
126 virtual std::ostream&
128 const char *prefix =
"",
129 bool bInitial =
false)
const;
133 bool bInitial =
false,
136 virtual std::ostream&
138 const char *prefix =
"",
139 bool bInitial =
false)
const;
143 bool bInitial =
false,
237 connectedNodes.resize(2);
238 connectedNodes[0] =
pNode1;
239 connectedNodes[1] =
pNode2;
295 virtual std::ostream&
Restart(std::ostream& out)
const;
308 virtual std::ostream&
310 const char *prefix =
"",
311 bool bInitial =
false)
const;
315 bool bInitial =
false,
319 virtual std::ostream&
322 bool bInitial =
false)
const;
326 bool bInitial =
false,
406 connectedNodes.resize(2);
407 connectedNodes[0] =
pNode1;
408 connectedNodes[1] =
pNode2;
417 #endif // TOTALEQUATION_H
virtual void AfterConvergence(const VectorHandler &X, const VectorHandler &XP)
unsigned int nRotConstraints
const StructNode * pNode1
VariableSubMatrixHandler & InitialAssJac(VariableSubMatrixHandler &WorkMat, const VectorHandler &XCurr)
virtual unsigned int iGetNumPrivData(void) const
unsigned int iPosIncid[3]
unsigned int nRotConstraints
virtual void InitialWorkSpaceDim(integer *piNumRows, integer *piNumCols) const
void Output(OutputHandler &OH) const
TplDriveOwner< Vec3 > XDrv
SubVectorHandler & AssRes(SubVectorHandler &WorkVec, doublereal dCoef, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr)
virtual unsigned int iGetNumDof(void) const
void Output(OutputHandler &OH) const
unsigned int nPosConstraints
VariableSubMatrixHandler & AssJac(VariableSubMatrixHandler &WorkMat, doublereal dCoef, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr)
unsigned int nConstraints
VariableSubMatrixHandler & InitialAssJac(VariableSubMatrixHandler &WorkMat, const VectorHandler &XCurr)
unsigned int iRotIncid[3]
virtual Hint * ParseHint(DataManager *pDM, const char *s) const
virtual unsigned int iGetNumPrivData(void) const
const StructNode * pNode1
unsigned int iRotEqIndex[3]
void WorkSpaceDim(integer *piNumRows, integer *piNumCols) const
virtual void GetConnectedNodes(std::vector< const Node * > &connectedNodes) const
virtual doublereal dGetPrivData(unsigned int i) const
virtual Joint::Type GetJointType(void) const
virtual Hint * ParseHint(DataManager *pDM, const char *s) const
DofOrder::Order GetDofType(unsigned int i) const
virtual Joint::Type GetJointType(void) const
unsigned int iAgvIncid[3]
std::vector< Hint * > Hints
unsigned int iAgvEqIndex[3]
virtual std::ostream & DescribeDof(std::ostream &out, const char *prefix="", bool bInitial=false) const
unsigned int nVelConstraints
TotalEquation * total_equation_element
TplDriveOwner< Vec3 > OmegaDrv
SubVectorHandler & AssRes(SubVectorHandler &WorkVec, doublereal dCoef, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr)
virtual unsigned int iGetInitialNumDof(void) const
virtual void GetConnectedNodes(std::vector< const Node * > &connectedNodes) const
TplDriveOwner< Vec3 > OmegaPDrv
virtual void SetValue(DataManager *pDM, VectorHandler &X, VectorHandler &XP, SimulationEntity::Hints *ph=0)
DofOrder::Order GetEqType(unsigned int i) const
TplDriveOwner< Vec3 > XPDrv
virtual unsigned int iGetNumDof(void) const
TplDriveOwner< Vec3 > ThetaDrv
virtual std::ostream & Restart(std::ostream &out) const
virtual std::ostream & DescribeEq(std::ostream &out, const char *prefix="", bool bInitial=false) const
SubVectorHandler & InitialAssRes(SubVectorHandler &WorkVec, const VectorHandler &XCurr)
virtual doublereal dGetPrivData(unsigned int i) const
virtual std::ostream & DescribeEq(std::ostream &out, const char *prefix="", bool bInitial=false) const
virtual unsigned int iGetInitialNumDof(void) const
virtual unsigned int iGetPrivDataIdx(const char *s) const
const StructNode * pNode2
VariableSubMatrixHandler & AssJac(VariableSubMatrixHandler &WorkMat, doublereal dCoef, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr)
void WorkSpaceDim(integer *piNumRows, integer *piNumCols) const
unsigned int iVelIncid[3]
#define ASSERT(expression)
TotalReaction(unsigned int uL, const DofOwner *pDO, bool bPos[3], bool bRot[3], const StructNode *pN1, const Vec3 &f1Tmp, const Mat3x3 &R1hTmp, const Mat3x3 &R1hrTmp, const StructNode *pN2, const Vec3 &f2Tmp, const Mat3x3 &R2hTmp, const Mat3x3 &R2hrTmp, TotalEquation *t_elm, flag fOut)
virtual std::ostream & DescribeDof(std::ostream &out, const char *prefix="", bool bInitial=false) const
virtual void AfterConvergence(const VectorHandler &X, const VectorHandler &XP)
virtual void SetValue(DataManager *pDM, VectorHandler &X, VectorHandler &XP, SimulationEntity::Hints *ph=0)
unsigned int nAgvConstraints
TplDriveOwner< Vec3 > XPPDrv
const StructNode * pNode2
unsigned int iVelEqIndex[3]
unsigned int nConstraints
SubVectorHandler & InitialAssRes(SubVectorHandler &WorkVec, const VectorHandler &XCurr)
unsigned int iPosEqIndex[3]
unsigned int iPosIncid[3]
virtual std::ostream & Restart(std::ostream &out) const
TotalEquation(unsigned int uL, const DofOwner *pDO, bool bPos[3], bool bVel[3], TplDriveCaller< Vec3 > *const pDCPos[3], bool bRot[3], bool bAgv[3], TplDriveCaller< Vec3 > *const pDCRot[3], const StructNode *pN1, const Vec3 &f1Tmp, const Mat3x3 &R1hTmp, const Mat3x3 &R1hrTmp, const StructNode *pN2, const Vec3 &f2Tmp, const Mat3x3 &R2hTmp, const Mat3x3 &R2hrTmp, flag fOut)
DofOrder::Order GetDofType(unsigned int i) const
unsigned int nPosConstraints
unsigned int iRotIncid[3]
virtual void InitialWorkSpaceDim(integer *piNumRows, integer *piNumCols) const
virtual unsigned int iGetPrivDataIdx(const char *s) const