SOFA API  ca70b0f0
Open source framework for multi-physics simuation
sofa::component::mechanicalload Namespace Reference

Classes

class  ConicalForceFieldInternalData
 This class can be overridden if needed for additionnal storage within template specializations. More...
 
class  ConicalForceField
 
class  ConstantForceField
 Apply constant forces to given degrees of freedom. More...
 
class  DiagonalVelocityDampingForceField
 Apply damping forces to given degrees of freedom. More...
 
class  EdgePressureForceField
 
class  EllipsoidForceFieldInternalData
 This class can be overridden if needed for additionnal storage within template specializations. More...
 
class  EllipsoidForceField
 
class  InteractionEllipsoidForceFieldInternalData
 This class can be overridden if needed for additionnal storage within template specializations. More...
 
class  InteractionEllipsoidForceField
 
class  LinearForceFieldInternalData
 
class  LinearForceField
 
class  OscillatingTorsionPressureForceField
 
class  PlaneForceFieldInternalData
 
class  PlaneForceField
 
class  QuadPressureForceField
 QuadPressureForceField Class. More...
 
class  SphereForceFieldInternalData
 This class can be overridden if needed for additionnal storage within template specializations. More...
 
class  SphereForceField
 
class  SurfacePressureForceField
 SurfacePressureForceField Class. More...
 
class  TaitSurfacePressureForceField
 
class  TorsionForceField
 TorsionForceField. More...
 
class  TrianglePressureForceField
 
class  UniformVelocityDampingForceField
 Apply damping forces to given degrees of freedom. More...
 

Functions

SOFA_EXPORT_DYNAMIC_LIBRARY void initExternalModule ()
 
SOFA_EXPORT_DYNAMIC_LIBRARY const chargetModuleName ()
 
SOFA_EXPORT_DYNAMIC_LIBRARY const chargetModuleVersion ()
 
SOFA_EXPORT_DYNAMIC_LIBRARY const chargetModuleComponentList ()
 
void init ()
 
template<typename T >
sofa::type::Mat< 3, 3, T > matCross (const sofa::type::Vec< 3, T > &u)
 Convert a vector cross-product to a to matrix multiplication, i.e. cross(a,b) = matCross(a)*b. More...
 

Variables

int ConicalForceFieldClass
 
int ConstantForceFieldClass
 
template class SOFA_COMPONENT_MECHANICALLOAD_API ConstantForceField< Vec3Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API ConstantForceField< Vec2Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API ConstantForceField< Vec1Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API ConstantForceField< Vec6Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API ConstantForceField< Rigid3Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API ConstantForceField< Rigid2Types >
 
int DiagonalVelocityDampingForceFieldClass
 
template class SOFA_COMPONENT_MECHANICALLOAD_API DiagonalVelocityDampingForceField< Vec3Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API DiagonalVelocityDampingForceField< Vec2Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API DiagonalVelocityDampingForceField< Vec1Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API DiagonalVelocityDampingForceField< Vec6Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API DiagonalVelocityDampingForceField< Rigid3Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API DiagonalVelocityDampingForceField< Rigid2Types >
 
int EdgePressureForceFieldClass
 
template class SOFA_COMPONENT_MECHANICALLOAD_API EdgePressureForceField< Vec3Types >
 
int EllipsoidForceFieldClass
 
template class SOFA_COMPONENT_MECHANICALLOAD_API EllipsoidForceField< Vec3Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API EllipsoidForceField< Vec2Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API EllipsoidForceField< Vec1Types >
 
int InteractionEllipsoidForceFieldClass
 
template class SOFA_COMPONENT_MECHANICALLOAD_API InteractionEllipsoidForceField< Vec3Types, Rigid3Types >
 
int LinearForceFieldClass
 
template class SOFA_COMPONENT_MECHANICALLOAD_API LinearForceField< Vec3Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API LinearForceField< Vec2Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API LinearForceField< Vec1Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API LinearForceField< Vec6Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API LinearForceField< Rigid3Types >
 
int OscillatingTorsionPressureForceFieldClass
 
template class SOFA_COMPONENT_MECHANICALLOAD_API OscillatingTorsionPressureForceField< Vec3Types >
 
int PlaneForceFieldClass
 
template class SOFA_COMPONENT_MECHANICALLOAD_API PlaneForceField< Vec3Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API PlaneForceField< Vec2Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API PlaneForceField< Vec1Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API PlaneForceField< Vec6Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API PlaneForceField< Rigid3Types >
 
int QuadPressureForceFieldClass
 
template class SOFA_COMPONENT_MECHANICALLOAD_API QuadPressureForceField< Vec3Types >
 
int SphereForceFieldClass
 
template class SOFA_COMPONENT_MECHANICALLOAD_API SphereForceField< Vec3Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API SphereForceField< Vec2Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API SphereForceField< Vec1Types >
 
int SurfacePressureForceFieldClass
 
template class SOFA_COMPONENT_MECHANICALLOAD_API SurfacePressureForceField< Vec3Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API SurfacePressureForceField< Rigid3Types >
 
int TaitSurfacePressureForceFieldClass
 
template class SOFA_COMPONENT_MECHANICALLOAD_API TaitSurfacePressureForceField< Vec3Types >
 
int TorsionForceFieldClass
 
template class SOFA_COMPONENT_MECHANICALLOAD_API TorsionForceField< Vec3Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API TorsionForceField< Rigid3Types >
 
int TrianglePressureForceFieldClass
 
template class SOFA_COMPONENT_MECHANICALLOAD_API TrianglePressureForceField< Vec3Types >
 
int UniformVelocityDampingForceFieldClass
 
template class SOFA_COMPONENT_MECHANICALLOAD_API UniformVelocityDampingForceField< Vec3Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API UniformVelocityDampingForceField< Vec2Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API UniformVelocityDampingForceField< Vec1Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API UniformVelocityDampingForceField< Vec6Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API UniformVelocityDampingForceField< Rigid3Types >
 
template class SOFA_COMPONENT_MECHANICALLOAD_API UniformVelocityDampingForceField< Rigid2Types >
 

Function Documentation

◆ getModuleComponentList()

const char * sofa::component::mechanicalload::getModuleComponentList ( )

◆ getModuleName()

const char * sofa::component::mechanicalload::getModuleName ( )

◆ getModuleVersion()

const char * sofa::component::mechanicalload::getModuleVersion ( )

◆ init()

SOFA_COMPONENT_MECHANICALLOAD_API void sofa::component::mechanicalload::init ( )

◆ initExternalModule()

void sofa::component::mechanicalload::initExternalModule ( )

◆ matCross()

template<typename T >
sofa::type::Mat<3,3,T> sofa::component::mechanicalload::matCross ( const sofa::type::Vec< 3, T > &  u)
inline

Convert a vector cross-product to a to matrix multiplication, i.e. cross(a,b) = matCross(a)*b.

Variable Documentation

◆ ConicalForceFieldClass

int sofa::component::mechanicalload::ConicalForceFieldClass
Initial value:
= core::RegisterObject("Repulsion applied by a cone toward the exterior")
.add< ConicalForceField<Vec3Types> >()

◆ ConstantForceField< Rigid2Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::ConstantForceField< Rigid2Types >

◆ ConstantForceField< Rigid3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::ConstantForceField< Rigid3Types >

◆ ConstantForceField< Vec1Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::ConstantForceField< Vec1Types >

◆ ConstantForceField< Vec2Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::ConstantForceField< Vec2Types >

◆ ConstantForceField< Vec3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::ConstantForceField< Vec3Types >

◆ ConstantForceField< Vec6Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::ConstantForceField< Vec6Types >

◆ ConstantForceFieldClass

int sofa::component::mechanicalload::ConstantForceFieldClass
Initial value:
= core::RegisterObject("Constant forces applied to given degrees of freedom")
.add< ConstantForceField<Vec3Types> >()
.add< ConstantForceField<Vec2Types> >()
.add< ConstantForceField<Vec1Types> >()
.add< ConstantForceField<Vec6Types> >()
.add< ConstantForceField<Rigid3Types> >()
.add< ConstantForceField<Rigid2Types> >()

◆ DiagonalVelocityDampingForceField< Rigid2Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::DiagonalVelocityDampingForceField< Rigid2Types >

◆ DiagonalVelocityDampingForceField< Rigid3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::DiagonalVelocityDampingForceField< Rigid3Types >

◆ DiagonalVelocityDampingForceField< Vec1Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::DiagonalVelocityDampingForceField< Vec1Types >

◆ DiagonalVelocityDampingForceField< Vec2Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::DiagonalVelocityDampingForceField< Vec2Types >

◆ DiagonalVelocityDampingForceField< Vec3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::DiagonalVelocityDampingForceField< Vec3Types >

◆ DiagonalVelocityDampingForceField< Vec6Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::DiagonalVelocityDampingForceField< Vec6Types >

◆ DiagonalVelocityDampingForceFieldClass

int sofa::component::mechanicalload::DiagonalVelocityDampingForceFieldClass
Initial value:
= core::RegisterObject("Diagonal velocity damping")
.add< DiagonalVelocityDampingForceField<Vec3Types> >()
.add< DiagonalVelocityDampingForceField<Vec2Types> >()
.add< DiagonalVelocityDampingForceField<Vec1Types> >()
.add< DiagonalVelocityDampingForceField<Vec6Types> >()
.add< DiagonalVelocityDampingForceField<Rigid3Types> >()
.add< DiagonalVelocityDampingForceField<Rigid2Types> >()

◆ EdgePressureForceField< Vec3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::EdgePressureForceField< Vec3Types >

◆ EdgePressureForceFieldClass

int sofa::component::mechanicalload::EdgePressureForceFieldClass
Initial value:
= core::RegisterObject("Apply a force on edges, distributed on the edge nodes")
.add< EdgePressureForceField<Vec3Types> >()

◆ EllipsoidForceField< Vec1Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::EllipsoidForceField< Vec1Types >

◆ EllipsoidForceField< Vec2Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::EllipsoidForceField< Vec2Types >

◆ EllipsoidForceField< Vec3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::EllipsoidForceField< Vec3Types >

◆ EllipsoidForceFieldClass

int sofa::component::mechanicalload::EllipsoidForceFieldClass
Initial value:
= core::RegisterObject("Repulsion applied by an ellipsoid toward the exterior or the interior")
.add< EllipsoidForceField<Vec3Types> >()
.add< EllipsoidForceField<Vec2Types> >()
.add< EllipsoidForceField<Vec1Types> >()

◆ InteractionEllipsoidForceField< Vec3Types, Rigid3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::InteractionEllipsoidForceField< Vec3Types, Rigid3Types >

◆ InteractionEllipsoidForceFieldClass

int sofa::component::mechanicalload::InteractionEllipsoidForceFieldClass
Initial value:
= core::RegisterObject("Repulsion applied by an ellipsoid toward the exterior or the interior")
.add< InteractionEllipsoidForceField<Vec3Types, Rigid3Types> >()

◆ LinearForceField< Rigid3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::LinearForceField< Rigid3Types >

◆ LinearForceField< Vec1Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::LinearForceField< Vec1Types >

◆ LinearForceField< Vec2Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::LinearForceField< Vec2Types >

◆ LinearForceField< Vec3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::LinearForceField< Vec3Types >

◆ LinearForceField< Vec6Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::LinearForceField< Vec6Types >

◆ LinearForceFieldClass

int sofa::component::mechanicalload::LinearForceFieldClass
Initial value:
= core::RegisterObject("Linearly interpolated force applied to given degrees of freedom")
.add< LinearForceField<Vec3Types> >()
.add< LinearForceField<Vec2Types> >()
.add< LinearForceField<Vec1Types> >()
.add< LinearForceField<Vec6Types> >()
.add< LinearForceField<Rigid3Types> >()

◆ OscillatingTorsionPressureForceField< Vec3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::OscillatingTorsionPressureForceField< Vec3Types >

◆ OscillatingTorsionPressureForceFieldClass

int sofa::component::mechanicalload::OscillatingTorsionPressureForceFieldClass
Initial value:
= core::RegisterObject("OscillatingTorsionPressure")
.add< OscillatingTorsionPressureForceField<Vec3Types> >()

◆ PlaneForceField< Rigid3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::PlaneForceField< Rigid3Types >

◆ PlaneForceField< Vec1Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::PlaneForceField< Vec1Types >

◆ PlaneForceField< Vec2Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::PlaneForceField< Vec2Types >

◆ PlaneForceField< Vec3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::PlaneForceField< Vec3Types >

◆ PlaneForceField< Vec6Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::PlaneForceField< Vec6Types >

◆ PlaneForceFieldClass

int sofa::component::mechanicalload::PlaneForceFieldClass
Initial value:
= core::RegisterObject("Repulsion applied by a plane toward the exterior (half-space)")
.add< PlaneForceField<Vec3Types> >()
.add< PlaneForceField<Vec2Types> >()
.add< PlaneForceField<Vec1Types> >()
.add< PlaneForceField<Vec6Types> >()
.add< PlaneForceField<Rigid3Types> >()

◆ QuadPressureForceField< Vec3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::QuadPressureForceField< Vec3Types >

◆ QuadPressureForceFieldClass

int sofa::component::mechanicalload::QuadPressureForceFieldClass
Initial value:
= core::RegisterObject("QuadPressure")
.add< QuadPressureForceField<Vec3Types> >()

◆ SphereForceField< Vec1Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::SphereForceField< Vec1Types >

◆ SphereForceField< Vec2Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::SphereForceField< Vec2Types >

◆ SphereForceField< Vec3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::SphereForceField< Vec3Types >

◆ SphereForceFieldClass

int sofa::component::mechanicalload::SphereForceFieldClass
Initial value:
= core::RegisterObject("Repulsion applied by a sphere toward the exterior")
.add< SphereForceField<Vec3Types> >()
.add< SphereForceField<Vec2Types> >()
.add< SphereForceField<Vec1Types> >()

◆ SurfacePressureForceField< Rigid3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::SurfacePressureForceField< Rigid3Types >

◆ SurfacePressureForceField< Vec3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::SurfacePressureForceField< Vec3Types >

◆ SurfacePressureForceFieldClass

int sofa::component::mechanicalload::SurfacePressureForceFieldClass
Initial value:
= core::RegisterObject("SurfacePressure")
.add<SurfacePressureForceField<Vec3Types> >()
.add<SurfacePressureForceField<Rigid3Types> >()

◆ TaitSurfacePressureForceField< Vec3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::TaitSurfacePressureForceField< Vec3Types >

◆ TaitSurfacePressureForceFieldClass

int sofa::component::mechanicalload::TaitSurfacePressureForceFieldClass
Initial value:
= core::RegisterObject("\
This component computes the volume enclosed by a surface mesh \
and apply a pressure force following Tait's equation: $P = P_0 - B((V/V_0)^\\gamma - 1)$.\n\
This ForceField can be used to apply :\n\
* a constant pressure (set $B=0$ and use $P_0$)\n\
* an ideal gas pressure (set $\\gamma=1$ and use $B$)\n\
* a pressure from water (set $\\gamma=7$ and use $B$)")
.add< TaitSurfacePressureForceField<Vec3Types> >()

◆ TorsionForceField< Rigid3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::TorsionForceField< Rigid3Types >

◆ TorsionForceField< Vec3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::TorsionForceField< Vec3Types >

◆ TorsionForceFieldClass

int sofa::component::mechanicalload::TorsionForceFieldClass
Initial value:
= core::RegisterObject("Applies a torque to specified points")
.add< TorsionForceField<Vec3Types> >()
.add< TorsionForceField<Rigid3Types> >()

◆ TrianglePressureForceField< Vec3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::TrianglePressureForceField< Vec3Types >

◆ TrianglePressureForceFieldClass

int sofa::component::mechanicalload::TrianglePressureForceFieldClass
Initial value:
= core::RegisterObject("TrianglePressure")
.add< TrianglePressureForceField<Vec3Types> >()

◆ UniformVelocityDampingForceField< Rigid2Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::UniformVelocityDampingForceField< Rigid2Types >

◆ UniformVelocityDampingForceField< Rigid3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::UniformVelocityDampingForceField< Rigid3Types >

◆ UniformVelocityDampingForceField< Vec1Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::UniformVelocityDampingForceField< Vec1Types >

◆ UniformVelocityDampingForceField< Vec2Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::UniformVelocityDampingForceField< Vec2Types >

◆ UniformVelocityDampingForceField< Vec3Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::UniformVelocityDampingForceField< Vec3Types >

◆ UniformVelocityDampingForceField< Vec6Types >

template class SOFA_COMPONENT_MECHANICALLOAD_API sofa::component::mechanicalload::UniformVelocityDampingForceField< Vec6Types >

◆ UniformVelocityDampingForceFieldClass

int sofa::component::mechanicalload::UniformVelocityDampingForceFieldClass
Initial value:
= core::RegisterObject("Uniform velocity damping")
.add< UniformVelocityDampingForceField<Vec3Types> >()
.add< UniformVelocityDampingForceField<Vec2Types> >()
.add< UniformVelocityDampingForceField<Vec1Types> >()
.add< UniformVelocityDampingForceField<Vec6Types> >()
.add< UniformVelocityDampingForceField<Rigid3Types> >()
.add< UniformVelocityDampingForceField<Rigid2Types> >()