MBDyn-1.7.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups
PiezoActuatorVEBeam2 Class Reference

#include <pzbeam2.h>

Inheritance diagram for PiezoActuatorVEBeam2:
Collaboration diagram for PiezoActuatorVEBeam2:

Public Member Functions

 PiezoActuatorVEBeam2 (unsigned int uL, const StructNode *pN1, const StructNode *pN2, const Vec3 &F1, const Vec3 &F2, const Mat3x3 &R1, const Mat3x3 &R2, const Mat3x3 &r, const ConstitutiveLaw6D *pd, int iEl, const ScalarDifferentialNode **pEDof, const Mat3xN &T_Ie, const Mat3xN &T_Ik, OrientationDescription ood, flag fOut)
 
virtual ~PiezoActuatorVEBeam2 (void)
 
virtual Beam::Type GetBeamType (void) 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 void AfterPredict (VectorHandler &, VectorHandler &)
 
virtual VariableSubMatrixHandlerAssJac (VariableSubMatrixHandler &WorkMat, doublereal dCoef, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr)
 
virtual VariableSubMatrixHandlerInitialAssJac (VariableSubMatrixHandler &WorkMat, const VectorHandler &XCurr)
 
virtual SubVectorHandlerInitialAssRes (SubVectorHandler &WorkVec, const VectorHandler &XCurr)
 
virtual void GetConnectedNodes (std::vector< const Node * > &connectedNodes) const
 
- Public Member Functions inherited from ViscoElasticBeam2
 ViscoElasticBeam2 (unsigned int uL, const StructNode *pN1, const StructNode *pN2, const Vec3 &F1, const Vec3 &F2, const Mat3x3 &R1, const Mat3x3 &R2, const Mat3x3 &r, const ConstitutiveLaw6D *pd, OrientationDescription ood, flag fOut)
 
virtual ~ViscoElasticBeam2 (void)
 
virtual void AfterConvergence (const VectorHandler &X, const VectorHandler &XP)
 
virtual doublereal dGetPrivData (unsigned int i) const
 
- Public Member Functions inherited from Elem
 Elem (unsigned int uL, flag fOut)
 
virtual ~Elem (void)
 
virtual unsigned int iGetNumDof (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) const
 
virtual void AssMats (VariableSubMatrixHandler &WorkMatA, VariableSubMatrixHandler &WorkMatB, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr)
 
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 HintParseHint (DataManager *pDM, const char *s) const
 
virtual void BeforePredict (VectorHandler &, VectorHandler &, VectorHandler &, VectorHandler &) const
 
virtual void Update (const VectorHandler &XCurr, const VectorHandler &XPrimeCurr)
 
virtual void DerivativesUpdate (const VectorHandler &XCurr, const VectorHandler &XPrimeCurr)
 
virtual std::ostream & OutputAppend (std::ostream &out) const
 
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 Beam2
 Beam2 (unsigned int uL, const StructNode *pN1, const StructNode *pN2, const Vec3 &F1, const Vec3 &F2, const Mat3x3 &R1, const Mat3x3 &R2, const Mat3x3 &r, const ConstitutiveLaw6D *pd, OrientationDescription ood, flag fOut)
 
virtual ~Beam2 (void)
 
virtual Elem::Type GetElemType (void) const
 
virtual SubVectorHandlerAssRes (SubVectorHandler &WorkVec, doublereal dCoef, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr)
 
virtual void OutputPrepare (OutputHandler &OH)
 
virtual void Output (OutputHandler &OH) const
 
virtual bool bInverseDynamics (void) const
 
VariableSubMatrixHandlerAssJac (VariableSubMatrixHandler &WorkMat, const VectorHandler &XCurr)
 
SubVectorHandlerAssRes (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 unsigned int iGetInitialNumDof (void) const
 
virtual void InitialWorkSpaceDim (integer *piNumRows, integer *piNumCols) const
 
virtual void SetInitialValue (VectorHandler &)
 
virtual unsigned int iGetNumPrivData (void) const
 
virtual unsigned int iGetPrivDataIdx (const char *s) const
 
virtual const StructNodepGetNode (unsigned int i) 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 InitialAssemblyElem
 InitialAssemblyElem (unsigned int uL, flag fOut)
 
virtual ~InitialAssemblyElem (void)
 
- Public Member Functions inherited from SubjectToInitialAssembly
 SubjectToInitialAssembly (void)
 
virtual ~SubjectToInitialAssembly (void)
 

Protected Member Functions

virtual void AssStiffnessMat (FullSubMatrixHandler &WMA, FullSubMatrixHandler &WMB, doublereal dCoef, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr)
 
virtual void AssStiffnessVec (SubVectorHandler &WorkVec, doublereal dCoef, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr)
 
virtual void AddInternalForces (Vec6 &AzLoc)
 
- Protected Member Functions inherited from Beam2
virtual Vec3 InterpState (const Vec3 &v1, const Vec3 &v2)
 
virtual Vec3 InterpDeriv (const Vec3 &v1, const Vec3 &v2)
 
virtual void AssInertiaMat (FullSubMatrixHandler &, FullSubMatrixHandler &, doublereal, const VectorHandler &, const VectorHandler &)
 
virtual void AssInertiaVec (SubVectorHandler &, doublereal, const VectorHandler &, const VectorHandler &)
 
virtual void DsDxi (void)
 
virtual void Omega0 (void)
 
void SetBeamType (Beam::Type T)
 
virtual std::ostream & Restart_ (std::ostream &out) const
 
- 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

int iNumElec
 
const ScalarDifferentialNode ** pvElecDofs
 
VecN V
 
Mat3xN PiezoMat [NUMDEFORM]
 
- Protected Attributes inherited from ViscoElasticBeam2
Vec3 LPrime
 
Vec3 gPrime
 
Vec3 LPrimeRef
 
Vec6 DefPrimeLocRef
 
Mat6x6 ERef
 
- Protected Attributes inherited from WithLabel
unsigned int uLabel
 
std::string sName
 
- Protected Attributes inherited from ToBeOutput
flag fOutput
 
- Protected Attributes inherited from Beam2
unsigned uOutputFlags
 
OrientationDescription od
 
const StructNodepNode [NUMNODES]
 
Vec3 f [NUMNODES]
 
Vec3 fRef [NUMNODES]
 
Mat3x3 RNode [NUMNODES]
 
Mat3x3 R
 
Mat3x3 RRef
 
Mat3x3 RPrev
 
ConstitutiveLaw6DOwnerpD
 
Mat6x6 DRef
 
Vec3 Omega
 
Vec3 OmegaRef
 
Vec6 Az
 
Vec6 AzRef
 
Vec6 AzLoc
 
Vec6 DefLoc
 
Vec6 DefLocRef
 
Vec6 DefLocPrev
 
Vec6 DefPrimeLoc
 
Vec3 p
 
Vec3 g
 
Vec3 L0
 
Vec3 L
 
Vec3 LRef
 
doublereal dsdxi
 
bool bFirstRes
 
bool bFirstIDRes
 
- Protected Attributes inherited from GravityOwner
GravitypGravity
 

Private Member Functions

 PiezoActuatorVEBeam2 (const PiezoActuatorVEBeam2 &)
 
const PiezoActuatorVEBeam2operator= (const PiezoActuatorVEBeam2 &)
 

Additional Inherited Members

- Public Types inherited from Elem
enum  Type {
  UNKNOWN = -1, AIRPROPERTIES = 0, INDUCEDVELOCITY, AUTOMATICSTRUCTURAL,
  GRAVITY, BODY, JOINT, JOINT_REGULARIZATION,
  BEAM, PLATE, FORCE, INERTIA,
  ELECTRICBULK, ELECTRIC, THERMAL, HYDRAULIC,
  BULK, LOADABLE, DRIVEN, EXTERNAL,
  AEROMODAL, AERODYNAMIC, GENEL, SOCKETSTREAM_OUTPUT,
  RTAI_OUTPUT = SOCKETSTREAM_OUTPUT, LASTELEMTYPE
}
 
- Public Types inherited from SimulationEntity
typedef std::vector< Hint * > Hints
 
- Public Types inherited from ToBeOutput
enum  { OUTPUT = 0x1U, OUTPUT_MASK = 0xFU, OUTPUT_PRIVATE = 0x10U, OUTPUT_PRIVATE_MASK = ~OUTPUT_MASK }
 
- Protected Types inherited from Beam2
enum  NodeName { NODE1 = 0, NODE2 = 1, NUMNODES = 2 }
 
enum  Deformations { STRAIN = 0, CURVAT = 1, NUMDEFORM = 2 }
 

Detailed Description

Definition at line 142 of file pzbeam2.h.

Constructor & Destructor Documentation

PiezoActuatorVEBeam2::PiezoActuatorVEBeam2 ( const PiezoActuatorVEBeam2 )
private
PiezoActuatorVEBeam2::PiezoActuatorVEBeam2 ( unsigned int  uL,
const StructNode pN1,
const StructNode pN2,
const Vec3 F1,
const Vec3 F2,
const Mat3x3 R1,
const Mat3x3 R2,
const Mat3x3 r,
const ConstitutiveLaw6D pd,
int  iEl,
const ScalarDifferentialNode **  pEDof,
const Mat3xN T_Ie,
const Mat3xN T_Ik,
OrientationDescription  ood,
flag  fOut 
)

Definition at line 331 of file pzbeam2.cc.

References ASSERT, Mat3xN::Copy(), Beam2::CURVAT, iNumElec, PiezoMat, pvElecDofs, and Beam2::STRAIN.

342 : Elem(uL, fOut),
343 ViscoElasticBeam2(uL, pN1, pN2, F1, F2, R1, R2, r, pD, ood, fOut),
344 iNumElec(iEl), pvElecDofs(pEDof), V(iEl)
345 {
346  ASSERT(iNumElec > 0);
347  ASSERT(pvElecDofs != NULL);
348 
349 #ifdef DEBUG
350  for (int i = iNumElec; i-- > 0; ) {
351  ASSERT(pvElecDofs[i] != NULL);
352  }
353 #endif /* DEBUG */
354 
355  PiezoMat[STRAIN].Copy(Te);
356  PiezoMat[CURVAT].Copy(Tk);
357 }
ViscoElasticBeam2(unsigned int uL, const StructNode *pN1, const StructNode *pN2, const Vec3 &F1, const Vec3 &F2, const Mat3x3 &R1, const Mat3x3 &R2, const Mat3x3 &r, const ConstitutiveLaw6D *pd, OrientationDescription ood, flag fOut)
Definition: beam2.cc:945
const ScalarDifferentialNode ** pvElecDofs
Definition: pzbeam2.h:150
ConstitutiveLaw6DOwner * pD
Definition: beam2.h:97
Mat3xN PiezoMat[NUMDEFORM]
Definition: pzbeam2.h:152
#define ASSERT(expression)
Definition: colamd.c:977
const Mat3xN & Copy(const Mat3xN &m)
Definition: matvec3n.cc:407
Elem(unsigned int uL, flag fOut)
Definition: elem.cc:41

Here is the call graph for this function:

PiezoActuatorVEBeam2::~PiezoActuatorVEBeam2 ( void  )
virtual

Definition at line 361 of file pzbeam2.cc.

References ASSERT, pvElecDofs, and SAFEDELETEARR.

362 {
363  ASSERT(pvElecDofs != NULL);
365 }
#define SAFEDELETEARR(pnt)
Definition: mynewmem.h:713
const ScalarDifferentialNode ** pvElecDofs
Definition: pzbeam2.h:150
#define ASSERT(expression)
Definition: colamd.c:977

Member Function Documentation

void PiezoActuatorVEBeam2::AddInternalForces ( Vec6 AzLoc)
protectedvirtual

Reimplemented from Beam2.

Definition at line 324 of file pzbeam2.cc.

References Beam2::CURVAT, PiezoMat, Beam2::STRAIN, and V.

325 {
326  AzLoc += Vec6(PiezoMat[STRAIN]*V, PiezoMat[CURVAT]*V);
327 }
Definition: matvec6.h:37
Mat3xN PiezoMat[NUMDEFORM]
Definition: pzbeam2.h:152
void PiezoActuatorVEBeam2::AfterPredict ( VectorHandler X,
VectorHandler XP 
)
virtual

Reimplemented from ViscoElasticBeam2.

Definition at line 403 of file pzbeam2.cc.

References ViscoElasticBeam2::AfterPredict(), iNumElec, VecN::Put(), pvElecDofs, and V.

404 {
405  /*
406  * Calcola le deformazioni, aggiorna il legame costitutivo
407  * e crea la FDE
408  */
409  for (integer iCnt = 1; iCnt <= iNumElec; iCnt++) {
410  V.Put(iCnt, pvElecDofs[iCnt-1]->dGetX());
411  }
412 
414 }
const ScalarDifferentialNode ** pvElecDofs
Definition: pzbeam2.h:150
void Put(integer i, const doublereal &d)
Definition: matvec3n.h:159
virtual void AfterPredict(VectorHandler &, VectorHandler &)
Definition: beam2.cc:1221
long int integer
Definition: colamd.c:51

Here is the call graph for this function:

VariableSubMatrixHandler & PiezoActuatorVEBeam2::AssJac ( VariableSubMatrixHandler WorkMat,
doublereal  dCoef,
const VectorHandler XCurr,
const VectorHandler XPrimeCurr 
)
virtual

Implements Elem.

Definition at line 419 of file pzbeam2.cc.

References AssStiffnessMat(), DEBUGCOUT, StructDispNode::iGetFirstMomentumIndex(), StructDispNode::iGetFirstPositionIndex(), iNumElec, Beam2::NODE1, Beam2::NODE2, Beam2::pNode, FullSubMatrixHandler::PutColIndex(), FullSubMatrixHandler::PutRowIndex(), pvElecDofs, FullSubMatrixHandler::ResizeReset(), and VariableSubMatrixHandler::SetFull().

423 {
424  DEBUGCOUT("Entering PiezoActuatorVEBeam2::AssJac();"
425  " will result in call to AssStiffnessMat()" << std::endl);
426 
427  integer iNode1FirstMomIndex = pNode[NODE1]->iGetFirstMomentumIndex();
428  integer iNode1FirstPosIndex = pNode[NODE1]->iGetFirstPositionIndex();
429  integer iNode2FirstMomIndex = pNode[NODE2]->iGetFirstMomentumIndex();
430  integer iNode2FirstPosIndex = pNode[NODE2]->iGetFirstPositionIndex();
431 
432  FullSubMatrixHandler& WM = WorkMat.SetFull();
433 
434  /* Dimensiona la matrice, la azzera e pone gli indici corretti */
435  WM.ResizeReset(12, 12+iNumElec);
436 
437  for (int iCnt = 1; iCnt <= 6; iCnt++) {
438  WM.PutRowIndex(iCnt, iNode1FirstMomIndex+iCnt);
439  WM.PutColIndex(iCnt, iNode1FirstPosIndex+iCnt);
440  WM.PutRowIndex(6+iCnt, iNode2FirstMomIndex+iCnt);
441  WM.PutColIndex(6+iCnt, iNode2FirstPosIndex+iCnt);
442  }
443 
444  for (int iCnt = 1; iCnt <= iNumElec; iCnt++) {
445  WM.PutColIndex(12+iCnt,
446  pvElecDofs[iCnt-1]->iGetFirstColIndex()+1);
447  }
448 
449  AssStiffnessMat(WM, WM, dCoef, XCurr, XPrimeCurr);
450 
451  return WorkMat;
452 }
void PutColIndex(integer iSubCol, integer iCol)
Definition: submat.h:325
FullSubMatrixHandler & SetFull(void)
Definition: submat.h:1168
const StructNode * pNode[NUMNODES]
Definition: beam2.h:83
const ScalarDifferentialNode ** pvElecDofs
Definition: pzbeam2.h:150
virtual void AssStiffnessMat(FullSubMatrixHandler &WMA, FullSubMatrixHandler &WMB, doublereal dCoef, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr)
Definition: pzbeam2.cc:259
#define DEBUGCOUT(msg)
Definition: myassert.h:232
virtual integer iGetFirstMomentumIndex(void) const =0
virtual integer iGetFirstPositionIndex(void) const
Definition: strnode.h:452
virtual void ResizeReset(integer, integer)
Definition: submat.cc:182
void PutRowIndex(integer iSubRow, integer iRow)
Definition: submat.h:311
long int integer
Definition: colamd.c:51

Here is the call graph for this function:

void PiezoActuatorVEBeam2::AssStiffnessMat ( FullSubMatrixHandler WMA,
FullSubMatrixHandler WMB,
doublereal  dCoef,
const VectorHandler XCurr,
const VectorHandler XPrimeCurr 
)
protectedvirtual

Reimplemented from ViscoElasticBeam2.

Definition at line 259 of file pzbeam2.cc.

References FullSubMatrixHandler::Add(), ViscoElasticBeam2::AssStiffnessMat(), Beam2::CURVAT, DEBUGCOUT, iNumElec, Mat3xN::LeftMult(), MatCross, Beam2::NODE1, Beam2::NODE2, Beam2::p, PiezoMat, Beam2::pNode, Beam2::R, Beam2::STRAIN, and FullSubMatrixHandler::Sub().

Referenced by AssJac().

264 {
265  DEBUGCOUT("Entering PiezoActuatorVEBeam2::AssStiffnessMat()" << std::endl);
266 
267  ViscoElasticBeam2::AssStiffnessMat(WMA, WMB, dCoef, XCurr, XPrimeCurr);
268 
269  Mat3xN tmp1(iNumElec);
270  Mat3xN tmp2(iNumElec);
271 
272  tmp1.LeftMult(R*dCoef, PiezoMat[STRAIN]);
273  WMA.Sub(1, 13, tmp1);
274  WMA.Add(7, 13, tmp1);
275 
276  tmp2.LeftMult(Mat3x3(MatCross, p - pNode[NODE1]->GetXCurr()), tmp1);
277  WMA.Add(4, 13, tmp2);
278 
279  tmp2.LeftMult(Mat3x3(MatCross, p - pNode[NODE2]->GetXCurr()), tmp1);
280  WMA.Sub(10, 13, tmp2);
281 
282  tmp1.LeftMult(R*dCoef, PiezoMat[CURVAT]);
283  WMA.Sub(4, 13, tmp1);
284  WMA.Add(10, 13, tmp1);
285 }
const MatCross_Manip MatCross
Definition: matvec3.cc:639
void Add(integer iRow, integer iCol, const Vec3 &v)
Definition: submat.cc:209
const StructNode * pNode[NUMNODES]
Definition: beam2.h:83
Mat3x3 R
Definition: beam2.h:92
Vec3 p
Definition: beam2.h:117
#define DEBUGCOUT(msg)
Definition: myassert.h:232
Mat3xN PiezoMat[NUMDEFORM]
Definition: pzbeam2.h:152
virtual void AssStiffnessMat(FullSubMatrixHandler &WMA, FullSubMatrixHandler &WMB, doublereal dCoef, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr)
Definition: beam2.cc:983
void Sub(integer iRow, integer iCol, const Vec3 &v)
Definition: submat.cc:215

Here is the call graph for this function:

void PiezoActuatorVEBeam2::AssStiffnessVec ( SubVectorHandler WorkVec,
doublereal  dCoef,
const VectorHandler XCurr,
const VectorHandler XPrimeCurr 
)
protectedvirtual

Reimplemented from ViscoElasticBeam2.

Definition at line 289 of file pzbeam2.cc.

References ViscoElasticBeam2::AssStiffnessVec(), Beam2::bFirstRes, DEBUGCOUT, iNumElec, VecN::Put(), pvElecDofs, and V.

293 {
294  DEBUGCOUT("Entering PiezoActuatorVEBeam2::AssStiffnessVec()" << std::endl);
295 
296  /*
297  * Riceve il vettore gia' dimensionato e con gli indici a posto
298  * per scrivere il residuo delle equazioni di equilibrio dei due nodi
299  */
300 
301  /*
302  * Per la trattazione teorica, il riferimento e' il file ul-travi.tex
303  * (ora e' superato)
304  */
305 
306  if (bFirstRes) {
307  /*
308  * AfterPredict ha gia' calcolato tutto;
309  * bFirstRes viene resettato da
310  * ViscoElasticBeam2::AssStiffnessVec
311  */
312 
313  } else {
314  for (integer iCnt = 1; iCnt <= iNumElec; iCnt++) {
315  V.Put(iCnt, pvElecDofs[iCnt-1]->dGetX());
316  }
317  }
318 
319  ViscoElasticBeam2::AssStiffnessVec(WorkVec, dCoef, XCurr, XPrimeCurr);
320 }
const ScalarDifferentialNode ** pvElecDofs
Definition: pzbeam2.h:150
bool bFirstRes
Definition: beam2.h:127
void Put(integer i, const doublereal &d)
Definition: matvec3n.h:159
#define DEBUGCOUT(msg)
Definition: myassert.h:232
virtual void AssStiffnessVec(SubVectorHandler &WorkVec, doublereal dCoef, const VectorHandler &XCurr, const VectorHandler &XPrimeCurr)
Definition: beam2.cc:1092
long int integer
Definition: colamd.c:51

Here is the call graph for this function:

virtual Beam::Type PiezoActuatorVEBeam2::GetBeamType ( void  ) const
inlinevirtual

Reimplemented from ViscoElasticBeam2.

Definition at line 186 of file pzbeam2.h.

References Beam::PIEZOELECTRICVISCOELASTIC.

virtual void PiezoActuatorVEBeam2::GetConnectedNodes ( std::vector< const Node * > &  connectedNodes) const
inlinevirtual

Reimplemented from Elem.

Definition at line 227 of file pzbeam2.h.

References Elem::GetConnectedNodes(), iNumElec, and pvElecDofs.

227  {
228  ViscoElasticBeam2::GetConnectedNodes(connectedNodes);
229  int NumNodes = connectedNodes.size();
230  connectedNodes.resize(NumNodes + iNumElec);
231  for (int i = 0; i < iNumElec; i++) {
232  connectedNodes[NumNodes + i] = pvElecDofs[i];
233  }
234  };
const ScalarDifferentialNode ** pvElecDofs
Definition: pzbeam2.h:150
virtual void GetConnectedNodes(std::vector< const Node * > &connectedNodes) const
Definition: elem.h:243

Here is the call graph for this function:

VariableSubMatrixHandler & PiezoActuatorVEBeam2::InitialAssJac ( VariableSubMatrixHandler WorkMat,
const VectorHandler XCurr 
)
virtual

Reimplemented from Beam2.

Definition at line 457 of file pzbeam2.cc.

References Beam2::InitialAssJac().

459 {
460  return ViscoElasticBeam2::InitialAssJac(WorkMat, XCurr);
461 }
virtual VariableSubMatrixHandler & InitialAssJac(VariableSubMatrixHandler &WorkMat, const VectorHandler &XCurr)
Definition: beam2.cc:804

Here is the call graph for this function:

SubVectorHandler & PiezoActuatorVEBeam2::InitialAssRes ( SubVectorHandler WorkVec,
const VectorHandler XCurr 
)
virtual

Reimplemented from Beam2.

Definition at line 466 of file pzbeam2.cc.

References Beam2::InitialAssRes().

468 {
469  return ViscoElasticBeam2::InitialAssRes(WorkVec, XCurr);
470 }
virtual SubVectorHandler & InitialAssRes(SubVectorHandler &WorkVec, const VectorHandler &XCurr)
Definition: beam2.cc:830

Here is the call graph for this function:

const PiezoActuatorVEBeam2& PiezoActuatorVEBeam2::operator= ( const PiezoActuatorVEBeam2 )
private
std::ostream & PiezoActuatorVEBeam2::Restart ( std::ostream &  out) const
virtual

Implements Elem.

Definition at line 370 of file pzbeam2.cc.

References Beam2::Restart_().

371 {
372  Restart_(out);
373  return out << "/* piezoelectric actuator NOT IMPLEMENTED YET */ ;"
374  << std::endl;
375 }
virtual std::ostream & Restart_(std::ostream &out) const
Definition: beam2.cc:305

Here is the call graph for this function:

void PiezoActuatorVEBeam2::SetValue ( DataManager pDM,
VectorHandler X,
VectorHandler XP,
SimulationEntity::Hints ph = 0 
)
virtual

Reimplemented from ViscoElasticBeam2.

Definition at line 392 of file pzbeam2.cc.

References ViscoElasticBeam2::SetValue().

395 {
396  /* se proprio non serve, si puo' eliminare */
397  ViscoElasticBeam2::SetValue(pDM, X, XP, ph);
398 }
void SetValue(DataManager *pDM, VectorHandler &, VectorHandler &, SimulationEntity::Hints *ph=0)
Definition: beam2.cc:1198

Here is the call graph for this function:

void PiezoActuatorVEBeam2::WorkSpaceDim ( integer piNumRows,
integer piNumCols 
) const
virtual

Implements Elem.

Definition at line 382 of file pzbeam2.cc.

References iNumElec.

384 {
385  *piNumRows = 12;
386  *piNumCols = 12+iNumElec;
387 }

Member Data Documentation

int PiezoActuatorVEBeam2::iNumElec
protected
Mat3xN PiezoActuatorVEBeam2::PiezoMat[NUMDEFORM]
protected

Definition at line 152 of file pzbeam2.h.

Referenced by AddInternalForces(), AssStiffnessMat(), and PiezoActuatorVEBeam2().

const ScalarDifferentialNode** PiezoActuatorVEBeam2::pvElecDofs
protected
VecN PiezoActuatorVEBeam2::V
protected

Definition at line 151 of file pzbeam2.h.

Referenced by AddInternalForces(), AfterPredict(), and AssStiffnessVec().


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