Marine systems simulation
RbCable::CRing Class Reference
+ Inheritance diagram for RbCable::CRing:
+ Collaboration diagram for RbCable::CRing:

Classes

struct  element
 

Public Member Functions

 CRing (const string &simObjectName, ISimObjectCreator *const creator)
 reads parameters, registers states, output and intput ports.
 
void OdeFcn (const double T, const double *const X, double *const XDot, const bool bIsMajorTimeStep)
 
void InitialConditionSetup (const double T, const double *const currentIC, double *const updatedIC, ISimObjectCreator *const creator)
 
virtual void GetExternalForces (const double T, const double *const X, double *m_extlForce, int index)
 get the external forces at element 'index'. Should be overridden by inheriting classes to get forces from their specific connectors More...
 
void calculations (const double T, const double *const X)
 
virtual const double * outConnectorPos (const double T, const double *const X, const int index)
 
virtual const double * outConnectorVel (const double T, const double *const X, const int index)
 

Protected Types

typedef Eigen::Matrix< double, 3, 3 > mat3
 
typedef Eigen::Matrix< double, 3, 1 > vec3
 

Protected Attributes

int m_numElements
 
double m_totalLength
 
double m_radius
 
double m_weight
 
double m_length
 
double m_mass
 
double m_Ixy
 
double m_Iz
 
double m_C_isAddMassHack
 
double m_AddMassHack
 
double m_alphaN
 
double m_betaN
 
double m_epsilonN
 
double m_alphaM
 
double m_betaM
 
double m_epsilonM
 
double m_alphaT
 
double m_betaT
 
double m_epsilonT
 
double m_centrePosInit [3]
 Parameter for describing the initial position of the centre of the ring (not an IC since there is no corresponding state)
 
double m_rho
 
double m_surfacePosZ
 
double m_rhoWater
 
double m_Ct
 
double m_Cn
 
double m_bouyFactor
 
bool m_additionalConnectors
 flag for additional connectors along cable
 
int m_numConnectors
 number of additional connectors, if any
 
int m_numInputsPerConnector
 number of force inputs per connector position (used for multiple attachments at same point)
 
int m_ElementsPerConnector
 number of elements between connectors
 
ISignalPort ** m_aIIForce
 Array of indices to connector forces in input vector.
 
double m_extlForce [3]
 Array for holding current value of external force at a given node.
 
double ** m_aadConnectorPos
 Local array for storing output positions.
 
double ** m_aadConnectorVel
 Local array for storing output velocities.
 
double m_bending_epsilon [3]
 
elementm_el
 
ICommonComputation * m_calcDynamics
 
Eigen::Matrix< double, Eigen::Dynamic, 1 > m_lambda
 
Eigen::Matrix< double, Eigen::Dynamic, 1 > m_F_MDotV
 
double m_forceA [3]
 
double m_forceB [3]
 

Member Function Documentation

◆ GetExternalForces()

virtual void RbCable::CRing::GetExternalForces ( const double  T,
const double *const  X,
double *  m_extlForce,
int  index 
)
virtual

Reimplemented in Netcage::CFlexibleBottomRing.


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