|
|
using | Dof = std::array< double, 3 > |
| | Three generalized loads or coordinates: (heave, roll, pitch) or (surge, sway, yaw).
|
| |
|
using | Loads = std::array< double, 6 > |
| | Generalized loads on the six modes, ordered surge, sway, heave, roll, pitch, yaw [N, N m].
|
| |
|
|
| WaveHull (std::string simObjectName, ISimObjectCreator *creator) |
| |
|
void | FinalSetup (double T, const double *X, ISimObjectCreator *creator) override |
| |
|
void | OdeFcn (double T, const double *X, double *XDot) const override |
| |
|
bool | HasJacobians () const override |
| |
|
void | OdeJacobian (double T, const double *X, double *J, int nStates) override |
| |
|
int | GetJacobianSparsity (int, int *, int *) override |
| |
|
Dof | RawWaveLoads (double T, const double *pose) const |
| | Unfiltered wave loads (Fz, Mphi, Mtheta) at time T for the hull at pose (N, E, psi).
|
| |
|
const double * | MotionPort (double T, const double *X) |
| |
|
const double * | MotionRatePort (double T, const double *X) |
| |
|
const double * | ExcitationPort (double T, const double *X) |
| |
|
const double * | VelocityPort (double T, const double *X) |
| |
|
const double * | PositionPort (double T, const double *X) |
| |
|
const double * | RotationPort (double T, const double *X) |
| |
|
| virtual Loads | ExtraLoads (double, const double *, const Dof &) const |
| |
| virtual std::array< Dof, 6 > | ExtraLoadsVelocityJacobian (const Dof &) const |
| |
| virtual std::array< double, 3 > | WaterVelocity (double, const double *) const |
| |
| virtual std::array< double, 3 > | HeldWaterVelocity () const |
| | The water velocity of the step [m/s], NED, which OdeJacobian holds fixed. The base: still water.
|
| |
|
Dof | VelocityThroughWater (double T, const double *X) const |
| | (u, v, r) through the water at time T for the model-global state X.
|
| |
|
Dof | HullDamping (const Dof &velocity) const |
| | The hull's damping X(u), Y(v), N(r) at the velocity through the water velocity (u, v, r), resisting it.
|
| |
|
double | Length () const |
| |
|
double | Breadth () const |
| |
|
double | Lcf () const |
| |
|
double | Draught () const |
| |
|
double | Rho () const |
| |
|
int | MotionIndex () const |
| |
|
int | RateIndex () const |
| |
|
int | PoseIndex () const |
| |
|
int | VelocityIndex () const |
| |
|
|
static Dof | InBodyFrame (const std::array< double, 3 > &water, double psi) |
| | The water velocity water (NED) in the body frame of heading psi: (u_c, v_c, 0).
|
| |
◆ ExtraLoads()
| virtual Loads WaveHull::ExtraLoads |
( |
double |
, |
|
|
const double * |
, |
|
|
const Dof & |
|
|
) |
| const |
|
inlineprotectedvirtual |
Loads a derived model adds, at time T, for the model-global state X and the hull velocity velocity (u, v, r). The base adds none.
Reimplemented in WavePropulsionHull.
◆ ExtraLoadsVelocityJacobian()
| virtual std::array< Dof, 6 > WaveHull::ExtraLoadsVelocityJacobian |
( |
const Dof & |
| ) |
const |
|
inlineprotectedvirtual |
d(ExtraLoads)/d(u, v, r), one row per load, with the derived model's inputs held fixed. Called from OdeJacobian, which has no model-global state; the base adds none.
Reimplemented in WavePropulsionHull.
◆ HeldWaterVelocity()
| virtual std::array< double, 3 > WaveHull::HeldWaterVelocity |
( |
| ) |
const |
|
inlineprotectedvirtual |
◆ WaterVelocity()
| virtual std::array< double, 3 > WaveHull::WaterVelocity |
( |
double |
, |
|
|
const double * |
|
|
) |
| const |
|
inlineprotectedvirtual |
The water velocity at the hull at time T for the model-global state X [m/s], NED: the hull's damping and a derived model's loads take the velocity through the water (MARE-0371). The base: still water.
Reimplemented in WavePropulsionHull.
The documentation for this class was generated from the following file:
- webfhsim/reloadrepos/fhsim_marine_elements/src/vessel/WaveHull.h