|
| | FiniteElement1s33CosseratTranslation (double l0_, double rho_, double A_, double E_, double G_, double I1_, double I2_, double I0_, const fmatvec::Vec &g_, CardanPtr ag_) |
| | constructor More...
|
| |
|
| ~FiniteElement1s33CosseratTranslation () override |
| | destructor
|
| |
| const fmatvec::SymMat & | getM () const override |
| |
| const fmatvec::Vec & | geth () const override |
| |
| const fmatvec::SqrMat & | getdhdq () const override |
| |
| const fmatvec::SqrMat & | getdhdu () const override |
| |
| int | getqSize () const override |
| |
| int | getuSize () const override |
| |
| void | computeM (const fmatvec::Vec &qG) override |
| | compute mass matrix More...
|
| |
| void | computeh (const fmatvec::Vec &qG, const fmatvec::Vec &qGt) override |
| | compute smooth right hand side More...
|
| |
| void | computedhdz (const fmatvec::Vec &qG, const fmatvec::Vec &qGt) override |
| | compute Jacobian for implicit integration More...
|
| |
| double | computeKineticEnergy (const fmatvec::Vec &qG, const fmatvec::Vec &qGt) override |
| | compute kinetic energy More...
|
| |
| double | computeGravitationalEnergy (const fmatvec::Vec &qG) override |
| | compute gravitational energy More...
|
| |
| double | computeElasticEnergy (const fmatvec::Vec &qG) override |
| | compute elastic energy More...
|
| |
|
virtual fmatvec::Vec3 | getPosition (const fmatvec::Vec &qElement, double s) |
| |
|
virtual fmatvec::SqrMat3 | getOrientation (const fmatvec::Vec &qElement, double s) |
| |
|
virtual fmatvec::Vec3 | getVelocity (const fmatvec::Vec &qElement, const fmatvec::Vec &qpElement, double s) |
| |
|
virtual fmatvec::Vec3 | getAngularVelocity (const fmatvec::Vec &qElement, const fmatvec::Vec &qpElement, double s) |
| |
|
virtual fmatvec::Mat | computeJacobianOfMotion (const fmatvec::Vec &qG, double s) |
| |
|
void | setMaterialDamping (double cEps0D_, double cEps1D_, double cEps2D_) |
| |
|
void | setShearCorrectionFactors (double sigma1_, double sigma2_) |
| |
|
double | getl0 () const |
| |
| const fmatvec::Vec & | computeStateTranslation (const fmatvec::Vec &qG, const fmatvec::Vec &qGt, double s) |
| | compute state of finite element More...
|
| |
| fmatvec::Mat | computeJXqG (const fmatvec::Vec &qG, double x) |
| | compute JACOBIAN of contact description in global coordinates More...
|
| |
|
void | initM () |
| | initialize translational part of mass matrix
|
| |
Public Member Functions inherited from MBSimFlexibleBody::DiscretizationInterface |
|
| DiscretizationInterface ()=default |
| | constructor
|
| |
|
virtual | ~DiscretizationInterface ()=default |
| | destructor
|
| |
| virtual const fmatvec::SymMat & | getM () const =0 |
| |
| virtual const fmatvec::Vec & | geth () const =0 |
| |
| virtual const fmatvec::SqrMat & | getdhdq () const =0 |
| |
| virtual const fmatvec::SqrMat & | getdhdu () const =0 |
| |
| virtual int | getqSize () const =0 |
| |
| virtual int | getuSize () const =0 |
| |
| virtual void | computeM (const fmatvec::Vec &q)=0 |
| | compute mass matrix More...
|
| |
| virtual void | computeh (const fmatvec::Vec &q, const fmatvec::Vec &u)=0 |
| | compute smooth right hand side More...
|
| |
| virtual void | computedhdz (const fmatvec::Vec &q, const fmatvec::Vec &u)=0 |
| | compute Jacobian for implicit integration More...
|
| |
| virtual double | computeKineticEnergy (const fmatvec::Vec &q, const fmatvec::Vec &u)=0 |
| | compute kinetic energy More...
|
| |
| virtual double | computeGravitationalEnergy (const fmatvec::Vec &q)=0 |
| | compute gravitational energy More...
|
| |
| virtual double | computeElasticEnergy (const fmatvec::Vec &q)=0 |
| | compute elastic energy More...
|
| |
finite element for spatial beam using Cosserat model
- Author
- Thorsten Schindler
-
Christian Käsbauer
-
Thomas Cebulla
- Date
- 2011-09-10 initial commit (Thorsten Schindler) \data 2011-10-08 basics derived and included (Thorsten Schindler)
-
2011-10-13 strain rhs corrected and added, strain energy calculated (Thorsten Schindler)
-
2011-10-13 gyroscopic terms added (Christian Kaesbauer, Thorsten Schindler)
-
2011-10-15 strain dissipation in rhs (Christian Kaesbauer, Thorsten Schindler)
- Todo:
contact Jacobian TODO
computeState only in FlexibleBody TODO
implicit integration TODO
Cosserat model based on H. Lang, J. Linn, M. Arnold: Multi-body dynamics simulation of geometrically exact Cosserat rods but with
- Kirchhoff assumption (-> less stiff)
- Cardan parametrisation (-> less problems with condition and drift for quaternion dae system)
- piecewise constant Darboux vector with evaluation according to I. Romero: The interpolation of rotations and its application to finite element models of geometrically exact beams