LORENE
|
Base class for axisymmetric stationary compact objects in Quasi-Isotropic coordinates (***under development***). More...
#include <compobj.h>
Public Member Functions | |
Compobj_QI (Map &map_i) | |
Standard constructor. More... | |
Compobj_QI (const Compobj_QI &) | |
Copy constructor. More... | |
Compobj_QI (Map &map_i, FILE *) | |
Constructor from a file (see sauve(FILE* ) ). More... | |
virtual | ~Compobj_QI () |
Destructor. More... | |
void | operator= (const Compobj_QI &) |
Assignment to another Compobj_QI. More... | |
const Scalar & | get_bbb () const |
Returns the metric factor B. More... | |
const Scalar & | get_a_car () const |
Returns the square of the metric factor A. More... | |
const Scalar & | get_b_car () const |
Returns the square of the metric factor B. More... | |
const Scalar & | get_nphi () const |
Returns the metric coefficient ![]() | |
const Scalar & | get_ak_car () const |
Returns the scalar ![]() | |
virtual void | sauve (FILE *) const |
Save in a file. More... | |
void | gyoto_data (const char *file_name) const |
Save in a file for GYOTO. More... | |
virtual double | angu_mom () const |
Angular momentum. More... | |
virtual double | r_isco (int lmin, ostream *ost=0x0) const |
Coordinate r of the innermost stable circular orbit (ISCO). More... | |
virtual double | f_isco (int lmin) const |
Orbital frequency at the innermost stable circular orbit (ISCO). More... | |
virtual double | espec_isco (int lmin) const |
Energy of a particle at the ISCO. More... | |
virtual double | lspec_isco (int lmin) const |
Angular momentum of a particle at the ISCO. More... | |
virtual double | r_mb (int lmin, ostream *ost=0x0) const |
Coordinate r of the marginally bound circular orbit (R_mb). More... | |
virtual void | update_metric () |
Updates the 3-metric ![]() ![]() ![]() | |
virtual void | extrinsic_curvature () |
Computes the extrinsic curvature and ak_car from nphi , nn and b_car . More... | |
Map & | set_mp () |
Read/write of the mapping. More... | |
const Map & | get_mp () const |
Returns the mapping. More... | |
const Scalar & | get_nn () const |
Returns the lapse function N . More... | |
const Vector & | get_beta () const |
Returns the shift vector ![]() | |
const Metric & | get_gamma () const |
Returns the 3-metric ![]() | |
const Scalar & | get_ener_euler () const |
Returns the total energy density E in the Eulerian frame. More... | |
const Vector & | get_mom_euler () const |
Returns the total 3-momentum density ![]() | |
const Sym_tensor & | get_stress_euler () const |
Returns the stress tensor ![]() | |
const Sym_tensor & | get_kk () const |
Returns the extrinsic curvature tensor ![]() | |
virtual double | adm_mass () const |
ADM mass (computed as a surface integral at spatial infinity) More... | |
Protected Member Functions | |
virtual void | del_deriv () const |
Deletes all the derived quantities. More... | |
void | set_der_0x0 () const |
Sets to 0x0 all the pointers on derived quantities. More... | |
virtual ostream & | operator>> (ostream &) const |
Operator >> (virtual function called by the operator <<). More... | |
Protected Attributes | |
Scalar | a_car |
Square of the metric factor A. More... | |
Scalar | bbb |
Metric factor B. More... | |
Scalar | b_car |
Square of the metric factor B. More... | |
Scalar | nphi |
Metric coefficient ![]() | |
Scalar | ak_car |
Scalar ![]() | |
double * | p_angu_mom |
Angular momentum. More... | |
double * | p_r_isco |
Coordinate r of the ISCO. More... | |
double * | p_f_isco |
Orbital frequency of the ISCO. More... | |
double * | p_espec_isco |
Specific energy of a particle at the ISCO. More... | |
double * | p_lspec_isco |
Specific angular momentum of a particle at the ISCO. More... | |
double * | p_r_mb |
Coordinate r of the marginally bound orbit. More... | |
Map & | mp |
Mapping describing the coordinate system (r,theta,phi) More... | |
Scalar | nn |
Lapse function N . More... | |
Vector | beta |
Shift vector ![]() | |
Metric | gamma |
3-metric ![]() | |
Scalar | ener_euler |
Total energy density E in the Eulerian frame. More... | |
Vector | mom_euler |
Total 3-momentum density ![]() | |
Sym_tensor | stress_euler |
Stress tensor ![]() | |
Sym_tensor | kk |
Extrinsic curvature tensor ![]() | |
double * | p_adm_mass |
ADM mass. More... | |
Base class for axisymmetric stationary compact objects in Quasi-Isotropic coordinates (***under development***).
()
The metric is expressed in Quasi-Isotropic (QI) coordinates :
Lorene::Compobj_QI::Compobj_QI | ( | Map & | map_i | ) |
Standard constructor.
mp_i | Mapping on which the object is defined |
Definition at line 86 of file compobj_QI.C.
References a_car, ak_car, b_car, bbb, nphi, set_der_0x0(), and Lorene::Scalar::std_spectral_base().
Lorene::Compobj_QI::Compobj_QI | ( | const Compobj_QI & | co | ) |
Lorene::Compobj_QI::Compobj_QI | ( | Map & | map_i, |
FILE * | fich | ||
) |
Constructor from a file (see sauve(FILE* )
).
mp_i | Mapping on which the object is defined |
fich | input file (must have been created by the function sauve ) |
Definition at line 125 of file compobj_QI.C.
References b_car, bbb, extrinsic_curvature(), Lorene::Map::get_mg(), Lorene::Compobj::mp, Lorene::Compobj::nn, set_der_0x0(), and update_metric().
|
virtual |
|
virtualinherited |
ADM mass (computed as a surface integral at spatial infinity)
Definition at line 310 of file compobj.C.
References Lorene::Metric::cov(), Lorene::Tensor::derive_con(), Lorene::Tensor_sym::derive_con(), Lorene::Vector::flux(), Lorene::Compobj::gamma, Lorene::Tensor::get_triad(), Lorene::Compobj::mp, Lorene::Compobj::p_adm_mass, Lorene::Tensor::trace(), and Lorene::Tensor::up().
|
virtual |
Angular momentum.
Reimplemented in Lorene::Star_QI.
Definition at line 90 of file compobj_QI_global.C.
References p_angu_mom.
|
protectedvirtual |
Deletes all the derived quantities.
Reimplemented from Lorene::Compobj.
Reimplemented in Lorene::AltBH_QI, Lorene::Kerr_QI, Lorene::Star_QI, and Lorene::Boson_star.
Definition at line 163 of file compobj_QI.C.
References Lorene::Compobj::del_deriv(), p_angu_mom, p_espec_isco, p_f_isco, p_lspec_isco, p_r_isco, p_r_mb, and set_der_0x0().
|
virtual |
Energy of a particle at the ISCO.
Definition at line 320 of file compobj_QI_global.C.
References p_espec_isco, and r_isco().
|
virtual |
Computes the extrinsic curvature and ak_car
from nphi
, nn
and b_car
.
Reimplemented from Lorene::Compobj.
Reimplemented in Lorene::AltBH_QI.
Definition at line 339 of file compobj_QI.C.
References ak_car, b_car, del_deriv(), Lorene::Scalar::dsdr(), Lorene::Scalar::dsdt(), Lorene::Compobj::extrinsic_curvature(), Lorene::Map::get_mg(), Lorene::Scalar::inc_dzpuis(), Lorene::Compobj::kk, Lorene::Compobj::mp, Lorene::Scalar::mult_rsint(), Lorene::Scalar::mult_sint(), Lorene::Compobj::nn, nphi, and Lorene::Tensor::set().
|
virtual |
Orbital frequency at the innermost stable circular orbit (ISCO).
Definition at line 286 of file compobj_QI_global.C.
|
inline |
|
inline |
Returns the scalar .
For axisymmetric stars, this quantity is related to the derivatives of by
In particular it is related to the quantities and
introduced by Eqs. (3.7) and (3.8) of Bonazzola et al. Astron. Astrophys. 278 , 421 (1993) by
Definition at line 404 of file compobj.h.
References Lorene::Compobj::extrinsic_curvature(), Lorene::Compobj::gyoto_data(), Lorene::Compobj::operator>>(), and Lorene::Compobj::sauve().
|
inline |
|
inline |
|
inlineinherited |
Returns the shift vector .
Definition at line 213 of file compobj.h.
References Lorene::Compobj::beta.
|
inlineinherited |
Returns the total energy density E in the Eulerian frame.
Definition at line 219 of file compobj.h.
References Lorene::Compobj::ener_euler.
|
inlineinherited |
|
inlineinherited |
Returns the extrinsic curvature tensor .
Definition at line 228 of file compobj.h.
References Lorene::Compobj::adm_mass(), Lorene::Compobj::extrinsic_curvature(), Lorene::Compobj::gyoto_data(), Lorene::Compobj::kk, Lorene::Compobj::operator<<, Lorene::Compobj::operator>>(), and Lorene::Compobj::sauve().
|
inlineinherited |
Returns the total 3-momentum density in the Eulerian frame.
Definition at line 222 of file compobj.h.
References Lorene::Compobj::mom_euler.
|
inlineinherited |
|
inlineinherited |
Returns the lapse function N .
Definition at line 210 of file compobj.h.
References Lorene::Compobj::nn.
|
inline |
|
inlineinherited |
Returns the stress tensor with respect to the Eulerian observer.
Definition at line 225 of file compobj.h.
References Lorene::Compobj::stress_euler.
void Lorene::Compobj_QI::gyoto_data | ( | const char * | file_name | ) | const |
Save in a file for GYOTO.
Definition at line 232 of file compobj_QI.C.
References Lorene::Compobj::beta, Lorene::Metric::con(), Lorene::Metric::cov(), Lorene::fwrite_be(), Lorene::Compobj::gamma, Lorene::Map::get_mg(), Lorene::Compobj::kk, Lorene::Compobj::mp, Lorene::Compobj::nn, r_isco(), r_mb(), Lorene::Mg3d::sauve(), Lorene::Map::sauve(), Lorene::Tensor::sauve(), Lorene::Scalar::sauve(), and Lorene::Tensor_sym::sauve().
|
virtual |
Angular momentum of a particle at the ISCO.
Definition at line 303 of file compobj_QI_global.C.
References p_lspec_isco, and r_isco().
void Lorene::Compobj_QI::operator= | ( | const Compobj_QI & | co | ) |
Assignment to another Compobj_QI.
Definition at line 195 of file compobj_QI.C.
References a_car, ak_car, b_car, bbb, del_deriv(), nphi, and Lorene::Compobj::operator=().
|
protectedvirtual |
Operator >> (virtual function called by the operator <<).
Reimplemented from Lorene::Compobj.
Reimplemented in Lorene::AltBH_QI, Lorene::Kerr_QI, Lorene::Star_QI, and Lorene::Boson_star.
Definition at line 264 of file compobj_QI.C.
References a_car, ak_car, b_car, nphi, Lorene::Compobj::operator>>(), r_isco(), r_mb(), and Lorene::Scalar::val_grid_point().
|
virtual |
Coordinate r of the innermost stable circular orbit (ISCO).
lmin | index of the innermost domain in which the ISCO is searched: the ISCO is searched inwards from the last but one domain to the domain of index lmin. |
ost | output stream to give details of the computation; if set to 0x0 [default value], no details will be given. |
Definition at line 108 of file compobj_QI_global.C.
References Lorene::Param::add_int(), Lorene::Param::add_scalar(), Lorene::Tensor::annule_domain(), bbb, Lorene::Scalar::dsdr(), Lorene::Map::get_mg(), Lorene::Mg3d::get_nzone(), Lorene::Scalar::get_spectral_va(), Lorene::Compobj::mp, Lorene::Compobj::nn, nphi, p_espec_isco, p_f_isco, p_lspec_isco, p_r_isco, Lorene::Map::r, Lorene::sqrt(), Lorene::Scalar::std_spectral_base(), Lorene::Valeur::val_point(), Lorene::Map::val_r(), and Lorene::zerosec().
|
virtual |
Coordinate r of the marginally bound circular orbit (R_mb).
Definition at line 341 of file compobj_QI_global.C.
References Lorene::Param::add_int(), Lorene::Param::add_scalar(), Lorene::Tensor::annule_domain(), bbb, Lorene::Scalar::dsdr(), Lorene::Param::get_int(), Lorene::Map::get_mg(), Lorene::Mg3d::get_nzone(), Lorene::Param::get_scalar(), Lorene::Scalar::get_spectral_va(), Lorene::Compobj::mp, Lorene::Compobj::nn, nphi, p_r_mb, Lorene::Map::r, r_isco(), Lorene::sqrt(), Lorene::Scalar::std_spectral_base(), Lorene::Valeur::val_point(), Lorene::Map::val_r(), and Lorene::zerosec().
|
virtual |
Save in a file.
Reimplemented from Lorene::Compobj.
Reimplemented in Lorene::AltBH_QI, Lorene::Kerr_QI, Lorene::Star_QI, and Lorene::Boson_star.
Definition at line 216 of file compobj_QI.C.
References a_car, bbb, Lorene::Compobj::nn, nphi, and Lorene::Scalar::sauve().
|
protected |
Sets to 0x0
all the pointers on derived quantities.
Definition at line 178 of file compobj_QI.C.
References p_angu_mom, p_espec_isco, p_f_isco, p_lspec_isco, p_r_isco, and p_r_mb.
|
inlineinherited |
Read/write of the mapping.
Definition at line 200 of file compobj.h.
References Lorene::Compobj::mp.
|
virtual |
Updates the 3-metric from A and B and the shift vector
from
.
Reimplemented in Lorene::Star_QI.
Definition at line 302 of file compobj_QI.C.
References a_car, b_car, Lorene::Compobj::beta, del_deriv(), extrinsic_curvature(), Lorene::Compobj::gamma, Lorene::Map::get_bvect_spher(), Lorene::Tensor::get_triad(), Lorene::Compobj::mp, Lorene::Scalar::mult_rsint(), nphi, Lorene::Vector::set(), and Lorene::Tensor::set().
|
protected |
|
protected |
|
protected |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protected |
|
mutableprotectedinherited |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
protectedinherited |