FhSim  3.1.0
Marine systems simulation
Loading...
Searching...
No Matches
TrawlDoorWarpControl.h
1#pragma once
2
81#include "ToTrawlDoor.h"
82
84{
85public:
86 TrawlDoorWarpControl(std::string simObjectName, ISimObjectCreator* creator);
87
89 void PreOdeFcn(const double T, const double* const X, IStateUpdater* const updater) override;
90
92 const double* OutControlLineTension(const double T, const double* const X);
93
94protected:
96 struct Crowfoot
97 {
98 double point_d[3];
99 double controlLineTension;
100 };
101
102 Crowfoot SolveCrowfoot(const double T, const double* const X) const;
103
105 void AddExternalForces(double T, const double* const X) override;
106
108 void CalcOutput(const double T, const double* const X) override;
109
114 ISignalPort* m_inControlLineLength;
115};
Definition ToTrawlDoor.h:114
Definition TrawlDoorWarpControl.h:84
void AddExternalForces(double T, const double *const X) override
Applies the warp force at the collecting point, the bridle forces as the base class.
void CalcOutput(const double T, const double *const X) override
The base class outputs, with Pos1 and Vel1 at the collecting point held for the step.
double m_controlLinePos_d[3]
Control line fastening point, door frame.
Definition TrawlDoorWarpControl.h:110
double m_warpBaseLineLength
Length of the base line from WarpPos [m].
Definition TrawlDoorWarpControl.h:111
void PreOdeFcn(const double T, const double *const X, IStateUpdater *const updater) override
Solves the collecting point that Pos1 and Vel1 use in this step.
double m_heldCollectingPoint_d[3]
Collecting point solved in PreOdeFcn, door frame.
Definition TrawlDoorWarpControl.h:112
const double * OutControlLineTension(const double T, const double *const X)
Output port returning the tension in the control line.
double m_outControlLineTension
Value of the ControlLineTension port.
Definition TrawlDoorWarpControl.h:113
The crowfoot at (T, X): the collecting point in the door frame and the control line tension.
Definition TrawlDoorWarpControl.h:97