Public Member Functions | List of all members
CrankNicolson Class Reference

Crank-Nicolson 2nd-order time-integrator for 6DoF solid-body motion. More...

Inheritance diagram for CrankNicolson:
Inheritance graph
[legend]
Collaboration diagram for CrankNicolson:
Collaboration graph
[legend]

Public Member Functions

 TypeName ("CrankNicolson")
 
 CrankNicolson (rigidBodyMotion &body, const dictionary &dict)
 
virtual ~CrankNicolson ()
 
virtual void solve (const scalarField &tau, const Field< spatialVector > &fx)
 
- Public Member Functions inherited from rigidBodySolver
 TypeName ("rigidBodySolver")
 
 declareRunTimeSelectionTable (autoPtr, rigidBodySolver, dictionary,(rigidBodyMotion &body, const dictionary &dict),(body, dict))
 
 rigidBodySolver (rigidBodyMotion &body)
 
virtual ~rigidBodySolver ()
 

Additional Inherited Members

- Static Public Member Functions inherited from rigidBodySolver
static autoPtr< rigidBodySolverNew (rigidBodyMotion &body, const dictionary &dict)
 
- Protected Member Functions inherited from rigidBodySolver
rigidBodyModelStatestate ()
 
scalarFieldq ()
 
scalarFieldqDot ()
 
scalarFieldqDdot ()
 
scalar deltaT () const
 
const rigidBodyModelStatestate0 () const
 
const scalarFieldq0 () const
 
const scalarFieldqDot0 () const
 
const scalarFieldqDdot0 () const
 
scalar deltaT0 () const
 
void correctQuaternionJoints ()
 
- Protected Attributes inherited from rigidBodySolver
rigidBodyMotionmodel_
 

Detailed Description

Crank-Nicolson 2nd-order time-integrator for 6DoF solid-body motion.

The off-centering coefficients for acceleration (velocity integration) and velocity (position/orientation integration) may be specified but default values of 0.5 for each are used if they are not specified. With the default off-centering this scheme is equivalent to the Newmark scheme with default coefficients.

Example specification in dynamicMeshDict:

solver
{
    type    CrankNicolson;
    aoc     0.5;    // Acceleration off-centering coefficient
    voc     0.5;    // Velocity off-centering coefficient
}
See also
Foam::RBD::rigidBodySolvers::Newmark
Source files

Definition at line 69 of file CrankNicolson.H.

Constructor & Destructor Documentation

◆ CrankNicolson()

CrankNicolson ( rigidBodyMotion body,
const dictionary dict 
)

Definition at line 43 of file CrankNicolson.C.

◆ ~CrankNicolson()

~CrankNicolson ( )
virtual

Definition at line 56 of file CrankNicolson.C.

Member Function Documentation

◆ TypeName()

TypeName ( "CrankNicolson"  )

◆ solve()

void solve ( const scalarField tau,
const Field< spatialVector > &  fx 
)
virtual

Implements rigidBodySolver.

Definition at line 63 of file CrankNicolson.C.


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