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

Class for stationary axisymmetric boson stars (under development). More...

`#include <boson_star.h>`

Inheritance diagram for Lorene::Boson_star:

## Public Member Functions

| Boson_star (Map &mp_i, double m, int k)
| Standard constructor.
| Boson_star (const Boson_star &)
| Copy constructor.
| Boson_star (Map &mp_i, FILE *fich)
| Constructor from a file (see `sauve(FILE*)` ).
virtual | ~Boson_star ()
| Destructor.
void | operator= (const Boson_star &)
| Assignment to another `Boson_star`.
const Scalar & | get_rphi () const
| Returns the real part of the scalar field.
const Scalar & | get_iphi () const
| Returns the imaginary part of the scalar field.
Scalar & | set_rphi ()
| Sets a value to the real part of the scalar field.
Scalar & | set_iphi ()
| Sets a value to the imaginary part of the scalar field.
virtual void | sauve (FILE *) const
| Save in a file.
void | update_ener_mom ()
| Computes the 3+1 components of the energy-momentum tensor (E, P_i and S_{ij}) from the values of the scalar field and the metric.
virtual void | equilibrium (double rphi_c, double iphi_c, int nzadapt, const Tbl &ent_limit, const Itbl &icontrol, const Tbl &control, Tbl &diff, Param *=0x0)
| Solves the equation satisfied by the scalar field.
const Scalar & | get_logn () const
| Returns the logarithm of the lapse N.
const Scalar & | get_tnphi () const
| Returns the component of the shift vector.
const Scalar & | get_nuf () const
| Returns the part of the Metric potential = `logn` generated by the matter terms.
const Scalar & | get_nuq () const
| Returns the Part of the Metric potential = `logn` generated by the quadratic terms.
const Scalar & | get_dzeta () const
| Returns the Metric potential .
const Scalar & | get_tggg () const
| Returns the Metric potential .
const Vector & | get_w_shift () const
| Returns the vector used in the decomposition of `shift` , following Shibata's prescription [Prog.
const Scalar & | get_khi_shift () const
| Returns the scalar used in the decomposition of `shift` following Shibata's prescription [Prog.
virtual double | mass_g () const
| Gravitational mass.
virtual double | angu_mom () const
| Angular momentum.
virtual double | grv2 () const
| Error on the virial identity GRV2.
virtual double | grv3 (ostream *ost=0x0) const
| Error on the virial identity GRV3.
virtual double | mom_quad () const
| Quadrupole moment.
void | update_metric ()
| Computes metric coefficients from known potentials.
void | fait_shift ()
| Computes `shift` from `w_shift` and `khi_shift` according to Shibata's prescription [Prog.
void | fait_nphi ()
| Computes `tnphi` and `nphi` from the Cartesian components of the shift, stored in `shift` .
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 .
void | gyoto_data (const char *file_name) const
| Save in a file for GYOTO.
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 | 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).

## Static Public Member Functions

static double | lambda_grv2 (const Scalar &sou_m, const Scalar &sou_q)
| Computes the coefficient which ensures that the GRV2 virial identity is satisfied.

## Protected Member Functions

virtual void | del_deriv () const
| Deletes all the derived quantities.
virtual 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 | rphi
| Real part of the scalar field Phi.
Scalar | iphi
| Imaginary part of the scalar field Phi.
double | omega
| Coefficient omega in the time dependence of Phi.
int | kkk
| Coefficient kkk in the azimuthal dependence of Phi.
double | mmm
| Boson mass.
double | m2
| Boson mass squared.
Scalar | logn
| Logarithm of the lapse N .
Scalar | tnphi
| Component of the shift vector.
Scalar | nuf
| Part of the Metric potential = `logn` generated by the matter terms.
Scalar | nuq
| Part of the Metric potential = `logn` generated by the quadratic terms.
Scalar | dzeta
| Metric potential .
Scalar | tggg
| Metric potential .
Vector | w_shift
| Vector used in the decomposition of `shift` , following Shibata's prescription [Prog.
Scalar | khi_shift
| Scalar used in the decomposition of `shift` , following Shibata's prescription [Prog.
Scalar | ssjm1_nuf
| Effective source at the previous step for the resolution of the Poisson equation for `nuf` by means of `Map_et::poisson` .
Scalar | ssjm1_nuq
| Effective source at the previous step for the resolution of the Poisson equation for `nuq` by means of `Map_et::poisson` .
Scalar | ssjm1_dzeta
| Effective source at the previous step for the resolution of the Poisson equation for `dzeta` .
Scalar | ssjm1_tggg
| Effective source at the previous step for the resolution of the Poisson equation for `tggg` .
Scalar | ssjm1_khi
| Effective source at the previous step for the resolution of the Poisson equation for the scalar by means of `Map_et::poisson` .
Vector | ssjm1_wshift
| Effective source at the previous step for the resolution of the vector Poisson equation for .
double * | p_grv2
| Error on the virial identity GRV2.
double * | p_grv3
| Error on the virial identity GRV3.
double * | p_mom_quad
| Quadrupole moment.
double * | p_mass_g
| Gravitational mass (ADM mass as a volume integral).
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

Class for stationary axisymmetric boson stars (under development).

()

Definition at line 64 of file boson_star.h.

## Constructor & Destructor Documentation

## Boson_star() [1/3]

Lorene::Boson_star::Boson_star | ( | Map & | mp_i,
|  | double | m,
|  | int | k )

Standard constructor.

Parameters

  mp_i | Mapping on which the star is contructed
  m | Boson mass //## which unit ?
  k | Coefficient k in the azimuthal dependence of Phi

Definition at line 64 of file boson_star.C.

References iphi, kkk, m2, Lorene::Map(), mmm, omega, rphi, set_der_0x0(), and Lorene::Star_QI::Star_QI().

## Boson_star() [2/3]

Lorene::Boson_star::Boson_star | ( | const Boson_star & | st | ) |

Copy constructor.

Definition at line 84 of file boson_star.C.

References Boson_star(), iphi, kkk, m2, mmm, omega, rphi, set_der_0x0(), and Lorene::Star_QI::Star_QI().

## Boson_star() [3/3]

Lorene::Boson_star::Boson_star | ( | Map & | mp_i,
|  | FILE * | fich )

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

Parameters

  mp_i | Mapping on which the star is constructed
  fich | input file (must have been created by the function `Boson_star::sauve` )

Definition at line 100 of file boson_star.C.

References Lorene::fread_be(), Lorene::get_mg(), iphi, kkk, m2, Lorene::Map(), mmm, omega, rphi, set_der_0x0(), and Lorene::Star_QI::Star_QI().

## ~Boson_star()

Lorene::Boson_star::~Boson_star | ( |  | ) |

virtual

Destructor.

Definition at line 119 of file boson_star.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::Star_QI::angu_mom | ( |  | ) | const

virtual inherited

Angular momentum.

Reimplemented from Lorene::Compobj_QI.

Definition at line 96 of file star_QI_global.C.

References Lorene::Compobj_QI::a_car, Lorene::Compobj_QI::b_car, Lorene::Compobj_QI::bbb, Lorene::Scalar::get_spectral_va(), Lorene::Scalar::integrale(), Lorene::Compobj::mom_euler, Lorene::Compobj::mp, Lorene::Scalar::mult_r(), Lorene::Valeur::mult_st(), Lorene::Compobj_QI::p_angu_mom, and Lorene::Scalar::set_spectral_va().

## del_deriv()

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

protected virtual

Deletes all the derived quantities.

Reimplemented from Lorene::Star_QI.

Definition at line 130 of file boson_star.C.

References Lorene::Star_QI::del_deriv(), and set_der_0x0().

## equilibrium()

void Lorene::Boson_star::equilibrium | ( | double | rphi_c,
|  | double | iphi_c,
|  | int | nzadapt,
|  | const Tbl & | ent_limit,
|  | const Itbl & | icontrol,
|  | const Tbl & | control,
|  | Tbl & | diff,
|  | Param * | = 0x0 )

virtual

Solves the equation satisfied by the scalar field.

Computes an equilibrium configuration.

Parameters

  rphi_c | [input] Central value of the real part of the scalar field
  iphi_c | [input] Central value of the imaginary part of the scalar field
  nzadapt | [input] Number of (inner) domains where the mapping adaptation to an iso-enthalpy surface should be performed
  ent_limit | [input] 1-D `Tbl` of dimension `nzet` which defines the enthalpy at the outer boundary of each domain

  icontrol

  [input] Set of integer parameters (stored as a 1-D `Itbl` of size 8) to control the iteration:
  - `icontrol(0)` = mer_max : maximum number of steps
  - `icontrol(1)` = mer_rot : step at which the rotation is switched on
  - `icontrol(2)` = mer_change_omega : step at which the rotation velocity is changed to reach the final one
  - `icontrol(3)` = mer_fix_omega : step at which the final rotation velocity must have been reached
  - `icontrol(4)` = mer_mass : the absolute value of `mer_mass` is the step from which the baryon mass is forced to converge, by varying the central enthalpy (`mer_mass>0` ) or the angular velocity (`mer_mass<0` )
  - `icontrol(5)` = mermax_poisson : maximum number of steps in `Map_et::poisson`
  - `icontrol(6)` = mer_triax : step at which the 3-D perturbation is switched on
  - `icontrol(7)` = delta_mer_kep : number of steps after `mer_fix_omega` when `omega` starts to be increased by `fact_omega` to search for the Keplerian velocity

  control

  [input] Set of parameters (stored as a 1-D `Tbl` of size 7) to control the iteration:
  - `control(0)` = precis : threshold on the enthalpy relative change for ending the computation
  - `control(1)` = omega_ini : initial angular velocity, switched on only if `mer_rot<0` , otherwise 0 is used
  - `control(2)` = relax : relaxation factor in the main iteration
  - `control(3)` = relax_poisson : relaxation factor in `Map_et::poisson`
  - `control(4)` = thres_adapt : threshold on dH/dr for freezing the adaptation of the mapping
  - `control(5)` = ampli_triax : relative amplitude of the 3-D perturbation
  - `control(6)` = precis_adapt : precision for `Map_et::adapt`

  diff

  [output] 1-D `Tbl` of size 7 for the storage of some error indicators :
  - `diff(0)` : Relative change in the enthalpy field between two successive steps
  - `diff(1)` : Relative error in the resolution of the Poisson equation for `nuf`
  - `diff(2)` : Relative error in the resolution of the Poisson equation for `nuq`
  - `diff(3)` : Relative error in the resolution of the Poisson equation for `dzeta`
  - `diff(4)` : Relative error in the resolution of the Poisson equation for `tggg`
  - `diff(5)` : Relative error in the resolution of the equation for `shift` (x comp.)
  - `diff(6)` : Relative error in the resolution of the equation for `shift` (y comp.)

Definition at line 70 of file boson_star_equil.C.

References Lorene::Compobj_QI::a_car, Lorene::Param::add_cmp_mod(), Lorene::Param::add_double(), Lorene::Param::add_double_mod(), Lorene::Param::add_int(), Lorene::Param::add_int_mod(), Lorene::Param::add_tbl(), Lorene::Param::add_tenseur_mod(), Lorene::Compobj_QI::ak_car, Lorene::Compobj_QI::b_car, Lorene::Compobj_QI::bbb, Lorene::Compobj::beta, Lorene::Valeur::c_cf, Lorene::Vector::change_triad(), Lorene::Valeur::coef(), Lorene::contract(), Lorene::cos(), Lorene::Scalar::derive_con(), Lorene::Scalar::derive_cov(), Lorene::diffrel(), Lorene::Star_QI::dzeta, Lorene::Compobj::ener_euler, Lorene::Star_QI::fait_nphi(), Lorene::Compobj::gamma, Lorene::Mg3d::get_np(), Lorene::Mg3d::get_nr(), Lorene::Mg3d::get_nt(), Lorene::Mg3d::get_nzone(), Lorene::Mg3d::get_type_t(), Lorene::Star_QI::khi_shift, Lorene::Compobj::kk, Lorene::log(), Lorene::log10(), Lorene::Star_QI::logn, Lorene::Compobj::mom_euler, Lorene::Compobj::mp, Lorene::Scalar::mult_rsint(), Lorene::Compobj::nn, Lorene::Star_QI::nuf, Lorene::Star_QI::nuq, Lorene::phi, Lorene::Scalar::poisson(), Lorene::Tenseur::poisson_vect(), rphi, Lorene::Tbl::set(), Lorene::Tenseur::set(), Lorene::Vector::set(), Lorene::Tbl::set_etat_qcq(), Lorene::Tenseur::set_etat_qcq(), Lorene::Cmp::set_etat_zero(), Lorene::sint, Lorene::sqrt(), Lorene::Star_QI::ssjm1_khi, Lorene::Star_QI::ssjm1_nuf, Lorene::Star_QI::ssjm1_nuq, Lorene::Star_QI::ssjm1_tggg, Lorene::Star_QI::ssjm1_wshift, Lorene::Scalar::std_spectral_base(), Lorene::Compobj::stress_euler, Lorene::Scalar::test_poisson(), Lorene::Star_QI::tggg, Lorene::Tensor::up(), update_ener_mom(), Lorene::Star_QI::update_metric(), and Lorene::Star_QI::w_shift.

## espec_isco()

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

virtual inherited

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 inherited

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 inherited

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

## fait_nphi()

void Lorene::Star_QI::fait_nphi | ( |  | ) |

inherited

Computes `tnphi` and `nphi` from the Cartesian components of the shift, stored in `shift` .

Definition at line 386 of file star_QI.C.

References Lorene::Compobj::beta, Lorene::Compobj::mp, Lorene::Compobj_QI::nphi, and tnphi.

## fait_shift()

void Lorene::Star_QI::fait_shift | ( |  | ) |

inherited

Computes `shift` from `w_shift` and `khi_shift` according to Shibata's prescription [Prog.

Theor. Phys. 101 , 1199 (1999)] :

Definition at line 340 of file star_QI.C.

References Lorene::Compobj::beta, Lorene::contract(), Lorene::cost, Lorene::Tensor::dec_dzpuis(), Lorene::Scalar::domain(), khi_shift, Lorene::Compobj::mp, Lorene::Vector::set(), Lorene::Scalar::set_domain(), Lorene::Scalar::set_dzpuis(), Lorene::Vector::std_spectral_base(), and w_shift.

## get_a_car()

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

inline inherited

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 inherited

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 inherited

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 inherited

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

const Scalar & Lorene::Star_QI::get_dzeta | ( |  | ) | const

inline inherited

Returns the Metric potential .

Definition at line 655 of file compobj.h.

References dzeta.

## 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_iphi()

const Scalar & Lorene::Boson_star::get_iphi | ( |  | ) | const

inline

Returns the imaginary part of the scalar field.

Definition at line 150 of file boson_star.h.

References iphi.

## get_khi_shift()

const Scalar & Lorene::Star_QI::get_khi_shift | ( |  | ) | const

inline inherited

Returns the scalar used in the decomposition of `shift`
following Shibata's prescription [Prog.

Theor. Phys. 101 , 1199 (1999)] :

NB: `w_shift` contains the components of with respect to the Cartesian triad associated with the mapping `mp` .

Definition at line 686 of file compobj.h.

References khi_shift.

## 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_logn()

const Scalar & Lorene::Star_QI::get_logn | ( |  | ) | const

inline inherited

Returns the logarithm of the lapse N.

Definition at line 636 of file compobj.h.

References logn.

## 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 inherited

Returns the metric coefficient .

Definition at line 384 of file compobj.h.

References nphi.

## get_nuf()

const Scalar & Lorene::Star_QI::get_nuf | ( |  | ) | const

inline inherited

Returns the part of the Metric potential = `logn` generated by the matter terms.

Definition at line 647 of file compobj.h.

References nuf.

## get_nuq()

const Scalar & Lorene::Star_QI::get_nuq | ( |  | ) | const

inline inherited

Returns the Part of the Metric potential = `logn` generated by the quadratic terms.

Definition at line 652 of file compobj.h.

References nuq.

## get_rphi()

const Scalar & Lorene::Boson_star::get_rphi | ( |  | ) | const

inline

Returns the real part of the scalar field.

Definition at line 146 of file boson_star.h.

References rphi.

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

## get_tggg()

const Scalar & Lorene::Star_QI::get_tggg | ( |  | ) | const

inline inherited

Returns the Metric potential .

Definition at line 658 of file compobj.h.

References tggg.

## get_tnphi()

const Scalar & Lorene::Star_QI::get_tnphi | ( |  | ) | const

inline inherited

Returns the component of the shift vector.

Definition at line 642 of file compobj.h.

References tnphi.

## get_w_shift()

const Vector & Lorene::Star_QI::get_w_shift | ( |  | ) | const

inline inherited

Returns the vector used in the decomposition of `shift` , following Shibata's prescription [Prog.

Theor. Phys. 101 , 1199 (1999)] :

NB: `w_shift` contains the components of with respect to the Cartesian triad associated with the mapping `mp` .

Definition at line 672 of file compobj.h.

References w_shift.

## grv2()

double Lorene::Star_QI::grv2 | ( |  | ) | const

virtual inherited

Error on the virial identity GRV2.

This indicator is only valid for relativistic computations.

Definition at line 123 of file star_QI_global.C.

References Lorene::Compobj_QI::a_car, Lorene::Compobj_QI::ak_car, Lorene::Compobj_QI::b_car, lambda_grv2(), logn, Lorene::Compobj::mp, p_grv2, and Lorene::Compobj::stress_euler.

## grv3()

double Lorene::Star_QI::grv3 | ( | ostream * | ost = 0x0 | ) | const

virtual inherited

Error on the virial identity GRV3.

The error is computed as the integral defined by Eq. (43) of [Gourgoulhon and Bonazzola, Class. Quantum Grav. 11, 443 (1994)] divided by the integral of the matter terms.

Parameters

  ost | output stream to give details of the computation; if set to 0x0 [default value], no details will be given.

Definition at line 148 of file star_QI_global.C.

References Lorene::Compobj_QI::a_car, Lorene::Compobj_QI::ak_car, Lorene::Compobj_QI::bbb, Lorene::Scalar::derive_cov(), Lorene::Scalar::dsdr(), dzeta, Lorene::Compobj::gamma, Lorene::Scalar::get_dzpuis(), Lorene::Scalar::get_etat(), Lorene::Scalar::integrale(), Lorene::log(), logn, Lorene::Compobj::mp, Lorene::Valeur::mult_ct(), p_grv3, Lorene::Scalar::set_dzpuis(), Lorene::Scalar::set_spectral_va(), Lorene::Scalar::srdsdt(), Lorene::Valeur::ssint(), Lorene::Scalar::std_spectral_base(), Lorene::Compobj::stress_euler, Lorene::Valeur::sx(), and Lorene::Map_radial::xsr.

## gyoto_data()

void Lorene::Compobj_QI::gyoto_data | ( | const char * | file_name | ) | const

inherited

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

## lambda_grv2()

double Lorene::Star_QI::lambda_grv2 | ( | const Scalar & | sou_m,
|  | const Scalar & | sou_q )

static inherited

Computes the coefficient which ensures that the GRV2 virial identity is satisfied.

is the coefficient by which one must multiply the quadratic source term of the 2-D Poisson equation

in order that the total source does not contain any monopolar term, i.e. in order that

where . is computed according to the formula

Then, by construction, the new source has a vanishing monopolar term.

Parameters

  sou_m | [input] matter source term
  sou_q | [input] quadratic source term

Returns
  value of

Definition at line 321 of file star_QI_global.C.

References Lorene::Scalar::check_dzpuis(), Lorene::Valeur::coef_i(), Lorene::Map_radial::dxdr, Lorene::Map_af::get_alpha(), Lorene::Map_af::get_beta(), Lorene::Scalar::get_etat(), Lorene::Tbl::get_etat(), Lorene::Valeur::get_etat(), Lorene::Mg3d::get_grille3d(), Lorene::Tensor::get_mp(), Lorene::Mg3d::get_np(), Lorene::Mg3d::get_nr(), Lorene::Mg3d::get_nt(), Lorene::Mg3d::get_nzone(), Lorene::Scalar::get_spectral_va(), Lorene::Mg3d::get_type_r(), Lorene::Map_af::set_alpha(), Lorene::Map_af::set_beta(), Lorene::Mtbl::t, Lorene::Tbl::t, Lorene::Grille3d::x, and Lorene::Map_radial::xsr.

## lspec_isco()

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

virtual inherited

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

## mass_g()

double Lorene::Star_QI::mass_g | ( |  | ) | const

virtual inherited

Gravitational mass.

Definition at line 64 of file star_QI_global.C.

References Lorene::Compobj_QI::a_car, Lorene::Compobj_QI::b_car, Lorene::Compobj_QI::bbb, Lorene::Compobj::ener_euler, Lorene::Compobj::gamma, Lorene::Scalar::integrale(), Lorene::Compobj::mom_euler, Lorene::Compobj::nn, p_mass_g, Lorene::Scalar::std_spectral_base(), Lorene::Compobj::stress_euler, and tnphi.

## mom_quad()

double Lorene::Star_QI::mom_quad | ( |  | ) | const

virtual inherited

Quadrupole moment.

The quadrupole moment Q is defined according to Eq. (7) of [Salgado, Bonazzola, Gourgoulhon and Haensel, Astron. Astrophys. 291 , 155 (1994)]. At the Newtonian limit it is related to the component of the MTW (1973) reduced quadrupole moment by: . Note that Q is the negative of the quadrupole moment defined by Laarakkers and Poisson, Astrophys. J. 512 , 282 (1999).

Definition at line 250 of file star_QI_global.C.

References Lorene::Compobj_QI::a_car, Lorene::Compobj_QI::ak_car, Lorene::Compobj_QI::bbb, Lorene::Scalar::check_dzpuis(), Lorene::Scalar::derive_cov(), Lorene::Compobj::ener_euler, Lorene::Compobj::gamma, Lorene::Scalar::get_etat(), Lorene::Scalar::inc_dzpuis(), Lorene::Scalar::integrale(), Lorene::log(), logn, Lorene::Compobj::mp, Lorene::Valeur::mult_ct(), Lorene::Scalar::mult_r(), p_mom_quad, Lorene::Scalar::set_spectral_va(), Lorene::Scalar::std_spectral_base(), and Lorene::Compobj::stress_euler.

## operator=()

void Lorene::Boson_star::operator= | ( | const Boson_star & | st | ) |

Assignment to another `Boson_star`.

Definition at line 148 of file boson_star.C.

References Boson_star(), del_deriv(), iphi, kkk, m2, mmm, omega, Lorene::Star_QI::operator=(), and rphi.

## operator>>()

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

protected virtual

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

Reimplemented from Lorene::Star_QI.

Definition at line 183 of file boson_star.C.

References iphi, kkk, Lorene::Star_QI::mass_g(), mmm, omega, Lorene::Star_QI::operator>>(), and rphi.

## r_isco()

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

virtual inherited

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 inherited

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::Boson_star::sauve | ( | FILE * | fich | ) | const

virtual

Save in a file.

Reimplemented from Lorene::Star_QI.

Definition at line 169 of file boson_star.C.

References Lorene::fwrite_be(), iphi, kkk, mmm, omega, rphi, and Lorene::Star_QI::sauve().

## set_der_0x0()

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

protected virtual

Sets to `0x0` all the pointers on derived quantities.

Reimplemented from Lorene::Star_QI.

Definition at line 138 of file boson_star.C.

## set_iphi()

Scalar & Lorene::Boson_star::set_iphi | ( |  | ) |

inline

Sets a value to the imaginary part of the scalar field.

Definition at line 158 of file boson_star.h.

References del_deriv(), and iphi.

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

## set_rphi()

Scalar & Lorene::Boson_star::set_rphi | ( |  | ) |

inline

Sets a value to the real part of the scalar field.

Definition at line 154 of file boson_star.h.

References del_deriv(), and rphi.

## update_ener_mom()

void Lorene::Boson_star::update_ener_mom | ( |  | ) |

Computes the 3+1 components of the energy-momentum tensor (E, P_i and S_{ij}) from the values of the scalar field and the metric.

Definition at line 211 of file boson_star.C.

References Lorene::Compobj::ener_euler, Lorene::Compobj::gamma, Lorene::Scalar::inc_dzpuis(), iphi, kkk, m2, Lorene::Compobj::mom_euler, Lorene::Compobj::mp, Lorene::Compobj::nn, Lorene::Compobj_QI::nphi, omega, rphi, Lorene::Compobj::stress_euler, and Lorene::Tensor::trace().

## update_metric()

void Lorene::Star_QI::update_metric | ( |  | ) |

virtual inherited

Computes metric coefficients from known potentials.

The calculation is performed starting from the quantities `logn` , `dzeta` , `tggg` and `shift` , which are supposed to be up to date.
From these, the following fields are updated: `nnn` , `a_car` , `bbb` and `b_car`, as well as the 3-metric `gamma`.

Reimplemented from Lorene::Compobj_QI.

Definition at line 410 of file star_QI.C.

References Lorene::Compobj_QI::a_car, Lorene::Compobj_QI::b_car, Lorene::Compobj_QI::bbb, del_deriv(), Lorene::Scalar::div_rsint(), dzeta, Lorene::exp(), logn, Lorene::Compobj::nn, tggg, and Lorene::Compobj_QI::update_metric().

## Member Data Documentation

## a_car

Scalar Lorene::Compobj_QI::a_car

protected inherited

Square of the metric factor A.

Definition at line 287 of file compobj.h.

## ak_car

Scalar Lorene::Compobj_QI::ak_car

protected inherited

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 inherited

Square of the metric factor B.

Definition at line 293 of file compobj.h.

## bbb

Scalar Lorene::Compobj_QI::bbb

protected inherited

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.

## dzeta

Scalar Lorene::Star_QI::dzeta

protected inherited

Metric potential .

Definition at line 513 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.

## iphi

Scalar Lorene::Boson_star::iphi

protected

Imaginary part of the scalar field Phi.

Definition at line 76 of file boson_star.h.

## khi_shift

Scalar Lorene::Star_QI::khi_shift

protected inherited

Scalar used in the decomposition of `shift` , following Shibata's prescription [Prog.

Theor. Phys. 101 , 1199 (1999)] :

Definition at line 539 of file compobj.h.

## kk

Sym_tensor Lorene::Compobj::kk

protected inherited

Extrinsic curvature tensor .

Definition at line 153 of file compobj.h.

## kkk

int Lorene::Boson_star::kkk

protected

Coefficient kkk in the azimuthal dependence of Phi.

Definition at line 84 of file boson_star.h.

## logn

Scalar Lorene::Star_QI::logn

protected inherited

Logarithm of the lapse N .

Definition at line 495 of file compobj.h.

## m2

double Lorene::Boson_star::m2

protected

Boson mass squared.

Definition at line 92 of file boson_star.h.

## mmm

double Lorene::Boson_star::mmm

protected

Boson mass.

Definition at line 88 of file boson_star.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 inherited

Metric coefficient .

Definition at line 296 of file compobj.h.

## nuf

Scalar Lorene::Star_QI::nuf

protected inherited

Part of the Metric potential = `logn` generated by the matter terms.

Definition at line 505 of file compobj.h.

## nuq

Scalar Lorene::Star_QI::nuq

protected inherited

Part of the Metric potential = `logn` generated by the quadratic terms.

Definition at line 510 of file compobj.h.

## omega

double Lorene::Boson_star::omega

protected

Coefficient omega in the time dependence of Phi.

Definition at line 80 of file boson_star.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 inherited

Angular momentum.

Definition at line 321 of file compobj.h.

## p_espec_isco

double* Lorene::Compobj_QI::p_espec_isco

mutable protected inherited

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 inherited

Orbital frequency of the ISCO.

Definition at line 323 of file compobj.h.

## p_grv2

double* Lorene::Star_QI::p_grv2

mutable protected inherited

Error on the virial identity GRV2.

Definition at line 585 of file compobj.h.

## p_grv3

double* Lorene::Star_QI::p_grv3

mutable protected inherited

Error on the virial identity GRV3.

Definition at line 586 of file compobj.h.

## p_lspec_isco

double* Lorene::Compobj_QI::p_lspec_isco

mutable protected inherited

Specific angular momentum of a particle at the ISCO.

Definition at line 327 of file compobj.h.

## p_mass_g

double* Lorene::Star_QI::p_mass_g

mutable protected inherited

Gravitational mass (ADM mass as a volume integral).

Definition at line 588 of file compobj.h.

## p_mom_quad

double* Lorene::Star_QI::p_mom_quad

mutable protected inherited

Quadrupole moment.

Definition at line 587 of file compobj.h.

## p_r_isco

double* Lorene::Compobj_QI::p_r_isco

mutable protected inherited

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 inherited

Coordinate r of the marginally bound orbit.

Definition at line 328 of file compobj.h.

## rphi

Scalar Lorene::Boson_star::rphi

protected

Real part of the scalar field Phi.

Definition at line 72 of file boson_star.h.

## ssjm1_dzeta

Scalar Lorene::Star_QI::ssjm1_dzeta

protected inherited

Effective source at the previous step for the resolution of the Poisson equation for `dzeta` .

Definition at line 556 of file compobj.h.

## ssjm1_khi

Scalar Lorene::Star_QI::ssjm1_khi

protected inherited

Effective source at the previous step for the resolution of the Poisson equation for the scalar by means of `Map_et::poisson` .

is an intermediate quantity for the resolution of the elliptic equation for the shift vector

Definition at line 569 of file compobj.h.

## ssjm1_nuf

Scalar Lorene::Star_QI::ssjm1_nuf

protected inherited

Effective source at the previous step for the resolution of the Poisson equation for `nuf` by means of `Map_et::poisson` .

Definition at line 545 of file compobj.h.

## ssjm1_nuq

Scalar Lorene::Star_QI::ssjm1_nuq

protected inherited

Effective source at the previous step for the resolution of the Poisson equation for `nuq` by means of `Map_et::poisson` .

Definition at line 551 of file compobj.h.

## ssjm1_tggg

Scalar Lorene::Star_QI::ssjm1_tggg

protected inherited

Effective source at the previous step for the resolution of the Poisson equation for `tggg` .

Definition at line 561 of file compobj.h.

## ssjm1_wshift

Vector Lorene::Star_QI::ssjm1_wshift

protected inherited

Effective source at the previous step for the resolution of the vector Poisson equation for .

is an intermediate quantity for the resolution of the elliptic equation for the shift vector (Components with respect to the Cartesian triad associated with the mapping `mp` )

Definition at line 578 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.

## tggg

Scalar Lorene::Star_QI::tggg

protected inherited

Metric potential .

Definition at line 516 of file compobj.h.

## tnphi

Scalar Lorene::Star_QI::tnphi

protected inherited

Component of the shift vector.

Definition at line 500 of file compobj.h.

## w_shift

Vector Lorene::Star_QI::w_shift

protected inherited

Vector used in the decomposition of `shift` , following Shibata's prescription [Prog.

Theor. Phys. 101 , 1199 (1999)] :

NB: `w_shift` contains the components of with respect to the Cartesian triad associated with the mapping `mp` .

Definition at line 529 of file compobj.h.

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

- boson_star.h
- boson_star.C
- boson_star_equil.C