Collaboration diagram for Evolve::TidalPotentialTerms:Public Member Functions | |
| void | change_e_order (unsigned new_e_order) |
| Change the eccentricity expansion order. More... | |
| unsigned | current_e_order () const |
| void | configure (double inclination, double arg_of_periapsis=0) |
| Set the inclination relative to the orbit. More... | |
| void | operator() (double e, int m, int mp, std::complex< double > &no_deriv, std::complex< double > &inclination_deriv, std::complex< double > &eccentricity_deriv, std::complex< double > &highest_e_order_term) const |
| Calculates \(\sum_s W_{2,s}D_{m,s}(\Theta)p_{s,m'}\) (see documentation) and its derivatives w.r.t. e and \(\Theta\). More... | |
| void | operator() (double e, int m, int mp, double &no_deriv, double &inclination_deriv, double &eccentricity_deriv, double &highest_e_order_term) const |
| Return only the real parts of the complex version of the operator, since only the real part enters the tidal torque and power. More... | |
Static Public Member Functions | |
| static void | read_eccentricity_expansion (const std::string &fname) |
| Reads the eccentricity expansion coefficients of \(p_{m,s}\). More... | |
| static unsigned | max_e_order () |
| The maximum eccentricity expansion order for which the expansion is known. More... | |
Private Attributes | |
| unsigned | __e_order |
| The expansion order in eccentricity to use. More... | |
| double | __Ummp_inclination |
| The inclination with which __Ummp was last filled. More... | |
| double | __arg_of_periapsis |
| The argument of periaspsis set by the last call to configure(). More... | |
| std::valarray< std::valarray< double > > | __Ummp |
| The \(\mathcal{U}_{m,m'}\) quantities defined in Lai (2012). More... | |
| std::valarray< std::valarray< double > > | __Ummp_deriv |
| The derivatives of the \(\mathcal{U}_{m,m'}\) quantities w.r.t. the inclination. More... | |
Static Private Attributes | |
| static EccentricityExpansionCoefficients | __pms |
| The eccentricity expansion of \(p_{m,s}\). More... | |
| static const double | __Umm_coef [][3] |
| The constant coefficiients in \(\mathcal{U}_{m,m'}\) of Lai (2012). More... | |
Definition at line 18 of file TidalPotentialTerms.h.
|
inline |
Change the eccentricity expansion order.
Definition at line 52 of file TidalPotentialTerms.h.
| void Evolve::TidalPotentialTerms::configure | ( | double | inclination, |
| double | arg_of_periapsis = 0 |
||
| ) |
Set the inclination relative to the orbit.
Definition at line 42 of file TidalPotentialTerms.cpp.
|
inlinestatic |
The maximum eccentricity expansion order for which the expansion is known.
Definition at line 127 of file TidalPotentialTerms.h.
| void Evolve::TidalPotentialTerms::operator() | ( | double | e, |
| int | m, | ||
| int | mp, | ||
| std::complex< double > & | no_deriv, | ||
| std::complex< double > & | inclination_deriv, | ||
| std::complex< double > & | eccentricity_deriv, | ||
| std::complex< double > & | highest_e_order_term | ||
| ) | const |
Calculates \(\sum_s W_{2,s}D_{m,s}(\Theta)p_{s,m'}\) (see documentation) and its derivatives w.r.t. e and \(\Theta\).
fill_Umm should already have been called with the appropriate inclination and argument of periapsis.
| e | The eccentricity. |
| m | The m index. |
| mp | The m' index. |
| no_deriv | Set to the undifferentiated value. |
| inclination_deriv | Set to the inclination derivative. |
| eccentricity_deriv | Set to the eccentricity_derivative. |
| highest_e_order_term | The contribution of only the term with the highest eccentricity power. Useful for detemining when the expansion order should be increased. |
Definition at line 121 of file TidalPotentialTerms.cpp.
| void Evolve::TidalPotentialTerms::operator() | ( | double | e, |
| int | m, | ||
| int | mp, | ||
| double & | no_deriv, | ||
| double & | inclination_deriv, | ||
| double & | eccentricity_deriv, | ||
| double & | highest_e_order_term | ||
| ) | const |
Return only the real parts of the complex version of the operator, since only the real part enters the tidal torque and power.
| e | The eccentricity. |
| m | The m index. |
| mp | The m' index. |
| no_deriv | Set to the undifferentiated value. |
| inclination_deriv | Set to the inclination derivative. |
| eccentricity_deriv | Set to the eccentricity_derivative. |
| highest_e_order_term | The contribution of only the term with the highest eccentricity power. Useful for detemining when the expansion order should be increased. |
Definition at line 164 of file TidalPotentialTerms.cpp.
|
inlinestatic |
Reads the eccentricity expansion coefficients of \(p_{m,s}\).
The given file should have been generated by tabulate_eccentricity_expansion_coefficients.py.
Definition at line 122 of file TidalPotentialTerms.h.
|
private |
The argument of periaspsis set by the last call to configure().
Definition at line 37 of file TidalPotentialTerms.h.
|
private |
The expansion order in eccentricity to use.
Definition at line 21 of file TidalPotentialTerms.h.
|
staticprivate |
The eccentricity expansion of \(p_{m,s}\).
Definition at line 24 of file TidalPotentialTerms.h.
|
staticprivate |
The constant coefficiients in \(\mathcal{U}_{m,m'}\) of Lai (2012).
The first index is m+2 (since m starts from -2) and the second index is m'/2+1 since the only allowed values are -2, 0 and 1.
Definition at line 31 of file TidalPotentialTerms.h.
|
private |
The \(\mathcal{U}_{m,m'}\) quantities defined in Lai (2012).
Definition at line 41 of file TidalPotentialTerms.h.
|
private |
The derivatives of the \(\mathcal{U}_{m,m'}\) quantities w.r.t. the inclination.
Definition at line 41 of file TidalPotentialTerms.h.
|
private |
The inclination with which __Ummp was last filled.
Definition at line 34 of file TidalPotentialTerms.h.