Drake
Drake C++ Documentation
DeformableBodyConfig< T > Class Template Reference

Detailed Description

template<typename T>
class drake::multibody::fem::DeformableBodyConfig< T >

DeformableBodyConfig stores the physical parameters for a deformable body.

A default constructed configuration approximately represents a hard rubber material (density, elasticity, and poisson's ratio) without any damping. Damping coefficients are generally difficult to measure and we expect users will typically start with zero damping and tune the values to achieve reasonable dynamics. The config contains the following fields with their corresponding valid ranges:

  • Young's modulus: Measures the stiffness of the material, has unit N/m². Must be positive. Default to 1e8.
  • Poisson's ratio: Measures the Poisson effect (how much the material expands or contracts in directions perpendicular to the direction of loading) of the material, unitless. Must be greater than -1 and less than 0.5. Default to 0.49.
  • Mass damping coefficient: Controls the strength of mass damping, has unit 1/s. Must be non-negative. Default to 0. See DampingModel.
  • Stiffness damping coefficient: Controls the strength of stiffness damping, has unit s. Must be non-negative. Default to 0. See DampingModel.
  • Mass density: Has unit kg/m³. Must be positive. Default to 1.5e3.
  • Material model: The constitutive model that describes the stress-strain relationship of the body, see MaterialModel. Default to MaterialModel::kCorotated.
    Template Parameters
    TThe scalar type, which must be one of the default nonsymbolic scalars.

#include <drake/multibody/fem/deformable_body_config.h>

Public Member Functions

 DeformableBodyConfig ()=default
 
void set_youngs_modulus (T youngs_modulus)
 
void set_poissons_ratio (T poissons_ratio)
 
void set_mass_damping_coefficient (T mass_damping_coefficient)
 
void set_stiffness_damping_coefficient (T stiffness_damping_coefficient)
 
void set_mass_density (T mass_density)
 
void set_material_model (MaterialModel material_model)
 
const T & youngs_modulus () const
 Returns the Young's modulus, with unit of N/m². More...
 
const T & poissons_ratio () const
 Returns the Poisson's ratio, unitless. More...
 
const T & mass_damping_coefficient () const
 Returns the mass damping coefficient. More...
 
const T & stiffness_damping_coefficient () const
 Returns the stiffness damping coefficient. More...
 
const T & mass_density () const
 Returns the mass density, with unit of kg/m³. More...
 
MaterialModel material_model () const
 Returns the constitutive model of the material. More...
 
Implements CopyConstructible, CopyAssignable, MoveConstructible, MoveAssignable
 DeformableBodyConfig (const DeformableBodyConfig &)=default
 
DeformableBodyConfigoperator= (const DeformableBodyConfig &)=default
 
 DeformableBodyConfig (DeformableBodyConfig &&)=default
 
DeformableBodyConfigoperator= (DeformableBodyConfig &&)=default
 

Constructor & Destructor Documentation

◆ DeformableBodyConfig() [1/3]

DeformableBodyConfig ( const DeformableBodyConfig< T > &  )
default

◆ DeformableBodyConfig() [2/3]

◆ DeformableBodyConfig() [3/3]

DeformableBodyConfig ( )
default

Member Function Documentation

◆ mass_damping_coefficient()

const T& mass_damping_coefficient ( ) const

Returns the mass damping coefficient.

See DampingModel.

◆ mass_density()

const T& mass_density ( ) const

Returns the mass density, with unit of kg/m³.

◆ material_model()

MaterialModel material_model ( ) const

Returns the constitutive model of the material.

◆ operator=() [1/2]

DeformableBodyConfig& operator= ( const DeformableBodyConfig< T > &  )
default

◆ operator=() [2/2]

DeformableBodyConfig& operator= ( DeformableBodyConfig< T > &&  )
default

◆ poissons_ratio()

const T& poissons_ratio ( ) const

Returns the Poisson's ratio, unitless.

◆ set_mass_damping_coefficient()

void set_mass_damping_coefficient ( mass_damping_coefficient)
Precondition
mass_damping_coefficient >= 0.

◆ set_mass_density()

void set_mass_density ( mass_density)
Precondition
mass_density > 0.

◆ set_material_model()

void set_material_model ( MaterialModel  material_model)

◆ set_poissons_ratio()

void set_poissons_ratio ( poissons_ratio)
Precondition
-1 < poissons_ratio < 0.5.

◆ set_stiffness_damping_coefficient()

void set_stiffness_damping_coefficient ( stiffness_damping_coefficient)
Precondition
stiffness_damping_coefficient >= 0.

◆ set_youngs_modulus()

void set_youngs_modulus ( youngs_modulus)
Precondition
youngs_modulus > 0.

◆ stiffness_damping_coefficient()

const T& stiffness_damping_coefficient ( ) const

Returns the stiffness damping coefficient.

See DampingModel.

◆ youngs_modulus()

const T& youngs_modulus ( ) const

Returns the Young's modulus, with unit of N/m².


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