25 const std::vector<double>& f,
const std::vector<double>& p,
const std::vector<double>&
a,
26 const std::vector<double>& o)
32 for (
size_t i = 0; i <
f_m.size(); i++) {
33 const auto f =
f_m[i];
46 const auto angle = 2.0 *
Physics::pi * f * time + p;
47 result +=
a / 2.0 * std::sin(angle) + o;
58 os << std::scientific;
60 for (
size_t i = 0; i < this->
f_m.size(); i++) {
67 for (
size_t i = 0; i < this->
p_m.size(); i++) {
74 for (
size_t i = 0; i < this->
a_m.size(); i++) {
81 for (
size_t i = 0; i < this->
o_m.size(); i++) {
Inform & endl(Inform &inf)
constexpr double pi
The value of.
SinusoidalTimeDependence(const std::vector< double > &f, const std::vector< double > &p, const std::vector< double > &a, const std::vector< double > &o)
std::vector< double > f_m
SinusoidalTimeDependence * clone() override
Inform & print(Inform &os) const
std::vector< double > a_m
std::vector< double > o_m
SinusoidalTimeDependence()=default
double getValue(double time) override
std::vector< double > p_m
std::ios_base::fmtflags FmtFlags_t