Vulcan
Aerospace Engineering Utilities Built on Janus
Loading...
Searching...
No Matches
vulcan::orbital::anomaly Namespace Reference

Functions

template<typename Scalar>
Scalar mean_to_eccentric (const Scalar &M, const Scalar &e, double tol=1e-12, int max_iter=50)
 Solve Kepler's equation: M = E - e*sin(E).
template<typename Scalar>
Scalar eccentric_to_true (const Scalar &E, const Scalar &e)
 Convert eccentric anomaly to true anomaly.
template<typename Scalar>
Scalar true_to_eccentric (const Scalar &nu, const Scalar &e)
 Convert true anomaly to eccentric anomaly.
template<typename Scalar>
Scalar eccentric_to_mean (const Scalar &E, const Scalar &e)
 Convert eccentric anomaly to mean anomaly.
template<typename Scalar>
Scalar true_to_mean (const Scalar &nu, const Scalar &e)
 Convert true anomaly to mean anomaly.
template<typename Scalar>
Scalar mean_to_true (const Scalar &M, const Scalar &e)
 Convert mean anomaly to true anomaly.

Function Documentation

◆ eccentric_to_mean()

template<typename Scalar>
Scalar vulcan::orbital::anomaly::eccentric_to_mean ( const Scalar & E,
const Scalar & e )

Convert eccentric anomaly to mean anomaly.

Direct application of Kepler's equation: M = E - e*sin(E)

Template Parameters
Scalardouble or casadi::MX
Parameters
EEccentric anomaly [rad]
eEccentricity [-]
Returns
Mean anomaly [rad]

◆ eccentric_to_true()

template<typename Scalar>
Scalar vulcan::orbital::anomaly::eccentric_to_true ( const Scalar & E,
const Scalar & e )

Convert eccentric anomaly to true anomaly.

Template Parameters
Scalardouble or casadi::MX
Parameters
EEccentric anomaly [rad]
eEccentricity [-]
Returns
True anomaly [rad]

◆ mean_to_eccentric()

template<typename Scalar>
Scalar vulcan::orbital::anomaly::mean_to_eccentric ( const Scalar & M,
const Scalar & e,
double tol = 1e-12,
int max_iter = 50 )

Solve Kepler's equation: M = E - e*sin(E).

Uses Newton-Raphson iteration. For symbolic types, uses fixed iterations to enable automatic differentiation.

Template Parameters
Scalardouble or casadi::MX
Parameters
MMean anomaly [rad]
eEccentricity [-]
tolConvergence tolerance (numeric only)
max_iterMaximum iterations (numeric only)
Returns
Eccentric anomaly [rad]

◆ mean_to_true()

template<typename Scalar>
Scalar vulcan::orbital::anomaly::mean_to_true ( const Scalar & M,
const Scalar & e )

Convert mean anomaly to true anomaly.

Template Parameters
Scalardouble or casadi::MX
Parameters
MMean anomaly [rad]
eEccentricity [-]
Returns
True anomaly [rad]

◆ true_to_eccentric()

template<typename Scalar>
Scalar vulcan::orbital::anomaly::true_to_eccentric ( const Scalar & nu,
const Scalar & e )

Convert true anomaly to eccentric anomaly.

Template Parameters
Scalardouble or casadi::MX
Parameters
nuTrue anomaly [rad]
eEccentricity [-]
Returns
Eccentric anomaly [rad]

◆ true_to_mean()

template<typename Scalar>
Scalar vulcan::orbital::anomaly::true_to_mean ( const Scalar & nu,
const Scalar & e )

Convert true anomaly to mean anomaly.

Template Parameters
Scalardouble or casadi::MX
Parameters
nuTrue anomaly [rad]
eEccentricity [-]
Returns
Mean anomaly [rad]