1#ifndef PolyplateEnvironmentForces_h
2#define PolyplateEnvironmentForces_h
5#include "PolyplateSpec.h"
7#include <fhsim_environment/EnvironmentProvider.h>
8#include <marenv/marenv.h>
16void SplitPolygon(
int n,
const std::vector<double>& x,
const std::vector<double>& y, std::vector<double>& xOut, std::vector<double>& yOut,
int& n1,
int& n2,
double ax,
double ay,
double a);
18vec6 CalcHydroforcesPolyplate(
const vec6& dX,
const vec3& r,
const quat& q, environment::EnvironmentProvider* environment,
double time,
const double* states,
const PolyplateSpec& plateSpec,
double waterDensity =
marenv::seawaterDensity);
20vec6 CalcBuoyancyPolyplate(
const vec3& r,
const quat& q, environment::EnvironmentProvider* environment,
double time,
const PolyplateSpec& plateSpec,
double waterDensity =
marenv::seawaterDensity);
21vec6 CalcSoilforcesPolyplate(
const vec6& dX,
const vec3& r,
const quat& q, environment::EnvironmentProvider* environment,
double time,
const double* states,
const PolyplateSpec& plateSpec);
constexpr double seawaterDensity
Ocean water density.
Definition marenv.h:20