OpenFOAM
10
The OpenFOAM Foundation
Pa.H
Go to the documentation of this file.
1
/*---------------------------------------------------------------------------*\
2
========= |
3
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4
\\ / O peration | Website: https://openfoam.org
5
\\ / A nd | Copyright (C) 2016-2020 OpenFOAM Foundation
6
\\/ M anipulation |
7
-------------------------------------------------------------------------------
8
License
9
This file is part of OpenFOAM.
10
11
OpenFOAM is free software: you can redistribute it and/or modify it
12
under the terms of the GNU General Public License as published by
13
the Free Software Foundation, either version 3 of the License, or
14
(at your option) any later version.
15
16
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
19
for more details.
20
21
You should have received a copy of the GNU General Public License
22
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
23
24
Class
25
Foam::RBD::joints::Pa
26
27
Description
28
Prismatic joint for translation along the specified arbitrary axis.
29
30
Reference:
31
\verbatim
32
Featherstone, R. (2008).
33
Rigid body dynamics algorithms.
34
Springer.
35
Chapter 4.
36
\endverbatim
37
38
SourceFiles
39
Pa.C
40
41
\*---------------------------------------------------------------------------*/
42
43
#ifndef RBD_joints_Pa_H
44
#define RBD_joints_Pa_H
45
46
#include "
joint.H
"
47
48
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
49
50
namespace
Foam
51
{
52
namespace
RBD
53
{
54
namespace
joints
55
{
56
57
/*---------------------------------------------------------------------------*\
58
Class Pa Declaration
59
\*---------------------------------------------------------------------------*/
60
61
class
Pa
62
:
63
public
joint
64
{
65
66
public
:
67
68
//- Runtime type information
69
TypeName
(
"Pa"
);
70
71
72
// Constructors
73
74
//- Construct for given model and axis
75
Pa
(
const
rigidBodyModel
& model,
const
vector
& axis);
76
77
//- Construct for given model from dictionary
78
Pa
(
const
rigidBodyModel
& model,
const
dictionary
&
dict
);
79
80
//- Clone this joint
81
virtual
autoPtr<joint>
clone
()
const
;
82
83
84
//- Destructor
85
virtual
~Pa
();
86
87
88
// Member Functions
89
90
//- Update the model state for this joint
91
virtual
void
jcalc
92
(
93
joint::XSvc
& J,
94
const
rigidBodyModelState
& state
95
)
const
;
96
97
//- Write
98
virtual
void
write
(
Ostream
&)
const
;
99
};
100
101
102
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
103
104
}
// End namespace joints
105
}
// End namespace RBD
106
}
// End namespace Foam
107
108
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
109
110
#endif
111
112
// ************************************************************************* //
Foam::RBD::joints::Pa::~Pa
virtual ~Pa()
Destructor.
Definition:
Pa.C:78
Foam::RBD::joints::Pa::Pa
Pa(const rigidBodyModel &model, const vector &axis)
Construct for given model and axis.
Definition:
Pa.C:53
Foam::RBD::joint
Abstract base-class for all rigid-body joints.
Definition:
joint.H:80
Foam::RBD::joints::Pa
Prismatic joint for translation along the specified arbitrary axis.
Definition:
Pa.H:60
dict
dictionary dict
Definition:
searchingEngine.H:14
Foam::RBD::joints::Pa::jcalc
virtual void jcalc(joint::XSvc &J, const rigidBodyModelState &state) const
Update the model state for this joint.
Definition:
Pa.C:85
Foam::dictionary
A list of keyword definitions, which are a keyword followed by any number of values (e...
Definition:
dictionary.H:156
Foam::RBD::rigidBodyModelState
Holds the motion state of rigid-body model.
Definition:
rigidBodyModelState.H:65
Foam::RBD::joint::XSvc
Joint state returned by jcalc.
Definition:
joint.H:123
joint.H
Foam::RBD::joints::Pa::clone
virtual autoPtr< joint > clone() const
Clone this joint.
Definition:
Pa.C:70
Foam::RBD::joints::Pa::write
virtual void write(Ostream &) const
Write.
Definition:
Pa.C:97
Foam::Vector< scalar >
Foam::Ostream
An Ostream is an abstract base class for all output systems (streams, files, token lists...
Definition:
Ostream.H:54
Foam::autoPtr
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Definition:
PtrList.H:52
Foam::RBD::rigidBodyModel
Basic rigid-body model representing a system of rigid-bodies connected by 1-6 DoF joints...
Definition:
rigidBodyModel.H:76
Foam::RBD::joints::Pa::TypeName
TypeName("Pa")
Runtime type information.
Foam
Namespace for OpenFOAM.
Definition:
atmBoundaryLayer.H:213
src
rigidBodyDynamics
joints
Pa
Pa.H
Generated by
1.8.13