#include <LeapFrogIntegrator.h>

Public Member Functions | |
| LeapFrogIntegrator () | |
| LeapFrogIntegrator (const LeapFrogIntegrator &) | |
| LeapFrogIntegrator * | Clone () |
| Clone Constructor. | |
| ~LeapFrogIntegrator () | |
| bool | PerformsInitialMove () |
| bool | PerformsFinalMove () |
| void | SetNumberOfIterations (const int) |
| void | FinalMove (glotz_vec &, glotz_vec &, const glotz_vec &) |
| void | FinalMove (glotz_vec &, glotz_quat &, glotz_3mat &, const glotz_vec &, const glotz_vec &) |
| void | FinalMove (glotz_vec &, glotz_quat &, glotz_3mat &, const glotz_vec &, const glotz_vec &, const bool) |
Protected Member Functions | |
| void | SetTimestep (const glotz_flt) |
Private Member Functions | |
| void | OmelyanIteration (glotz_vec &, const glotz_vec &, const glotz_vec &) |
| void | OmelyanIterationLinear (glotz_vec &, const glotz_vec &, const glotz_vec &) |
| void | AdvanceQuaternion (glotz_quat &, const glotz_vec &) |
Private Attributes | |
| glotz_flt | mTimestepSq |
| glotz_flt | mHalfTimestep |
| glotz_flt | mQuarterTimestepSq |
| int | mIterations |
| glotz_4mat | mImatrix |
| glotz_4mat | mGmatrix |
| glotz_4mat | mQmatrix |
| glotzmd::LeapFrogIntegrator::LeapFrogIntegrator | ( | ) |
| glotzmd::LeapFrogIntegrator::LeapFrogIntegrator | ( | const LeapFrogIntegrator & | rhs | ) |
| glotzmd::LeapFrogIntegrator::~LeapFrogIntegrator | ( | ) | [inline] |
| LeapFrogIntegrator * glotzmd::LeapFrogIntegrator::Clone | ( | ) | [virtual] |
| bool glotzmd::LeapFrogIntegrator::PerformsInitialMove | ( | ) | [virtual] |
Implements glotzmd::IntegrationScheme.
| bool glotzmd::LeapFrogIntegrator::PerformsFinalMove | ( | ) | [virtual] |
Implements glotzmd::IntegrationScheme.
| void glotzmd::LeapFrogIntegrator::SetNumberOfIterations | ( | const | int | ) |
| void glotzmd::LeapFrogIntegrator::FinalMove | ( | glotz_vec & | f, | |
| glotz_vec & | fprime, | |||
| const glotz_vec & | f2prime | |||
| ) | [inline, virtual] |
| f | is any variable (i.e. a position vector) | |
| fprime | is first derivative of f with respect to time (i.e. a velocity vector) | |
| f2prime | is the second derivative of f with respect to time (i.e. an accelerator vector) |
Reimplemented from glotzmd::IntegrationScheme.
| void glotzmd::LeapFrogIntegrator::FinalMove | ( | glotz_vec & | omega, | |
| glotz_quat & | q, | |||
| glotz_3mat & | rmatrix, | |||
| const glotz_vec & | tau, | |||
| const glotz_vec & | inertia | |||
| ) | [virtual] |
| omega | is the space frame angular velocity | |
| q | is the object quaternion | |
| rmatrix | is the rotation matrix corresponding to q | |
| tau | is the space frame torque around the center of mass | |
| inertia | is the principle moment of inertia vector |
Reimplemented from glotzmd::IntegrationScheme.
| void glotzmd::LeapFrogIntegrator::FinalMove | ( | glotz_vec & | omega, | |
| glotz_quat & | q, | |||
| glotz_3mat & | rmatrix, | |||
| const glotz_vec & | tau, | |||
| const glotz_vec & | inertia, | |||
| const | bool | |||
| ) | [virtual] |
| omega | is the space frame angular velocity | |
| q | is the object quaternion | |
| rmatrix | is the rotation matrix corresponding to q | |
| tau | is the space frame torque around the center of mass | |
| inertia | is the principle moment of inertia vector | |
| flag | indicates that there is a zero-valued principle moment |
Reimplemented from glotzmd::IntegrationScheme.
| void glotzmd::LeapFrogIntegrator::SetTimestep | ( | const | glotz_flt | ) | [protected, virtual] |
| sets | mTimestep equal to timestep Initializes mHalfTimestep and mQuarterTimestepSq. |
Implements glotzmd::IntegrationScheme.
| void glotzmd::LeapFrogIntegrator::OmelyanIteration | ( | glotz_vec & | W, | |
| const glotz_vec & | K, | |||
| const glotz_vec & | J | |||
| ) | [private] |
| void glotzmd::LeapFrogIntegrator::OmelyanIterationLinear | ( | glotz_vec & | W, | |
| const glotz_vec & | K, | |||
| const glotz_vec & | J | |||
| ) | [private] |
| void glotzmd::LeapFrogIntegrator::AdvanceQuaternion | ( | glotz_quat & | q, | |
| const glotz_vec & | W | |||
| ) | [private] |
| q | quaternion from previous timestep | |
| W | updated body-fixed angular velocity The transformation matrix for q is a skew symmetric matrix formed from W. |
glotz_flt glotzmd::LeapFrogIntegrator::mTimestepSq [private] |
glotz_flt glotzmd::LeapFrogIntegrator::mHalfTimestep [private] |
glotz_flt glotzmd::LeapFrogIntegrator::mQuarterTimestepSq [private] |
int glotzmd::LeapFrogIntegrator::mIterations [private] |
1.5.3