FhSim  3.1.0
Marine systems simulation
Loading...
Searching...
No Matches
TrawlDoorAddedFoil.h
1#pragma once
63#include "ToTrawlDoor.h"
64
66{
67public:
69 TrawlDoorAddedFoil(std::string simObjectName, ISimObjectCreator* creator);
70 virtual ~TrawlDoorAddedFoil();
71
73 virtual void OdeFcn(const double dT, const double* const adX, double* const adXDot) const;
74
75 void FinalSetup(const double dT, const double* const adX, ISimObjectCreator* const creator);
76
78 const double* OutFoilEnergyConsumed(const double dT, const double* const adX);
79
80
81#ifdef FH_VISUALIZATION
82 // Initial specification of the simObject geometry for rendering.
83 virtual void RenderInit(Ogre::Root* const ogreRoot, ISimObjectCreator* const creator);
84
85 // Updating the simObject for rendering the next frame.
86 virtual void RenderUpdate(const double dT, const double* const adX);
87#endif
88
89protected:
90 virtual void AddExternalForces(double dT, const double* const adX);
91 void SetFoilRatio(const double dT, const double* const adX);
92
93 ISignalPort* m_inFoilRelAoa;
94 ISignalPort* m_inFoilExposedAreaRatio;
95 ISignalPort* m_inFoilRelPosition;
96
97 double* m_foilHydro_Aoa;
98 double* m_foilHydro_CL;
99 double* m_foilHydro_CD;
100 double m_foilEnergyConsumed;
101 double m_foilCord;
102 double m_foilSpan;
103 int m_numFoilHydroPoints;
104 bool m_foilIsVertical;
105
106#ifdef FH_VISUALIZATION
107 Ogre::Vector3 ToFoilScale(double x, double y, double z);
108 void SetFoilPos(double x, double y, double z);
109 float m_foilRelRollAngle;
110 Ogre::ManualObject* m_foilManualObject;
111 Ogre::SceneNode* m_foilRenderNode;
112#endif
113};
Definition ToTrawlDoor.h:116
Definition TrawlDoorAddedFoil.h:66
virtual void OdeFcn(const double dT, const double *const adX, double *const adXDot) const
Calculates the state derivatives.
const double * OutFoilEnergyConsumed(const double dT, const double *const adX)
Output port returning the foil energy consumption.
TrawlDoorAddedFoil(std::string simObjectName, ISimObjectCreator *creator)
The constructor sets the pointer to the output object and the parser object.