A class which reads-in and provides a convenient interface to the \(p_{m,s}\) coefficients. More...
#include <EccentricityExpansionCoefficients.h>
Public Member Functions | |
EccentricityExpansionCoefficients () | |
Create an uninitialized object. More... | |
void | read (const std::string &tabulated_pms_fname="", int max_e_power=-1) |
Reads in tabulated expansion coefficients, making this object useable. More... | |
unsigned | max_e_power () const |
Maximum eccentricity power with all necessary coefficients known. More... | |
std::pair< double, double > | operator() (int m, int s, double e, unsigned max_e_power, bool deriv) const |
Taylor series approximation of \(p_{m,s}\) and the contribution of the highest power eccentricity terms. More... | |
Private Member Functions | |
int | inner_index (int msign, int s, int epower) const |
The inner index in the __alpha/gamma_plus/gamma_minus arrays. More... | |
std::pair< double, double > | p_m2s (double e, int s, unsigned max_e_power, bool deriv) const |
std::pair< double, double > | p_0s (double e, int s, unsigned max_e_power, bool deriv) const |
std::pair< double, double > | p_p2s (double e, int s, unsigned max_e_power, bool deriv) const |
Private Attributes | |
unsigned | __max_e_power |
Maximum eccentricity power with all necessary coefficients known. More... | |
std::vector< std::vector< double > > | __alpha |
The expansion coefficients of \(p_{0,s}\) ( \(\alpha\) along with the s factior in the [documentation]{InclinationEccentricity_pms1}). More... | |
std::vector< std::vector< double > > | __gamma_plus |
The expansion coefficients of \(p_{2,s}\) ( \(\gamma_{s,n}^+(s/2)^{s+2n}\) in the [documentation]{InclinationEccentricity_pms1}). More... | |
std::vector< std::vector< double > > | __gamma_minus |
The expansion coefficients of \(p_{-2,s}\) ( \(\gamma_{s,n}^-(s/2)^{s+2n}\) in the [documentation]{InclinationEccentricity_pms1}). More... | |
bool | __useable |
Is the object ready to be used? More... | |
A class which reads-in and provides a convenient interface to the \(p_{m,s}\) coefficients.
Definition at line 26 of file EccentricityExpansionCoefficients.h.
|
inline |
Create an uninitialized object.
Definition at line 126 of file EccentricityExpansionCoefficients.h.
|
private |
The inner index in the __alpha/gamma_plus/gamma_minus arrays.
msign | If -1 returns the index within __gamma_minus, if 0 returns the index within __alpha and if 1 returns the index within __gamma_plus. |
s | The multiplier of the orbital frequency of the desired term. |
epower | The power of the eccentricity in the desired term. |
Definition at line 6 of file EccentricityExpansionCoefficients.cpp.
|
inline |
Maximum eccentricity power with all necessary coefficients known.
Definition at line 140 of file EccentricityExpansionCoefficients.h.
std::pair< double, double > Evolve::EccentricityExpansionCoefficients::operator() | ( | int | m, |
int | s, | ||
double | e, | ||
unsigned | max_e_power, | ||
bool | deriv | ||
) | const |
Taylor series approximation of \(p_{m,s}\) and the contribution of the highest power eccentricity terms.
m | The first index (0 or +-2). |
s | The second index. |
e | The value of the eccentricity to use. |
max_e_power | The maximum eccentricity order to include in the Taylor series. |
deriv | If true the result is differentiated w.r.t. to the eccentricity. |
Definition at line 193 of file EccentricityExpansionCoefficients.cpp.
|
private |
Taylor series approximation of \(p_{0,s}(e)\), and the contribution of the highest power eccentricity terms.
e | The eccentricity |
s | The s index. |
max_e_power | Where to truncate the taylor series. |
deriv | If true the result is differentiated w.r.t. to the eccentricity. |
Definition at line 48 of file EccentricityExpansionCoefficients.cpp.
|
private |
Taylor series approximation of \(p_{-2,s}(e)\), and the contribution of the highest power eccentricity terms.
e | The eccentricity |
s | The s index. |
max_e_power | Where to truncate the taylor series. |
deriv | If true the result is differentiated w.r.t. to the eccentricity. |
Definition at line 15 of file EccentricityExpansionCoefficients.cpp.
|
private |
Taylor series approximation of \(p_{2,s}(e)\), and the contribution of the highest power eccentricity terms.
e | The eccentricity |
s | The s index. |
max_e_power | Where to truncate the taylor series. |
deriv | If true the result is differentiated w.r.t. to the eccentricity. |
Definition at line 77 of file EccentricityExpansionCoefficients.cpp.
void Evolve::EccentricityExpansionCoefficients::read | ( | const std::string & | tabulated_pms_fname = "" , |
int | max_e_power = -1 |
||
) |
Reads in tabulated expansion coefficients, making this object useable.
tabulated_pms_fname | The name of the file to read pre-tabulated coefficients from. |
max_e_power | Only reads the file until all coefficients necessary for expansions of up to this power are read-in. If this is negative, the full file is read. |
Definition at line 106 of file EccentricityExpansionCoefficients.cpp.
|
private |
The expansion coefficients of \(p_{0,s}\) ( \(\alpha\) along with the s factior in the [documentation]{InclinationEccentricity_pms1}).
The outer index is s+__max_e_power and the inner one is min(n, n+s).
Definition at line 38 of file EccentricityExpansionCoefficients.h.
|
private |
The expansion coefficients of \(p_{-2,s}\) ( \(\gamma_{s,n}^-(s/2)^{s+2n}\) in the [documentation]{InclinationEccentricity_pms1}).
The outer index is s+__max_e_power+2 and the inner one is min(n-1, n+s+1).
Definition at line 38 of file EccentricityExpansionCoefficients.h.
|
private |
The expansion coefficients of \(p_{2,s}\) ( \(\gamma_{s,n}^+(s/2)^{s+2n}\) in the [documentation]{InclinationEccentricity_pms1}).
The outer index is s+__max_e_power-2 and the inner one is min(n+1, n+s-1).
Definition at line 38 of file EccentricityExpansionCoefficients.h.
|
private |
Maximum eccentricity power with all necessary coefficients known.
Definition at line 29 of file EccentricityExpansionCoefficients.h.
|
private |
Is the object ready to be used?
Definition at line 57 of file EccentricityExpansionCoefficients.h.