#include <sph_integrator.h>
Public Types | |
typedef Types::real_type | real_type |
typedef Types::vector | vector |
typedef Types::particle | particle |
typedef Types::particle_container | particle_container |
typedef Types::collision_detection | collision_detection |
Public Member Functions | |
Integrator (const real_type ×tep=0.01, const real_type &restitution=0.) | |
virtual | ~Integrator () |
void | setCollisionSystem (collision_detection *colisys) |
void | initialize_particles (typename particle_container::iterator begin, typename particle_container::iterator end) const |
void | integrate_particles (typename particle_container::iterator begin, typename particle_container::iterator end) const |
virtual void | initialize (particle &) const |
virtual void | integrate (particle &par) const =0 |
Protected Attributes | |
real_type | m_dt |
real_type | m_dt2 |
timestep | |
real_type | m_invdt |
timestep squared | |
real_type | m_invdt2 |
inverse timestep | |
real_type | m_r |
inverse timestep squared | |
collision_detection * | m_colisys |
restitution |
SPH Compute Base Class.
typedef Types::collision_detection OpenTissue::sph::Integrator< Types >::collision_detection |
Reimplemented in OpenTissue::sph::Euler< Types >, OpenTissue::sph::LeapFrog< Types >, and OpenTissue::sph::Verlet< Types >.
typedef Types::particle OpenTissue::sph::Integrator< Types >::particle |
Reimplemented in OpenTissue::sph::Euler< Types >, OpenTissue::sph::LeapFrog< Types >, and OpenTissue::sph::Verlet< Types >.
typedef Types::particle_container OpenTissue::sph::Integrator< Types >::particle_container |
Reimplemented in OpenTissue::sph::Euler< Types >, OpenTissue::sph::LeapFrog< Types >, and OpenTissue::sph::Verlet< Types >.
typedef Types::real_type OpenTissue::sph::Integrator< Types >::real_type |
Reimplemented in OpenTissue::sph::Euler< Types >, OpenTissue::sph::LeapFrog< Types >, and OpenTissue::sph::Verlet< Types >.
typedef Types::vector OpenTissue::sph::Integrator< Types >::vector |
Reimplemented in OpenTissue::sph::Euler< Types >, OpenTissue::sph::LeapFrog< Types >, and OpenTissue::sph::Verlet< Types >.
OpenTissue::sph::Integrator< Types >::Integrator | ( | const real_type & | timestep = 0.01 , |
|
const real_type & | restitution = 0. | |||
) | [inline] |
Default Constructor.
virtual OpenTissue::sph::Integrator< Types >::~Integrator | ( | ) | [inline, virtual] |
Deconstructor.
virtual void OpenTissue::sph::Integrator< Types >::initialize | ( | particle & | ) | const [inline, virtual] |
void OpenTissue::sph::Integrator< Types >::initialize_particles | ( | typename particle_container::iterator | begin, | |
typename particle_container::iterator | end | |||
) | const [inline] |
Initialize particles (optional)
particles | all particles to undergo initialization. |
virtual void OpenTissue::sph::Integrator< Types >::integrate | ( | particle & | par | ) | const [pure virtual] |
void OpenTissue::sph::Integrator< Types >::integrate_particles | ( | typename particle_container::iterator | begin, | |
typename particle_container::iterator | end | |||
) | const [inline] |
Integrate particles (mandatory)
particles | all particles to undergo numerical integration. |
void OpenTissue::sph::Integrator< Types >::setCollisionSystem | ( | collision_detection * | colisys | ) | [inline] |
Integrate (mandatory)
particles | all particles to undergo numerical integration. |
collision_detection* OpenTissue::sph::Integrator< Types >::m_colisys [protected] |
restitution
real_type OpenTissue::sph::Integrator< Types >::m_dt [protected] |
real_type OpenTissue::sph::Integrator< Types >::m_dt2 [protected] |
timestep
real_type OpenTissue::sph::Integrator< Types >::m_invdt [protected] |
timestep squared
real_type OpenTissue::sph::Integrator< Types >::m_invdt2 [protected] |
inverse timestep
real_type OpenTissue::sph::Integrator< Types >::m_r [protected] |
inverse timestep squared