#include <MeshSpringForceField.h>


Public Types | |
| typedef DataTypes::VecCoord | VecCoord |
| typedef DataTypes::VecDeriv | VecDeriv |
| typedef DataTypes::Coord | Coord |
| typedef DataTypes::Deriv | Deriv |
| typedef Coord::value_type | Real |
Public Member Functions | |
| MeshSpringForceField () | |
| virtual double | getPotentialEnergy () |
| Get the potential energy associated to this ForceField. | |
| Real | getStiffness () const |
| Real | getLinesStiffness () const |
| Real | getTrianglesStiffness () const |
| Real | getQuadsStiffness () const |
| Real | getTetrasStiffness () const |
| Real | getCubesStiffness () const |
| void | setStiffness (Real val) |
| void | setLinesStiffness (Real val) |
| void | setTrianglesStiffness (Real val) |
| void | setQuadsStiffness (Real val) |
| void | setTetrasStiffness (Real val) |
| void | setCubesStiffness (Real val) |
| Real | getDamping () const |
| Real | getLinesDamping () const |
| Real | getTrianglesDamping () const |
| Real | getQuadsDamping () const |
| Real | getTetrasDamping () const |
| Real | getCubesDamping () const |
| void | setDamping (Real val) |
| void | setLinesDamping (Real val) |
| void | setTrianglesDamping (Real val) |
| void | setQuadsDamping (Real val) |
| void | setTetrasDamping (Real val) |
| void | setCubesDamping (Real val) |
| virtual void | init () |
| Initialization method called at graph modification, during bottom-up traversal. | |
| void | parse (core::objectmodel::BaseObjectDescription *arg) |
| Parse the given description to assign values to this object's fields and potentially other parameters. | |
Protected Member Functions | |
| void | addSpring (std::set< std::pair< int, int > > &sset, int m1, int m2, Real stiffness, Real damping) |
Protected Attributes | |
| Data< Real > | linesStiffness |
| Data< Real > | linesDamping |
| Data< Real > | trianglesStiffness |
| Data< Real > | trianglesDamping |
| Data< Real > | quadsStiffness |
| Data< Real > | quadsDamping |
| Data< Real > | tetrasStiffness |
| Data< Real > | tetrasDamping |
| Data< Real > | cubesStiffness |
| Data< Real > | cubesDamping |
Definition at line 41 of file MeshSpringForceField.h.
| typedef DataTypes::Coord sofa::component::forcefield::MeshSpringForceField< DataTypes >::Coord |
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 46 of file MeshSpringForceField.h.
| typedef DataTypes::Deriv sofa::component::forcefield::MeshSpringForceField< DataTypes >::Deriv |
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 47 of file MeshSpringForceField.h.
| typedef Coord::value_type sofa::component::forcefield::MeshSpringForceField< DataTypes >::Real |
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 48 of file MeshSpringForceField.h.
| typedef DataTypes::VecCoord sofa::component::forcefield::MeshSpringForceField< DataTypes >::VecCoord |
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 44 of file MeshSpringForceField.h.
| typedef DataTypes::VecDeriv sofa::component::forcefield::MeshSpringForceField< DataTypes >::VecDeriv |
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 45 of file MeshSpringForceField.h.
| sofa::component::forcefield::MeshSpringForceField< DataTypes >::MeshSpringForceField | ( | ) | [inline] |
Definition at line 65 of file MeshSpringForceField.h.
| void sofa::component::forcefield::MeshSpringForceField< DataTypes >::addSpring | ( | std::set< std::pair< int, int > > & | sset, | |
| int | m1, | |||
| int | m2, | |||
| Real | stiffness, | |||
| Real | damping | |||
| ) | [inline, protected] |
Definition at line 52 of file MeshSpringForceField.inl.
References sofa::core::componentmodel::behavior::MechanicalState< TDataTypes >::getX0(), sofa::core::componentmodel::behavior::PairInteractionForceField< DataTypes >::mstate1, sofa::core::componentmodel::behavior::PairInteractionForceField< DataTypes >::mstate2, and sofa::component::forcefield::SpringForceField< DataTypes >::springs.
Referenced by sofa::component::forcefield::MeshSpringForceField< DataTypes >::init().
| Real sofa::component::forcefield::MeshSpringForceField< DataTypes >::getCubesDamping | ( | ) | const [inline] |
Definition at line 122 of file MeshSpringForceField.h.
| Real sofa::component::forcefield::MeshSpringForceField< DataTypes >::getCubesStiffness | ( | ) | const [inline] |
Definition at line 87 of file MeshSpringForceField.h.
| Real sofa::component::forcefield::MeshSpringForceField< DataTypes >::getDamping | ( | ) | const [inline] |
Definition at line 117 of file MeshSpringForceField.h.
| Real sofa::component::forcefield::MeshSpringForceField< DataTypes >::getLinesDamping | ( | ) | const [inline] |
Definition at line 118 of file MeshSpringForceField.h.
| Real sofa::component::forcefield::MeshSpringForceField< DataTypes >::getLinesStiffness | ( | ) | const [inline] |
Definition at line 83 of file MeshSpringForceField.h.
| double sofa::component::forcefield::MeshSpringForceField< DataTypes >::getPotentialEnergy | ( | ) | [inline, virtual] |
Get the potential energy associated to this ForceField.
Used to extimate the total energy of the system by some post-stabilization techniques.
This method retrieves the x vector from the MechanicalState and call the internal getPotentialEnergy(const VecCoord&,const VecCoord&) method implemented by the component.
Reimplemented from sofa::core::componentmodel::behavior::PairInteractionForceField< DataTypes >.
Definition at line 45 of file MeshSpringForceField.inl.
| Real sofa::component::forcefield::MeshSpringForceField< DataTypes >::getQuadsDamping | ( | ) | const [inline] |
Definition at line 120 of file MeshSpringForceField.h.
| Real sofa::component::forcefield::MeshSpringForceField< DataTypes >::getQuadsStiffness | ( | ) | const [inline] |
Definition at line 85 of file MeshSpringForceField.h.
| Real sofa::component::forcefield::MeshSpringForceField< DataTypes >::getStiffness | ( | ) | const [inline] |
Definition at line 82 of file MeshSpringForceField.h.
| Real sofa::component::forcefield::MeshSpringForceField< DataTypes >::getTetrasDamping | ( | ) | const [inline] |
Definition at line 121 of file MeshSpringForceField.h.
| Real sofa::component::forcefield::MeshSpringForceField< DataTypes >::getTetrasStiffness | ( | ) | const [inline] |
Definition at line 86 of file MeshSpringForceField.h.
| Real sofa::component::forcefield::MeshSpringForceField< DataTypes >::getTrianglesDamping | ( | ) | const [inline] |
Definition at line 119 of file MeshSpringForceField.h.
| Real sofa::component::forcefield::MeshSpringForceField< DataTypes >::getTrianglesStiffness | ( | ) | const [inline] |
Definition at line 84 of file MeshSpringForceField.h.
| void sofa::component::forcefield::MeshSpringForceField< DataTypes >::init | ( | void | ) | [inline, virtual] |
Initialization method called at graph modification, during bottom-up traversal.
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 70 of file MeshSpringForceField.inl.
References sofa::component::forcefield::MeshSpringForceField< DataTypes >::addSpring(), sofa::component::forcefield::SpringForceField< DataTypes >::clear(), sofa::component::forcefield::MeshSpringForceField< DataTypes >::cubesDamping, sofa::component::forcefield::MeshSpringForceField< DataTypes >::cubesStiffness, sofa::core::objectmodel::BaseObject::getContext(), sofa::core::componentmodel::topology::BaseMeshTopology::getHexa(), sofa::core::componentmodel::topology::BaseMeshTopology::getLine(), sofa::core::objectmodel::BaseContext::getMechanicalState(), sofa::core::objectmodel::BaseContext::getMeshTopology(), sofa::core::componentmodel::topology::BaseMeshTopology::getNbHexas(), sofa::core::componentmodel::topology::BaseMeshTopology::getNbLines(), sofa::core::componentmodel::topology::BaseMeshTopology::getNbQuads(), sofa::core::componentmodel::topology::BaseMeshTopology::getNbTetras(), sofa::core::componentmodel::topology::BaseMeshTopology::getNbTriangles(), sofa::core::componentmodel::topology::BaseMeshTopology::getQuad(), sofa::core::componentmodel::topology::BaseMeshTopology::getTetra(), sofa::core::componentmodel::topology::BaseMeshTopology::getTriangle(), sofa::core::objectmodel::Data< T >::getValue(), sofa::core::componentmodel::topology::BaseMeshTopology::isCubeActive(), sofa::component::forcefield::MeshSpringForceField< DataTypes >::linesDamping, sofa::component::forcefield::MeshSpringForceField< DataTypes >::linesStiffness, sofa::core::componentmodel::behavior::PairInteractionForceField< DataTypes >::mstate1, sofa::core::componentmodel::behavior::PairInteractionForceField< DataTypes >::mstate2, sofa::component::forcefield::MeshSpringForceField< DataTypes >::quadsDamping, sofa::component::forcefield::MeshSpringForceField< DataTypes >::quadsStiffness, sofa::component::forcefield::MeshSpringForceField< DataTypes >::tetrasDamping, sofa::component::forcefield::MeshSpringForceField< DataTypes >::tetrasStiffness, sofa::component::forcefield::MeshSpringForceField< DataTypes >::trianglesDamping, and sofa::component::forcefield::MeshSpringForceField< DataTypes >::trianglesStiffness.
| void sofa::component::forcefield::MeshSpringForceField< DataTypes >::parse | ( | core::objectmodel::BaseObjectDescription * | arg | ) | [inline, virtual] |
Parse the given description to assign values to this object's fields and potentially other parameters.
Reimplemented from sofa::component::forcefield::SpringForceField< DataTypes >.
Definition at line 173 of file MeshSpringForceField.inl.
References sofa::core::objectmodel::BaseObjectDescription::getAttribute(), sofa::component::forcefield::MeshSpringForceField< DataTypes >::setDamping(), and sofa::component::forcefield::MeshSpringForceField< DataTypes >::setStiffness().
| void sofa::component::forcefield::MeshSpringForceField< DataTypes >::setCubesDamping | ( | Real | val | ) | [inline] |
Definition at line 147 of file MeshSpringForceField.h.
| void sofa::component::forcefield::MeshSpringForceField< DataTypes >::setCubesStiffness | ( | Real | val | ) | [inline] |
Definition at line 112 of file MeshSpringForceField.h.
| void sofa::component::forcefield::MeshSpringForceField< DataTypes >::setDamping | ( | Real | val | ) | [inline] |
Definition at line 123 of file MeshSpringForceField.h.
Referenced by main(), and sofa::component::forcefield::MeshSpringForceField< DataTypes >::parse().
| void sofa::component::forcefield::MeshSpringForceField< DataTypes >::setLinesDamping | ( | Real | val | ) | [inline] |
Definition at line 131 of file MeshSpringForceField.h.
| void sofa::component::forcefield::MeshSpringForceField< DataTypes >::setLinesStiffness | ( | Real | val | ) | [inline] |
Definition at line 96 of file MeshSpringForceField.h.
| void sofa::component::forcefield::MeshSpringForceField< DataTypes >::setQuadsDamping | ( | Real | val | ) | [inline] |
Definition at line 139 of file MeshSpringForceField.h.
| void sofa::component::forcefield::MeshSpringForceField< DataTypes >::setQuadsStiffness | ( | Real | val | ) | [inline] |
Definition at line 104 of file MeshSpringForceField.h.
| void sofa::component::forcefield::MeshSpringForceField< DataTypes >::setStiffness | ( | Real | val | ) | [inline] |
Definition at line 88 of file MeshSpringForceField.h.
Referenced by main(), and sofa::component::forcefield::MeshSpringForceField< DataTypes >::parse().
| void sofa::component::forcefield::MeshSpringForceField< DataTypes >::setTetrasDamping | ( | Real | val | ) | [inline] |
Definition at line 143 of file MeshSpringForceField.h.
| void sofa::component::forcefield::MeshSpringForceField< DataTypes >::setTetrasStiffness | ( | Real | val | ) | [inline] |
Definition at line 108 of file MeshSpringForceField.h.
| void sofa::component::forcefield::MeshSpringForceField< DataTypes >::setTrianglesDamping | ( | Real | val | ) | [inline] |
Definition at line 135 of file MeshSpringForceField.h.
| void sofa::component::forcefield::MeshSpringForceField< DataTypes >::setTrianglesStiffness | ( | Real | val | ) | [inline] |
Definition at line 100 of file MeshSpringForceField.h.
Data< Real > sofa::component::forcefield::MeshSpringForceField< DataTypes >::cubesDamping [protected] |
Definition at line 60 of file MeshSpringForceField.h.
Referenced by sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::getCubesDamping(), sofa::component::forcefield::MeshSpringForceField< DataTypes >::init(), sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::setCubesDamping(), and sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::setDamping().
Data< Real > sofa::component::forcefield::MeshSpringForceField< DataTypes >::cubesStiffness [protected] |
Definition at line 59 of file MeshSpringForceField.h.
Referenced by sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::getCubesStiffness(), sofa::component::forcefield::MeshSpringForceField< DataTypes >::init(), sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::setCubesStiffness(), and sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::setStiffness().
Data< Real > sofa::component::forcefield::MeshSpringForceField< DataTypes >::linesDamping [protected] |
Definition at line 52 of file MeshSpringForceField.h.
Referenced by sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::getDamping(), sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::getLinesDamping(), sofa::component::forcefield::MeshSpringForceField< DataTypes >::init(), sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::setDamping(), and sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::setLinesDamping().
Data< Real > sofa::component::forcefield::MeshSpringForceField< DataTypes >::linesStiffness [protected] |
Definition at line 51 of file MeshSpringForceField.h.
Referenced by sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::getLinesStiffness(), sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::getStiffness(), sofa::component::forcefield::MeshSpringForceField< DataTypes >::init(), sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::setLinesStiffness(), and sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::setStiffness().
Data< Real > sofa::component::forcefield::MeshSpringForceField< DataTypes >::quadsDamping [protected] |
Definition at line 56 of file MeshSpringForceField.h.
Referenced by sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::getQuadsDamping(), sofa::component::forcefield::MeshSpringForceField< DataTypes >::init(), sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::setDamping(), and sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::setQuadsDamping().
Data< Real > sofa::component::forcefield::MeshSpringForceField< DataTypes >::quadsStiffness [protected] |
Definition at line 55 of file MeshSpringForceField.h.
Referenced by sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::getQuadsStiffness(), sofa::component::forcefield::MeshSpringForceField< DataTypes >::init(), sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::setQuadsStiffness(), and sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::setStiffness().
Data< Real > sofa::component::forcefield::MeshSpringForceField< DataTypes >::tetrasDamping [protected] |
Definition at line 58 of file MeshSpringForceField.h.
Referenced by sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::getTetrasDamping(), sofa::component::forcefield::MeshSpringForceField< DataTypes >::init(), sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::setDamping(), and sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::setTetrasDamping().
Data< Real > sofa::component::forcefield::MeshSpringForceField< DataTypes >::tetrasStiffness [protected] |
Definition at line 57 of file MeshSpringForceField.h.
Referenced by sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::getTetrasStiffness(), sofa::component::forcefield::MeshSpringForceField< DataTypes >::init(), sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::setStiffness(), and sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::setTetrasStiffness().
Data< Real > sofa::component::forcefield::MeshSpringForceField< DataTypes >::trianglesDamping [protected] |
Definition at line 54 of file MeshSpringForceField.h.
Referenced by sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::getTrianglesDamping(), sofa::component::forcefield::MeshSpringForceField< DataTypes >::init(), sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::setDamping(), and sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::setTrianglesDamping().
Data< Real > sofa::component::forcefield::MeshSpringForceField< DataTypes >::trianglesStiffness [protected] |
Definition at line 53 of file MeshSpringForceField.h.
Referenced by sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::getTrianglesStiffness(), sofa::component::forcefield::MeshSpringForceField< DataTypes >::init(), sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::setStiffness(), and sofa::component::forcefield::MeshSpringForceField< sofa::defaulttype::StdVectorTypes >::setTrianglesStiffness().
1.5.7.1