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

Public Member Functions

 CNorrbinTanker (std::string sSimObjectName, ISimObjectCreator *pCreator)
 The constructor sets the pointer to the output object and the parser object.
 
void FinalSetup (const double T, const double *const X, ISimObjectCreator *const creator)
 
void OdeFcn (const double dT, const double *const adX, double *const adXDot) const
 
bool HasJacobians () const override
 
void OdeJacobian (double simTime, const double *X, double *J, int nStates) override
 
int GetJacobianSparsity (int nStates, int *rowPtr, int *colIdx) override
 

Public Attributes

 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
 
Eigen::Matrix< double, 1, 9 > DWT
 
Eigen::Matrix< double, 1, 9 > DISPL
 
Eigen::Matrix< double, 1, 9 > Lpp
 
Eigen::Matrix< double, 1, 9 > B
 
Eigen::Matrix< double, 1, 9 > D
 
Eigen::Matrix< double, 1, 9 > TT
 
Eigen::Matrix< double, 1, 9 > U0
 
Eigen::Matrix< double, 1, 9 > RPM0
 
Eigen::Matrix< double, 1, 9 > T
 
Eigen::Matrix< double, 1, 9 > Xdu
 
Eigen::Matrix< double, 1, 9 > Xuu
 
Eigen::Matrix< double, 1, 9 > Xvr
 
Eigen::Matrix< double, 1, 9 > Xvv
 
Eigen::Matrix< double, 3, 9 > Xccdd
 
Eigen::Matrix< double, 1, 9 > Xccbd
 
Eigen::Matrix< double, 1, 9 > Xduz
 
Eigen::Matrix< double, 1, 9 > Xuuz
 
Eigen::Matrix< double, 1, 9 > Xvrz
 
Eigen::Matrix< double, 1, 9 > Xvvzz
 
Eigen::Matrix< double, 1, 9 > Ydv
 
Eigen::Matrix< double, 1, 9 > Yur
 
Eigen::Matrix< double, 1, 9 > Yuv
 
Eigen::Matrix< double, 1, 9 > Yvv
 
Eigen::Matrix< double, 3, 9 > Yccd
 
Eigen::Matrix< double, 1, 9 > Yccbbd
 
Eigen::Matrix< double, 1, 9 > Yt
 
Eigen::Matrix< double, 1, 9 > Ydvz
 
Eigen::Matrix< double, 1, 9 > Yurz
 
Eigen::Matrix< double, 1, 9 > Yuvz
 
Eigen::Matrix< double, 1, 9 > Yvvz
 
Eigen::Matrix< double, 1, 9 > Yccbbdz
 
Eigen::Matrix< double, 1, 9 > kk_Ndr
 
Eigen::Matrix< double, 1, 9 > Nur_xg
 
Eigen::Matrix< double, 1, 9 > Nuv
 
Eigen::Matrix< double, 1, 9 > Nvr
 
Eigen::Matrix< double, 3, 9 > Nccd
 
Eigen::Matrix< double, 1, 9 > Nccbbd
 
Eigen::Matrix< double, 1, 9 > Nt
 
Eigen::Matrix< double, 1, 9 > Ndrz
 
Eigen::Matrix< double, 1, 9 > Nurz
 
Eigen::Matrix< double, 1, 9 > Nuvz
 
Eigen::Matrix< double, 1, 9 > Nvrz
 
Eigen::Matrix< double, 1, 9 > Nccbbdz
 
Eigen::Matrix< double, 1, 9 > Tuu
 
Eigen::Matrix< double, 1, 9 > Tun
 
Eigen::Matrix< double, 1, 9 > Tnn
 
Eigen::Matrix< double, 1, 9 > Cun
 
Eigen::Matrix< double, 1, 9 > Cnn
 
Eigen::Matrix< double, 1, 9 > kk_Qn
 
Eigen::Matrix< double, 1, 9 > Qf
 
Eigen::Matrix< double, 1, 9 > Quu
 
Eigen::Matrix< double, 1, 9 > Qun
 
Eigen::Matrix< double, 1, 9 > Qnn
 
Eigen::Matrix< double, 1, 9 > Qn
 
Eigen::Matrix< double, 1, 9 > Qmu
 
unsigned int m_tankerType
 
unsigned int m_rudderType
 
ISignalPort * m_pInForce
 A pointer to the input force.
 
ISignalPort * m_pInTorque
 A pointer to the input force.
 
environment::EnvironmentProvider * m_Environment
 

Static Public Attributes

static double * tanker_CX
 
static double * tanker_CY
 
static double * tanker_CN
 
static double * tanker_CK
 

Protected Member Functions

int LocalIndex (int globalStateIndex) const
 
virtual const double * Position (const double dT, const double *const adX)
 
virtual const double * Velocity (const double dT, const double *const adX)
 
virtual const double * Rotation (const double dT, const double *const adX)
 
virtual const double * Omega (const double dT, const double *const adX)
 
double comp_beta (double u, double v) const
 
double comp_c (double u, double n) const
 
double comp_ndot (double u, double n, double my) const
 
double compute_gT (double u, double n) const
 
double rudder_gln (double beta, double c, double delta, double z) const
 
double rudder_gy (double beta, double c, double delta, double z) const
 
double rudder_gx (double beta, double c, double delta) const
 
double comp_Yuv (double z) const
 
double comp_m11 (double z) const
 
double comp_m22 (double z) const
 
double comp_m33 (double z) const
 
double nlin_N (double u, double v, double r, double z) const
 
double nlin_Y (double u, double v, double r, double z) const
 
double nlin_X (double u, double v, double r, double z) const
 

Protected Attributes

int m_indexStateRPM
 
int m_indexStateDelta
 
int m_indexStateVelocity
 
int m_indexStateOmega
 
int m_indexStateRotation
 
int m_indexStatePosition
 
double m_rhoWater
 
ISignalPort * m_InEngineControl
 
ISignalPort * m_InRudderControl
 

Member Function Documentation

◆ LocalIndex()

int CNorrbinTanker::LocalIndex ( int  globalStateIndex) const
inlineprotected

Turns a model-global state index into one local to this SimObject.

OdeFcn and the port functions are handed the whole model's state vector, so they use the global indices AddState returned directly. OdeJacobian is handed this object's own slice, whose first element is Position, so every index it uses goes through this function (BASE-0033).


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