Base class for defining restraints for sixDoF motions. More...
Public Member Functions | |
TypeName ("sixDoFRigidBodyMotionRestraint") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, sixDoFRigidBodyMotionRestraint, dictionary,(const word &name, const dictionary &sDoFRBMRDict),(name, sDoFRBMRDict)) | |
sixDoFRigidBodyMotionRestraint (const word &name, const dictionary &sDoFRBMRDict) | |
Construct from the sDoFRBMRDict dictionary and Time. More... | |
virtual autoPtr< sixDoFRigidBodyMotionRestraint > | clone () const =0 |
Construct and return a clone. More... | |
virtual | ~sixDoFRigidBodyMotionRestraint () |
Destructor. More... | |
const word & | name () const |
Return the name. More... | |
virtual void | restrain (const sixDoFRigidBodyMotion &motion, vector &restraintPosition, vector &restraintForce, vector &restraintMoment) const =0 |
Calculate the restraint position, force and moment. More... | |
virtual bool | read (const dictionary &sDoFRBMRDict) |
Update properties from given dictionary. More... | |
const dictionary & | coeffDict () const |
virtual void | write (Ostream &) const =0 |
Write. More... | |
Static Public Member Functions | |
static autoPtr< sixDoFRigidBodyMotionRestraint > | New (const word &name, const dictionary &sDoFRBMRDict) |
Select constructed from the sDoFRBMRDict dictionary and Time. More... | |
Protected Attributes | |
word | name_ |
Name of the restraint. More... | |
dictionary | sDoFRBMRCoeffs_ |
Restraint model specific coefficient dictionary. More... | |
Base class for defining restraints for sixDoF motions.
Definition at line 64 of file sixDoFRigidBodyMotionRestraint.H.
sixDoFRigidBodyMotionRestraint | ( | const word & | name, |
const dictionary & | sDoFRBMRDict | ||
) |
Construct from the sDoFRBMRDict dictionary and Time.
Definition at line 40 of file sixDoFRigidBodyMotionRestraint.C.
|
virtual |
Destructor.
Definition at line 52 of file sixDoFRigidBodyMotionRestraint.C.
References sixDoFRigidBodyMotionRestraint::read().
TypeName | ( | "sixDoFRigidBodyMotionRestraint" | ) |
Runtime type information.
declareRunTimeSelectionTable | ( | autoPtr | , |
sixDoFRigidBodyMotionRestraint | , | ||
dictionary | , | ||
(const word &name, const dictionary &sDoFRBMRDict) | , | ||
(name, sDoFRBMRDict) | |||
) |
|
pure virtual |
Construct and return a clone.
Implemented in axialAngularSpring, linearSpring, linearAxialAngularSpring, sphericalAngularSpring, linearDamper, and sphericalAngularDamper.
|
static |
Select constructed from the sDoFRBMRDict dictionary and Time.
Definition at line 32 of file sixDoFRigidBodyMotionRestraintNew.C.
References Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, dictionary::lookup(), Foam::name(), and Foam::nl.
Referenced by sixDoFRigidBodyMotion::addRestraints().
|
inline |
Return the name.
Definition at line 126 of file sixDoFRigidBodyMotionRestraint.H.
References sixDoFRigidBodyMotionRestraint::name_, sixDoFRigidBodyMotionRestraint::read(), and sixDoFRigidBodyMotionRestraint::restrain().
|
pure virtual |
Calculate the restraint position, force and moment.
Global reference frame vectors.
Implemented in axialAngularSpring, linearSpring, linearAxialAngularSpring, sphericalAngularSpring, linearDamper, and sphericalAngularDamper.
Referenced by sixDoFRigidBodyMotionRestraint::name().
|
virtual |
Update properties from given dictionary.
Reimplemented in axialAngularSpring, linearSpring, linearAxialAngularSpring, sphericalAngularSpring, linearDamper, and sphericalAngularDamper.
Definition at line 59 of file sixDoFRigidBodyMotionRestraint.C.
Referenced by sixDoFRigidBodyMotionRestraint::name(), sphericalAngularDamper::read(), linearDamper::read(), sphericalAngularSpring::read(), linearAxialAngularSpring::read(), linearSpring::read(), axialAngularSpring::read(), and sixDoFRigidBodyMotionRestraint::~sixDoFRigidBodyMotionRestraint().
|
inline |
Definition at line 147 of file sixDoFRigidBodyMotionRestraint.H.
References sixDoFRigidBodyMotionRestraint::sDoFRBMRCoeffs_, and sixDoFRigidBodyMotionRestraint::write().
|
pure virtual |
Write.
Implemented in axialAngularSpring, linearSpring, linearAxialAngularSpring, sphericalAngularSpring, linearDamper, and sphericalAngularDamper.
Referenced by sixDoFRigidBodyMotionRestraint::coeffDict().
|
protected |
Name of the restraint.
Definition at line 72 of file sixDoFRigidBodyMotionRestraint.H.
Referenced by sixDoFRigidBodyMotionRestraint::name().
|
protected |
Restraint model specific coefficient dictionary.
Definition at line 75 of file sixDoFRigidBodyMotionRestraint.H.
Referenced by sixDoFRigidBodyMotionRestraint::coeffDict().