sofa::component::odesolver::EulerKaapiSolver Class Reference

The simplest time integration. More...

#include <EulerKaapiSolver.h>

Inheritance diagram for sofa::component::odesolver::EulerKaapiSolver:

Inheritance graph
[legend]
Collaboration diagram for sofa::component::odesolver::EulerKaapiSolver:

Collaboration graph
[legend]

Public Member Functions

 EulerKaapiSolver ()
void solve (double dt)
void computeAcc (double t, VecId a, VecId x, VecId v)
void v_free (VecId v)
void v_clear (VecId v)
 v=0
VecId v_alloc (VecId::Type t)
void propagatePositionAndVelocity (double t, VecId x, VecId v)
void computeForce (VecId result)
void accFromF (VecId a, VecId f)
void projectResponse (VecId dx, double **W=NULL)
void v_peq (VecId v, VecId a, double f)
 v+=f*a

Data Fields

DataField< bool > symplectic

Detailed Description

The simplest time integration.

Two variants are available, depending on the value of field "symplectic". If true (the default), the symplectic variant of Euler's method is applied: If false, the basic Euler's method is applied (less robust)

Definition at line 45 of file EulerKaapiSolver.h.


Constructor & Destructor Documentation

sofa::component::odesolver::EulerKaapiSolver::EulerKaapiSolver (  ) 

Definition at line 65 of file EulerKaapiSolver.cpp.


Member Function Documentation

void sofa::component::odesolver::EulerKaapiSolver::accFromF ( VecId  a,
VecId  f 
)

Definition at line 106 of file EulerKaapiSolver.cpp.

Referenced by computeAcc().

void sofa::component::odesolver::EulerKaapiSolver::computeAcc ( double  t,
VecId  a,
VecId  x,
VecId  v 
)

Definition at line 124 of file EulerKaapiSolver.cpp.

References accFromF(), computeForce(), force, projectResponse(), and propagatePositionAndVelocity().

Referenced by solve().

void sofa::component::odesolver::EulerKaapiSolver::computeForce ( VecId  result  ) 

Definition at line 116 of file EulerKaapiSolver.cpp.

Referenced by computeAcc().

void sofa::component::odesolver::EulerKaapiSolver::projectResponse ( VecId  dx,
double **  W = NULL 
)

Definition at line 99 of file EulerKaapiSolver.cpp.

Referenced by computeAcc().

void sofa::component::odesolver::EulerKaapiSolver::propagatePositionAndVelocity ( double  t,
VecId  x,
VecId  v 
)

Definition at line 111 of file EulerKaapiSolver.cpp.

Referenced by computeAcc().

void sofa::component::odesolver::EulerKaapiSolver::solve ( double  dt  ) 

EulerKaapiSolver::VecId sofa::component::odesolver::EulerKaapiSolver::v_alloc ( VecId::Type  t  ) 

Definition at line 74 of file EulerKaapiSolver.cpp.

void sofa::component::odesolver::EulerKaapiSolver::v_clear ( VecId  v  ) 

v=0

Parameters:
v  v=0

Definition at line 80 of file EulerKaapiSolver.cpp.

void sofa::component::odesolver::EulerKaapiSolver::v_free ( VecId  v  ) 

Definition at line 85 of file EulerKaapiSolver.cpp.

void sofa::component::odesolver::EulerKaapiSolver::v_peq ( VecId  v,
VecId  a,
double  f 
)

v+=f*a

Parameters:
f  v+=f*a

Definition at line 93 of file EulerKaapiSolver.cpp.


Field Documentation

Definition at line 51 of file EulerKaapiSolver.h.

Referenced by solve().


The documentation for this class was generated from the following files:

Generated on Sun Nov 23 04:21:19 2008 for Sofa by  doxygen 1.5.7.1