Marine systems simulation
TurningCircleManeuver.h
1#pragma once
2
13#include "ControlAlgorithm.h"
14
15
16namespace Ship{
18 {
19 public:
20 TurningCircleManeuver(const string& simObjectName, ISimObjectCreator* const creator);
21 void OdeFcn(const double T, const double* const X, double* const XDot, const bool bIsMajorTimeStep);
22 void FinalSetup(const double T,const double* const X, ISimObjectCreator* const creator);
23 const double* RudderAngle(const double T, const double* const X);
24
25 private:
26 ISignalPort* Omega;
27 int m_YawIndex;
28
29 double m_dMAX_RUDDERANGLE;
30 double m_dTimeOfExecute;
31 double m_dRudderangle;
32 double m_dInitialHeading;
33 double output;
34 int m_iDirectionOfTurning;
35 string m_sDirectionOfTurning;
36
37 int numberOfTurns;
38
39 #ifdef FH_VISUALIZATION
40 void RenderInit(Ogre::Root* const ogreRoot, ISimObjectCreator* const creator);
41 void RenderUpdate(const double T, const double* const X);
42 #endif
43
44 };
45}
Definition: ControlAlgorithm.h:22
Definition: TurningCircleManeuver.h:18
TurningCircleManeuver(const string &simObjectName, ISimObjectCreator *const creator)
Reads parameters, registers states, input/output ports and shared resources.
const double * RudderAngle(const double T, const double *const X)
Returns the angle of the rudder.
void OdeFcn(const double T, const double *const X, double *const XDot, const bool bIsMajorTimeStep)
returns object derivatives as a function of time, states and input ports
Simple waypoint object.
Definition: CableAttach.h:16