FhSim  3.1.0
Marine systems simulation
Loading...
Searching...
No Matches
environmentmodels::PorousDiscWakeSource Class Reference
+ Inheritance diagram for environmentmodels::PorousDiscWakeSource:
+ Collaboration diagram for environmentmodels::PorousDiscWakeSource:

Public Member Functions

 PorousDiscWakeSource (std::string SimObjectName, ISimObjectCreator *Creator)
 
void FinalSetup (double T, const double *X, ISimObjectCreator *Creator) override
 
void PreOdeFcn (double T, const double *X, IStateUpdater *updater) override
 
void OdeFcn (double T, const double *X, double *XDot) const override
 No state: nothing to integrate.
 

Constructor & Destructor Documentation

◆ PorousDiscWakeSource()

environmentmodels::PorousDiscWakeSource::PorousDiscWakeSource ( std::string  SimObjectName,
ISimObjectCreator *  Creator 
)

Reads and checks the parameters; widens the area above C_T = 0.96, logged (R125).

Parameters
[in]SimObjectNameUnique name; the wake field is registered under it.
[in]CreatorSupplies the parameters.
Exceptions
std::runtime_erroron an invalid or missing parameter, after reporting it.

Member Function Documentation

◆ FinalSetup()

void environmentmodels::PorousDiscWakeSource::FinalSetup ( double  T,
const double *  X,
ISimObjectCreator *  Creator 
)
override

Registers the wake field with the Environment under the SimObject name.

With a fixed FlowDirection the source is published here; a followed direction is published in PreOdeFcn, since no velocity may be queried in FinalSetup.

Parameters
[in]TSimulation time [s]: the time at which the source is at Position.
[in]XSimulation state; not used.
[in]CreatorSupplies the shared Environment resource.
Exceptions
std::runtime_errorif the shared Environment resource is missing.

◆ PreOdeFcn()

void environmentmodels::PorousDiscWakeSource::PreOdeFcn ( double  T,
const double *  X,
IStateUpdater *  updater 
)
override

Publishes a followed wake axis from the ambient current at the source.

Called once before every major time step. For a fixed FlowDirection the first call re-reads the seabed-image depth below the source and publishes the wake again, logged, when a bathymetry set after FinalSetup changed it (ENV-0056); later calls do nothing.

Parameters
[in]TSimulation time [s].
[in]XSimulation state; not used.
[in]updaterState updater; not used.

The documentation for this class was generated from the following file: