Symplectic 2nd-order explicit time-integrator for rigid-body motion. More...
Public Member Functions | |
TypeName ("symplectic") | |
symplectic (rigidBodyMotion &body, const dictionary &dict) | |
virtual | ~symplectic () |
virtual void | solve (const scalarField &tau, const Field< spatialVector > &fx) |
![]() | |
TypeName ("rigidBodySolver") | |
declareRunTimeSelectionTable (autoPtr, rigidBodySolver, dictionary,(rigidBodyMotion &body, const dictionary &dict),(body, dict)) | |
rigidBodySolver (rigidBodyMotion &body) | |
virtual | ~rigidBodySolver () |
Additional Inherited Members | |
![]() | |
static autoPtr< rigidBodySolver > | New (rigidBodyMotion &body, const dictionary &dict) |
![]() | |
rigidBodyModelState & | state () |
scalarField & | q () |
scalarField & | qDot () |
scalarField & | qDdot () |
scalar | deltaT () const |
const rigidBodyModelState & | state0 () const |
const scalarField & | q0 () const |
const scalarField & | qDot0 () const |
const scalarField & | qDdot0 () const |
scalar | deltaT0 () const |
void | correctQuaternionJoints () |
![]() | |
rigidBodyMotion & | model_ |
Symplectic 2nd-order explicit time-integrator for rigid-body motion.
Dullweber, A., Leimkuhler, B., & McLachlan, R. (1997). Symplectic splitting methods for rigid body molecular dynamics. The Journal of chemical physics, 107(15), 5840-5851.
Can only be used for explicit integration of the motion of the body, i.e. may only be called once per time-step, no outer-correctors may be applied. For implicit integration with outer-correctors choose either CrankNicolson or Newmark schemes.
Example specification in dynamicMeshDict:
solver { type symplectic; }
Definition at line 74 of file symplectic.H.
symplectic | ( | rigidBodyMotion & | body, |
const dictionary & | dict | ||
) |
Definition at line 42 of file symplectic.C.
|
virtual |
Definition at line 53 of file symplectic.C.
TypeName | ( | "symplectic" | ) |
|
virtual |
Implements rigidBodySolver.
Definition at line 60 of file symplectic.C.
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.