23 #include <mbsim/functions/function.h>
24 #include "mbsimFlexibleBody/pointer.h"
26 namespace MBSimFlexibleBody {
44 double cL1_,
double cR1_,
double cL2_,
double cR2_,
const fmatvec::RowVec& rRrLmH_);
74 double cL1, cR1, cL2, cR2;
181 const double& getepstil()
const;
182 const double& getepstilt()
const;
185 const double& getk0()
const;
186 const double& getk0t()
const;
190 const double& getxintil()
const;
191 const double& getxibtil()
const;
192 const double& getetantil()
const;
193 const double& getetabtil()
const;
194 const double& getxintilt()
const;
195 const double& getxibtilt()
const;
196 const double& getetantilt()
const;
197 const double& getetabtilt()
const;
243 double l0, l0h2, l0h3, l0h4, l0h5;
244 double xstar, xstarh2, xstarh3;
269 double xibtil, xintil, etabtil, etantil;
310 double xibtilt, xintilt, etabtilt, etantilt;
374 inline const fmatvec::SqrMat& Trafo33RCM::getJIGt()
const {
return JIGt; }
375 inline const fmatvec::Vec& Trafo33RCM::getpS()
const {
return pS; }
376 inline const fmatvec::Vec& Trafo33RCM::getpSt()
const {
return pSt; }
377 inline const fmatvec::Vec& Trafo33RCM::gettS()
const {
return tS; }
378 inline const fmatvec::Vec& Trafo33RCM::getnS()
const {
return nS; }
379 inline const fmatvec::Vec& Trafo33RCM::getbS()
const {
return bS; }
380 inline const fmatvec::RowVec& Trafo33RCM::getnSH()
const {
return nSH; }
381 inline const fmatvec::RowVec& Trafo33RCM::getbSH()
const {
return bSH; }
382 inline const fmatvec::Vec& Trafo33RCM::getntilS()
const {
return ntilS; }
383 inline const fmatvec::Vec& Trafo33RCM::getbtilS()
const {
return btilS; }
384 inline const fmatvec::RowVec& Trafo33RCM::getntilSH()
const {
return ntilSH; }
385 inline const fmatvec::RowVec& Trafo33RCM::getbtilSH()
const {
return btilSH; }
386 inline const fmatvec::Vec& Trafo33RCM::gettSt()
const {
return tSt; }
387 inline const fmatvec::Vec& Trafo33RCM::getnSt()
const {
return nSt; }
388 inline const fmatvec::Vec& Trafo33RCM::getbSt()
const {
return bSt; }
389 inline const fmatvec::RowVec& Trafo33RCM::gettStH()
const {
return tStH; }
390 inline const fmatvec::RowVec& Trafo33RCM::getnStH()
const {
return nStH; }
391 inline const fmatvec::RowVec& Trafo33RCM::getbStH()
const {
return bStH; }
392 inline const fmatvec::RowVec& Trafo33RCM::getntilStH()
const {
return ntilStH; }
393 inline const fmatvec::RowVec& Trafo33RCM::getbtilStH()
const {
return btilStH; }
394 inline const fmatvec::SqrMat& Trafo33RCM::gettSpS()
const {
return tSpS; }
395 inline const fmatvec::SqrMat& Trafo33RCM::getnSpS()
const {
return nSpS; }
396 inline const fmatvec::SqrMat& Trafo33RCM::getbSpS()
const {
return bSpS; }
397 inline const fmatvec::SqrMat& Trafo33RCM::getntilSpS()
const {
return ntilSpS; }
398 inline const fmatvec::SqrMat& Trafo33RCM::getbtilSpS()
const {
return btilSpS; }
399 inline const fmatvec::SqrMat& Trafo33RCM::gettSpSt()
const {
return tSpSt; }
400 inline const fmatvec::SqrMat& Trafo33RCM::getnSpSt()
const {
return nSpSt; }
401 inline const fmatvec::SqrMat& Trafo33RCM::getbSpSt()
const {
return bSpSt; }
402 inline const fmatvec::SqrMat& Trafo33RCM::getntilSpSt()
const {
return ntilSpSt; }
403 inline const fmatvec::SqrMat& Trafo33RCM::getbtilSpSt()
const {
return btilSpSt; }
404 inline const fmatvec::Vec& Trafo33RCM::getqIt()
const {
return qIt; }
405 inline const double& Trafo33RCM::getepstil()
const {
return epstil; }
406 inline const double& Trafo33RCM::getepstilt()
const {
return epstilt; }
407 inline const fmatvec::Vec& Trafo33RCM::getrS()
const {
return rS; }
408 inline const fmatvec::Vec& Trafo33RCM::getrSt()
const {
return rSt; }
409 inline const double& Trafo33RCM::getk0()
const {
return k0; }
410 inline const double& Trafo33RCM::getk0t()
const {
return k0t; }
411 inline const fmatvec::Vec& Trafo33RCM::getbe()
const {
return be; }
412 inline const fmatvec::Vec& Trafo33RCM::getbet()
const {
return bet; }
413 inline const double& Trafo33RCM::getxintil()
const {
return xintil; }
414 inline const double& Trafo33RCM::getxibtil()
const {
return xibtil; }
415 inline const double& Trafo33RCM::getetantil()
const {
return etantil; }
416 inline const double& Trafo33RCM::getetabtil()
const {
return etabtil; }
417 inline const double& Trafo33RCM::getxintilt()
const {
return xintilt; }
418 inline const double& Trafo33RCM::getxibtilt()
const {
return xibtilt; }
419 inline const double& Trafo33RCM::getetantilt()
const {
return etantilt; }
420 inline const double& Trafo33RCM::getetabtilt()
const {
return etabtilt; }
computation of FiniteElement1s33RCM position JACOBIAN (cp-angles and bending)
Definition: trafo33RCM.h:87
void computezI(const fmatvec::Vec &qG, const fmatvec::Vec &qGt)
compute the internal state
Definition: trafo33RCM.cc:393
virtual ~Trafo33RCM()
destructor
Definition: trafo33RCM.cc:175
fmatvec::Vec tS
COSY definitions.
Definition: trafo33RCM.h:266
double cL1
global bending parameters
Definition: trafo33RCM.h:74
void computeJIG(const fmatvec::Vec &qG)
compute the Jacobian of the trafo
Definition: trafo33RCM.cc:371
fmatvec::Mat pSbE
differentiated centre angles with respect to bending coordinates
Definition: trafo33RCM.h:126
void computebe(const fmatvec::Vec &qG)
compute the angle and bending positions
Definition: trafo33RCM.cc:226
fmatvec::RowVec rRrLmH
transpose of difference of right and left beam position
Definition: trafo33RCM.h:121
fmatvec::Mat SMRHS_Jac
system matrix and right hand side for computebe()
Definition: trafo33RCM.h:274
RevCardanPtr angle
reversed Cardan-Object
Definition: trafo33RCM.h:111
void computerSepstk0(const fmatvec::Vec &qG)
compute the CP, prolongation and torsion
Definition: trafo33RCM.cc:273
void computeCOSYqG()
compute the derivative of COSY with respect to qG
Definition: trafo33RCM.cc:356
void computeCOSYt()
compute the derivative of COSY with respect to time
fmatvec::Vec be
bending coordinates
Definition: trafo33RCM.h:261
Trafo33RCM(RevCardanPtr angle_, double l0_)
constructor
Definition: trafo33RCM.cc:126
void computebeqG()
compute the derivative of bE with respect to qG
Definition: trafo33RCM.cc:320
fmatvec::Mat drRdrLp
delta matrices for computebe()
Definition: trafo33RCM.h:284
virtual ~PositionFunction()
destructor
Definition: trafo33RCM.cc:36
fmatvec::RowVec rRrLmH
transpose of difference of right and left beam position
Definition: trafo33RCM.h:79
void computeJIGt(const fmatvec::Vec &qGt)
compute the derivative of JIG with respect to time
Definition: trafo33RCM.cc:431
fmatvec::Vec rRrLp
sum of right and left translational vector as well as transpose of the difference ...
Definition: trafo33RCM.h:255
virtual ~PositionJacobian()
destructor
Definition: trafo33RCM.cc:69
RevCardanPtr angle
reversed Cardan-Object
Definition: trafo33RCM.h:59
double l0
length of FiniteElement1s33RCM and powers
Definition: trafo33RCM.h:243
double l0
length of FiniteElement1s33RCM
Definition: trafo33RCM.h:116
transformation of coordinates for FiniteElement1s33RCM
Definition: trafo33RCM.h:135
void computeqI(const fmatvec::Vec &qG)
compute the internal coordinates
Definition: trafo33RCM.cc:283
fmatvec::SqrMat V
derivative of coefficients of bending polynomials w with respect to bending coordinates ...
Definition: trafo33RCM.h:279
fmatvec::Vec pL
angles of COG of rigid left-right connection
Definition: trafo33RCM.h:69
fmatvec::SqrMat JIG
Jacobian and differentiated Jacobian.
Definition: trafo33RCM.h:301
PositionJacobian(RevCardanPtr angle_, double l0_, const fmatvec::RowVec &rRrLmH_, const fmatvec::Mat &pSbE_)
constructor
Definition: trafo33RCM.cc:67
double epstil
internal coordinates of the FiniteElement1s33RCM
Definition: trafo33RCM.h:249
void computeprelim(const fmatvec::Vec &qG)
computes preliminaries
Definition: trafo33RCM.cc:177
double l0
length of FiniteElement1s33RCM
Definition: trafo33RCM.h:64
fmatvec::Mat SMRHS
COSY definitions for computebe()
Definition: trafo33RCM.h:289
void computeTrafo(const fmatvec::Vec &qG, const fmatvec::Vec &qGt)
compute the internal coordinates and velocities as well as JIGt
Definition: trafo33RCM.cc:513
double k0t
derivative of k0, epstilt, qI, rS, be and COSY with respect to time
Definition: trafo33RCM.h:306
Definition: trafo33RCM.h:33
void computeCOSY()
compute the COSY
Definition: trafo33RCM.cc:248
RevCardanPtr angle
reversed Cardan-Object
Definition: trafo33RCM.h:238
void computedrRdrL()
compute delta matrix for right and left beam end
Definition: trafo33RCM.cc:290
fmatvec::Mat beqG
derivative of be and COSY with respect to qG
Definition: trafo33RCM.h:295
fmatvec::Vec computes0(const fmatvec::Vec &qG)
compute the initial value for computebe()
Definition: trafo33RCM.cc:181
PositionFunction(RevCardanPtr angle_, double l0_, const fmatvec::Vec &pL_, const fmatvec::Vec &pR_, double cL1_, double cR1_, double cL2_, double cR2_, const fmatvec::RowVec &rRrLmH_)
constructor
Definition: trafo33RCM.cc:34
void computeV()
compute the derivative of coefficients of bending polynomials w with respect to bending coordinates ...
Definition: trafo33RCM.cc:298