Determination of the neutron star Love number. More...
#include <tov_love.h>
We use
but keep factors of
, which has units
.
Following the notation in Postnikov10, define the function
, which is the solution of
where (now supressing the dependence on
),
which has units of
,
and
which has units of
. The boundary conditions on
are that
and
for an arbitrary constant
(
is chosen to be equal to 1). Internally,
and
are stored in units of
.
From this we can define another (unitless) function
, which obeys
with boundary condition is
. Solving for
,
Define
. This form for
is specified in y_derivs() .
The unitless quantity
(the Love number) is defined by (this is the expression from Postnikov10 )
Hinderer10 writes the differential equation for
in a slightly different (but equivalent) form,
This is the form given in H_derivs() .
The tidal deformability is then
and has units of
or can be converted to
.
It is assumed that tab stores a stellar profile (such as one computed with tov_solve::fixed(), tov_solve::fixed_pr(), or tov_solve::max() ) has been specified before-hand and contains (at least) the following columns
ed energy density in units of 
pr pressure in units of 
cs2 sound speed squared (unitless)gm gravitational mass in 
r radius in
(Note that the o2scl::tov_solve class doesn't automatically compute the column cs2.)This class handles the inner boundary by starting from the small non-zero radius stored in eps instead of at
. The value of eps defaults to 0.2 km.
If there is a discontinuity in the EOS (i.e. a jump in the energy density at some radius
), then the function
must satisfy (see Damour09 and Postnikov10)
Definition at line 166 of file tov_love.h.
Public Types | |
| typedef std::function< int(double, size_t, const std::vector< double > &, std::vector< double > &)> | ode_funct2 |
Public Member Functions | |
| void | set_ODE (o2scl::ode_iv_solve< ode_funct2, std::vector< double > > &ois_new) |
| Set ODE integrator. | |
| int | calc_y (double &yR, double &beta, double &k2, double &lambda_km5, double &lambda_cgs, bool tabulate=false) |
| Compute the love number using y. | |
| void | add_disc (double rd) |
Add a discontinuity at radius rd (in km) | |
| void | clear_discs () |
| Remove all discontinuities. | |
| int | calc_H (double &yR, double &beta, double &k2, double &lambda_km5, double &lambda_cgs) |
| Compute the love number using H. | |
Public Attributes | |
| int | show_ode |
| If greater than zero, show the ODE output (default 0) | |
| bool | addl_testing |
| Additional testing if the ODE solver fails. | |
| bool | err_nonconv |
| If true, call the error handler if the solution does not converge (default true) | |
| o2scl::table_units | results |
| A table containing the solution to the differential equation(s) | |
| double | delta |
The radial step for resolving discontinuities in km (default ) | |
| double | eps |
The first radial point in (default 0.02) | |
| o2scl::ode_iv_solve< ode_funct2, std::vector< double > > | def_ois |
| The default ODE integrator. | |
| std::shared_ptr< o2scl::table_units<> > | tab |
| Pointer to the input profile. | |
Protected Member Functions | |
| int | y_derivs (double r, size_t nv, const std::vector< double > &vals, std::vector< double > &ders) |
The derivative . | |
| int | H_derivs (double r, size_t nv, const std::vector< double > &vals, std::vector< double > &ders) |
The derivatives and . | |
| double | eval_k2 (double beta, double yR) |
Compute using the analytic expression. More... | |
Protected Attributes | |
| o2scl::ode_iv_solve< ode_funct2, std::vector< double > > * | oisp |
| The ODE integrator. | |
| double | schwarz_km |
| Schwarzchild radius in km (set in constructor) | |
| std::vector< double > | disc |
| List of discontinuities. | |
|
protected |
Used in both tov_love::calc_y() and tov_love::calc_H().
Documentation generated with Doxygen. Provided under the
GNU Free Documentation License (see License Information).