Bullet Collision Detection & Physics Library: btDeformableLinearElasticityForce Class Reference

Bullet Collision Detection & Physics Library

Public Types | Public Member Functions | Public Attributes | List of all members
btDeformableLinearElasticityForce Class Reference

`#include <btDeformableLinearElasticityForce.h>`

Inheritance diagram for btDeformableLinearElasticityForce:
[legend]
Collaboration diagram for btDeformableLinearElasticityForce:
[legend]

## Public Types
typedef btAlignedObjectArray< btVector3 > | TVStack
Public Types inherited from btDeformableLagrangianForce
typedef btAlignedObjectArray< btVector3 > | TVStack

## Public Member Functions
| btDeformableLinearElasticityForce ()
| btDeformableLinearElasticityForce (btScalar mu, btScalar lambda, btScalar damping_alpha=0.01, btScalar damping_beta=0.01)
void | updateYoungsModulusAndPoissonRatio ()
void | updateLameParameters ()
void | setYoungsModulus (btScalar E)
void | setPoissonRatio (btScalar nu)
void | setDamping (btScalar damping_alpha, btScalar damping_beta)
void | setLameParameters (btScalar mu, btScalar lambda)
virtual void | addScaledForces (btScalar scale, TVStack &force)
virtual void | addScaledExplicitForce (btScalar scale, TVStack &force)
virtual void | addScaledDampingForce (btScalar scale, TVStack &force)
virtual double | totalElasticEnergy (btScalar dt)
virtual double | totalDampingEnergy (btScalar dt)
double | elasticEnergyDensity (const btSoftBody::TetraScratch &s)
virtual void | addScaledElasticForce (btScalar scale, TVStack &force)
virtual void | buildDampingForceDifferentialDiagonal (btScalar scale, TVStack &diagA)
virtual void | addScaledDampingForceDifferential (btScalar scale, const TVStack &dv, TVStack &df)
virtual void | addScaledElasticForceDifferential (btScalar scale, const TVStack &dx, TVStack &df)
void | firstPiola (const btSoftBody::TetraScratch &s, btMatrix3x3 &P)
void | firstPiolaDifferential (const btSoftBody::TetraScratch &s, const btMatrix3x3 &dF, btMatrix3x3 &dP)
void | firstPiolaDampingDifferential (const btSoftBody::TetraScratch &s, const btMatrix3x3 &dF, btMatrix3x3 &dP)
virtual void | addScaledHessian (btScalar scale)
virtual btDeformableLagrangianForceType | getForceType ()
Public Member Functions inherited from btDeformableLagrangianForce
| btDeformableLagrangianForce ()
virtual | ~btDeformableLagrangianForce ()
virtual void | reinitialize (bool nodeUpdated)
virtual int | getNumNodes ()
virtual void | addSoftBody (btSoftBody *psb)
virtual void | removeSoftBody (btSoftBody *psb)
virtual void | setIndices (const btAlignedObjectArray< btSoftBody::Node * > *nodes)
virtual btMatrix3x3 | Ds (int id0, int id1, int id2, int id3, const TVStack &dx)
virtual btMatrix3x3 | DsFromVelocity (const btSoftBody::Node *n0, const btSoftBody::Node *n1, const btSoftBody::Node *n2, const btSoftBody::Node *n3)
virtual void | testDerivative ()
virtual void | testHessian ()
virtual double | totalEnergy (btScalar dt)

## Public Attributes
btScalar | m_mu
btScalar | m_lambda
btScalar | m_E
btScalar | m_nu
btScalar | m_damping_alpha
btScalar | m_damping_beta
Public Attributes inherited from btDeformableLagrangianForce
btAlignedObjectArray< btSoftBody * > | m_softBodies
const btAlignedObjectArray< btSoftBody::Node * > * | m_nodes

## Detailed Description

Definition at line 23 of file btDeformableLinearElasticityForce.h.

## Member Typedef Documentation

## ◆ TVStack

typedef btAlignedObjectArray<btVector3> btDeformableLinearElasticityForce::TVStack

Definition at line 26 of file btDeformableLinearElasticityForce.h.

## Constructor & Destructor Documentation

## ◆ btDeformableLinearElasticityForce() [1/2]

btDeformableLinearElasticityForce::btDeformableLinearElasticityForce | ( |  | ) |
| inline

Definition at line 30 of file btDeformableLinearElasticityForce.h.

## ◆ btDeformableLinearElasticityForce() [2/2]

btDeformableLinearElasticityForce::btDeformableLinearElasticityForce | ( | btScalar | mu,
|  | btScalar | lambda,
|  | btScalar | damping_alpha = `0.01`,
|  | btScalar | damping_beta = `0.01`
| ) |  |
| inline

Definition at line 35 of file btDeformableLinearElasticityForce.h.

## Member Function Documentation

## ◆ addScaledDampingForce()

virtual void btDeformableLinearElasticityForce::addScaledDampingForce | ( | btScalar | scale,
|  | TVStack & | force
| ) |  |
| inlinevirtual

Implements btDeformableLagrangianForce.

Definition at line 93 of file btDeformableLinearElasticityForce.h.

## ◆ addScaledDampingForceDifferential()

virtual void btDeformableLinearElasticityForce::addScaledDampingForceDifferential | ( | btScalar | scale,
|  | const TVStack & | dv,
|  | TVStack & | df
| ) |  |
| inlinevirtual

Implements btDeformableLagrangianForce.

Definition at line 288 of file btDeformableLinearElasticityForce.h.

## ◆ addScaledElasticForce()

virtual void btDeformableLinearElasticityForce::addScaledElasticForce | ( | btScalar | scale,
|  | TVStack & | force
| ) |  |
| inlinevirtual

Definition at line 218 of file btDeformableLinearElasticityForce.h.

## ◆ addScaledElasticForceDifferential()

virtual void btDeformableLinearElasticityForce::addScaledElasticForceDifferential | ( | btScalar | scale,
|  | const TVStack & | dx,
|  | TVStack & | df
| ) |  |
| inlinevirtual

Implements btDeformableLagrangianForce.

Definition at line 350 of file btDeformableLinearElasticityForce.h.

## ◆ addScaledExplicitForce()

virtual void btDeformableLinearElasticityForce::addScaledExplicitForce | ( | btScalar | scale,
|  | TVStack & | force
| ) |  |
| inlinevirtual

Implements btDeformableLagrangianForce.

Definition at line 87 of file btDeformableLinearElasticityForce.h.

## ◆ addScaledForces()

virtual void btDeformableLinearElasticityForce::addScaledForces | ( | btScalar | scale,
|  | TVStack & | force
| ) |  |
| inlinevirtual

Implements btDeformableLagrangianForce.

Definition at line 81 of file btDeformableLinearElasticityForce.h.

## ◆ addScaledHessian()

virtual void btDeformableLinearElasticityForce::addScaledHessian | ( | btScalar | scale | ) |
| inlinevirtual

Reimplemented from btDeformableLagrangianForce.

Definition at line 417 of file btDeformableLinearElasticityForce.h.

## ◆ buildDampingForceDifferentialDiagonal()

virtual void btDeformableLinearElasticityForce::buildDampingForceDifferentialDiagonal | ( | btScalar | scale,
|  | TVStack & | diagA
| ) |  |
| inlinevirtual

Implements btDeformableLagrangianForce.

Definition at line 285 of file btDeformableLinearElasticityForce.h.

## ◆ elasticEnergyDensity()

double btDeformableLinearElasticityForce::elasticEnergyDensity | ( | const btSoftBody::TetraScratch & | s | ) |
| inline

Definition at line 208 of file btDeformableLinearElasticityForce.h.

## ◆ firstPiola()

void btDeformableLinearElasticityForce::firstPiola | ( | const btSoftBody::TetraScratch & | s,
|  | btMatrix3x3 & | P
| ) |  |
| inline

Definition at line 390 of file btDeformableLinearElasticityForce.h.

## ◆ firstPiolaDampingDifferential()

void btDeformableLinearElasticityForce::firstPiolaDampingDifferential | ( | const btSoftBody::TetraScratch & | s,
|  | const btMatrix3x3 & | dF,
|  | btMatrix3x3 & | dP
| ) |  |
| inline

Definition at line 409 of file btDeformableLinearElasticityForce.h.

## ◆ firstPiolaDifferential()

void btDeformableLinearElasticityForce::firstPiolaDifferential | ( | const btSoftBody::TetraScratch & | s,
|  | const btMatrix3x3 & | dF,
|  | btMatrix3x3 & | dP
| ) |  |
| inline

Definition at line 401 of file btDeformableLinearElasticityForce.h.

## ◆ getForceType()

virtual btDeformableLagrangianForceType btDeformableLinearElasticityForce::getForceType | ( |  | ) |
| inlinevirtual

Implements btDeformableLagrangianForce.

Definition at line 457 of file btDeformableLinearElasticityForce.h.

## ◆ setDamping()

void btDeformableLinearElasticityForce::setDamping | ( | btScalar | damping_alpha,
|  | btScalar | damping_beta
| ) |  |
| inline

Definition at line 68 of file btDeformableLinearElasticityForce.h.

## ◆ setLameParameters()

void btDeformableLinearElasticityForce::setLameParameters | ( | btScalar | mu,
|  | btScalar | lambda
| ) |  |
| inline

Definition at line 74 of file btDeformableLinearElasticityForce.h.

## ◆ setPoissonRatio()

void btDeformableLinearElasticityForce::setPoissonRatio | ( | btScalar | nu | ) |
| inline

Definition at line 62 of file btDeformableLinearElasticityForce.h.

## ◆ setYoungsModulus()

void btDeformableLinearElasticityForce::setYoungsModulus | ( | btScalar | E | ) |
| inline

Definition at line 56 of file btDeformableLinearElasticityForce.h.

## ◆ totalDampingEnergy()

virtual double btDeformableLinearElasticityForce::totalDampingEnergy | ( | btScalar | dt | ) |
| inlinevirtual

Reimplemented from btDeformableLagrangianForce.

Definition at line 175 of file btDeformableLinearElasticityForce.h.

## ◆ totalElasticEnergy()

virtual double btDeformableLinearElasticityForce::totalElasticEnergy | ( | btScalar | dt | ) |
| inlinevirtual

Reimplemented from btDeformableLagrangianForce.

Definition at line 154 of file btDeformableLinearElasticityForce.h.

## ◆ updateLameParameters()

void btDeformableLinearElasticityForce::updateLameParameters | ( |  | ) |
| inline

Definition at line 48 of file btDeformableLinearElasticityForce.h.

## ◆ updateYoungsModulusAndPoissonRatio()

void btDeformableLinearElasticityForce::updateYoungsModulusAndPoissonRatio | ( |  | ) |
| inline

Definition at line 40 of file btDeformableLinearElasticityForce.h.

## Member Data Documentation

## ◆ m_damping_alpha

btScalar btDeformableLinearElasticityForce::m_damping_alpha

Definition at line 29 of file btDeformableLinearElasticityForce.h.

## ◆ m_damping_beta

btScalar btDeformableLinearElasticityForce::m_damping_beta

Definition at line 29 of file btDeformableLinearElasticityForce.h.

## ◆ m_E

btScalar btDeformableLinearElasticityForce::m_E

Definition at line 28 of file btDeformableLinearElasticityForce.h.

## ◆ m_lambda

btScalar btDeformableLinearElasticityForce::m_lambda

Definition at line 27 of file btDeformableLinearElasticityForce.h.

## ◆ m_mu

btScalar btDeformableLinearElasticityForce::m_mu

Definition at line 27 of file btDeformableLinearElasticityForce.h.

## ◆ m_nu

btScalar btDeformableLinearElasticityForce::m_nu

Definition at line 28 of file btDeformableLinearElasticityForce.h.

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

- btDeformableLinearElasticityForce.h