FhSim  3.1.0
Marine systems simulation
Loading...
Searching...
No Matches
TestNetcageWake.h
1#pragma once
2
3#include <fhsim/simobject/SimObject.h>
4#include <memory>
5#include <string>
6
7namespace environment
8{
9class EnvironmentProvider;
10class NetCageWakeField;
11} // namespace environment
12
13namespace testmodels
14{
15
38class TestNetcageWake : public SimObject
39{
40public:
46 TestNetcageWake(std::string SimObjectName, ISimObjectCreator* Creator);
47
49 void FinalSetup(const double T, const double* const X, ISimObjectCreator* Creator) override;
50
52 void OdeFcn(double T, const double* X, double* XDot) const override
53 {
54 static_cast<void>(T);
55 static_cast<void>(X);
56 static_cast<void>(XDot);
57 }
58private:
60 environment::EnvironmentProvider* m_pEnvironment;
62 std::shared_ptr<environment::NetCageWakeField> m_pWakeField;
63
65 double m_fullWakeDepth;
67 double m_fullWakeDiameter;
69 double m_initialBoundaryLayer;
71 double m_maxDeficit;
73 double m_pos[3] = {0.0, 0.0, 0.0};
75 double m_wakeAngle;
77 double m_deficitCutoff;
78};
79
80} // namespace testmodels
Definition TestNetcageWake.h:39
void OdeFcn(double T, const double *X, double *XDot) const override
ODE function (empty for static wake field).
Definition TestNetcageWake.h:52
void FinalSetup(const double T, const double *const X, ISimObjectCreator *Creator) override
Final setup - register wake field with Environment.
TestNetcageWake(std::string SimObjectName, ISimObjectCreator *Creator)
SimObjects for testing environment functionality.
Definition TestBuoy1.h:17