16 static double OrbitalPeriod(
double semiMajorAxis,
double centralMass);
26 m_orbitalPhaseAtStart(0.0),
27 m_velocityAreaPerSecond(0.0),
36 assert(!std::isnan(m_orient[0]) && !std::isnan(m_orient[1]) && !std::isnan(m_orient[2]));
37 assert(!std::isnan(m_orient[3]) && !std::isnan(m_orient[4]) && !std::isnan(m_orient[5]));
38 assert(!std::isnan(m_orient[6]) && !std::isnan(m_orient[7]) && !std::isnan(m_orient[8]));
40 void SetPhase(
double orbitalPhaseAtStart) { m_orbitalPhaseAtStart = orbitalPhaseAtStart; }
60 double TrueAnomalyFromMeanAnomaly(
double MeanAnomaly)
const;
61 double MeanAnomalyFromTrueAnomaly(
double trueAnomaly)
const;
62 double MeanAnomalyAtTime(
double time)
const;
65 double m_eccentricity;
66 double m_semiMajorAxis;
67 double m_orbitalPhaseAtStart;
69 double m_velocityAreaPerSecond;
static double OrbitalPeriodTwoBody(double semiMajorAxis, double totalMass, double bodyMass)
Definition: Orbit.cpp:18
double OrbitalTimeAtPos(const vector3d &pos, double centralMass) const
Definition: Orbit.cpp:176
const matrix3x3d & GetPlane() const
Definition: Orbit.h:57
Orbit()
Definition: Orbit.h:23
static Orbit ForStaticBody(const vector3d &position)
Definition: Orbit.cpp:303
vector3d Perigeum() const
Definition: Orbit.cpp:280
double Period() const
Definition: Orbit.cpp:261
vector3d OrbitalVelocityAtTime(double totalMass, double t) const
Definition: Orbit.cpp:215
double GetOrbitalPhaseAtStart() const
Definition: Orbit.h:56
vector3d EvenSpacedPosTrajectory(double t, double timeOffset=0) const
Definition: Orbit.cpp:235
vector3d Apogeum() const
Definition: Orbit.cpp:271
void SetPhase(double orbitalPhaseAtStart)
Definition: Orbit.h:40
vector3d OrbitalPosAtTime(double t) const
Definition: Orbit.cpp:168
void SetShapeAroundBarycentre(double semiMajorAxis, double totalMass, double bodyMass, double eccentricity)
Definition: Orbit.cpp:289
void SetShapeAroundPrimary(double semiMajorAxis, double totalMass, double eccentricity)
Definition: Orbit.cpp:296
static Orbit FromBodyState(const vector3d &position, const vector3d &velocity, double central_mass)
Definition: Orbit.cpp:311
double GetEccentricity() const
Definition: Orbit.h:54
double GetSemiMajorAxis() const
Definition: Orbit.h:55
void SetPlane(const matrix3x3d &orient)
Definition: Orbit.h:33
static double OrbitalPeriod(double semiMajorAxis, double centralMass)
Definition: Orbit.cpp:13