Marine systems simulation
CRBCEngine Class Reference

Class containing a Rigid Bar Cable (RBC) calculation engine. More...

#include <CRBCEngine.h>

Public Member Functions

 CRBCEngine (int nofBarElements, double dBarMass, double dLength, double dOmegaNL, double dOmegaN, double dZetaNL, double dZetaN, bool fixedFixed, double kei, double ked, double kep)
 The constructor. More...
 
 ~CRBCEngine ()
 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 *bDotDot, double *rDotDot)
 Get functions are based on the last StateUpdate call. More...
 
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)
 

Detailed Description

Author
Nina A H Madsen

Constructor & Destructor Documentation

◆ CRBCEngine()

CRBCEngine::CRBCEngine ( int  nofBarElements,
double  dBarMass,
double  dLength,
double  dOmegaNL,
double  dOmegaN,
double  dZetaNL,
double  dZetaN,
bool  fixedFixed,
double  kei,
double  ked,
double  kep 
)
Parameters
nofBarElementsThe number of bar elements in the cable
dBarMassThe mass of one bar of the cable.
dLengthLength of a bar
dOmegaNLThe natural frequency, length constrain
dOmegaNThe natural frequency, node constrain
dZetaNLRelative damping ratio, length constrain
dZetaNRelative damping ratio, node constrain
fixedFixedIs the model fixated in both cable ends
keiParameter for FixedFixed
kedParameter for FixedFixed
kepParameter for FixedFixed

Member Function Documentation

◆ GetAccelerations()

bool CRBCEngine::GetAccelerations ( double *  bDotDot,
double *  rDotDot 
)

(dim: 3N

◆ GetInitialStates()

bool CRBCEngine::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
posAPosition A (dim:3)
posBPosition B (dim:3)
velAVelocity A (dim:3)
velBVelocity B (dim:3)
vecBState vector B (dim:3N) where N is the number of bar elements in the cable
vecRState vector R (dim:3N)
vecBdotState vector B time derived(dim:3N)
vecRdotState vector R time derived (dim:3N)
endNodeSumState vector EndNodeSum (dim:3)

◆ StateUpdate()

bool CRBCEngine::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))
dTtime

The documentation for this class was generated from the following file: