MBDyn-1.7.3
|
#include <shelleas.h>
Public Member Functions | |
Shell4EAS (unsigned int uL, const DofOwner *pDO, const StructNode *pN1, const StructNode *pN2, const StructNode *pN3, const StructNode *pN4, const Mat3x3 &R1, const Mat3x3 &R2, const Mat3x3 &R3, const Mat3x3 &R4, const fmh &pDTmp, const vh &PreStress, flag fOut) | |
virtual | ~Shell4EAS (void) |
virtual Shell::Type | GetShellType (void) const |
virtual unsigned int | iGetNumDof (void) const |
virtual DofOrder::Order | GetDofType (unsigned int i) const |
virtual DofOrder::Order | GetEqType (unsigned int i) const |
virtual std::ostream & | Restart (std::ostream &out) const |
virtual void | WorkSpaceDim (integer *piNumRows, integer *piNumCols) const |
void | SetValue (DataManager *pDM, VectorHandler &, VectorHandler &, SimulationEntity::Hints *ph=0) |
virtual SubVectorHandler & | AssRes (SubVectorHandler &WorkVec, doublereal dCoef, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr) |
virtual VariableSubMatrixHandler & | AssJac (VariableSubMatrixHandler &WorkMat, doublereal dCoef, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr) |
virtual void | Output (OutputHandler &OH) const |
virtual unsigned int | iGetInitialNumDof (void) const |
virtual void | InitialWorkSpaceDim (integer *piNumRows, integer *piNumCols) const |
virtual void | SetInitialValue (VectorHandler &) |
virtual VariableSubMatrixHandler & | InitialAssJac (VariableSubMatrixHandler &WorkMat, const VectorHandler &XCurr) |
virtual SubVectorHandler & | InitialAssRes (SubVectorHandler &WorkVec, const VectorHandler &XCurr) |
virtual const StructNode * | pGetNode (unsigned int i) const |
virtual void | GetConnectedNodes (std::vector< const Node * > &connectedNodes) const |
![]() | |
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 void | AssMats (VariableSubMatrixHandler &WorkMatA, VariableSubMatrixHandler &WorkMatB, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr) |
virtual bool | bInverseDynamics (void) const |
void | SetInverseDynamicsFlags (unsigned uIDF) |
unsigned | GetInverseDynamicsFlags (void) const |
bool | bIsErgonomy (void) const |
bool | bIsRightHandSide (void) const |
virtual VariableSubMatrixHandler & | AssJac (VariableSubMatrixHandler &WorkMat, const VectorHandler &XCurr) |
virtual SubVectorHandler & | AssRes (SubVectorHandler &WorkVec, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr, const VectorHandler &XPrimePrimeCurr, InverseDynamics::Order iOrder=InverseDynamics::INVERSE_DYNAMICS) |
virtual int | GetNumConnectedNodes (void) const |
![]() | |
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 |
![]() | |
SimulationEntity (void) | |
virtual | ~SimulationEntity (void) |
virtual bool | bIsValidIndex (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 | Update (const VectorHandler &XCurr, InverseDynamics::Order iOrder) |
virtual void | AfterConvergence (const VectorHandler &X, const VectorHandler &XP) |
virtual void | AfterConvergence (const VectorHandler &X, const VectorHandler &XP, const VectorHandler &XPP) |
virtual unsigned int | iGetNumPrivData (void) const |
virtual unsigned int | iGetPrivDataIdx (const char *s) const |
virtual doublereal | dGetPrivData (unsigned int i) const |
virtual std::ostream & | OutputAppend (std::ostream &out) const |
virtual void | ReadInitialState (MBDynParser &HP) |
![]() | |
ToBeOutput (flag fOut=fDefaultOut) | |
virtual | ~ToBeOutput (void) |
virtual void | OutputPrepare (OutputHandler &OH) |
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)) |
![]() | |
Shell (unsigned uLabel, const DofOwner *pDO, flag fOut) | |
virtual | ~Shell (void) |
virtual Elem::Type | GetElemType (void) const |
![]() | |
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 |
![]() | |
GravityOwner (void) | |
virtual | ~GravityOwner (void) |
void | PutGravity (const Gravity *pG) |
virtual bool | bGetGravity (const Vec3 &X, Vec3 &Acc) const |
![]() | |
ElemWithDofs (unsigned int uL, const DofOwner *pDO, flag fOut) | |
virtual | ~ElemWithDofs (void) |
![]() | |
DofOwnerOwner (const DofOwner *pDO) | |
virtual | ~DofOwnerOwner () |
virtual const DofOwner * | pGetDofOwner (void) const |
virtual integer | iGetFirstIndex (void) const |
![]() | |
InitialAssemblyElem (unsigned int uL, flag fOut) | |
virtual | ~InitialAssemblyElem (void) |
![]() | |
SubjectToInitialAssembly (void) | |
virtual | ~SubjectToInitialAssembly (void) |
Static Public Attributes | |
static doublereal | xi_i [NUMIP][2] |
static doublereal | w_i [NUMIP] |
static doublereal | xi_n [NUMNODES][2] |
static doublereal | xi_0 [2] = {0., 0.} |
Protected Member Functions | |
virtual void | AddInternalForces (Vec6 &, unsigned int) |
![]() | |
virtual Vec3 | GetS_int (void) const |
virtual Mat3x3 | GetJ_int (void) const |
virtual Vec3 | GetB_int (void) const |
virtual Vec3 | GetG_int (void) const |
Private Member Functions | |
void | UpdateNodalAndAveragePosAndOrientation () |
void | ComputeInitialNodeAndIptOrientation () |
void | InterpolateOrientation () |
void | ComputeIPCurvature () |
Definition at line 59 of file shelleas.h.
Enumerator | |
---|---|
STRAIN | |
CURVAT | |
NUMDEFORM |
Definition at line 129 of file shelleas.h.
Enumerator | |
---|---|
IP_1_1 | |
IP_1_2 | |
IP_1_3 | |
IP_2_1 | |
IP_2_2 | |
IP_2_3 | |
IP_3_1 | |
IP_3_2 | |
IP_3_3 | |
NUMIP |
Definition at line 91 of file shelleas.h.
enum Shell4EAS::NodeName |
Enumerator | |
---|---|
NODE1 | |
NODE2 | |
NODE3 | |
NODE4 | |
NUMNODES |
Definition at line 116 of file shelleas.h.
Enumerator | |
---|---|
SSEP_1 | |
SSEP_2 | |
SSEP_3 | |
SSEP_4 |
Definition at line 109 of file shelleas.h.
Shell4EAS::Shell4EAS | ( | unsigned int | uL, |
const DofOwner * | pDO, | ||
const StructNode * | pN1, | ||
const StructNode * | pN2, | ||
const StructNode * | pN3, | ||
const StructNode * | pN4, | ||
const Mat3x3 & | R1, | ||
const Mat3x3 & | R2, | ||
const Mat3x3 & | R3, | ||
const Mat3x3 & | R4, | ||
const fmh & | pDTmp, | ||
const vh & | PreStress, | ||
flag | fOut | ||
) |
Definition at line 215 of file shelleas.cc.
References a, alpha_0, alpha_i, ComputeInitialNodeAndIptOrientation(), ComputeIPCurvature(), DRef, eps_tilde_1_0_i, eps_tilde_2_0_i, Mat3x3::GetCol(), iGetNumDof(), k_1_i, k_2_i, k_tilde_1_0_i, k_tilde_2_0_i, L_alpha_beta_i, MatrixHandler::MatMatMul(), MatrixHandler::MatTMatMul(), Mat3x3::MulTV(), NODE1, NODE2, NODE3, NODE4, NUMIP, NUMNODES, P_i, pNode, S_alpha_beta_0, SAFENEWWITHCONSTRUCTOR, T0_overline, T_0, T_0_0, T_0_i, T_i, T_overline, xa, xa_0, xi_0, xi_i, y_i_1, and y_i_2.
|
virtual |
Definition at line 410 of file shelleas.cc.
References ASSERT, NUMIP, and SAFEDELETE.
|
inlineprotectedvirtual |
Definition at line 260 of file shelleas.h.
References NO_OP.
|
virtual |
Implements Elem.
Definition at line 545 of file shelleas.cc.
References FullSubMatrixHandler::Add(), FullSubMatrixHandler::AddT(), alpha_i, B_overline_i, Vec3::Cross(), DRef, RotManip::DRot(), RotManip::DRot_IT(), RotManip::Elle(), DofOwnerOwner::iGetFirstIndex(), StructDispNode::iGetFirstMomentumIndex(), StructDispNode::iGetFirstPositionIndex(), iGetNumDof(), k_1_i, k_2_i, Kappa_delta_i_1, Kappa_delta_i_2, L_alpha_beta_i, MatCross, MatrixHandler::MatMatMul(), Mat3x3::MulMT(), Mat3x3::MulTM(), Mat3x3::MulTMT(), Mat3x3::MulTV(), NUMIP, NUMNODES, P_i, Phi_Delta_i, phi_tilde_i, phi_tilde_n, pNode, FullSubMatrixHandler::PutColIndex(), FullSubMatrixHandler::PutRowIndex(), FullSubMatrixHandler::ResizeReset(), VariableSubMatrixHandler::SetFull(), stress_i, FullSubMatrixHandler::Sub(), T_i, T_overline, w_i, WorkSpaceDim(), xi_i, y_i_1, and y_i_2.
|
virtual |
Implements Elem.
Definition at line 422 of file shelleas.cc.
References alpha_i, B_overline_i, beta, bPreStress, ComputeIPCurvature(), DRef, eps_tilde_1_0_i, eps_tilde_1_i, eps_tilde_2_0_i, eps_tilde_2_i, epsilon, epsilon_hat, DofOwnerOwner::iGetFirstIndex(), StructDispNode::iGetFirstMomentumIndex(), iGetNumDof(), InterpolateOrientation(), k_1_i, k_2_i, k_tilde_1_0_i, k_tilde_1_i, k_tilde_2_0_i, k_tilde_2_i, Kappa_delta_i_1, Kappa_delta_i_2, L_alpha_beta_i, MatCross, Mat3x3::MulTV(), NUMIP, NUMNODES, P_i, Phi_Delta_i, phi_tilde_n, pNode, PreStress, MyVectorHandler::Put(), SubVectorHandler::PutRowIndex(), VectorHandler::ResizeReset(), stress_i, T_i, UpdateNodalAndAveragePosAndOrientation(), w_i, WorkSpaceDim(), xa, xi_i, y_i_1, y_i_2, and Zero3.
|
private |
Definition at line 123 of file shelleas.cc.
References Vec3::Cross(), Eye3, StructNode::GetRCurr(), StructDispNode::GetXCurr(), InterpolateOrientation(), iTa, iTa_i, Vec3::Norm(), NUMIP, NUMNODES, pNode, T_i, UpdateNodalAndAveragePosAndOrientation(), xa, xi_i, and xi_n.
Referenced by Shell4EAS().
|
private |
Definition at line 191 of file shelleas.cc.
References RotManip::DRot(), RotManip::DRot_I(), RotManip::Elle(), k_1_i, k_2_i, Kappa_delta_i_1, Kappa_delta_i_2, L_alpha_beta_i, Mat3x3::MulMT(), NUMIP, NUMNODES, Phi_Delta_i, phi_tilde_i, phi_tilde_n, T_overline, xi_i, and Zero3.
Referenced by AssRes(), and Shell4EAS().
|
inlinevirtual |
Reimplemented from Elem.
Definition at line 413 of file shelleas.h.
References NUMNODES, and pNode.
|
inlinevirtual |
Reimplemented from Elem.
Definition at line 302 of file shelleas.h.
References DofOrder::ALGEBRAIC, ASSERT, and iGetNumDof().
|
inlinevirtual |
Reimplemented from SimulationEntity.
Definition at line 307 of file shelleas.h.
References DofOrder::ALGEBRAIC, ASSERT, and iGetNumDof().
|
inlinevirtual |
Definition at line 293 of file shelleas.h.
References Shell::ELASTIC.
|
inlinevirtual |
Implements SubjectToInitialAssembly.
Definition at line 378 of file shelleas.h.
|
inlinevirtual |
Reimplemented from Elem.
Definition at line 297 of file shelleas.h.
Referenced by AssJac(), AssRes(), GetDofType(), GetEqType(), Shell4EAS(), and WorkSpaceDim().
|
virtual |
Implements SubjectToInitialAssembly.
Definition at line 1220 of file shelleas.cc.
References VariableSubMatrixHandler::SetNullMatrix().
|
virtual |
Implements SubjectToInitialAssembly.
Definition at line 1228 of file shelleas.cc.
References VectorHandler::Resize().
|
inlinevirtual |
Implements SubjectToInitialAssembly.
Definition at line 383 of file shelleas.h.
|
private |
Definition at line 157 of file shelleas.cc.
References RotManip::DRot_I(), iTa_i, Mat3x3::MulMT(), NUMIP, NUMNODES, Phi_Delta_i, phi_tilde_i, phi_tilde_n, RotManip::Rot(), RotManip::RotAndDRot(), T_0, T_i, T_overline, xi_0, and xi_i.
Referenced by AssRes(), and ComputeInitialNodeAndIptOrientation().
|
virtual |
Reimplemented from ToBeOutput.
Definition at line 1251 of file shelleas.cc.
References ToBeOutput::bToBeOutput(), WithLabel::GetLabel(), NUMIP, OutputHandler::PLATES, OutputHandler::Plates(), stress_i, and OutputHandler::UseText().
|
virtual |
Definition at line 1236 of file shelleas.cc.
References ASSERT, MBDYN_EXCEPT_ARGS, and pNode.
|
virtual |
Implements Elem.
Definition at line 1205 of file shelleas.cc.
|
inlinevirtual |
Initialize state vector used in initial assembly. May set internal states of the element. Do not rely on being always called, because initial assembly could be implicitly or explicitly skipped
Reimplemented from DofOwnerOwner.
Definition at line 388 of file shelleas.h.
References NO_OP.
|
virtual |
|
private |
Definition at line 101 of file shelleas.cc.
References StructNode::GetRCurr(), StructNode::GetRRef(), StructDispNode::GetXCurr(), iTa, Mat3x3::MulTM(), NUMNODES, phi_tilde_n, pNode, RotManip::Rot(), T_overline, RotManip::VecRot(), xa, and Zero3x3.
Referenced by AssRes(), and ComputeInitialNodeAndIptOrientation().
|
inlinevirtual |
Implements Elem.
Definition at line 327 of file shelleas.h.
References iGetNumDof().
Referenced by AssJac(), and AssRes().
|
protected |
Definition at line 224 of file shelleas.h.
Referenced by Shell4EAS().
|
protected |
Definition at line 225 of file shelleas.h.
Referenced by AssJac(), AssRes(), and Shell4EAS().
|
protected |
Definition at line 228 of file shelleas.h.
|
protected |
Definition at line 235 of file shelleas.h.
Referenced by AssRes().
|
protected |
Definition at line 255 of file shelleas.h.
|
protected |
Definition at line 244 of file shelleas.h.
Referenced by AssRes().
|
protected |
Definition at line 249 of file shelleas.h.
Referenced by AssJac(), AssRes(), and Shell4EAS().
Definition at line 191 of file shelleas.h.
Referenced by AssRes(), and Shell4EAS().
Definition at line 194 of file shelleas.h.
Referenced by AssRes().
Definition at line 192 of file shelleas.h.
Referenced by AssRes(), and Shell4EAS().
Definition at line 195 of file shelleas.h.
Referenced by AssRes().
|
protected |
Definition at line 237 of file shelleas.h.
Referenced by AssRes().
|
protected |
Definition at line 236 of file shelleas.h.
Referenced by AssRes().
|
protected |
Definition at line 243 of file shelleas.h.
Definition at line 150 of file shelleas.h.
Referenced by ComputeInitialNodeAndIptOrientation(), and UpdateNodalAndAveragePosAndOrientation().
Definition at line 151 of file shelleas.h.
Referenced by ComputeInitialNodeAndIptOrientation(), and InterpolateOrientation().
Definition at line 184 of file shelleas.h.
Referenced by AssJac(), AssRes(), ComputeIPCurvature(), and Shell4EAS().
Definition at line 185 of file shelleas.h.
Referenced by AssJac(), AssRes(), ComputeIPCurvature(), and Shell4EAS().
Definition at line 199 of file shelleas.h.
Referenced by AssRes(), and Shell4EAS().
Definition at line 202 of file shelleas.h.
Referenced by AssRes().
Definition at line 200 of file shelleas.h.
Referenced by AssRes(), and Shell4EAS().
Definition at line 203 of file shelleas.h.
Referenced by AssRes().
Definition at line 172 of file shelleas.h.
Referenced by AssJac(), AssRes(), and ComputeIPCurvature().
Definition at line 173 of file shelleas.h.
Referenced by AssJac(), AssRes(), and ComputeIPCurvature().
|
protected |
Definition at line 226 of file shelleas.h.
Referenced by AssJac(), AssRes(), ComputeIPCurvature(), and Shell4EAS().
|
protected |
Definition at line 230 of file shelleas.h.
Referenced by AssJac(), AssRes(), and Shell4EAS().
Definition at line 171 of file shelleas.h.
Referenced by AssJac(), AssRes(), ComputeIPCurvature(), and InterpolateOrientation().
Definition at line 156 of file shelleas.h.
Referenced by AssJac(), ComputeIPCurvature(), and InterpolateOrientation().
Definition at line 153 of file shelleas.h.
Referenced by AssJac(), AssRes(), ComputeIPCurvature(), InterpolateOrientation(), and UpdateNodalAndAveragePosAndOrientation().
|
protected |
Definition at line 138 of file shelleas.h.
Referenced by AssJac(), AssRes(), ComputeInitialNodeAndIptOrientation(), GetConnectedNodes(), pGetNode(), Shell4EAS(), and UpdateNodalAndAveragePosAndOrientation().
|
protected |
Definition at line 245 of file shelleas.h.
Referenced by AssRes().
Definition at line 181 of file shelleas.h.
|
protected |
Definition at line 223 of file shelleas.h.
Referenced by Shell4EAS().
|
protected |
Definition at line 252 of file shelleas.h.
|
protected |
Definition at line 159 of file shelleas.h.
Referenced by Shell4EAS().
|
protected |
Definition at line 168 of file shelleas.h.
Referenced by InterpolateOrientation(), and Shell4EAS().
|
protected |
Definition at line 165 of file shelleas.h.
Referenced by Shell4EAS().
Definition at line 166 of file shelleas.h.
Referenced by Shell4EAS().
Definition at line 169 of file shelleas.h.
Referenced by AssJac(), AssRes(), ComputeInitialNodeAndIptOrientation(), InterpolateOrientation(), and Shell4EAS().
|
protected |
Definition at line 161 of file shelleas.h.
Referenced by AssJac(), ComputeIPCurvature(), InterpolateOrientation(), Shell4EAS(), and UpdateNodalAndAveragePosAndOrientation().
|
static |
Definition at line 106 of file shelleas.h.
Definition at line 148 of file shelleas.h.
Referenced by AssRes(), ComputeInitialNodeAndIptOrientation(), Shell4EAS(), and UpdateNodalAndAveragePosAndOrientation().
Definition at line 147 of file shelleas.h.
Referenced by Shell4EAS().
|
static |
Definition at line 127 of file shelleas.h.
Referenced by InterpolateOrientation(), and Shell4EAS().
|
static |
Definition at line 105 of file shelleas.h.
Referenced by AssJac(), AssRes(), ComputeInitialNodeAndIptOrientation(), ComputeIPCurvature(), InterpolateOrientation(), and Shell4EAS().
|
static |
Definition at line 125 of file shelleas.h.
Referenced by ComputeInitialNodeAndIptOrientation().
Definition at line 232 of file shelleas.h.
Referenced by AssJac(), AssRes(), and Shell4EAS().
Definition at line 233 of file shelleas.h.
Referenced by AssJac(), AssRes(), and Shell4EAS().