x022.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <array>
4 #include <cmath>
5 #include <iomanip>
6 #include <iostream>
7 
8 namespace nmx::apps::x022 {
9 
14 class Motion
15 {
16 private:
17  // Masse, Beschleunigung
18  double _mass, _acceleration;
19  //Anfangsbedingungen
20  std::array<double, 2> _ivalues;
21 
22 public:
29  Motion(double m, double a, std::array<double, 2> init)
30  : _mass{ m }
31  , _acceleration{ a } {
32  _ivalues = init;
33  }
34 
40  double x(double t) const {
41  return _ivalues[0] + _ivalues[1] * t //
42  + 0.5 * +_acceleration * std::pow(t, 2);
43  }
44 
50  double v(double t) const { return _ivalues[1] + _acceleration * t; }
51 
56  double mass() const { return _mass; }
57 
62  double acceleration() const { return _acceleration; }
63 
69  double distance(double t) const { return x(t) - _ivalues[0]; }
70 
76  double vmean(double t) const { return distance(t) / t; }
77 
82  const auto &init_values() const { return _ivalues; }
83 }; //Motion
84 
85 } // namespace nmx::apps::x022
double acceleration() const
acceleration lese...
Definition: x022.h:62
The Motion class Geradlinige Bewegung mit konstanter Beschleunigung.
Definition: x022.h:14
const auto & init_values() const
init_values
Definition: x022.h:82
double v(double t) const
v Geschwindigkeit
Definition: x022.h:50
double mass() const
mass lese...
Definition: x022.h:56
double vmean(double t) const
vmean Berechnung der mittleren Geschwindigkeit
Definition: x022.h:76
double distance(double t) const
distance Berechnung der zurückgelegten Strecke
Definition: x022.h:69
Motion(double m, double a, std::array< double, 2 > init)
Motion Konstruktor.
Definition: x022.h:29
double x(double t) const
x Ortsfunktion
Definition: x022.h:40