FhSim  3.1.0
Marine systems simulation
Loading...
Searching...
No Matches
DoorAndClumpWakeBodies.h
1#pragma once
2
8#include <fhsim_environment/BodyWake.h>
9#include <fhsim_environment/WakeSourceSet.h>
10
11class ISimObjectCreator;
12
13namespace CoRiBoDynamics
14{
15class EnvironmentForces;
16
27environment::wake::BodyWakeSettings ReadDoorAndClumpWakeSettings(ISimObjectCreator* creator);
28
45class DoorAndClumpWakeBodies : public environment::wake::IndexedWakeCastingObject
46{
47public:
50
52 int NumBodies() const override;
54 environment::wake::WakeCastState Body(const double* X, int body) const override;
56 double BodyRadius(int body) const override;
65 environment::wake::SourceLoad BodyLoad(const double* X, int body, const double bodyVel[3], const double waterVel[3]) const override;
66
67private:
69 int ElementIndex(int body) const;
70
71 EnvironmentForces& m_forces;
72};
73
74} // namespace CoRiBoDynamics
Definition DoorAndClumpWakeBodies.h:46
DoorAndClumpWakeBodies(EnvironmentForces &forces)
environment::wake::WakeCastState Body(const double *X, int body) const override
The centre and velocity of the body's element [m], [m/s], NED.
int NumBodies() const override
The number of doors plus the number of clump weights.
double BodyRadius(int body) const override
√(L·W/π) for a door, √(2rL/π) for a clump weight [m].
environment::wake::SourceLoad BodyLoad(const double *X, int body, const double bodyVel[3], const double waterVel[3]) const override
Definition TrawlCableConstraintSets.h:133