#include <TriangularAnisotropicFEMForceField.h>


Public Types | |
| typedef sofa::component::forcefield::TriangularFEMForceField < DataTypes > | Inherited |
| typedef DataTypes::VecCoord | VecCoord |
| typedef DataTypes::VecDeriv | VecDeriv |
| typedef DataTypes::VecReal | VecReal |
| typedef VecCoord | Vector |
| typedef DataTypes::Coord | Coord |
| typedef DataTypes::Deriv | Deriv |
| typedef Coord::value_type | Real |
| typedef Inherited::TriangleInformation | TriangleInformation |
| typedef sofa::core::componentmodel::topology::BaseMeshTopology::index_type | Index |
| typedef sofa::core::componentmodel::topology::BaseMeshTopology::Triangle | Element |
| typedef sofa::core::componentmodel::topology::BaseMeshTopology::SeqTriangles | VecElement |
Public Member Functions | |
| void | init () |
| Initialization method called at graph modification, during bottom-up traversal. | |
| void | reinit () |
| Update method called when variables used in precomputation are modified. | |
| void | draw () |
| Render internal data of this object, for debugging purposes. | |
| TriangularAnisotropicFEMForceField () | |
| void | computeMaterialStiffness (int i, Index &a, Index &b, Index &c) |
Static Public Member Functions | |
| static void | TRQSTriangleCreationFunction (int, void *, TriangleInformation &, const Triangle &, const sofa::helper::vector< unsigned int > &, const sofa::helper::vector< double > &) |
Data Fields | |
| Data< Real > | f_poisson2 |
| Data< Real > | f_young2 |
| Data< Real > | f_theta |
| Data< VecCoord > | f_fiberCenter |
| Data< bool > | showFiber |
| VecDeriv | fiberDirRefs |
| sofa::core::componentmodel::topology::BaseMeshTopology * | _topology |
Static Public Attributes | |
| static const int | SMALL = 1 |
| Symbol of small displacements triangle solver. | |
| static const int | LARGE = 0 |
| Symbol of large displacements triangle solver. | |
Definition at line 58 of file TriangularAnisotropicFEMForceField.h.
| typedef DataTypes::Coord sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::Coord |
Reimplemented from sofa::component::forcefield::TriangularFEMForceField< DataTypes >.
Definition at line 68 of file TriangularAnisotropicFEMForceField.h.
| typedef DataTypes::Deriv sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::Deriv |
Reimplemented from sofa::component::forcefield::TriangularFEMForceField< DataTypes >.
Definition at line 69 of file TriangularAnisotropicFEMForceField.h.
| typedef sofa::core::componentmodel::topology::BaseMeshTopology::Triangle sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::Element |
Reimplemented from sofa::component::forcefield::TriangularFEMForceField< DataTypes >.
Definition at line 74 of file TriangularAnisotropicFEMForceField.h.
| typedef sofa::core::componentmodel::topology::BaseMeshTopology::index_type sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::Index |
Reimplemented from sofa::component::forcefield::TriangularFEMForceField< DataTypes >.
Definition at line 73 of file TriangularAnisotropicFEMForceField.h.
| typedef sofa::component::forcefield::TriangularFEMForceField<DataTypes> sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::Inherited |
Reimplemented from sofa::component::forcefield::TriangularFEMForceField< DataTypes >.
Definition at line 63 of file TriangularAnisotropicFEMForceField.h.
| typedef Coord::value_type sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::Real |
Reimplemented from sofa::component::forcefield::TriangularFEMForceField< DataTypes >.
Definition at line 70 of file TriangularAnisotropicFEMForceField.h.
| typedef Inherited::TriangleInformation sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::TriangleInformation |
Definition at line 71 of file TriangularAnisotropicFEMForceField.h.
| typedef DataTypes::VecCoord sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::VecCoord |
Reimplemented from sofa::component::forcefield::TriangularFEMForceField< DataTypes >.
Definition at line 64 of file TriangularAnisotropicFEMForceField.h.
| typedef DataTypes::VecDeriv sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::VecDeriv |
Reimplemented from sofa::component::forcefield::TriangularFEMForceField< DataTypes >.
Definition at line 65 of file TriangularAnisotropicFEMForceField.h.
| typedef sofa::core::componentmodel::topology::BaseMeshTopology::SeqTriangles sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::VecElement |
Reimplemented from sofa::component::forcefield::TriangularFEMForceField< DataTypes >.
Definition at line 75 of file TriangularAnisotropicFEMForceField.h.
| typedef DataTypes::VecReal sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::VecReal |
Reimplemented from sofa::component::forcefield::TriangularFEMForceField< DataTypes >.
Definition at line 66 of file TriangularAnisotropicFEMForceField.h.
| typedef VecCoord sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::Vector |
Reimplemented from sofa::component::forcefield::TriangularFEMForceField< DataTypes >.
Definition at line 67 of file TriangularAnisotropicFEMForceField.h.
| sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::TriangularAnisotropicFEMForceField | ( | ) | [inline] |
Definition at line 67 of file TriangularAnisotropicFEMForceField.cpp.
| void sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::computeMaterialStiffness | ( | int | i, | |
| Index & | a, | |||
| Index & | b, | |||
| Index & | c | |||
| ) | [inline, virtual] |
Reimplemented from sofa::component::forcefield::TriangularFEMForceField< DataTypes >.
Definition at line 123 of file TriangularAnisotropicFEMForceField.cpp.
References cross(), sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::f_fiberCenter, sofa::component::forcefield::TriangularFEMForceField< DataTypes >::f_poisson, sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::f_poisson2, sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::f_theta, sofa::component::forcefield::TriangularFEMForceField< DataTypes >::f_young, sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::f_young2, sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::fiberDirRefs, sofa::core::objectmodel::Data< T >::getValue(), sofa::defaulttype::Mat< L, C, real >::invert(), sofa::component::forcefield::TriangularFEMForceField< DataTypes >::TriangleInformation::materialMatrix, sofa::defaulttype::Mat< L, C, real >::transpose(), and sofa::component::forcefield::TriangularFEMForceField< DataTypes >::triangleInfo.
Referenced by sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::TRQSTriangleCreationFunction().
| void sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::draw | ( | ) | [inline, virtual] |
Render internal data of this object, for debugging purposes.
Reimplemented from sofa::core::objectmodel::BaseObject.
Definition at line 196 of file TriangularAnisotropicFEMForceField.cpp.
References sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::_topology, sofa::component::forcefield::TriangularFEMForceField< DataTypes >::draw(), sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::fiberDirRefs, sofa::core::objectmodel::BaseObject::getContext(), sofa::core::componentmodel::topology::BaseMeshTopology::getNbTriangles(), sofa::core::componentmodel::topology::BaseMeshTopology::getTriangle(), sofa::core::objectmodel::Data< T >::getValue(), sofa::core::componentmodel::behavior::MechanicalState< TDataTypes >::getX(), sofa::helper::gl::glVertexT(), sofa::core::componentmodel::behavior::ForceField< DataTypes >::mstate, and sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::showFiber.
| void sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::init | ( | void | ) | [inline, virtual] |
Initialization method called at graph modification, during bottom-up traversal.
Reimplemented from sofa::core::objectmodel::BaseObject.
Definition at line 107 of file TriangularAnisotropicFEMForceField.cpp.
References sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::_topology, sofa::core::objectmodel::BaseObject::getContext(), sofa::core::objectmodel::BaseContext::getMeshTopology(), and sofa::component::forcefield::TriangularFEMForceField< DataTypes >::init().
| void sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::reinit | ( | ) | [inline, virtual] |
Update method called when variables used in precomputation are modified.
Reimplemented from sofa::core::objectmodel::BaseObject.
Definition at line 116 of file TriangularAnisotropicFEMForceField.cpp.
References sofa::component::forcefield::TriangularFEMForceField< DataTypes >::f_poisson, sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::f_poisson2, sofa::component::forcefield::TriangularFEMForceField< DataTypes >::f_young, sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::f_young2, sofa::core::objectmodel::Data< T >::getValue(), sofa::component::forcefield::TriangularFEMForceField< DataTypes >::reinit(), and sofa::core::objectmodel::Data< T >::setValue().
| void sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::TRQSTriangleCreationFunction | ( | int | triangleIndex, | |
| void * | param, | |||
| TriangleInformation & | , | |||
| const Triangle & | , | |||
| const sofa::helper::vector< unsigned int > & | , | |||
| const sofa::helper::vector< double > & | ||||
| ) | [inline, static] |
Reimplemented from sofa::component::forcefield::TriangularFEMForceField< DataTypes >.
Definition at line 77 of file TriangularAnisotropicFEMForceField.cpp.
References sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::_topology, sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::computeMaterialStiffness(), sofa::core::componentmodel::topology::BaseMeshTopology::getTriangle(), sofa::component::forcefield::TriangularFEMForceField< DataTypes >::initLarge(), sofa::component::forcefield::TriangularFEMForceField< DataTypes >::initSmall(), sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::LARGE, sofa::component::forcefield::TriangularFEMForceField< DataTypes >::method, and sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::SMALL.
| sofa::core::componentmodel::topology::BaseMeshTopology* sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::_topology |
Reimplemented from sofa::component::forcefield::TriangularFEMForceField< DataTypes >.
Definition at line 95 of file TriangularAnisotropicFEMForceField.h.
Referenced by sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::draw(), sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::init(), and sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::TRQSTriangleCreationFunction().
| Data<VecCoord> sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::f_fiberCenter |
Definition at line 90 of file TriangularAnisotropicFEMForceField.h.
Referenced by sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::computeMaterialStiffness().
| Data<Real> sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::f_poisson2 |
| Data<Real> sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::f_theta |
Definition at line 89 of file TriangularAnisotropicFEMForceField.h.
Referenced by sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::computeMaterialStiffness().
| Data<Real> sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::f_young2 |
| VecDeriv sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::fiberDirRefs |
const int sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::LARGE = 0 [static] |
Symbol of large displacements triangle solver.
Reimplemented from sofa::component::forcefield::TriangularFEMForceField< DataTypes >.
Definition at line 78 of file TriangularAnisotropicFEMForceField.h.
Referenced by sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::TRQSTriangleCreationFunction().
| Data<bool> sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::showFiber |
Definition at line 91 of file TriangularAnisotropicFEMForceField.h.
Referenced by sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::draw().
const int sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::SMALL = 1 [static] |
Symbol of small displacements triangle solver.
Reimplemented from sofa::component::forcefield::TriangularFEMForceField< DataTypes >.
Definition at line 77 of file TriangularAnisotropicFEMForceField.h.
Referenced by sofa::component::forcefield::TriangularAnisotropicFEMForceField< DataTypes >::TRQSTriangleCreationFunction().
1.5.7.1