FhSim  3.1.0
Marine systems simulation
Loading...
Searching...
No Matches
TrawlVessel Class Reference

Class modelling a simple vessel used for the trawl optimization tool. More...

#include <TrawlVessel.h>

+ Inheritance diagram for TrawlVessel:
+ Collaboration diagram for TrawlVessel:

Public Member Functions

 TrawlVessel (std::string simObjectName, ISimObjectCreator *creator)
 
virtual void OdeFcn (const double dT, const double *const adX, double *const adXDot) const
 
Jacobian support for implicit integration

Complete analytical Jacobian for the 3-state vessel kinematics.

  • dXDot[pos+0]/dheading = -desiredSpeed * sin(heading)
  • dXDot[pos+1]/dheading = desiredSpeed * cos(heading)
  • dXDot[heading]/dheading = -apSpeed
bool HasJacobians () const override
 
void OdeJacobian (double T, const double *X, double *J, int nStates) override
 
int GetJacobianSparsity (int nStates, int *rowPtr, int *colIdx) override
 

Protected Member Functions

const double * OutHeading (const double dT, const double *const adX)
 Output ports.
 
const double * OutPos (const double dT, const double *const adX)
 
const double * OutVel (const double dT, const double *const adX)
 
const double * OutWarpPos (const double dT, const double *const adX, int warp)
 
const double * OutWarpVel (const double dT, const double *const adX, int warp)
 
void CalcOutput (const double dT, const double *const adX)
 
void CalcOutputCommon (const double dT, const double *const adX) const
 
virtual void DoDerivedOutputUpdate (const double dT, const double *const adX)
 

Protected Attributes

double m_apSpeed
 The speed of the autopilot.
 
double m_out_Pos [3]
 
double m_out_Vel [3]
 
double * m_out_WarpPos
 
double * m_out_WarpVel
 
ICommonComputation * m_commonCalc
 Calculations necessary for more than one output port.
 
int m_IStatePos
 
int m_IStateHeading
 
double m_Breadth
 
double m_Draught
 
double m_Length
 
double m_WarpPosPrt [3]
 
double m_WarpPosStb [3]
 
double m_pitch
 
double ** m_aadWarpPos
 
int m_numWarps
 
double m_desiredSpeed
 
double m_desiredHeading
 

Detailed Description

Author
Karl-Johan Reite

Member Function Documentation

◆ DoDerivedOutputUpdate()

virtual void TrawlVessel::DoDerivedOutputUpdate ( const double  dT,
const double *const  adX 
)
inlineprotectedvirtual

Reimplemented in VesselDeploy.

◆ OdeFcn()

virtual void TrawlVessel::OdeFcn ( const double  dT,
const double *const  adX,
double *const  adXDot 
) const
virtual

Reimplemented in VesselDeploy.


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