6#include <marenv/AtomicSharedPtr.h>
7#include <marenv/marenv.h>
8#include <marenv/wake/WakeField.h>
74 NetCageWakeField(
const double pos[3],
double fullWakeDepth,
double fullWakeDiameter,
double wakeAngle,
double initialBoundaryLayer,
double maxDeficit,
double deficitCutoff,
AmbientCurrentFunction ambientCurrent);
99 using Position = std::array<double, 3>;
106 double MaxDeficitBehindB(
double x)
const;
115 double DeficitInCageFrame(
double x,
double y,
double z)
const;
119 double m_radiusFullWakeA;
120 double m_wakeTangentX;
121 double m_tanWakeAngle;
122 double m_radiusNoWakeA;
123 double m_radiusNoWakeB;
Definition NetCageWakeField.h:47
NetCageWakeField(const double pos[3], double fullWakeDepth, double fullWakeDiameter, double wakeAngle, double initialBoundaryLayer, double maxDeficit, double deficitCutoff, AmbientCurrentFunction ambientCurrent)
void SetPosition(const double pos[3])
marenv::Status Sample(double time, const double pos[3], marenv::wake::WakeSample &out) const override
std::function< marenv::Status(double time, const double pos[3], double vel[3])> AmbientCurrentFunction
Definition NetCageWakeField.h:54
Definition AtomicSharedPtr.h:19
Definition WakeField.h:56
Status
Definition marenv.h:44
Definition WakeTypes.h:21