FhSim  3.1.0
Marine systems simulation
Loading...
Searching...
No Matches
Netcage::CNetCage Class Reference
+ Inheritance diagram for Netcage::CNetCage:
+ Collaboration diagram for Netcage::CNetCage:

Public Member Functions

 CNetCage (const string &simobjectname, ISimObjectCreator *const creator)
 The constructor sets the pointer to the output object and the parser object.
 
 ~CNetCage ()
 The destructor cleans up.
 
const double * outSumHydDynForce (const double T, const double *const X)
 Calculates the state derivatives.
 
const double * outNodeSumForce (const double T, const double *const X)
 
const double * outNodeSumDragForceAbs (const double T, const double *const X)
 
const double * outNodeSumDragForceDirection (const double T, const double *const X)
 
const double * outNodeSumLiftForce (const double T, const double *const X)
 
const double * outBottomPosition (const double T, const double *const X)
 
const double * outSteadyStateEst_Tau (const double T, const double *const X)
 
const double * outSteadyStateEst_K (const double T, const double *const X)
 
const double * LowerMembranePosition (const double dT, const double *const adX)
 
virtual const double * InternalNodeForce (const double dT, const double *const adX, int iExtNode)
 
virtual const double * NodeForce (const double T, const double *const X, int iNode)
 
virtual void FinalSetup (const double dT, const double *const adX, ISimObjectCreator *const pCreator)
 
virtual void OdeFcn (const double dT, const double *const adX, double *const adXDot, const bool bIsMajorTimeStep)
 
void GetNodePositionIndices (std::vector< int > &NodePositions)
 
void GetNodeVelocityIndices (std::vector< int > &NodeVelocities)
 

Protected Member Functions

void DecomposeDragForcesInCurrentDirection (double *const DragForcesProjected, const double T, const double *const X)
 
void SteadyStateEstimator (const double T, const double *const X)
 
void SetExternalPos (const double dT, const double *const adX)
 
void SetExternalVel (const double dT, const double *const adX)
 
virtual void CreateDataStructures ()
 
virtual void AddInputPorts (ISimObjectCreator *pCreator)
 
virtual void CreateOutputPorts (ISimObjectCreator *pCreator)
 
virtual void CalcStateDerivatives (const double *const adX, double *const adXDot)
 
virtual double AddNodeBottomForce (const double *const adX, int iNode, double dDiam, double adForceInOut[3])
 
virtual void AddNetForces (const double dT, const double *const adX)
 
virtual void AddCableForces (const double dT, const double *const adX)
 

Protected Attributes

ISignalPort ** m_InExternalPos
 
ISignalPort ** m_InExternalVel
 
ISignalPort * m_MembraneDepth
 
double * m_NodeExternalPos
 
double * m_NodeExternalVel
 
double m_adNodeSumForce [3]
 
double m_adSumHydDynForce [3]
 
double m_dNodeSumDragForceAbs
 
double m_dNodeSumDragDirection
 
double m_dNodeSumLiftForce
 
double * m_adNodeHydDynForce
 
double * m_NodeInternalForces
 
int(* m_hasPosAndVelStates )[2]
 
int m_NumNodesInputPosAndVel
 
int m_NumNodesOutputForce
 
VSPairStrInt m_VsNodesInputPosAndVel
 
VSPairStrInt m_VsNodesOutputForce
 
Eigen::MatrixXd m_SSPhi
 
Eigen::MatrixXd m_SSY
 
double m_SS_Tau
 
double m_SS_K
 
double m_SSPrevT
 
int m_IsMembrane
 
int m_MembraneIsInSystem
 
double m_LowerMembraneDepth
 
std::string m_simobjectname
 

Member Function Documentation

◆ outSumHydDynForce()

const double * Netcage::CNetCage::outSumHydDynForce ( const double  T,
const double *const  X 
)

Output functions


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