mbsimflexiblebody 4.0.0 MBSim Flexible Body Module

Public Member Functions | Private Attributes | List of all members
MBSimFlexibleBody::FiniteElement2s13Disk Class Reference

FE for Reissner-Mindlin Plate using MFR. More...

`#include <2s_13_disk.h>`

Inheritance diagram for MBSimFlexibleBody::FiniteElement2s13Disk:
[legend]

## Public Member Functions

| FiniteElement2s13Disk (double E_, double nu_, double rho_)
| constructor More...
| ~FiniteElement2s13Disk () override=default
| 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 &q) override
| compute mass matrix More...
void | computeh (const fmatvec::Vec &q, const fmatvec::Vec &u) override
| compute smooth right hand side More...
void | computedhdz (const fmatvec::Vec &q, const fmatvec::Vec &u) override
| compute Jacobian for implicit integration More...
double | computeKineticEnergy (const fmatvec::Vec &q, const fmatvec::Vec &u) override
| compute kinetic energy More...
double | computeGravitationalEnergy (const fmatvec::Vec &q) override
| compute gravitational energy More...
double | computeElasticEnergy (const fmatvec::Vec &q) override
| compute elastic energy More...
virtual fmatvec::Vec3 | getPosition (const fmatvec::Vec &qElement, const fmatvec::Vec2 &s)
virtual fmatvec::SqrMat3 | getOrientation (const fmatvec::Vec &qElement, const fmatvec::Vec2 &s)
virtual fmatvec::Vec3 | getVelocity (const fmatvec::Vec &qElement, const fmatvec::Vec &qpElement, const fmatvec::Vec2 &s)
virtual fmatvec::Vec3 | getAngularVelocity (const fmatvec::Vec &qElement, const fmatvec::Vec &qpElement, const fmatvec::Vec2 &s)
virtual fmatvec::Mat | getJacobianOfMotion (const fmatvec::Vec &qElement, const fmatvec::Vec2 &s)
const fmatvec::SymMat & | getK () const
void | setEModul (double E_)
void | setPoissonRatio (double nu_)
void | setDensity (double rho_)
void | setShearCorrectionFactor (double alphaS_)
void | computeConstantSystemMatrices (const fmatvec::Vec &NodeCoordinates, double d1, double d2)
| computes mass and stiffness matrix More...
fmatvec::Vector< fmatvec::Fixed< 6 >, double > | getPositions (const fmatvec::Vec &NodeCoordinates, const fmatvec::Vec &qElement, const fmatvec::Vec2 &s, double d1, double d2)
fmatvec::Vector< fmatvec::Fixed< 6 >, double > | getVelocities (const fmatvec::Vec &NodeCoordinates, const fmatvec::Vec &qElement, const fmatvec::Vec &qpElement, const fmatvec::Vec2 &s, double d1, double d2)
fmatvec::Mat | JGeneralized (const fmatvec::Vec &NodeCoordinates, const fmatvec::Vec2 &s)
| compute Jacobian of contact description at contour point More...
Public Member Functions inherited from MBSimFlexibleBody::DiscretizationInterface
| DiscretizationInterface ()=default
| constructor
virtual | ~DiscretizationInterface ()=default
| destructor

## Private Attributes

double | E
| Young's modulus.
double | nu
| Poisson ratio.
double | G
| shear modulus
double | rho
| density
double | alphaS
| shear correction factor
int | RefDofs
| reference dof
int | NodeDofs
| elastic dof per node
int | Nodes
| number of nodes
fmatvec::SymMat | M
| mass and stiffness matrix
fmatvec::SymMat | K

## Detailed Description

FE for Reissner-Mindlin Plate using MFR.

Author
  Roland Zander
  Thorsten Schindler
  Kilian Grundl
  Raphael Missel

Date
  2009-05-22 initial commit (Grundl / Missel / Schindler)
  2009-07-24 implicit integration (Thorsten Schindler)
  2010-05-25 fixed minus sign in azimuthal stiffness directions (Thorsten Schindler)

## Constructor & Destructor Documentation

## ◆ FiniteElement2s13Disk()

MBSimFlexibleBody::FiniteElement2s13Disk::FiniteElement2s13Disk | ( | double | E_,
|  | double | nu_,
|  | double | rho_
| ) |  |

constructor

Parameters

  Young's | modulus
  Poiison | ratio
  density |

## Member Function Documentation

## ◆ computeConstantSystemMatrices()

void MBSimFlexibleBody::FiniteElement2s13Disk::computeConstantSystemMatrices | ( | const fmatvec::Vec & | NodeCoordinates,
|  | double | d1,
|  | double | d2
| ) |  |

computes mass and stiffness matrix

Parameters

  radial | and azimuthal coordinates of corner nodes
  inner | thickness of whole disk \oaram outer thickness of whole disk

## ◆ computedhdz()

void MBSimFlexibleBody::FiniteElement2s13Disk::computedhdz | ( | const fmatvec::Vec & | q,
|  | const fmatvec::Vec & | u
| ) |  |

override virtual

compute Jacobian for implicit integration

Parameters

  generalised | positions
  generalised | velocities

Implements MBSimFlexibleBody::DiscretizationInterface.

## ◆ computeElasticEnergy()

double MBSimFlexibleBody::FiniteElement2s13Disk::computeElasticEnergy | ( | const fmatvec::Vec & | q | ) |

override virtual

compute elastic energy

Parameters

  generalised | positions

Implements MBSimFlexibleBody::DiscretizationInterface.

## ◆ computeGravitationalEnergy()

double MBSimFlexibleBody::FiniteElement2s13Disk::computeGravitationalEnergy | ( | const fmatvec::Vec & | q | ) |

override virtual

compute gravitational energy

Parameters

  generalised | positions

Implements MBSimFlexibleBody::DiscretizationInterface.

## ◆ computeh()

void MBSimFlexibleBody::FiniteElement2s13Disk::computeh | ( | const fmatvec::Vec & | q,
|  | const fmatvec::Vec & | u
| ) |  |

override virtual

compute smooth right hand side

Parameters

  generalised | positions
  generalised | velocities

Implements MBSimFlexibleBody::DiscretizationInterface.

## ◆ computeKineticEnergy()

double MBSimFlexibleBody::FiniteElement2s13Disk::computeKineticEnergy | ( | const fmatvec::Vec & | q,
|  | const fmatvec::Vec & | u
| ) |  |

override virtual

compute kinetic energy

Parameters

  generalised | positions
  generalised | velocities

Implements MBSimFlexibleBody::DiscretizationInterface.

## ◆ computeM()

void MBSimFlexibleBody::FiniteElement2s13Disk::computeM | ( | const fmatvec::Vec & | q | ) |

override virtual

compute mass matrix

Parameters

  generalised | positions

Implements MBSimFlexibleBody::DiscretizationInterface.

## ◆ getdhdq()

const SqrMat & MBSimFlexibleBody::FiniteElement2s13Disk::getdhdq | ( |  | ) | const

override virtual

Returns
  Jacobian of implicit integration regarding position

Implements MBSimFlexibleBody::DiscretizationInterface.

## ◆ getdhdu()

const SqrMat & MBSimFlexibleBody::FiniteElement2s13Disk::getdhdu | ( |  | ) | const

override virtual

Returns
  Jacobian of implicit integration regarding velocity

Implements MBSimFlexibleBody::DiscretizationInterface.

## ◆ geth()

const Vec & MBSimFlexibleBody::FiniteElement2s13Disk::geth | ( |  | ) | const

override virtual

Returns
  smooth right hand side of discretization

Implements MBSimFlexibleBody::DiscretizationInterface.

## ◆ getM()

const fmatvec::SymMat& MBSimFlexibleBody::FiniteElement2s13Disk::getM | ( |  | ) | const

inline override virtual

Returns
  mass matrix of discretization

Implements MBSimFlexibleBody::DiscretizationInterface.

## ◆ getPositions()

Vector< Fixed< 6 >, double > MBSimFlexibleBody::FiniteElement2s13Disk::getPositions | ( | const fmatvec::Vec & | NodeCoordinates,
|  | const fmatvec::Vec & | qElement,
|  | const fmatvec::Vec2 & | s,
|  | double | d1,
|  | double | d2
| ) |  |

Parameters

  radial | and azimuthal coordinates of corner nodes
  generalised | coordinates
  generalised | velocities
  Lagrangian | position of contour point
  inner | thickness of whole disk \oaram outer thickness of whole disk

Returns
  state at contour point

## ◆ getqSize()

int MBSimFlexibleBody::FiniteElement2s13Disk::getqSize | ( |  | ) | const

inline override virtual

Returns
  dimension of positions

Implements MBSimFlexibleBody::DiscretizationInterface.

## ◆ getuSize()

int MBSimFlexibleBody::FiniteElement2s13Disk::getuSize | ( |  | ) | const

inline override virtual

Returns
  dimension of velocities

Implements MBSimFlexibleBody::DiscretizationInterface.

## ◆ JGeneralized()

Mat MBSimFlexibleBody::FiniteElement2s13Disk::JGeneralized | ( | const fmatvec::Vec & | NodeCoordinates,
|  | const fmatvec::Vec2 & | s
| ) |  |

compute Jacobian of contact description at contour point

Parameters

  radial | and azimuthal coordinates of corner nodes
  Lagrangian | position of contour point

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

- /mbsim-env/mbsim/modules/mbsimFlexibleBody/mbsimFlexibleBody/flexible_body/fe/2s_13_disk.h
- /mbsim-env/mbsim/modules/mbsimFlexibleBody/mbsimFlexibleBody/flexible_body/fe/2s_13_disk.cc