Class containing a Rigid Bar Cable (RBC) calculation engine.
More...
#include <RBCEngine.h>
|
| | RBCEngine (int nofBarElements, double barMass, double length, double omegaNL, double omegaN, double zetaNL, double zetaN, bool fixedFixed, double kei, double ked, double kep) |
| | The constructor.
|
| |
|
| ~RBCEngine () |
| | The destructor cleans up dynamically allocated memory.
|
| |
| bool | GetInitialStates (const double *const posA, const double *const posB, const double *const velA, const double *const velB, double *vecB, double *vecR, double *vecBdot, double *vecRdot, double *endNodeSum) |
| |
| bool | StateUpdate (const double *const posA, const double *const posB, const double *const velA, const double *const velB, const double *const vecB, const double *const vecR, const double *const vecBdot, const double *const vecRdot, const double *const endNodeSum, double *addedMass, double *nodeForces, const double dT) |
| |
| bool | GetAccelerations (double *dotDot, double *rDotDot) |
| | Get functions are based on the last StateUpdate call.
|
| |
|
bool | GetEndForces (double *forceA, double *forceB) |
| | (dim: 3)
|
| |
|
bool | GetNodePositions (double *nodePosition) |
| | (dim: 3(N+1))
|
| |
|
bool | GetNodeVelocities (double *nodeVelocities) |
| | (dim: 3(N+1))
|
| |
|
bool | GetEndNodeSum (double *endNodeSum) |
| | (dim: 3)
|
| |
◆ RBCEngine()
| RBCEngine::RBCEngine |
( |
int |
nofBarElements, |
|
|
double |
barMass, |
|
|
double |
length, |
|
|
double |
omegaNL, |
|
|
double |
omegaN, |
|
|
double |
zetaNL, |
|
|
double |
zetaN, |
|
|
bool |
fixedFixed, |
|
|
double |
kei, |
|
|
double |
ked, |
|
|
double |
kep |
|
) |
| |
- Parameters
-
| nofBarElements | The number of bar elements in the cable |
| barMass | The mass of one bar of the cable. |
| length | Length of a bar |
| omegaNL | The natural frequency, length constrain |
| omegaN | The natural frequency, node constrain |
| zetaNL | Relative damping ratio, length constrain |
| zetaN | Relative damping ratio, node constrain |
| fixedFixed | Is the model fixated in both cable ends |
| kei | Parameter for FixedFixed |
| ked | Parameter for FixedFixed |
| kep | Parameter for FixedFixed |
◆ GetAccelerations()
| bool RBCEngine::GetAccelerations |
( |
double * |
dotDot, |
|
|
double * |
rDotDot |
|
) |
| |
◆ GetInitialStates()
| bool RBCEngine::GetInitialStates |
( |
const double *const |
posA, |
|
|
const double *const |
posB, |
|
|
const double *const |
velA, |
|
|
const double *const |
velB, |
|
|
double * |
vecB, |
|
|
double * |
vecR, |
|
|
double * |
vecBdot, |
|
|
double * |
vecRdot, |
|
|
double * |
endNodeSum |
|
) |
| |
- Parameters
-
| posA | Position A (dim:3) |
| posB | Position B (dim:3) |
| velA | Velocity A (dim:3) |
| velB | Velocity B (dim:3) |
| vecB | State vector B (dim:3N) where N is the number of bar elements in the cable |
| vecR | State vector R (dim:3N) |
| vecBdot | State vector B time derived(dim:3N) |
| vecRdot | State vector R time derived (dim:3N) |
| endNodeSum | State vector EndNodeSum (dim:3) |
◆ StateUpdate()
| bool RBCEngine::StateUpdate |
( |
const double *const |
posA, |
|
|
const double *const |
posB, |
|
|
const double *const |
velA, |
|
|
const double *const |
velB, |
|
|
const double *const |
vecB, |
|
|
const double *const |
vecR, |
|
|
const double *const |
vecBdot, |
|
|
const double *const |
vecRdot, |
|
|
const double *const |
endNodeSum, |
|
|
double * |
addedMass, |
|
|
double * |
nodeForces, |
|
|
const double |
dT |
|
) |
| |
StateUpdate is to be called when the next time step is happening
- Parameters
-
| posA | (dim: 3) |
| posB | (dim: 3) |
| velA | (dim: 3) |
| velB | (dim: 3) |
| vecB | (dim: 3N) |
| vecR | (dim: 3N) |
| vecBdot | (dim: 3N) |
| vecRdot | (dim: 3N) |
| endNodeSum | (dim: 3) |
| addedMass | (dim: 3N) |
| nodeForces | (dim: 6N)) |
| dT | time |
The documentation for this class was generated from the following file:
- /update_root/webfhsim/reloadrepos/fhsim_marine_elements/src/cable/subroutines/RBCEngine.h