#include <RegularGridSpringForceField.h>


Public Types | |
| typedef StiffSpringForceField < DataTypes > | Inherit |
| typedef Inherit::Spring | Spring |
| typedef DataTypes::VecCoord | VecCoord |
| typedef DataTypes::VecDeriv | VecDeriv |
| typedef DataTypes::Coord | Coord |
| typedef DataTypes::Deriv | Deriv |
| typedef Coord::value_type | Real |
Public Member Functions | |
| RegularGridSpringForceField (core::componentmodel::behavior::MechanicalState< DataTypes > *object1, core::componentmodel::behavior::MechanicalState< DataTypes > *object2) | |
| RegularGridSpringForceField () | |
| Real | getStiffness () const |
| Real | getLinesStiffness () const |
| Real | getQuadsStiffness () const |
| Real | getCubesStiffness () const |
| void | setStiffness (Real val) |
| void | setLinesStiffness (Real val) |
| void | setQuadsStiffness (Real val) |
| void | setCubesStiffness (Real val) |
| Real | getDamping () const |
| Real | getLinesDamping () const |
| Real | getQuadsDamping () const |
| Real | getCubesDamping () const |
| void | setDamping (Real val) |
| void | setLinesDamping (Real val) |
| void | setQuadsDamping (Real val) |
| void | setCubesDamping (Real val) |
| virtual void | parse (core::objectmodel::BaseObjectDescription *arg) |
| Parse the given description to assign values to this object's fields and potentially other parameters. | |
| virtual void | init () |
| Initialization method called at graph modification, during bottom-up traversal. | |
| virtual void | addForce (VecDeriv &f1, VecDeriv &f2, const VecCoord &x1, const VecCoord &x2, const VecDeriv &v1, const VecDeriv &v2) |
| Accumulate f corresponding to x,v. | |
| virtual void | addDForce (VecDeriv &df1, VecDeriv &df2, const VecDeriv &dx1, const VecDeriv &dx2, double kFactor, double bFactor) |
| Accumulate df corresponding to dx. | |
| virtual void | draw () |
| Render internal data of this object, for debugging purposes. | |
Protected Attributes | |
| Data< Real > | linesStiffness |
| Data< Real > | linesDamping |
| Data< Real > | quadsStiffness |
| Data< Real > | quadsDamping |
| Data< Real > | cubesStiffness |
| Data< Real > | cubesDamping |
| topology::RegularGridTopology * | topology |
Private Attributes | |
| double | m_potentialEnergy |
Definition at line 41 of file RegularGridSpringForceField.h.
| typedef DataTypes::Coord sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::Coord |
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 49 of file RegularGridSpringForceField.h.
| typedef DataTypes::Deriv sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::Deriv |
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 50 of file RegularGridSpringForceField.h.
| typedef StiffSpringForceField<DataTypes> sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::Inherit |
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 45 of file RegularGridSpringForceField.h.
| typedef Coord::value_type sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::Real |
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 51 of file RegularGridSpringForceField.h.
| typedef Inherit::Spring sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::Spring |
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 46 of file RegularGridSpringForceField.h.
| typedef DataTypes::VecCoord sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::VecCoord |
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 47 of file RegularGridSpringForceField.h.
| typedef DataTypes::VecDeriv sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::VecDeriv |
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 48 of file RegularGridSpringForceField.h.
Definition at line 64 of file RegularGridSpringForceField.h.
| sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::RegularGridSpringForceField | ( | ) | [inline] |
Definition at line 76 of file RegularGridSpringForceField.h.
| void sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::addDForce | ( | VecDeriv & | df1, | |
| VecDeriv & | df2, | |||
| const VecDeriv & | dx1, | |||
| const VecDeriv & | dx2, | |||
| double | kFactor, | |||
| double | bFactor | |||
| ) | [inline, virtual] |
Accumulate df corresponding to dx.
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 241 of file RegularGridSpringForceField.inl.
References sofa::component::forcefield::StiffSpringForceField< DataTypes >::addSpringDForce(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::cubesDamping, sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::cubesStiffness, sofa::component::topology::RegularGridTopology::getDx(), sofa::component::topology::RegularGridTopology::getDy(), sofa::component::topology::RegularGridTopology::getDz(), sofa::component::topology::GridTopology::getNx(), sofa::component::topology::GridTopology::getNy(), sofa::component::topology::GridTopology::getNz(), sofa::core::objectmodel::Data< T >::getValue(), sofa::component::forcefield::SpringForceField< DataTypes >::Spring::initpos, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::kd, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::ks, sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::linesDamping, sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::linesStiffness, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::m1, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::m2, sofa::core::componentmodel::behavior::PairInteractionForceField< DataTypes >::mstate1, sofa::core::componentmodel::behavior::PairInteractionForceField< DataTypes >::mstate2, norm(), sofa::component::topology::GridTopology::point(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::quadsDamping, sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::quadsStiffness, sofa::component::forcefield::SpringForceField< DataTypes >::springs, and sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::topology.
| void sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::addForce | ( | VecDeriv & | f1, | |
| VecDeriv & | f2, | |||
| const VecCoord & | x1, | |||
| const VecCoord & | x2, | |||
| const VecDeriv & | v1, | |||
| const VecDeriv & | v2 | |||
| ) | [inline, virtual] |
Accumulate f corresponding to x,v.
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 65 of file RegularGridSpringForceField.inl.
References sofa::core::componentmodel::behavior::PairInteractionForceField< DataTypes >::addForce(), sofa::component::forcefield::StiffSpringForceField< DataTypes >::addSpringForce(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::cubesDamping, sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::cubesStiffness, sofa::component::forcefield::StiffSpringForceField< DataTypes >::dfdx, sofa::component::topology::RegularGridTopology::getDx(), sofa::component::topology::RegularGridTopology::getDy(), sofa::component::topology::RegularGridTopology::getDz(), sofa::component::topology::GridTopology::getNx(), sofa::component::topology::GridTopology::getNy(), sofa::component::topology::GridTopology::getNz(), sofa::core::objectmodel::Data< T >::getValue(), sofa::component::forcefield::SpringForceField< DataTypes >::Spring::initpos, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::kd, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::ks, sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::linesDamping, sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::linesStiffness, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::m1, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::m2, sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::m_potentialEnergy, sofa::core::componentmodel::behavior::PairInteractionForceField< DataTypes >::mstate1, sofa::core::componentmodel::behavior::PairInteractionForceField< DataTypes >::mstate2, norm(), sofa::component::topology::GridTopology::point(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::quadsDamping, sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::quadsStiffness, sofa::component::forcefield::SpringForceField< DataTypes >::springs, and sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::topology.
| void sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::draw | ( | ) | [inline, virtual] |
Render internal data of this object, for debugging purposes.
Reimplemented from sofa::component::forcefield::SpringForceField< DataTypes >.
Definition at line 408 of file RegularGridSpringForceField.inl.
References sofa::core::objectmodel::BaseObject::getContext(), sofa::component::topology::RegularGridTopology::getDx(), sofa::component::topology::RegularGridTopology::getDy(), sofa::component::topology::RegularGridTopology::getDz(), sofa::component::topology::GridTopology::getNx(), sofa::component::topology::GridTopology::getNy(), sofa::component::topology::GridTopology::getNz(), sofa::core::objectmodel::Data< T >::getValue(), sofa::core::componentmodel::behavior::MechanicalState< TDataTypes >::getX(), sofa::helper::gl::glVertexT(), sofa::component::forcefield::SpringForceField< DataTypes >::Spring::initpos, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::kd, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::ks, sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::linesDamping, sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::linesStiffness, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::m1, sofa::component::forcefield::SpringForceField< DataTypes >::Spring::m2, sofa::core::componentmodel::behavior::PairInteractionForceField< DataTypes >::mstate1, sofa::core::componentmodel::behavior::PairInteractionForceField< DataTypes >::mstate2, norm(), sofa::component::topology::GridTopology::point(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::quadsDamping, sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::quadsStiffness, and sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::topology.
| Real sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::getCubesDamping | ( | ) | const [inline] |
Definition at line 114 of file RegularGridSpringForceField.h.
References sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::cubesDamping, and sofa::core::objectmodel::Data< T >::getValue().
| Real sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::getCubesStiffness | ( | ) | const [inline] |
Definition at line 91 of file RegularGridSpringForceField.h.
References sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::cubesStiffness, and sofa::core::objectmodel::Data< T >::getValue().
| Real sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::getDamping | ( | ) | const [inline] |
Definition at line 111 of file RegularGridSpringForceField.h.
References sofa::core::objectmodel::Data< T >::getValue(), and sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::linesDamping.
| Real sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::getLinesDamping | ( | ) | const [inline] |
Definition at line 112 of file RegularGridSpringForceField.h.
References sofa::core::objectmodel::Data< T >::getValue(), and sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::linesDamping.
| Real sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::getLinesStiffness | ( | ) | const [inline] |
Definition at line 89 of file RegularGridSpringForceField.h.
References sofa::core::objectmodel::Data< T >::getValue(), and sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::linesStiffness.
| Real sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::getQuadsDamping | ( | ) | const [inline] |
Definition at line 113 of file RegularGridSpringForceField.h.
References sofa::core::objectmodel::Data< T >::getValue(), and sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::quadsDamping.
| Real sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::getQuadsStiffness | ( | ) | const [inline] |
Definition at line 90 of file RegularGridSpringForceField.h.
References sofa::core::objectmodel::Data< T >::getValue(), and sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::quadsStiffness.
| Real sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::getStiffness | ( | ) | const [inline] |
Definition at line 88 of file RegularGridSpringForceField.h.
References sofa::core::objectmodel::Data< T >::getValue(), and sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::linesStiffness.
| void sofa::component::forcefield::RegularGridSpringForceField< 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 50 of file RegularGridSpringForceField.inl.
References sofa::core::objectmodel::BaseObject::getContext(), sofa::core::objectmodel::BaseContext::getMechanicalState(), sofa::core::objectmodel::BaseContext::getMeshTopology(), sofa::core::componentmodel::behavior::PairInteractionForceField< DataTypes >::mstate1, sofa::core::componentmodel::behavior::PairInteractionForceField< DataTypes >::mstate2, and sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::topology.
| void sofa::component::forcefield::RegularGridSpringForceField< 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 42 of file RegularGridSpringForceField.inl.
References sofa::core::objectmodel::BaseObjectDescription::getAttribute(), sofa::component::forcefield::SpringForceField< DataTypes >::parse(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setDamping(), and sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setStiffness().
| void sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setCubesDamping | ( | Real | val | ) | [inline] |
Definition at line 129 of file RegularGridSpringForceField.h.
References sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::cubesDamping, and sofa::core::objectmodel::Data< T >::setValue().
| void sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setCubesStiffness | ( | Real | val | ) | [inline] |
Definition at line 106 of file RegularGridSpringForceField.h.
References sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::cubesStiffness, and sofa::core::objectmodel::Data< T >::setValue().
| void sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setDamping | ( | Real | val | ) | [inline] |
Definition at line 115 of file RegularGridSpringForceField.h.
References sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::cubesDamping, sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::linesDamping, sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::quadsDamping, and sofa::core::objectmodel::Data< T >::setValue().
Referenced by main(), and sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::parse().
| void sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setLinesDamping | ( | Real | val | ) | [inline] |
Definition at line 121 of file RegularGridSpringForceField.h.
References sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::linesDamping, and sofa::core::objectmodel::Data< T >::setValue().
| void sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setLinesStiffness | ( | Real | val | ) | [inline] |
Definition at line 98 of file RegularGridSpringForceField.h.
References sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::linesStiffness, and sofa::core::objectmodel::Data< T >::setValue().
| void sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setQuadsDamping | ( | Real | val | ) | [inline] |
Definition at line 125 of file RegularGridSpringForceField.h.
References sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::quadsDamping, and sofa::core::objectmodel::Data< T >::setValue().
| void sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setQuadsStiffness | ( | Real | val | ) | [inline] |
Definition at line 102 of file RegularGridSpringForceField.h.
References sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::quadsStiffness, and sofa::core::objectmodel::Data< T >::setValue().
| void sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setStiffness | ( | Real | val | ) | [inline] |
Definition at line 92 of file RegularGridSpringForceField.h.
References sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::cubesStiffness, sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::linesStiffness, sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::quadsStiffness, and sofa::core::objectmodel::Data< T >::setValue().
Referenced by main(), and sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::parse().
Data< Real > sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::cubesDamping [protected] |
Definition at line 61 of file RegularGridSpringForceField.h.
Referenced by sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::addDForce(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::addForce(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::getCubesDamping(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setCubesDamping(), and sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setDamping().
Data< Real > sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::cubesStiffness [protected] |
Definition at line 60 of file RegularGridSpringForceField.h.
Referenced by sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::addDForce(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::addForce(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::getCubesStiffness(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setCubesStiffness(), and sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setStiffness().
Data< Real > sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::linesDamping [protected] |
Definition at line 57 of file RegularGridSpringForceField.h.
Referenced by sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::addDForce(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::addForce(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::draw(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::getDamping(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::getLinesDamping(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setDamping(), and sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setLinesDamping().
Data< Real > sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::linesStiffness [protected] |
Definition at line 56 of file RegularGridSpringForceField.h.
Referenced by sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::addDForce(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::addForce(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::draw(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::getLinesStiffness(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::getStiffness(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setLinesStiffness(), and sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setStiffness().
double sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::m_potentialEnergy [private] |
Reimplemented from sofa::component::forcefield::StiffSpringForceField< DataTypes >.
Definition at line 43 of file RegularGridSpringForceField.h.
Referenced by sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::addForce().
Data< Real > sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::quadsDamping [protected] |
Definition at line 59 of file RegularGridSpringForceField.h.
Referenced by sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::addDForce(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::addForce(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::draw(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::getQuadsDamping(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setDamping(), and sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setQuadsDamping().
Data< Real > sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::quadsStiffness [protected] |
Definition at line 58 of file RegularGridSpringForceField.h.
Referenced by sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::addDForce(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::addForce(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::draw(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::getQuadsStiffness(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setQuadsStiffness(), and sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::setStiffness().
topology::RegularGridTopology* sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::topology [protected] |
Definition at line 145 of file RegularGridSpringForceField.h.
Referenced by sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::addDForce(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::addForce(), sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::draw(), and sofa::component::forcefield::RegularGridSpringForceField< DataTypes >::init().
1.5.7.1