Base class for defining restraints for rigid-body dynamics. More...
#include <rigidBodyRestraint.H>


Public Member Functions | |
| TypeName ("restraint") | |
| Runtime type information. | |
| declareRunTimeSelectionTable (autoPtr, restraint, dictionary,(const word &name, const dictionary &dict, const rigidBodyModel &model),(name, dict, model)) | |
| restraint (const word &name, const dictionary &dict, const rigidBodyModel &model) | |
| Construct from the dict dictionary and Time. | |
| virtual autoPtr< restraint > | clone () const =0 |
| Construct and return a clone. | |
| virtual | ~restraint () |
| Destructor. | |
| const word & | name () const |
| Return the name. | |
| label | bodyID () const |
| virtual void | restrain (scalarField &tau, Field< spatialVector > &fx, const rigidBodyModelState &state) const =0 |
| Accumulate the restraint internal joint forces into the tau field and. | |
| virtual bool | read (const dictionary &dict) |
| Update properties from given dictionary. | |
| const dictionary & | coeffDict () const |
| Return access to coeffs. | |
| virtual void | write (Ostream &) const =0 |
| Write. | |
Static Public Member Functions | |
| static autoPtr< restraint > | New (const word &name, const dictionary &dict, const rigidBodyModel &model) |
| Select constructed from the dict dictionary and Time. | |
Protected Member Functions | |
| point | bodyPoint (const point &p) const |
| Transform the given point on the restrained body to the global frame. | |
| spatialVector | bodyPointVelocity (const point &p) const |
| Transform the velocity of the given point on the restrained body. | |
Protected Attributes | |
| word | name_ |
| Name of the restraint. | |
| label | bodyID_ |
| ID of the body the restraint is applied to. | |
| label | bodyIndex_ |
| Index of the body the force is applied to. | |
| dictionary | coeffs_ |
| Restraint model specific coefficient dictionary. | |
| const rigidBodyModel & | model_ |
| Reference to the model. | |
Base class for defining restraints for rigid-body dynamics.
Definition at line 65 of file rigidBodyRestraint.H.
| restraint | ( | const word & | name, |
| const dictionary & | dict, | ||
| const rigidBodyModel & | model ) |
Construct from the dict dictionary and Time.
Definition at line 38 of file rigidBodyRestraint.C.
References bodyID(), bodyID_, bodyIndex_, coeffs_, dict, model_, name(), and name_.
Referenced by declareRunTimeSelectionTable(), externalForce::externalForce(), linearAxialAngularSpring::linearAxialAngularSpring(), linearDamper::linearDamper(), linearSpring::linearSpring(), prescribedRotation::prescribedRotation(), softWall::softWall(), and sphericalAngularDamper::sphericalAngularDamper().


|
virtual |
Destructor.
Definition at line 55 of file rigidBodyRestraint.C.
|
inlineprotected |
Transform the given point on the restrained body to the global frame.
Definition at line 25 of file rigidBodyRestraintI.H.
References bodyID_, model_, p, and Foam::Zero.
Referenced by linearSpring::restrain(), and softWall::restrain().

|
inlineprotected |
Transform the velocity of the given point on the restrained body.
to the global frame
Definition at line 34 of file rigidBodyRestraintI.H.
References bodyID_, model_, and p.
Referenced by linearSpring::restrain(), and softWall::restrain().

| TypeName | ( | "restraint" | ) |
Runtime type information.
| declareRunTimeSelectionTable | ( | autoPtr | , |
| restraint | , | ||
| dictionary | , | ||
| (const word &name, const dictionary &dict, const rigidBodyModel &model) | , | ||
| (name, dict, model) | ) |
Construct and return a clone.
Implemented in externalForce, linearAxialAngularSpring, linearDamper, linearSpring, prescribedRotation, softWall, and sphericalAngularDamper.

|
static |
Select constructed from the dict dictionary and Time.
Definition at line 27 of file rigidBodyRestraintNew.C.
References dict, Foam::exit(), Foam::FatalIOError, FatalIOErrorInLookup, and name().

|
inline |
Return the name.
Definition at line 176 of file rigidBodyRestraint.H.
References name_.
Referenced by clone(), declareRunTimeSelectionTable(), externalForce::externalForce(), linearAxialAngularSpring::linearAxialAngularSpring(), linearDamper::linearDamper(), linearSpring::linearSpring(), New(), prescribedRotation::prescribedRotation(), restraint(), softWall::softWall(), sphericalAngularDamper::sphericalAngularDamper(), externalForce::TypeName(), linearAxialAngularSpring::TypeName(), linearDamper::TypeName(), linearSpring::TypeName(), prescribedRotation::TypeName(), softWall::TypeName(), and sphericalAngularDamper::TypeName().

|
inline |
Definition at line 181 of file rigidBodyRestraint.H.
References bodyID_.
Referenced by restraint().

|
pure virtual |
Accumulate the restraint internal joint forces into the tau field and.
external forces into the fx field
Implemented in externalForce, linearAxialAngularSpring, linearDamper, linearSpring, prescribedRotation, softWall, and sphericalAngularDamper.
References dict.
|
virtual |
Update properties from given dictionary.
Reimplemented in externalForce, linearAxialAngularSpring, linearDamper, linearSpring, prescribedRotation, softWall, and sphericalAngularDamper.
Definition at line 67 of file rigidBodyRestraint.C.
Referenced by externalForce::read(), linearAxialAngularSpring::read(), linearDamper::read(), linearSpring::read(), prescribedRotation::read(), softWall::read(), and sphericalAngularDamper::read().

| const Foam::dictionary & coeffDict | ( | ) | const |
|
pure virtual |
Write.
Implemented in externalForce, linearAxialAngularSpring, linearDamper, linearSpring, prescribedRotation, softWall, and sphericalAngularDamper.
Definition at line 74 of file rigidBodyRestraint.C.
References bodyID_, model_, os(), and Foam::type().
Referenced by externalForce::write(), linearAxialAngularSpring::write(), linearDamper::write(), linearSpring::write(), prescribedRotation::write(), softWall::write(), and sphericalAngularDamper::write().


|
protected |
Name of the restraint.
Definition at line 75 of file rigidBodyRestraint.H.
Referenced by name(), and restraint().
|
protected |
ID of the body the restraint is applied to.
Definition at line 80 of file rigidBodyRestraint.H.
Referenced by bodyID(), bodyPoint(), bodyPointVelocity(), linearAxialAngularSpring::restrain(), linearDamper::restrain(), prescribedRotation::restrain(), softWall::restrain(), sphericalAngularDamper::restrain(), restraint(), and write().
|
protected |
Index of the body the force is applied to.
Definition at line 85 of file rigidBodyRestraint.H.
Referenced by externalForce::restrain(), linearAxialAngularSpring::restrain(), linearDamper::restrain(), linearSpring::restrain(), prescribedRotation::restrain(), softWall::restrain(), sphericalAngularDamper::restrain(), and restraint().
|
protected |
Restraint model specific coefficient dictionary.
Definition at line 90 of file rigidBodyRestraint.H.
Referenced by coeffDict(), read(), externalForce::read(), linearAxialAngularSpring::read(), linearDamper::read(), linearSpring::read(), prescribedRotation::read(), softWall::read(), sphericalAngularDamper::read(), and restraint().
|
protected |
Reference to the model.
Definition at line 95 of file rigidBodyRestraint.H.
Referenced by bodyPoint(), bodyPointVelocity(), externalForce::read(), prescribedRotation::read(), externalForce::restrain(), linearAxialAngularSpring::restrain(), linearDamper::restrain(), linearSpring::restrain(), prescribedRotation::restrain(), softWall::restrain(), sphericalAngularDamper::restrain(), restraint(), and write().