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 . More... | |
const Scalar & | get_ak_car () const |
Returns the scalar . More... | |
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 from A and B and the shift vector from . More... | |
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 . More... | |
const Metric & | get_gamma () const |
Returns the 3-metric . More... | |
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 in the Eulerian frame. More... | |
const Sym_tensor & | get_stress_euler () const |
Returns the stress tensor with respect to the Eulerian observer. More... | |
const Sym_tensor & | get_kk () const |
Returns the extrinsic curvature tensor . More... | |
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 . More... | |
Scalar | ak_car |
Scalar . More... | |
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 . More... | |
Metric | gamma |
3-metric More... | |
Scalar | ener_euler |
Total energy density E in the Eulerian frame. More... | |
Vector | mom_euler |
Total 3-momentum density in the Eulerian frame. More... | |
Sym_tensor | stress_euler |
Stress tensor with respect to the Eulerian observer. More... | |
Sym_tensor | kk |
Extrinsic curvature tensor . More... | |
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 89 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 128 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 313 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 93 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 166 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 323 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 342 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 289 of file compobj_QI_global.C.
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineinherited |
Returns the shift vector .
Definition at line 216 of file compobj.h.
References Lorene::Compobj::beta.
|
inlineinherited |
Returns the total energy density E in the Eulerian frame.
Definition at line 222 of file compobj.h.
References Lorene::Compobj::ener_euler.
|
inlineinherited |
|
inlineinherited |
Returns the extrinsic curvature tensor .
Definition at line 231 of file compobj.h.
References Lorene::Compobj::kk.
|
inlineinherited |
Returns the total 3-momentum density in the Eulerian frame.
Definition at line 225 of file compobj.h.
References Lorene::Compobj::mom_euler.
|
inlineinherited |
|
inlineinherited |
Returns the lapse function N .
Definition at line 213 of file compobj.h.
References Lorene::Compobj::nn.
|
inline |
|
inlineinherited |
Returns the stress tensor with respect to the Eulerian observer.
Definition at line 228 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 235 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 306 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 198 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 267 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 111 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 344 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_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 219 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 181 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 203 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 305 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 |