78#include <fhsim_environment/WakeSourceSet.h>
79#include <marenv/wake/WakeTypes.h>
121 double SourceArea(
const double* ,
int )
const override {
return 0.0; }
123 SourceLoad
EvaluateSource(
const double* X,
int source,
const double sourceVel[3],
const double waterVel[3])
const override;
128 const WakeCastingObject& m_object;
129 WakeCastState m_reference;
130 mutable double m_frontalArea = 0.0;
131 mutable double m_rearCentre[3] = {0.0, 0.0, 0.0};
Definition SingleBodySource.h:102
int NumSources() const override
One source.
Definition SingleBodySource.h:117
double FrontalExtent(const double *X, const marenv::wake::WakeFrame &frame, double rearCentre[3]) const override
The frontal area [m²] and rear centre of the last EvaluateSource.
void CarrierVelocity(const double *X, int carrier, double vel[3]) const override
The reference velocity [m/s], NED.
void CarrierPosition(const double *X, int carrier, double pos[3]) const override
The reference position [m], NED.
SingleBodySource(const WakeCastingObject &object, const WakeCastState &reference)
double SourceArea(const double *, int) const override
0: the one source weighs 1 in the frame means whatever its area, which CurrentLoad gives only later i...
Definition SingleBodySource.h:121
int SourceCarriers(int source, int carriers[3]) const override
The source sits on carrier 0.
SourceLoad EvaluateSource(const double *X, int source, const double sourceVel[3], const double waterVel[3]) const override
The force only (WakeCastingObject::CurrentLoad along ê_U): there is no private source.
int NumCarriers() const override
One carrier.
Definition SingleBodySource.h:111
The casters behind BodyWake; internal, not for SimObjects (ENV-0102).
Definition CasterStep.h:19
bool IsFiniteReference(const WakeCastState &reference)
Definition WakeTypes.h:70