Lorene::Compobj_QI Class Reference
Stationary compact objects (<em><strong>under development</strong></em>)

Base class for axisymmetric stationary compact objects in Quasi-Isotropic coordinates (under development). More...

`#include <compobj.h>`

Inheritance diagram for Lorene::Compobj_QI:

## Public Member Functions

| Compobj_QI (Map &map_i)
| Standard constructor.
| Compobj_QI (const Compobj_QI &)
| Copy constructor.
| Compobj_QI (Map &map_i, FILE *)
| Constructor from a file (see `sauve(FILE* )`).
virtual | ~Compobj_QI ()
| Destructor.
void | operator= (const Compobj_QI &)
| Assignment to another Compobj_QI.
const Scalar & | get_bbb () const
| Returns the metric factor B.
const Scalar & | get_a_car () const
| Returns the square of the metric factor A.
const Scalar & | get_b_car () const
| Returns the square of the metric factor B.
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.
void | gyoto_data (const char *file_name) const
| Save in a file for GYOTO.
virtual double | angu_mom () const
| Angular momentum.
virtual double | r_isco (int lmin, ostream *ost=0x0) const
| Coordinate r of the innermost stable circular orbit (ISCO).
virtual double | f_isco (int lmin) const
| Orbital frequency at the innermost stable circular orbit (ISCO).
virtual double | espec_isco (int lmin) const
| Energy of a particle at the ISCO.
virtual double | lspec_isco (int lmin) const
| Angular momentum of a particle at the ISCO.
virtual double | r_mb (int lmin, ostream *ost=0x0) const
| Coordinate r of the marginally bound circular orbit (R_mb).
virtual void | update_metric ()
| Updates the 3-metric from A and B and the shift vector from .
virtual void | extrinsic_curvature ()
| Computes the extrinsic curvature and `ak_car` from `nphi` , `nn` and `b_car` .
Map & | set_mp ()
| Read/write of the mapping.
const Map & | get_mp () const
| Returns the mapping.
const Scalar & | get_nn () const
| Returns the lapse function N .
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.
const Vector & | get_mom_euler () const
| Returns the total 3-momentum density in the Eulerian frame.
const Sym_tensor & | get_stress_euler () const
| Returns the stress tensor with respect to the Eulerian observer.
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).

## Protected Member Functions

virtual void | del_deriv () const
| Deletes all the derived quantities.
void | set_der_0x0 () const
| Sets to `0x0` all the pointers on derived quantities.
virtual ostream & | operator>> (ostream &) const
| Operator >> (virtual function called by the operator <<).

## Protected Attributes

Scalar | a_car
| Square of the metric factor A.
Scalar | bbb
| Metric factor B.
Scalar | b_car
| Square of the metric factor B.
Scalar | nphi
| Metric coefficient .
Scalar | ak_car
| Scalar .
double * | p_angu_mom
| Angular momentum.
double * | p_r_isco
| Coordinate r of the ISCO.
double * | p_f_isco
| Orbital frequency of the ISCO.
double * | p_espec_isco
| Specific energy of a particle at the ISCO.
double * | p_lspec_isco
| Specific angular momentum of a particle at the ISCO.
double * | p_r_mb
| Coordinate r of the marginally bound orbit.
Map & | mp
| Mapping describing the coordinate system (r,theta,phi).
Scalar | nn
| Lapse function N .
Vector | beta
| Shift vector .
Metric | gamma
| 3-metric
Scalar | ener_euler
| Total energy density E in the Eulerian frame.
Vector | mom_euler
| Total 3-momentum density in the Eulerian frame.
Sym_tensor | stress_euler
| Stress tensor with respect to the Eulerian observer.
Sym_tensor | kk
| Extrinsic curvature tensor .
double * | p_adm_mass
| ADM mass.

## Detailed Description

Base class for axisymmetric stationary compact objects in Quasi-Isotropic coordinates (under development).

()

The metric is expressed in Quasi-Isotropic (QI) coordinates :

Definition at line 280 of file compobj.h.

## Constructor & Destructor Documentation

## Compobj_QI() [1/3]

Lorene::Compobj_QI::Compobj_QI | ( | Map & | map_i | ) |

Standard constructor.

Parameters

  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, Lorene::Compobj::Compobj(), Lorene::Map(), nphi, and set_der_0x0().

## Compobj_QI() [2/3]

Lorene::Compobj_QI::Compobj_QI | ( | const Compobj_QI & | co | ) |

Copy constructor.

Definition at line 110 of file compobj_QI.C.

References a_car, ak_car, b_car, bbb, Lorene::Compobj::Compobj(), Compobj_QI(), nphi, and set_der_0x0().

## Compobj_QI() [3/3]

Lorene::Compobj_QI::Compobj_QI | ( | Map & | map_i,
|  | FILE * | fich )

Constructor from a file (see `sauve(FILE* )`).

Parameters

  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 a_car, ak_car, b_car, bbb, Lorene::Compobj::Compobj(), extrinsic_curvature(), Lorene::get_mg(), Lorene::Map(), Lorene::Compobj::mp, Lorene::Compobj::nn, nphi, set_der_0x0(), and update_metric().

## ~Compobj_QI()

Lorene::Compobj_QI::~Compobj_QI | ( |  | ) |

virtual

Destructor.

Definition at line 152 of file compobj_QI.C.

References del_deriv().

## Member Function Documentation

## adm_mass()

double Lorene::Compobj::adm_mass | ( |  | ) | const

virtual inherited

ADM mass (computed as a surface integral at spatial infinity).

Definition at line 310 of file compobj.C.

References Lorene::Tensor::derive_con(), Lorene::Tensor_sym::derive_con(), Lorene::Vector::flux(), gamma, Lorene::Tensor::get_triad(), mp, p_adm_mass, Lorene::Tensor::trace(), and Lorene::Tensor::up().

## angu_mom()

double Lorene::Compobj_QI::angu_mom | ( |  | ) | const

virtual

Angular momentum.

Reimplemented in Lorene::Star_QI.

Definition at line 90 of file compobj_QI_global.C.

References p_angu_mom.

## del_deriv()

void Lorene::Compobj_QI::del_deriv | ( |  | ) | const

protected virtual

Deletes all the derived quantities.

Reimplemented from Lorene::Compobj.

Reimplemented in Lorene::AltBH_QI, Lorene::Boson_star, Lorene::Kerr_QI, and Lorene::Star_QI.

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().

## espec_isco()

double Lorene::Compobj_QI::espec_isco | ( | int | lmin | ) | const

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().

## extrinsic_curvature()

void Lorene::Compobj_QI::extrinsic_curvature | ( |  | ) |

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::Compobj::extrinsic_curvature(), Lorene::Compobj::kk, Lorene::Compobj::mp, Lorene::Scalar::mult_rsint(), Lorene::Scalar::mult_sint(), Lorene::Compobj::nn, and nphi.

## f_isco()

double Lorene::Compobj_QI::f_isco | ( | int | lmin | ) | const

virtual

Orbital frequency at the innermost stable circular orbit (ISCO).

Definition at line 286 of file compobj_QI_global.C.

References p_f_isco, and r_isco().

## get_a_car()

const Scalar & Lorene::Compobj_QI::get_a_car | ( |  | ) | const

inline

Returns the square of the metric factor A.

Definition at line 378 of file compobj.h.

References a_car.

## get_ak_car()

const Scalar & Lorene::Compobj_QI::get_ak_car | ( |  | ) | const

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 ak_car.

## get_b_car()

const Scalar & Lorene::Compobj_QI::get_b_car | ( |  | ) | const

inline

Returns the square of the metric factor B.

Definition at line 381 of file compobj.h.

References b_car.

## get_bbb()

const Scalar & Lorene::Compobj_QI::get_bbb | ( |  | ) | const

inline

Returns the metric factor B.

Definition at line 375 of file compobj.h.

References bbb.

## get_beta()

const Vector & Lorene::Compobj::get_beta | ( |  | ) | const

inline inherited

Returns the shift vector .

Definition at line 213 of file compobj.h.

References beta.

## get_ener_euler()

const Scalar & Lorene::Compobj::get_ener_euler | ( |  | ) | const

inline inherited

Returns the total energy density E in the Eulerian frame.

Definition at line 219 of file compobj.h.

References ener_euler.

## get_gamma()

const Metric & Lorene::Compobj::get_gamma | ( |  | ) | const

inline inherited

Returns the 3-metric .

Definition at line 216 of file compobj.h.

References gamma.

## get_kk()

const Sym_tensor & Lorene::Compobj::get_kk | ( |  | ) | const

inline inherited

Returns the extrinsic curvature tensor .

Definition at line 228 of file compobj.h.

References kk.

## get_mom_euler()

const Vector & Lorene::Compobj::get_mom_euler | ( |  | ) | const

inline inherited

Returns the total 3-momentum density in the Eulerian frame.

Definition at line 222 of file compobj.h.

References mom_euler.

## get_mp()

const Map & Lorene::Compobj::get_mp | ( |  | ) | const

inline inherited

Returns the mapping.

Definition at line 207 of file compobj.h.

References Lorene::Map(), and mp.

## get_nn()

const Scalar & Lorene::Compobj::get_nn | ( |  | ) | const

inline inherited

Returns the lapse function N .

Definition at line 210 of file compobj.h.

References nn.

## get_nphi()

const Scalar & Lorene::Compobj_QI::get_nphi | ( |  | ) | const

inline

Returns the metric coefficient .

Definition at line 384 of file compobj.h.

References nphi.

## get_stress_euler()

const Sym_tensor & Lorene::Compobj::get_stress_euler | ( |  | ) | const

inline inherited

Returns the stress tensor with respect to the Eulerian observer.

Definition at line 225 of file compobj.h.

References stress_euler.

## gyoto_data()

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::fwrite_be(), Lorene::Compobj::gamma, Lorene::Compobj::kk, Lorene::Compobj::mp, Lorene::Compobj::nn, r_isco(), and r_mb().

## lspec_isco()

double Lorene::Compobj_QI::lspec_isco | ( | int | lmin | ) | const

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().

## operator=()

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, Compobj_QI(), del_deriv(), nphi, and Lorene::Compobj::operator=().

## operator>>()

ostream & Lorene::Compobj_QI::operator>> | ( | ostream & | ost | ) | const

protected virtual

Operator >> (virtual function called by the operator <<).

Reimplemented from Lorene::Compobj.

Reimplemented in Lorene::AltBH_QI, Lorene::Boson_star, Lorene::Kerr_QI, and Lorene::Star_QI.

Definition at line 264 of file compobj_QI.C.

References a_car, ak_car, b_car, nphi, Lorene::Compobj::operator>>(), r_isco(), and r_mb().

## r_isco()

double Lorene::Compobj_QI::r_isco | ( | int | lmin,
|  | ostream * | ost = 0x0 ) const

virtual

Coordinate r of the innermost stable circular orbit (ISCO).

Parameters

  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::Scalar::get_spectral_va(), Lorene::Compobj::mp, Lorene::Compobj::nn, nphi, p_espec_isco, p_f_isco, p_lspec_isco, p_r_isco, Lorene::r, Lorene::sqrt(), Lorene::Scalar::std_spectral_base(), Lorene::Valeur::val_point(), and Lorene::zerosec().

## r_mb()

double Lorene::Compobj_QI::r_mb | ( | int | lmin,
|  | ostream * | ost = 0x0 ) const

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::get_spectral_va(), Lorene::Compobj::mp, Lorene::Compobj::nn, nphi, p_r_mb, Lorene::r, r_isco(), Lorene::sqrt(), Lorene::Scalar::std_spectral_base(), Lorene::Valeur::val_point(), and Lorene::zerosec().

## sauve()

void Lorene::Compobj_QI::sauve | ( | FILE * | fich | ) | const

virtual

Save in a file.

Reimplemented from Lorene::Compobj.

Reimplemented in Lorene::AltBH_QI, Lorene::Boson_star, Lorene::Kerr_QI, and Lorene::Star_QI.

Definition at line 216 of file compobj_QI.C.

References a_car, bbb, Lorene::Compobj::nn, and nphi.

## set_der_0x0()

void Lorene::Compobj_QI::set_der_0x0 | ( |  | ) | const

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.

## set_mp()

Map & Lorene::Compobj::set_mp | ( |  | ) |

inline inherited

Read/write of the mapping.

Definition at line 200 of file compobj.h.

References Lorene::Map(), and mp.

## update_metric()

void Lorene::Compobj_QI::update_metric | ( |  | ) |

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::Compobj::mp, Lorene::Scalar::mult_rsint(), nphi, and Lorene::Tensor::set().

## Member Data Documentation

## a_car

Scalar Lorene::Compobj_QI::a_car

protected

Square of the metric factor A.

Definition at line 287 of file compobj.h.

## ak_car

Scalar Lorene::Compobj_QI::ak_car

protected

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 315 of file compobj.h.

## b_car

Scalar Lorene::Compobj_QI::b_car

protected

Square of the metric factor B.

Definition at line 293 of file compobj.h.

## bbb

Scalar Lorene::Compobj_QI::bbb

protected

Metric factor B.

Definition at line 290 of file compobj.h.

## beta

Vector Lorene::Compobj::beta

protected inherited

Shift vector .

Definition at line 138 of file compobj.h.

## ener_euler

Scalar Lorene::Compobj::ener_euler

protected inherited

Total energy density E in the Eulerian frame.

Definition at line 144 of file compobj.h.

## gamma

Metric Lorene::Compobj::gamma

protected inherited

3-metric

Definition at line 141 of file compobj.h.

## kk

Sym_tensor Lorene::Compobj::kk

protected inherited

Extrinsic curvature tensor .

Definition at line 153 of file compobj.h.

## mom_euler

Vector Lorene::Compobj::mom_euler

protected inherited

Total 3-momentum density in the Eulerian frame.

Definition at line 147 of file compobj.h.

## mp

Map& Lorene::Compobj::mp

protected inherited

Mapping describing the coordinate system (r,theta,phi).

Definition at line 132 of file compobj.h.

## nn

Scalar Lorene::Compobj::nn

protected inherited

Lapse function N .

Definition at line 135 of file compobj.h.

## nphi

Scalar Lorene::Compobj_QI::nphi

protected

Metric coefficient .

Definition at line 296 of file compobj.h.

## p_adm_mass

double* Lorene::Compobj::p_adm_mass

mutable protected inherited

ADM mass.

Definition at line 158 of file compobj.h.

## p_angu_mom

double* Lorene::Compobj_QI::p_angu_mom

mutable protected

Angular momentum.

Definition at line 321 of file compobj.h.

## p_espec_isco

double* Lorene::Compobj_QI::p_espec_isco

mutable protected

Specific energy of a particle at the ISCO.

Definition at line 325 of file compobj.h.

## p_f_isco

double* Lorene::Compobj_QI::p_f_isco

mutable protected

Orbital frequency of the ISCO.

Definition at line 323 of file compobj.h.

## p_lspec_isco

double* Lorene::Compobj_QI::p_lspec_isco

mutable protected

Specific angular momentum of a particle at the ISCO.

Definition at line 327 of file compobj.h.

## p_r_isco

double* Lorene::Compobj_QI::p_r_isco

mutable protected

Coordinate r of the ISCO.

Definition at line 322 of file compobj.h.

## p_r_mb

double* Lorene::Compobj_QI::p_r_mb

mutable protected

Coordinate r of the marginally bound orbit.

Definition at line 328 of file compobj.h.

## stress_euler

Sym_tensor Lorene::Compobj::stress_euler

protected inherited

Stress tensor with respect to the Eulerian observer.

Definition at line 150 of file compobj.h.

The documentation for this class was generated from the following files:

- compobj.h
- compobj_QI.C
- compobj_QI_global.C