MBDyn-1.7.3
|
#include <rodj.h>
Public Member Functions | |
Rod (unsigned int uL, const DofOwner *pDO, const ConstitutiveLaw1D *pCL, const StructDispNode *pN1, const StructDispNode *pN2, doublereal dLength, flag fOut, bool bHasOffsets=0) | |
virtual | ~Rod (void) |
virtual Joint::Type | GetJointType (void) const |
virtual std::ostream & | Restart (std::ostream &out) const |
virtual void | AfterConvergence (const VectorHandler &X, const VectorHandler &XP) |
virtual unsigned int | iGetNumDof (void) const |
virtual void | WorkSpaceDim (integer *piNumRows, integer *piNumCols) const |
virtual VariableSubMatrixHandler & | AssJac (VariableSubMatrixHandler &WorkMat, doublereal dCoef, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr) |
virtual void | AssMats (VariableSubMatrixHandler &WorkMatA, VariableSubMatrixHandler &WorkMatB, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr) |
virtual SubVectorHandler & | AssRes (SubVectorHandler &WorkVec, doublereal dCoef, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr) |
virtual void | OutputPrepare (OutputHandler &OH) |
virtual void | Output (OutputHandler &OH) const |
virtual unsigned int | iGetInitialNumDof (void) const |
virtual void | InitialWorkSpaceDim (integer *piNumRows, integer *piNumCols) const |
virtual VariableSubMatrixHandler & | InitialAssJac (VariableSubMatrixHandler &WorkMat, const VectorHandler &XCurr) |
virtual SubVectorHandler & | InitialAssRes (SubVectorHandler &WorkVec, const VectorHandler &XCurr) |
virtual bool | bInverseDynamics (void) const |
VariableSubMatrixHandler & | AssJac (VariableSubMatrixHandler &WorkMat, const VectorHandler &XCurr) |
SubVectorHandler & | AssRes (SubVectorHandler &WorkVec, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr, const VectorHandler &XPrimePrimeCurr, InverseDynamics::Order iOrder=InverseDynamics::INVERSE_DYNAMICS) |
void | Update (const VectorHandler &XCurr, InverseDynamics::Order iOrder=InverseDynamics::INVERSE_DYNAMICS) |
virtual void | AfterConvergence (const VectorHandler &X, const VectorHandler &XP, const VectorHandler &XPP) |
virtual void | GetConnectedNodes (std::vector< const Node * > &connectedNodes) const |
virtual unsigned int | iGetNumPrivData (void) const |
virtual unsigned int | iGetPrivDataIdx (const char *s) const |
virtual doublereal | dGetPrivData (unsigned int i) const |
Public Member Functions inherited from Elem | |
Elem (unsigned int uL, flag fOut) | |
virtual | ~Elem (void) |
virtual std::ostream & | DescribeDof (std::ostream &out, const char *prefix="", bool bInitial=false) const |
virtual void | DescribeDof (std::vector< std::string > &desc, bool bInitial=false, int i=-1) const |
virtual std::ostream & | DescribeEq (std::ostream &out, const char *prefix="", bool bInitial=false) const |
virtual void | DescribeEq (std::vector< std::string > &desc, bool bInitial=false, int i=-1) const |
virtual DofOrder::Order | GetDofType (unsigned int) const |
void | SetInverseDynamicsFlags (unsigned uIDF) |
unsigned | GetInverseDynamicsFlags (void) const |
bool | bIsErgonomy (void) const |
bool | bIsRightHandSide (void) const |
virtual int | GetNumConnectedNodes (void) const |
Public Member Functions inherited from WithLabel | |
WithLabel (unsigned int uL=0, const std::string &sN="") | |
virtual | ~WithLabel (void) |
void | PutLabel (unsigned int uL) |
void | PutName (const std::string &sN) |
unsigned int | GetLabel (void) const |
const std::string & | GetName (void) const |
Public Member Functions inherited from SimulationEntity | |
SimulationEntity (void) | |
virtual | ~SimulationEntity (void) |
virtual bool | bIsValidIndex (unsigned int i) const |
virtual DofOrder::Order | GetEqType (unsigned int i) const |
virtual Hint * | ParseHint (DataManager *pDM, const char *s) const |
virtual void | BeforePredict (VectorHandler &, VectorHandler &, VectorHandler &, VectorHandler &) const |
virtual void | AfterPredict (VectorHandler &X, VectorHandler &XP) |
virtual void | Update (const VectorHandler &XCurr, const VectorHandler &XPrimeCurr) |
virtual void | DerivativesUpdate (const VectorHandler &XCurr, const VectorHandler &XPrimeCurr) |
virtual void | ReadInitialState (MBDynParser &HP) |
Public Member Functions inherited from ToBeOutput | |
ToBeOutput (flag fOut=fDefaultOut) | |
virtual | ~ToBeOutput (void) |
virtual void | Output (OutputHandler &OH, const VectorHandler &X, const VectorHandler &XP) const |
virtual flag | fToBeOutput (void) const |
virtual bool | bToBeOutput (void) const |
virtual void | SetOutputFlag (flag f=flag(1)) |
Public Member Functions inherited from Joint | |
Joint (unsigned int uL, const DofOwner *pD, flag fOut) | |
virtual | ~Joint (void) |
virtual Elem::Type | GetElemType (void) const |
std::ostream & | Output (std::ostream &out, const char *sJointName, unsigned int uLabel, const Vec3 &FLocal, const Vec3 &MLocal, const Vec3 &FGlobal, const Vec3 &MGlobal) const |
virtual void | SetInitialValue (VectorHandler &) |
virtual void | SetValue (DataManager *pDM, VectorHandler &, VectorHandler &, SimulationEntity::Hints *ph=0) |
bool | bIsPrescribedMotion (void) const |
bool | bIsTorque (void) const |
Public Member Functions inherited from ElemGravityOwner | |
ElemGravityOwner (unsigned int uL, flag fOut) | |
virtual | ~ElemGravityOwner (void) |
virtual doublereal | dGetM (void) const |
Vec3 | GetS (void) const |
Mat3x3 | GetJ (void) const |
Vec3 | GetB (void) const |
Vec3 | GetG (void) const |
Public Member Functions inherited from GravityOwner | |
GravityOwner (void) | |
virtual | ~GravityOwner (void) |
void | PutGravity (const Gravity *pG) |
virtual bool | bGetGravity (const Vec3 &X, Vec3 &Acc) const |
Public Member Functions inherited from ElemWithDofs | |
ElemWithDofs (unsigned int uL, const DofOwner *pDO, flag fOut) | |
virtual | ~ElemWithDofs (void) |
Public Member Functions inherited from DofOwnerOwner | |
DofOwnerOwner (const DofOwner *pDO) | |
virtual | ~DofOwnerOwner () |
virtual const DofOwner * | pGetDofOwner (void) const |
virtual integer | iGetFirstIndex (void) const |
Public Member Functions inherited from InitialAssemblyElem | |
InitialAssemblyElem (unsigned int uL, flag fOut) | |
virtual | ~InitialAssemblyElem (void) |
Public Member Functions inherited from SubjectToInitialAssembly | |
SubjectToInitialAssembly (void) | |
virtual | ~SubjectToInitialAssembly (void) |
Public Member Functions inherited from ConstitutiveLawOwner< T, Tder > | |
ConstitutiveLawOwner (const ConstitutiveLaw< T, Tder > *pCL) | |
virtual | ~ConstitutiveLawOwner (void) |
ConstitutiveLaw< T, Tder > * | pGetConstLaw (void) const |
void | Update (const T &Eps, const T &EpsPrime=mb_zero< T >()) |
void | AfterConvergence (const T &Eps, const T &EpsPrime=mb_zero< T >()) |
const T & | GetF (void) const |
const Tder & | GetFDE (void) const |
const Tder & | GetFDEPrime (void) const |
virtual std::ostream & | DescribeDof (std::ostream &out, const char *prefix="", bool bInitial=false) const |
virtual void | DescribeDof (std::vector< std::string > &desc, bool bInitial=false, int i=-1) const |
virtual std::ostream & | DescribeEq (std::ostream &out, const char *prefix="", bool bInitial=false) const |
virtual void | DescribeEq (std::vector< std::string > &desc, bool bInitial=false, int i=-1) const |
virtual DofOrder::Order | GetDofType (unsigned int i) const |
virtual std::ostream & | OutputAppend (std::ostream &out) const |
Protected Member Functions | |
virtual doublereal | dCalcEpsilon (void) |
void | AssMat (FullSubMatrixHandler &WorkMat, doublereal dCoef=1.) |
void | AssVec (SubVectorHandler &WorkVec) |
Protected Member Functions inherited from Joint | |
virtual void | OutputPrepare_int (const std::string &type, OutputHandler &OH, std::string &name) |
Protected Member Functions inherited from ElemGravityOwner | |
virtual Vec3 | GetS_int (void) const |
virtual Mat3x3 | GetJ_int (void) const |
virtual Vec3 | GetB_int (void) const |
virtual Vec3 | GetG_int (void) const |
Protected Attributes | |
const StructDispNode * | pNode1 |
const StructDispNode * | pNode2 |
doublereal | dL0 |
Vec3 | v |
doublereal | dElle |
doublereal | dEpsilon |
doublereal | dEpsilonPrime |
Protected Attributes inherited from WithLabel | |
unsigned int | uLabel |
std::string | sName |
Protected Attributes inherited from ToBeOutput | |
flag | fOutput |
Protected Attributes inherited from GravityOwner | |
Gravity * | pGravity |
Protected Attributes inherited from ConstitutiveLawOwner< T, Tder > | |
ConstitutiveLaw< T, Tder > * | pConstLaw |
Rod::Rod | ( | unsigned int | uL, |
const DofOwner * | pDO, | ||
const ConstitutiveLaw1D * | pCL, | ||
const StructDispNode * | pN1, | ||
const StructDispNode * | pN2, | ||
doublereal | dLength, | ||
flag | fOut, | ||
bool | bHasOffsets = 0 |
||
) |
Definition at line 46 of file rodj.cc.
References ASSERT, dElle, Vec3::Dot(), WithLabel::GetLabel(), StructDispNode::GetNodeType(), StructDispNode::GetXCurr(), MBDYN_EXCEPT_ARGS, pNode1, pNode2, grad::sqrt(), Node::STRUCTURAL, and v.
|
virtual |
|
virtual |
Reimplemented from SimulationEntity.
Reimplemented in RodWithOffset, and ViscoElasticRod.
Definition at line 104 of file rodj.cc.
References ConstitutiveLawOwner< T, Tder >::AfterConvergence(), and dEpsilon.
Referenced by AfterConvergence().
|
virtual |
Reimplemented from SimulationEntity.
Definition at line 459 of file rodj.cc.
References AfterConvergence().
|
virtual |
Implements Elem.
Reimplemented in RodWithOffset, and ViscoElasticRod.
Definition at line 199 of file rodj.cc.
References AssMat(), DEBUGCOUT, StructDispNode::iGetFirstMomentumIndex(), StructDispNode::iGetFirstPositionIndex(), pNode1, pNode2, FullSubMatrixHandler::PutColIndex(), FullSubMatrixHandler::PutRowIndex(), FullSubMatrixHandler::ResizeReset(), VariableSubMatrixHandler::SetFull(), and WorkSpaceDim().
Referenced by AssJac().
|
virtual |
Reimplemented from Elem.
Definition at line 426 of file rodj.cc.
References ASSERT, AssJac(), and Elem::bIsErgonomy().
|
protected |
Definition at line 121 of file rodj.cc.
References FullSubMatrixHandler::Add(), dElle, dL0, Vec3::Dot(), ConstitutiveLawOwner< T, Tder >::GetF(), ConstitutiveLawOwner< T, Tder >::GetFDE(), WithLabel::GetLabel(), MatCrossCross, MBDYN_EXCEPT_ARGS, pNode1, pNode2, grad::sqrt(), FullSubMatrixHandler::Sub(), Vec3::Tens(), and v.
Referenced by AssJac(), AssMats(), and InitialAssJac().
|
virtual |
Reimplemented from Elem.
Definition at line 235 of file rodj.cc.
References AssMat(), DEBUGCOUT, StructDispNode::iGetFirstMomentumIndex(), StructDispNode::iGetFirstPositionIndex(), pNode1, pNode2, FullSubMatrixHandler::PutColIndex(), FullSubMatrixHandler::PutRowIndex(), FullSubMatrixHandler::ResizeReset(), VariableSubMatrixHandler::SetFull(), VariableSubMatrixHandler::SetNullMatrix(), and WorkSpaceDim().
|
virtual |
Implements Elem.
Reimplemented in RodWithOffset, and ViscoElasticRod.
Definition at line 270 of file rodj.cc.
References AssVec(), DEBUGCOUT, StructDispNode::iGetFirstMomentumIndex(), pNode1, pNode2, SubVectorHandler::PutRowIndex(), VectorHandler::ResizeReset(), and WorkSpaceDim().
Referenced by AssRes().
|
virtual |
Reimplemented from Elem.
Definition at line 436 of file rodj.cc.
References ASSERT, AssRes(), Elem::bIsErgonomy(), DEBUGCOUT, InverseDynamics::INVERSE_DYNAMICS, and InverseDynamics::POSITION.
|
protected |
Definition at line 155 of file rodj.cc.
References VectorHandler::Add(), dCalcEpsilon(), dElle, dEpsilon, dEpsilonPrime, dL0, Vec3::Dot(), ConstitutiveLawOwner< T, Tder >::GetF(), WithLabel::GetLabel(), StructDispNode::GetVCurr(), StructDispNode::GetXCurr(), MBDYN_EXCEPT_ARGS, pNode1, pNode2, grad::sqrt(), VectorHandler::Sub(), ConstitutiveLawOwner< T, Tder >::Update(), and v.
Referenced by AssRes(), and InitialAssRes().
|
virtual |
|
protectedvirtual |
Definition at line 97 of file rodj.cc.
Referenced by ViscoElasticRod::AssRes(), AssVec(), RodWithOffset::AssVec(), and ViscoElasticRod::InitialAssRes().
|
virtual |
Reimplemented from ConstitutiveLawOwner< T, Tder >.
Definition at line 499 of file rodj.cc.
References ASSERT, dElle, dEpsilonPrime, ConstitutiveLawOwner< T, Tder >::dGetPrivData(), dL0, ConstitutiveLawOwner< T, Tder >::GetF(), and ConstitutiveLawOwner< T, Tder >::iGetNumPrivData().
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
Implements SubjectToInitialAssembly.
|
inlinevirtual |
Reimplemented from ConstitutiveLawOwner< T, Tder >.
|
virtual |
Reimplemented from ConstitutiveLawOwner< T, Tder >.
Definition at line 467 of file rodj.cc.
References ConstitutiveLawOwner< T, Tder >::iGetNumPrivData().
|
virtual |
Reimplemented from ConstitutiveLawOwner< T, Tder >.
Definition at line 473 of file rodj.cc.
References ASSERT, ConstitutiveLawOwner< T, Tder >::iGetPrivDataIdx(), and STRLENOF.
|
virtual |
Implements SubjectToInitialAssembly.
Reimplemented in RodWithOffset, and ViscoElasticRod.
Definition at line 357 of file rodj.cc.
References AssMat(), DEBUGCOUT, StructDispNode::iGetFirstPositionIndex(), InitialWorkSpaceDim(), pNode1, pNode2, FullSubMatrixHandler::PutColIndex(), FullSubMatrixHandler::PutRowIndex(), FullSubMatrixHandler::ResizeReset(), and VariableSubMatrixHandler::SetFull().
|
virtual |
Implements SubjectToInitialAssembly.
Reimplemented in RodWithOffset, and ViscoElasticRod.
Definition at line 389 of file rodj.cc.
References AssVec(), DEBUGCOUT, StructDispNode::iGetFirstPositionIndex(), InitialWorkSpaceDim(), pNode1, pNode2, SubVectorHandler::PutRowIndex(), and VectorHandler::ResizeReset().
|
inlinevirtual |
Implements SubjectToInitialAssembly.
Reimplemented in RodWithOffset, and ViscoElasticRod.
Definition at line 144 of file rodj.h.
Referenced by InitialAssJac(), and InitialAssRes().
|
virtual |
Reimplemented from ToBeOutput.
Definition at line 320 of file rodj.cc.
References ASSERT, ToBeOutput::bToBeOutput(), dElle, dEpsilonPrime, dL0, OutputHandler::GetCurrentStep(), ConstitutiveLawOwner< T, Tder >::GetF(), WithLabel::GetLabel(), OutputHandler::JOINTS, OutputHandler::Joints(), Joint::Output(), ConstitutiveLawOwner< T, Tder >::OutputAppend(), Vec3::pGetVec(), OutputHandler::UseNetCDF(), v, and Zero3.
|
virtual |
Reimplemented from ToBeOutput.
Definition at line 300 of file rodj.cc.
References ToBeOutput::bToBeOutput(), OutputHandler::JOINTS, Joint::OutputPrepare_int(), and OutputHandler::UseNetCDF().
|
virtual |
Implements Elem.
Reimplemented in RodWithOffset.
Definition at line 111 of file rodj.cc.
References dL0, WithLabel::GetLabel(), ConstitutiveLawOwner< T, Tder >::pGetConstLaw(), pNode1, pNode2, and Joint::Restart().
|
virtual |
|
protected |
Definition at line 53 of file rodj.h.
Referenced by ViscoElasticRod::AssJac(), RodWithOffset::AssJac(), AssMat(), ViscoElasticRod::AssRes(), AssVec(), RodWithOffset::AssVec(), dCalcEpsilon(), dGetPrivData(), ViscoElasticRod::InitialAssJac(), RodWithOffset::InitialAssJac(), ViscoElasticRod::InitialAssRes(), Output(), Rod(), and RodWithOffset::RodWithOffset().
|
protected |
Definition at line 55 of file rodj.h.
Referenced by AfterConvergence(), ViscoElasticRod::AfterConvergence(), RodWithOffset::AfterConvergence(), ViscoElasticRod::AssRes(), AssVec(), RodWithOffset::AssVec(), and ViscoElasticRod::InitialAssRes().
|
protected |
Definition at line 56 of file rodj.h.
Referenced by ViscoElasticRod::AfterConvergence(), RodWithOffset::AfterConvergence(), RodWithOffset::AssJac(), ViscoElasticRod::AssRes(), AssVec(), RodWithOffset::AssVec(), dGetPrivData(), RodWithOffset::InitialAssJac(), ViscoElasticRod::InitialAssRes(), and Output().
|
protected |
Definition at line 50 of file rodj.h.
Referenced by ViscoElasticRod::AssJac(), RodWithOffset::AssJac(), AssMat(), ViscoElasticRod::AssRes(), AssVec(), RodWithOffset::AssVec(), dCalcEpsilon(), dGetPrivData(), ViscoElasticRod::InitialAssJac(), RodWithOffset::InitialAssJac(), ViscoElasticRod::InitialAssRes(), Output(), Restart(), and RodWithOffset::Restart().
|
protected |
Definition at line 48 of file rodj.h.
Referenced by AssJac(), ViscoElasticRod::AssJac(), RodWithOffset::AssJac(), AssMat(), AssMats(), AssRes(), ViscoElasticRod::AssRes(), RodWithOffset::AssRes(), AssVec(), RodWithOffset::AssVec(), GetConnectedNodes(), InitialAssJac(), ViscoElasticRod::InitialAssJac(), RodWithOffset::InitialAssJac(), InitialAssRes(), ViscoElasticRod::InitialAssRes(), RodWithOffset::InitialAssRes(), Restart(), RodWithOffset::Restart(), Rod(), and RodWithOffset::RodWithOffset().
|
protected |
Definition at line 49 of file rodj.h.
Referenced by AssJac(), ViscoElasticRod::AssJac(), RodWithOffset::AssJac(), AssMat(), AssMats(), AssRes(), ViscoElasticRod::AssRes(), RodWithOffset::AssRes(), AssVec(), RodWithOffset::AssVec(), GetConnectedNodes(), InitialAssJac(), ViscoElasticRod::InitialAssJac(), RodWithOffset::InitialAssJac(), InitialAssRes(), ViscoElasticRod::InitialAssRes(), RodWithOffset::InitialAssRes(), Restart(), RodWithOffset::Restart(), Rod(), and RodWithOffset::RodWithOffset().
|
protected |
Definition at line 52 of file rodj.h.
Referenced by ViscoElasticRod::AssJac(), RodWithOffset::AssJac(), AssMat(), ViscoElasticRod::AssRes(), AssVec(), RodWithOffset::AssVec(), ViscoElasticRod::InitialAssJac(), RodWithOffset::InitialAssJac(), ViscoElasticRod::InitialAssRes(), Output(), Rod(), and RodWithOffset::RodWithOffset().