20 #ifndef _FINITE_ELEMENT_1S_23_BTA_H_
21 #define _FINITE_ELEMENT_1S_23_BTA_H_
23 #include "mbsimFlexibleBody/discretization_interface.h"
24 #include "fmatvec/fmatvec.h"
26 namespace MBSimFlexibleBody {
70 virtual fmatvec::Vec3 getPosition(
const fmatvec::Vec& qElement,
double s);
71 virtual fmatvec::SqrMat3 getOrientation(
const fmatvec::Vec& qElement,
double s);
78 void setMaterialDamping(
double);
79 void setLehrDamping(
double);
80 void setTorsionalDamping(
double dTorsional_) { dTorsional=dTorsional_; }
176 inline double Sec(
double alpha) {
return 1.0/cos(alpha); }
177 inline double Power(
double base,
int exponent) {
return pow(base,exponent); }
virtual int getuSize() const
Definition: finite_element_1s_23_bta.h:61
fmatvec::Mat JGeneralized(const fmatvec::Vec &q, double s)
compute accompanying trihedral
Definition: finite_element_1s_23_bta.cc:234
double Arho
cross sectional area multiplied with density
Definition: finite_element_1s_23_bta.h:127
virtual double computeElasticEnergy(const fmatvec::Vec &q)
compute elastic energy
Definition: finite_element_1s_23_bta.cc:326
double l0
length of finite element
Definition: finite_element_1s_23_bta.h:122
fmatvec::SymMat M
global system description
Definition: finite_element_1s_23_bta.h:157
virtual double computeKineticEnergy(const fmatvec::Vec &q, const fmatvec::Vec &u)
compute kinetic energy
Definition: finite_element_1s_23_bta.cc:318
double EIyy
Young's modulus multiplied with geometrical moment of inertia.
Definition: finite_element_1s_23_bta.h:132
virtual const fmatvec::Vec & geth() const
Definition: finite_element_1s_23_bta.h:57
virtual int getqSize() const
Definition: finite_element_1s_23_bta.h:60
double l0h2
beam length powers
Definition: finite_element_1s_23_bta.h:173
fmatvec::Vec3 getTangent(const fmatvec::Vec &q, double s)
compute tangent
Definition: finite_element_1s_23_bta.cc:151
virtual const fmatvec::SqrMat & getdhdu() const
Definition: finite_element_1s_23_bta.h:59
finite element for bending torsional axis
Definition: finite_element_1s_23_bta.h:36
fmatvec::SqrMat Damp
internal damping matrix
Definition: finite_element_1s_23_bta.h:168
virtual void computeh(const fmatvec::Vec &qG, const fmatvec::Vec &qGt)
compute smooth right hand side
Definition: finite_element_1s_23_bta.cc:86
virtual void computeM(const fmatvec::Vec &qG)
compute mass matrix
Definition: finite_element_1s_23_bta.cc:35
double GIt
shear modulus multiplied with geometrical moment of inertia
Definition: finite_element_1s_23_bta.h:142
fmatvec::SqrMat Dhq
matrices for implicit integration
Definition: finite_element_1s_23_bta.h:163
virtual const fmatvec::SqrMat & getdhdq() const
Definition: finite_element_1s_23_bta.h:58
double depsilon
prolongational and torsional damping
Definition: finite_element_1s_23_bta.h:152
discretization interface for flexible systems
Definition: discretization_interface.h:36
FiniteElement1s23BTA(double l0, double Arho, double EIyy, double EIzz, double Itrho, double GIt, fmatvec::Vec g)
constructor
Definition: finite_element_1s_23_bta.cc:30
virtual const fmatvec::SymMat & getM() const
Definition: finite_element_1s_23_bta.h:56
virtual double computeGravitationalEnergy(const fmatvec::Vec &q)
compute gravitational energy
Definition: finite_element_1s_23_bta.cc:322
double Itrho
geometrical moment of inertia multiplied with density
Definition: finite_element_1s_23_bta.h:137
virtual ~FiniteElement1s23BTA()
destructor
Definition: finite_element_1s_23_bta.h:53
virtual void computedhdz(const fmatvec::Vec &qG, const fmatvec::Vec &qGt)
compute Jacobian for implicit integration
Definition: finite_element_1s_23_bta.cc:119
fmatvec::Vec g
gravitation
Definition: finite_element_1s_23_bta.h:147