rigidBodySolverI.H
Go to the documentation of this file.
1 /*---------------------------------------------------------------------------*\
2  ========= |
3  \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4  \\ / O peration |
5  \\ / A nd | www.openfoam.com
6  \\/ M anipulation |
7 -------------------------------------------------------------------------------
8  Copyright (C) 2016 OpenFOAM Foundation
9 -------------------------------------------------------------------------------
10 License
11  This file is part of OpenFOAM.
12 
13  OpenFOAM is free software: you can redistribute it and/or modify it
14  under the terms of the GNU General Public License as published by
15  the Free Software Foundation, either version 3 of the License, or
16  (at your option) any later version.
17 
18  OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
19  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20  FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21  for more details.
22 
23  You should have received a copy of the GNU General Public License
24  along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
25 
26 \*---------------------------------------------------------------------------*/
27 
28 // * * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * //
29 
31 {
32  return model_.motionState_;
33 }
34 
35 
37 {
38  return state().q();
39 }
40 
41 
43 {
44  return state().qDot();
45 }
46 
47 
49 {
50  return state().qDdot();
51 }
52 
53 
54 inline Foam::scalar Foam::RBD::rigidBodySolver::deltaT() const
55 {
56  return model_.motionState_.deltaT();
57 }
58 
59 
62 {
63  return model_.motionState0_;
64 }
65 
67 {
68  return state0().q();
69 }
70 
71 
73 {
74  return state0().qDot();
75 }
76 
77 
79 {
80  return state0().qDdot();
81 }
82 
83 
84 inline Foam::scalar Foam::RBD::rigidBodySolver::deltaT0() const
85 {
86  return model_.motionState0_.deltaT();
87 }
88 
89 
90 // ************************************************************************* //
Foam::RBD::rigidBodyModelState
Holds the motion state of rigid-body model.
Definition: rigidBodyModelState.H:67
Foam::RBD::rigidBodySolver::qDdot
scalarField & qDdot()
Return the current joint acceleration.
Definition: rigidBodySolverI.H:48
Foam::RBD::rigidBodySolver::state0
const rigidBodyModelState & state0() const
Return the previous motion state.
Definition: rigidBodySolverI.H:61
Foam::Field< scalar >
Foam::RBD::rigidBodySolver::q0
const scalarField & q0() const
Return the current joint position and orientation.
Definition: rigidBodySolverI.H:66
Foam::RBD::rigidBodySolver::qDot
scalarField & qDot()
Return the current joint quaternion.
Definition: rigidBodySolverI.H:42
Foam::RBD::rigidBodySolver::deltaT
scalar deltaT() const
Return the current time-step.
Definition: rigidBodySolverI.H:54
Foam::RBD::rigidBodySolver::deltaT0
scalar deltaT0() const
Return the previous time-step.
Definition: rigidBodySolverI.H:84
Foam::RBD::rigidBodySolver::q
scalarField & q()
Return the current joint position and orientation.
Definition: rigidBodySolverI.H:36
Foam::RBD::rigidBodySolver::qDot0
const scalarField & qDot0() const
Return the current joint quaternion.
Definition: rigidBodySolverI.H:72
Foam::RBD::rigidBodySolver::model_
rigidBodyMotion & model_
The rigid-body model.
Definition: rigidBodySolver.H:60
Foam::RBD::rigidBodySolver::qDdot0
const scalarField & qDdot0() const
Return the current joint acceleration.
Definition: rigidBodySolverI.H:78
Foam::RBD::rigidBodySolver::state
rigidBodyModelState & state()
Return the motion state.
Definition: rigidBodySolverI.H:30