9 #ifndef __TEST_DIFFERENTIAL_EQUATIONS_H 10 #define __TEST_DIFFERENTIAL_EQUATIONS_H 13 #include "../shared/Common.h" 14 #include "../shared/PolynomialEvolution.h" 15 #include "../shared/MakeStar.h" 16 #include "../../Planet/Planet.h" 17 #include "../../third_party_libs/alglib/alglib/src/interpolation.h" 30 const alglib::real_1d_array &eccentricities,
31 const alglib::real_1d_array &expected_semimajor_rate,
32 const alglib::real_1d_array &predicted_semimajor_rate,
33 const alglib::real_1d_array &expected_eccentricity_rate,
34 const alglib::real_1d_array &predicted_eccentricity_rate
43 int orbital_frequency_multiplier,
47 int spin_frequency_multiplier,
58 int orbital_frequency_multiplier,
62 int spin_frequency_multiplier
69 const alglib::real_1d_array& x,
72 const alglib::real_1d_array& y1,
75 const alglib::real_1d_array& y2,
78 unsigned agreement_order,
84 const std::string &description
void setup()
No fixtures at this time.
test_DifferentialEquations()
Create the test suite.
The test suite that compares the differential equations for eccentricity and semimajor axis to litera...
double zahn77_semimajor_rate_coef(int orbital_frequency_multiplier, int spin_frequency_multiplier, double eccentricity) const
The Zahn (1977) coefficient for the semimajor evolution rate that corresponds to the given tidal term...
void test_aligned_equations()
Test the a & e differential equations for aligned orbit.
Orientations of zones of bodies in a binary system.
void check_agreement(const alglib::real_1d_array &x, const alglib::real_1d_array &y1, const alglib::real_1d_array &y2, unsigned agreement_order, unsigned max_order, const std::string &description)
Check if two given dependencies on x agree up to a given order in x.
void tear_down()
No fixtures at this time.
Declare a dissipative body class with a single SingleTidalTermZone.
double zahn77_eccentricity_rate_coef(int orbital_frequency_multiplier, int spin_frequency_multiplier) const
Same as zahn77_semimajor_rate_coef() but for the eccentricity evolution.
void test_error_estimate()
Test the error estimate of the differential equations.
void output_rates(const alglib::real_1d_array &eccentricities, const alglib::real_1d_array &expected_semimajor_rate, const alglib::real_1d_array &predicted_semimajor_rate, const alglib::real_1d_array &expected_eccentricity_rate, const alglib::real_1d_array &predicted_eccentricity_rate) const
Output the predicted/expected semiamjor and eccentricity evolution rates to stdout.