Lorene::Etoile_bin Class Reference
[Stars and black holes]

Class for stars in binary system. More...

#include <etoile.h>

Inheritance diagram for Lorene::Etoile_bin:
Lorene::Etoile Lorene::Et_bin_bhns_extr Lorene::Et_bin_nsbh

List of all members.

Public Member Functions

 Etoile_bin (Map &mp_i, int nzet_i, bool relat, const Eos &eos_i, bool irrot, const Base_vect &ref_triad_i)
 Standard constructor.
 Etoile_bin (const Etoile_bin &)
 Copy constructor.
 Etoile_bin (Map &mp_i, const Eos &eos_i, const Base_vect &ref_triad_i, FILE *fich)
 Constructor from a file (see sauve(FILE*) ).
virtual ~Etoile_bin ()
 Destructor.
void operator= (const Etoile_bin &)
 Assignment to another Etoile_bin.
Tenseurset_logn_comp ()
 Read/write the part of the lapse logarithm (gravitational potential at the Newtonian limit) generated principaly by the companion star.
Tenseurset_pot_centri ()
 Read/write the centrifugal potential.
Tenseurset_w_shift ()
 Read/write of w_shift.
Tenseurset_khi_shift ()
 Read/write of khi_shift.
bool is_irrotational () const
 Returns true for an irrotational motion, false for a corotating one.
const Tenseurget_psi0 () const
 Returns the non-translational part of the velocity potential.
const Tenseurget_d_psi () const
 Returns the gradient of the velocity potential (Cartesian components with respect to ref_triad ).
const Tenseurget_wit_w () const
 Returns the spatial projection of the fluid 3-velocity with respect to the co-orbiting observer.
const Tenseurget_loggam () const
 Returns the logarithm of the Lorentz factor between the fluid and the co-orbiting observer.
const Tenseurget_logn_comp () const
 Returns the part of the lapse logarithm (gravitational potential at the Newtonian limit) generated principaly by the companion star.
const Tenseurget_d_logn_auto () const
 Returns the gradient of logn_auto (Cartesian components with respect to ref_triad ).
const Tenseurget_d_logn_auto_regu () const
 Returns the gradient of logn_auto_regu (Cartesian components with respect to ref_triad ).
const Tenseurget_d_logn_comp () const
 Returns the gradient of logn_comp (Cartesian components with respect to ref_triad ).
const Tenseurget_beta_comp () const
 Returns the part of the logarithm of AN generated principaly by the companion star.
const Tenseurget_d_beta_auto () const
 Returns the gradient of beta_auto (Cartesian components with respect to ref_triad ).
const Tenseurget_d_beta_comp () const
 Returns the gradient of beta_comp (Cartesian components with respect to ref_triad ).
const Tenseurget_shift_auto () const
 Returns the part of the shift vector $N^i$ generated principaly by the star.
const Tenseurget_shift_comp () const
 Returns the part of the shift vector $N^i$ generated principaly by the companion star.
const Tenseurget_w_shift () const
 Returns the vector $W^i$ used in the decomposition of shift_auto , following Shibata's prescription [Prog.
const Tenseurget_khi_shift () const
 Returns the scalar $\chi$ used in the decomposition of shift_auto following Shibata's prescription [Prog.
const Tenseur_symget_tkij_auto () const
 Returns the part of the extrinsic curvature tensor $\tilde K^{ij} = A^2 K^{ij}$ generated by shift_auto .
const Tenseur_symget_tkij_comp () const
 Returns the part of the extrinsic curvature tensor $\tilde K^{ij} = A^2 K^{ij}$ generated by shift_comp .
const Tenseurget_akcar_auto () const
 Returns the part of the scalar $A^2 K_{ij} K^{ij}$ generated by shift_auto , i.e.
const Tenseurget_akcar_comp () const
 Returns the part of the scalar $A^2 K_{ij} K^{ij}$ generated by shift_auto and shift_comp , i.e.
const Tenseurget_bsn () const
 Returns the shift vector, divided by N , of the rotating coordinates, $B^i/N$.
const Tenseurget_pot_centri () const
 Returns the centrifugal potential.
const Cmp get_decouple () const
 Returns the function used to construct tkij_auto from tkij_tot .
virtual void sauve (FILE *) const
 Save in a file.
virtual double mass_b () const
 Baryon mass.
virtual double mass_g () const
 Gravitational mass.
virtual double xa_barycenter () const
 Absolute coordinate X of the barycenter of the baryon density, defined according to the formula

\[ X_G := \int A^3 \Gamma_{\rm n} \, n \, X \, d^3x \ , \]

where $\Gamma_{\rm n}$ is the Lorentz factor between the fluid and Eulerian observers.

virtual Tenseur sprod (const Tenseur &t1, const Tenseur &t2) const
 Performs the scalar product of two tensors by contracting the last index of t1 with the first index of t2 .
virtual void hydro_euler ()
 Computes the hydrodynamical quantities relative to the Eulerian observer from those in the fluid frame, as well as wit_w and loggam .
void update_metric (const Etoile_bin &comp)
 Computes metric coefficients from known potentials, when the companion is another star.
void update_metric (const Etoile_bin &comp, const Etoile_bin &star_prev, double relax)
 Same as update_metric(const Etoile_bin& ) but with relaxation.
void update_metric_der_comp (const Etoile_bin &comp)
 Computes the derivative of metric functions related to the companion star.
virtual void kinematics (double omega, double x_axe)
 Computes the quantities bsn and pot_centri .
void fait_d_psi ()
 Computes the gradient of the total velocity potential $\psi$.
void fait_shift_auto ()
 Computes shift_auto from w_shift and khi_shift according to Shibata's prescription [Prog.
virtual void extrinsic_curvature ()
 Computes tkij_auto and akcar_auto from shift_auto , nnn and a_car .
void equilibrium (double ent_c, int mermax, int mermax_poisson, double relax_poisson, int mermax_potvit, double relax_potvit, double thres_adapt, const Tbl &fact, Tbl &diff, const Tbl *ent_limit=0x0)
 Computes an equilibrium configuration.
void equil_regular (double ent_c, int mermax, int mermax_poisson, double relax_poisson, int mermax_potvit, double relax_potvit, double thres_adapt, const Tbl &fact, Tbl &diff)
 Computes an equilibrium configuration by regularizing the diverging source.
double velocity_potential (int mermax, double precis, double relax)
 Computes the non-translational part of the velocity scalar potential $\psi0$ by solving the continuity equation.
void relaxation (const Etoile_bin &star_prev, double relax_ent, double relax_met, int mer, int fmer_met)
 Performs a relaxation on ent , logn_auto , beta_auto and shift_auto .
Mapset_mp ()
 Read/write of the mapping.
void set_enthalpy (const Cmp &)
 Assignment of the enthalpy field.
virtual void equation_of_state ()
 Computes the proper baryon and energy density, as well as pressure from the enthalpy.
virtual void equilibrium_spher (double ent_c, double precis=1.e-14, const Tbl *ent_limit=0x0)
 Computes a spherical static configuration.
void equil_spher_regular (double ent_c, double precis=1.e-14)
 Computes a spherical static configuration.
virtual void equil_spher_falloff (double ent_c, double precis=1.e-14)
 Computes a spherical static configuration with the outer boundary condition at a finite radius.
const Mapget_mp () const
 Returns the mapping.
int get_nzet () const
 Returns the number of domains occupied by the star.
bool is_relativistic () const
 Returns true for a relativistic star, false for a Newtonian one.
const Eosget_eos () const
 Returns the equation of state.
const Tenseurget_ent () const
 Returns the enthalpy field.
const Tenseurget_nbar () const
 Returns the proper baryon density.
const Tenseurget_ener () const
 Returns the proper total energy density.
const Tenseurget_press () const
 Returns the fluid pressure.
const Tenseurget_ener_euler () const
 Returns the total energy density with respect to the Eulerian observer.
const Tenseurget_s_euler () const
 Returns the trace of the stress tensor in the Eulerian frame.
const Tenseurget_gam_euler () const
 Returns the Lorentz factor between the fluid and Eulerian observers.
const Tenseurget_u_euler () const
 Returns the fluid 3-velocity with respect to the Eulerian observer.
const Tenseurget_logn_auto () const
 Returns the logarithm of the part of the lapse N generated principaly by the star.
const Tenseurget_logn_auto_regu () const
 Returns the regular part of the logarithm of the part of the lapse N generated principaly by the star.
const Tenseurget_logn_auto_div () const
 Returns the divergent part of the logarithm of the part of the lapse N generated principaly by the star.
const Tenseurget_d_logn_auto_div () const
 Returns the gradient of logn_auto_div.
const Tenseurget_beta_auto () const
 Returns the logarithm of the part of the product AN generated principaly by the star.
const Tenseurget_nnn () const
 Returns the total lapse function N.
const Tenseurget_shift () const
 Returns the total shift vector $N^i$.
const Tenseurget_a_car () const
 Returns the total conformal factor $A^2$.
double ray_eq () const
 Coordinate radius at $\phi=0$, $\theta=\pi/2$ [r_unit].
double ray_eq (int kk) const
 Coordinate radius at $\phi=2k\pi/np$, $\theta=\pi/2$ [r_unit].
double ray_eq_pis2 () const
 Coordinate radius at $\phi=\pi/2$, $\theta=\pi/2$ [r_unit].
double ray_eq_pi () const
 Coordinate radius at $\phi=\pi$, $\theta=\pi/2$ [r_unit].
double ray_eq_3pis2 () const
 Coordinate radius at $\phi=3\pi/2$, $\theta=\pi/2$ [r_unit].
double ray_pole () const
 Coordinate radius at $\theta=0$ [r_unit].
virtual const Itbll_surf () const
 Description of the stellar surface: returns a 2-D Itbl containing the values of the domain index l on the surface at the collocation points in $(\theta', \phi')$.
const Tblxi_surf () const
 Description of the stellar surface: returns a 2-D Tbl containing the values of the radial coordinate $\xi$ on the surface at the collocation points in $(\theta', \phi')$.

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 void del_hydro_euler ()
 Sets to ETATNONDEF (undefined state) the hydrodynamical quantities relative to the Eulerian observer.
virtual ostream & operator>> (ostream &) const
 Operator >> (virtual function called by the operator <<).

Protected Attributes

bool irrotational
 true for an irrotational star, false for a corotating one
const Base_vectref_triad
 Reference triad ("absolute frame"), with respect to which the components of all the member Tenseur 's are defined, except for w_shift and ssjm1_wshift .
Tenseur psi0
 Scalar potential $\Psi_0$ of the non-translational part of fluid 4-velocity (in the irrotational case).
Tenseur d_psi
 Gradient of $\Psi$ (in the irrotational case) (Cartesian components with respect to ref_triad ).
Tenseur wit_w
 Spatial projection of the fluid 3-velocity with respect to the co-orbiting observer.
Tenseur loggam
 Logarithm of the Lorentz factor between the fluid and the co-orbiting observer.
Tenseur logn_comp
 Part of the lapse logarithm (gravitational potential at the Newtonian limit) generated principaly by the companion star.
Tenseur d_logn_auto
 Gradient of logn_auto (Cartesian components with respect to ref_triad ).
Tenseur d_logn_auto_regu
 Gradient of logn_auto_regu (Cartesian components with respect to ref_triad ).
Tenseur d_logn_comp
 Gradient of logn_comp (Cartesian components with respect to ref_triad ).
Tenseur beta_comp
 Part of the logarithm of AN generated principaly by the companion star.
Tenseur d_beta_auto
 Gradient of beta_auto (Cartesian components with respect to ref_triad ).
Tenseur d_beta_comp
 Gradient of beta_comp (Cartesian components with respect to ref_triad ).
Tenseur shift_auto
 Part of the shift vector $N^i$ generated principaly by the star.
Tenseur shift_comp
 Part of the shift vector $N^i$ generated principaly by the companion star.
Tenseur w_shift
 Vector $W^i$ used in the decomposition of shift_auto , following Shibata's prescription [Prog.
Tenseur khi_shift
 Scalar $\chi$ used in the decomposition of shift_auto , following Shibata's prescription [Prog.
Tenseur_sym tkij_auto
 Part of the extrinsic curvature tensor $\tilde K^{ij} = A^2 K^{ij}$ generated by shift_auto .
Tenseur_sym tkij_comp
 Part of the extrinsic curvature tensor $\tilde K^{ij} = A^2 K^{ij}$ generated by shift_comp .
Tenseur akcar_auto
 Part of the scalar $A^2 K_{ij} K^{ij}$ generated by shift_auto , i.e.
Tenseur akcar_comp
 Part of the scalar $A^2 K_{ij} K^{ij}$ generated by shift_auto and shift_comp , i.e.
Tenseur bsn
 3-vector shift, divided by N , of the rotating coordinates, $B^i/N$.
Tenseur pot_centri
 Centrifugal potential.
Cmp ssjm1_logn
 Effective source at the previous step for the resolution of the Poisson equation for logn_auto by means of Map_et::poisson .
Cmp ssjm1_beta
 Effective source at the previous step for the resolution of the Poisson equation for beta_auto by means of Map_et::poisson .
Cmp ssjm1_khi
 Effective source at the previous step for the resolution of the Poisson equation for the scalar $\chi$ by means of Map_et::poisson .
Tenseur ssjm1_wshift
 Effective source at the previous step for the resolution of the vector Poisson equation for $W^i$ by means of Map_et::poisson .
Cmp ssjm1_psi
 Effective source at the previous step for the resolution of the Poisson equation for the scalar $\psi$ by means of Map_et::poisson_interne .
Cmp decouple
 Function used to construct the part of $K^{ij}$ generated by the star from the total $K^{ij}$.
double * p_xa_barycenter
 Absolute coordinate X of the barycenter of the baryon density.
Mapmp
 Mapping associated with the star.
int nzet
 Number of domains of *mp occupied by the star.
bool relativistic
 Indicator of relativity: true for a relativistic star, false for a Newtonian one.
double unsurc2
 $1/c^2$ : unsurc2=1 for a relativistic star, 0 for a Newtonian one.
int k_div
 Index of regularity of the gravitational potential logn_auto .
const Eoseos
 Equation of state of the stellar matter.
Tenseur ent
 Log-enthalpy (relativistic case) or specific enthalpy (Newtonian case).
Tenseur nbar
 Baryon density in the fluid frame.
Tenseur ener
 Total energy density in the fluid frame.
Tenseur press
 Fluid pressure.
Tenseur ener_euler
 Total energy density in the Eulerian frame.
Tenseur s_euler
 Trace of the stress tensor in the Eulerian frame.
Tenseur gam_euler
 Lorentz factor between the fluid and Eulerian observers.
Tenseur u_euler
 Fluid 3-velocity with respect to the Eulerian observer.
Tenseur logn_auto
 Total of the logarithm of the part of the lapse N generated principaly by the star.
Tenseur logn_auto_regu
 Regular part of the logarithm of the part of the lapse N generated principaly by the star.
Tenseur logn_auto_div
 Divergent part (if k_div!=0 ) of the logarithm of the part of the lapse N generated principaly by the star.
Tenseur d_logn_auto_div
 Gradient of logn_auto_div (if k_div!=0 ).
Tenseur beta_auto
 Logarithm of the part of the product AN generated principaly by by the star.
Tenseur nnn
 Total lapse function.
Tenseur shift
 Total shift vector.
Tenseur a_car
 Total conformal factor $A^2$.
double * p_ray_eq
 Coordinate radius at $\phi=0$, $\theta=\pi/2$.
double * p_ray_eq_pis2
 Coordinate radius at $\phi=\pi/2$, $\theta=\pi/2$.
double * p_ray_eq_pi
 Coordinate radius at $\phi=\pi$, $\theta=\pi/2$.
double * p_ray_eq_3pis2
 Coordinate radius at $\phi=3\pi/2$, $\theta=\pi/2$.
double * p_ray_pole
 Coordinate radius at $\theta=0$.
Itblp_l_surf
 Description of the stellar surface: 2-D Itbl containing the values of the domain index l on the surface at the collocation points in $(\theta', \phi')$.
Tblp_xi_surf
 Description of the stellar surface: 2-D Tbl containing the values of the radial coordinate $\xi$ on the surface at the collocation points in $(\theta', \phi')$.
double * p_mass_b
 Baryon mass.
double * p_mass_g
 Gravitational mass.

Friends

class Bin_ns_bh
 Friend class Bin_ns_bh.
ostream & operator<< (ostream &, const Etoile &)
 Display.

Detailed Description

Class for stars in binary system.

()

This class implements the formalism for corotating or irrotational systems presented in Bonazzola, Gourgoulhon & Marck Phys. Rev. Lett. 82 , 892 (1999). In particular, the conformal 3-metric $\tilde h_{ij}$ introduced in Eq.~(eetoilemetrique}) is flat.

An Etoile_bin can be construted in two states, represented by the bool member irrotational : (i) irrotational (i.e. the fluid motion is irrotational) or (ii) rigidly corotating with respect to the orbital motion (synchronized binary).

Definition at line 814 of file etoile.h.


Constructor & Destructor Documentation

Lorene::Etoile_bin::Etoile_bin ( Map mp_i,
int  nzet_i,
bool  relat,
const Eos eos_i,
bool  irrot,
const Base_vect ref_triad_i 
)

Standard constructor.

Parameters:
mp_i Mapping on which the star will be defined
nzet_i Number of domains occupied by the star
relat should be true for a relativistic star, false for a Newtonian one
eos_i Equation of state of the stellar matter
irrot should be true for an irrotational star, false for a corotating one
ref_triad_i Reference triad ("absolute frame"), with respect to which the components of all the member Tenseur 's are defined, except for w_shift and ssjm1_wshift whose components are defined with respect to the mapping mp Cartesian triad.

Definition at line 210 of file etoile_bin.C.

References akcar_auto, akcar_comp, beta_comp, bsn, d_beta_auto, d_beta_comp, d_logn_auto, d_logn_auto_regu, d_logn_comp, d_psi, khi_shift, loggam, logn_comp, pot_centri, psi0, ref_triad, Lorene::Tenseur::set(), set_der_0x0(), Lorene::Tenseur::set_etat_qcq(), Lorene::Tenseur::set_etat_zero(), Lorene::Tenseur::set_triad(), Lorene::Etoile::shift, shift_auto, shift_comp, ssjm1_beta, ssjm1_khi, ssjm1_logn, ssjm1_psi, ssjm1_wshift, tkij_auto, tkij_comp, Lorene::Etoile::u_euler, w_shift, and wit_w.

Lorene::Etoile_bin::Etoile_bin ( const Etoile_bin et  ) 

Copy constructor.

Definition at line 294 of file etoile_bin.C.

References set_der_0x0().

Lorene::Etoile_bin::Etoile_bin ( Map mp_i,
const Eos eos_i,
const Base_vect ref_triad_i,
FILE *  fich 
)

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

Parameters:
mp_i Mapping on which the star will be defined
eos_i Equation of state of the stellar matter
ref_triad_i Reference triad ("absolute frame"), with respect to which the components of all the member Tenseur 's are defined, except for w_shift and ssjm1_wshift whose components are defined with respect to the mapping mp Cartesian triad.
fich input file (must have been created by the function sauve )

Definition at line 332 of file etoile_bin.C.

References akcar_auto, akcar_comp, beta_comp, bsn, d_beta_auto, d_beta_comp, d_logn_auto, d_logn_auto_regu, d_logn_comp, d_psi, fait_shift_auto(), Lorene::Etoile::gam_euler, Lorene::Map::get_bvect_cart(), Lorene::Map::get_mg(), irrotational, khi_shift, loggam, logn_comp, Lorene::Etoile::mp, pot_centri, psi0, ref_triad, set_der_0x0(), Lorene::Tenseur::set_etat_zero(), Lorene::Tenseur::set_triad(), Lorene::Etoile::shift, shift_comp, ssjm1_beta, ssjm1_khi, ssjm1_logn, ssjm1_psi, ssjm1_wshift, tkij_auto, tkij_comp, Lorene::Etoile::u_euler, w_shift, and wit_w.

Lorene::Etoile_bin::~Etoile_bin (  )  [virtual]

Destructor.

Definition at line 440 of file etoile_bin.C.

References del_deriv().


Member Function Documentation

void Lorene::Etoile_bin::del_deriv (  )  const [protected, virtual]

Deletes all the derived quantities.

Reimplemented from Lorene::Etoile.

Definition at line 450 of file etoile_bin.C.

References p_xa_barycenter, and set_der_0x0().

void Lorene::Etoile_bin::del_hydro_euler (  )  [protected, virtual]

Sets to ETATNONDEF (undefined state) the hydrodynamical quantities relative to the Eulerian observer.

Reimplemented from Lorene::Etoile.

Definition at line 470 of file etoile_bin.C.

References del_deriv().

void Lorene::Etoile::equation_of_state (  )  [virtual, inherited]
void Lorene::Etoile_bin::equil_regular ( double  ent_c,
int  mermax,
int  mermax_poisson,
double  relax_poisson,
int  mermax_potvit,
double  relax_potvit,
double  thres_adapt,
const Tbl fact,
Tbl diff 
)

Computes an equilibrium configuration by regularizing the diverging source.

The values of logn_comp , beta_comp , pot_centri are held fixed during the iteration.

Parameters:
ent_c [input] Central enthalpy
ent_limit is the table of enthalpy values on the domain borders
mermax [input] Maximum number of steps
mermax_poisson [input] Maximum number of steps in Map_et::poisson
relax_poisson [input] Relaxation factor in Map_et::poisson
mermax_potvit [input] Maximum number of steps in Map_radial::poisson_compact
relax_potvit [input] Relaxation factor in Map_radial::poisson_compact
thres_adapt [input] Threshold on dH/dr for the adaptation of the mapping
fact [input] 1-D Tbl for the input of some factors :

  • fact(0) : A resizing factor for the first shell
diff [output] 1-D Tbl for the storage of some error indicators :

  • diff(0) : Relative change in the enthalpy field between two successive steps
  • diff(1) : Relative error returned by the routine Etoile_bin::velocity_potential
  • diff(2) : Relative error in the resolution of the Poisson equation for logn_auto
  • diff(3) : Relative error in the resolution of the Poisson equation for beta_auto
  • diff(4) : Relative error in the resolution of the equation for shift_auto (x comp.)
  • diff(5) : Relative error in the resolution of the equation for shift_auto (y comp.)
  • diff(6) : Relative error in the resolution of the equation for shift_auto (z comp.)

Definition at line 147 of file et_bin_equil_regu.C.

References Lorene::Etoile::a_car, Lorene::abs(), Lorene::Map::adapt(), Lorene::Param::add_cmp_mod(), Lorene::Param::add_double(), Lorene::Param::add_int(), Lorene::Param::add_int_mod(), Lorene::Param::add_tbl(), Lorene::Param::add_tenseur_mod(), akcar_auto, akcar_comp, Lorene::Etoile::beta_auto, Lorene::Tenseur::change_triad(), Lorene::contract(), d_beta_auto, d_beta_comp, d_logn_auto, Lorene::Etoile::d_logn_auto_div, d_logn_comp, Lorene::Tenseur::dec2_dzpuis(), Lorene::Eos::der_ener_ent_p(), Lorene::Eos::der_nbar_ent_p(), Lorene::diffrel(), Lorene::Etoile::ener_euler, Lorene::Etoile::ent, Lorene::Etoile::eos, Lorene::Etoile::equation_of_state(), Lorene::Cmp::filtre(), Lorene::flat_scalar_prod_desal(), Lorene::Map::get_bvect_cart(), Lorene::Map::get_mg(), Lorene::Mg3d::get_np(), Lorene::Mg3d::get_nr(), Lorene::Mg3d::get_nt(), Lorene::Mg3d::get_nzone(), Lorene::Tenseur::gradient(), Lorene::Map_et::homothetie(), hydro_euler(), Lorene::Tenseur::inc2_dzpuis(), irrotational, Lorene::Etoile::k_div, khi_shift, loggam, Lorene::Etoile::logn_auto, Lorene::Etoile::logn_auto_div, Lorene::Etoile::logn_auto_regu, logn_comp, Lorene::max(), Lorene::Etoile::mp, Lorene::Etoile::nbar, Lorene::Etoile::nnn, Lorene::Etoile::nzet, Lorene::Tenseur::poisson_vect_regu(), pot_centri, Lorene::Etoile::press, Lorene::Etoile::ray_eq(), Lorene::Etoile::ray_pole(), Lorene::Map::reevaluate_symy(), ref_triad, Lorene::Etoile::relativistic, Lorene::Map::resize(), Lorene::Etoile::s_euler, Lorene::Tenseur::set(), Lorene::Tbl::set(), Lorene::Tenseur::set_etat_qcq(), Lorene::Tbl::set_etat_qcq(), Lorene::Tenseur::set_std_base(), shift_auto, Lorene::sqrt(), ssjm1_beta, ssjm1_khi, ssjm1_logn, ssjm1_wshift, Lorene::Cmp::std_base_scal(), tkij_auto, Lorene::Etoile::u_euler, Lorene::Map::val_r(), velocity_potential(), and w_shift.

void Lorene::Etoile::equil_spher_falloff ( double  ent_c,
double  precis = 1.e-14 
) [virtual, inherited]
void Lorene::Etoile::equil_spher_regular ( double  ent_c,
double  precis = 1.e-14 
) [inherited]

Computes a spherical static configuration.

The sources for Poisson equations are regularized by extracting analytical diverging parts.

Parameters:
ent_c [input] central value of the enthalpy
precis [input] threshold in the relative difference between the enthalpy fields of two consecutive steps to stop the iterative procedure (default value: 1.e-14)

Definition at line 118 of file et_equil_spher_regu.C.

References Lorene::Etoile::a_car, Lorene::Tenseur::annule(), Lorene::Etoile::beta_auto, Lorene::Etoile::d_logn_auto_div, Lorene::Eos::der_ener_ent_p(), Lorene::Eos::der_nbar_ent_p(), Lorene::diffrel(), Lorene::Map_af::dsdr(), Lorene::Etoile::ener, Lorene::Etoile::ener_euler, Lorene::Etoile::ent, Lorene::Etoile::eos, Lorene::Etoile::equation_of_state(), Lorene::exp(), Lorene::Etoile::gam_euler, Lorene::Map::get_bvect_spher(), Lorene::Map::get_mg(), Lorene::Mg3d::get_nr(), Lorene::Mg3d::get_nt(), Lorene::Mg3d::get_nzone(), Lorene::Tenseur::gradient_spher(), Lorene::Map_af::homothetie(), Lorene::Etoile::k_div, Lorene::Etoile::logn_auto, Lorene::Etoile::logn_auto_div, Lorene::Etoile::logn_auto_regu, Lorene::Etoile::mass_b(), Lorene::Etoile::mass_g(), Lorene::Etoile::mp, Lorene::Etoile::nbar, Lorene::Etoile::nnn, Lorene::norme(), Lorene::Etoile::nzet, Lorene::Map_af::poisson(), Lorene::Map_af::poisson_regular(), Lorene::Etoile::press, Lorene::Etoile::relativistic, Lorene::Etoile::s_euler, Lorene::Tenseur::set(), Lorene::Tenseur::set_etat_qcq(), Lorene::Tenseur::set_std_base(), Lorene::Etoile::shift, Lorene::sqrt(), Lorene::Cmp::std_base_scal(), Lorene::Etoile::u_euler, Lorene::Etoile::unsurc2, and Lorene::Map::val_r().

void Lorene::Etoile_bin::equilibrium ( double  ent_c,
int  mermax,
int  mermax_poisson,
double  relax_poisson,
int  mermax_potvit,
double  relax_potvit,
double  thres_adapt,
const Tbl fact,
Tbl diff,
const Tbl ent_limit = 0x0 
)

Computes an equilibrium configuration.

The values of logn_comp , beta_comp , pot_centri are held fixed during the iteration.

Parameters:
ent_c [input] Central enthalpy
mermax [input] Maximum number of steps
mermax_poisson [input] Maximum number of steps in Map_et::poisson
relax_poisson [input] Relaxation factor in Map_et::poisson
mermax_potvit [input] Maximum number of steps in Map_radial::poisson_compact
relax_potvit [input] Relaxation factor in Map_radial::poisson_compact
thres_adapt [input] Threshold on dH/dr for the adaptation of the mapping
fact [input] 1-D Tbl for the input of some factors :

  • fact(0) : A resizing factor for the first shell
diff [output] 1-D Tbl for the storage of some error indicators :

  • diff(0) : Relative change in the enthalpy field between two successive steps
  • diff(1) : Relative error returned by the routine Etoile_bin::velocity_potential
  • diff(2) : Relative error in the resolution of the Poisson equation for logn_auto
  • diff(3) : Relative error in the resolution of the Poisson equation for beta_auto
  • diff(4) : Relative error in the resolution of the equation for shift_auto (x comp.)
  • diff(5) : Relative error in the resolution of the equation for shift_auto (y comp.)
  • diff(6) : Relative error in the resolution of the equation for shift_auto (z comp.)
ent_limit [input] : array of enthalpy values to be set at the boundaries between the domains; if set to 0x0 (default), the initial values will be kept.

Definition at line 187 of file et_bin_equilibrium.C.

References Lorene::Etoile::a_car, Lorene::abs(), Lorene::Map::adapt(), Lorene::Param::add_cmp_mod(), Lorene::Param::add_double(), Lorene::Param::add_int(), Lorene::Param::add_int_mod(), Lorene::Param::add_tbl(), Lorene::Param::add_tenseur_mod(), akcar_auto, akcar_comp, Lorene::Etoile::beta_auto, Lorene::Tenseur::change_triad(), Lorene::contract(), d_beta_auto, d_beta_comp, d_logn_auto, d_logn_comp, Lorene::Tenseur::dec2_dzpuis(), Lorene::diffrel(), Lorene::Etoile::ener_euler, Lorene::Etoile::ent, Lorene::Etoile::equation_of_state(), Lorene::Cmp::filtre(), Lorene::flat_scalar_prod_desal(), Lorene::Map::get_bvect_cart(), Lorene::Map::get_mg(), Lorene::Mg3d::get_np(), Lorene::Mg3d::get_nr(), Lorene::Mg3d::get_nt(), Lorene::Mg3d::get_nzone(), Lorene::Tenseur::gradient(), Lorene::Map_et::homothetie(), hydro_euler(), Lorene::Tenseur::inc2_dzpuis(), irrotational, khi_shift, loggam, Lorene::Etoile::logn_auto, Lorene::Etoile::logn_auto_regu, logn_comp, Lorene::max(), Lorene::Etoile::mp, Lorene::Etoile::nbar, Lorene::Etoile::nnn, Lorene::Etoile::nzet, Lorene::Tenseur::poisson_vect(), pot_centri, Lorene::Etoile::press, Lorene::Etoile::ray_eq(), Lorene::Etoile::ray_pole(), Lorene::Map::reevaluate_symy(), ref_triad, Lorene::Etoile::relativistic, Lorene::Map::resize(), Lorene::Etoile::s_euler, Lorene::Tenseur::set(), Lorene::Tbl::set(), Lorene::Tbl::set_etat_qcq(), Lorene::Tenseur::set_std_base(), shift_auto, Lorene::sqrt(), ssjm1_beta, ssjm1_khi, ssjm1_logn, ssjm1_wshift, tkij_auto, Lorene::Etoile::u_euler, Lorene::Map::val_r(), velocity_potential(), and w_shift.

void Lorene::Etoile::equilibrium_spher ( double  ent_c,
double  precis = 1.e-14,
const Tbl ent_limit = 0x0 
) [virtual, inherited]

Computes a spherical static configuration.

Parameters:
ent_c [input] central value of the enthalpy
precis [input] threshold in the relative difference between the enthalpy fields of two consecutive steps to stop the iterative procedure (default value: 1.e-14)
ent_limit [input] : array of enthalpy values to be set at the boundaries between the domains; if set to 0x0 (default), the initial values will be kept.

Definition at line 90 of file etoile_equil_spher.C.

References Lorene::Etoile::a_car, Lorene::Map_et::adapt(), Lorene::Param::add_double(), Lorene::Param::add_int(), Lorene::Param::add_int_mod(), Lorene::Param::add_tbl(), Lorene::Tenseur::annule(), Lorene::Etoile::beta_auto, Lorene::diffrel(), Lorene::Cmp::dsdr(), Lorene::Map_af::dsdr(), Lorene::Etoile::ener, Lorene::Etoile::ener_euler, Lorene::Etoile::ent, Lorene::Etoile::equation_of_state(), Lorene::exp(), Lorene::Etoile::gam_euler, Lorene::Map_et::get_alpha(), Lorene::Map_af::get_alpha(), Lorene::Map_et::get_beta(), Lorene::Map_af::get_beta(), Lorene::Etoile::get_ent(), Lorene::Map::get_mg(), Lorene::Mg3d::get_nr(), Lorene::Mg3d::get_nt(), Lorene::Mg3d::get_nzone(), Lorene::Etoile::get_press(), Lorene::Map_af::homothetie(), Lorene::Etoile::logn_auto, Lorene::Etoile::mass_b(), Lorene::Etoile::mass_g(), Lorene::Etoile::mp, Lorene::Etoile::nbar, Lorene::Etoile::nnn, Lorene::norme(), Lorene::Etoile::nzet, Lorene::Map_af::poisson(), Lorene::Etoile::press, Lorene::Etoile::relativistic, Lorene::Etoile::s_euler, Lorene::Tenseur::set(), Lorene::Map_af::set_alpha(), Lorene::Map_af::set_beta(), Lorene::Tenseur::set_etat_qcq(), Lorene::Tenseur::set_std_base(), Lorene::Etoile::shift, Lorene::sqrt(), Lorene::Etoile::u_euler, Lorene::Etoile::unsurc2, and Lorene::Map::val_r().

void Lorene::Etoile_bin::extrinsic_curvature (  )  [virtual]
void Lorene::Etoile_bin::fait_d_psi (  ) 
void Lorene::Etoile_bin::fait_shift_auto (  ) 
const Tenseur& Lorene::Etoile::get_a_car (  )  const [inline, inherited]

Returns the total conformal factor $A^2$.

Definition at line 733 of file etoile.h.

References Lorene::Etoile::a_car.

const Tenseur& Lorene::Etoile_bin::get_akcar_auto (  )  const [inline]

Returns the part of the scalar $A^2 K_{ij} K^{ij}$ generated by shift_auto , i.e.

$A^2 K_{ij}^{\rm auto} K^{ij}_{\rm auto}$

Definition at line 1204 of file etoile.h.

References akcar_auto.

const Tenseur& Lorene::Etoile_bin::get_akcar_comp (  )  const [inline]

Returns the part of the scalar $A^2 K_{ij} K^{ij}$ generated by shift_auto and shift_comp , i.e.

$A^2 K_{ij}^{\rm auto} K^{ij}_{\rm comp} $

Definition at line 1210 of file etoile.h.

References akcar_comp.

const Tenseur& Lorene::Etoile::get_beta_auto (  )  const [inline, inherited]

Returns the logarithm of the part of the product AN generated principaly by the star.

Definition at line 724 of file etoile.h.

References Lorene::Etoile::beta_auto.

const Tenseur& Lorene::Etoile_bin::get_beta_comp (  )  const [inline]

Returns the part of the logarithm of AN generated principaly by the companion star.

Definition at line 1136 of file etoile.h.

References beta_comp.

const Tenseur& Lorene::Etoile_bin::get_bsn (  )  const [inline]

Returns the shift vector, divided by N , of the rotating coordinates, $B^i/N$.

(Cartesian components with respect to ref_triad )

Definition at line 1216 of file etoile.h.

References bsn.

const Tenseur& Lorene::Etoile_bin::get_d_beta_auto (  )  const [inline]

Returns the gradient of beta_auto (Cartesian components with respect to ref_triad ).

Definition at line 1141 of file etoile.h.

References d_beta_auto.

const Tenseur& Lorene::Etoile_bin::get_d_beta_comp (  )  const [inline]

Returns the gradient of beta_comp (Cartesian components with respect to ref_triad ).

Definition at line 1146 of file etoile.h.

References d_beta_comp.

const Tenseur& Lorene::Etoile_bin::get_d_logn_auto (  )  const [inline]

Returns the gradient of logn_auto (Cartesian components with respect to ref_triad ).

Definition at line 1121 of file etoile.h.

References d_logn_auto.

const Tenseur& Lorene::Etoile::get_d_logn_auto_div (  )  const [inline, inherited]

Returns the gradient of logn_auto_div.

Definition at line 719 of file etoile.h.

References Lorene::Etoile::d_logn_auto_div.

const Tenseur& Lorene::Etoile_bin::get_d_logn_auto_regu (  )  const [inline]

Returns the gradient of logn_auto_regu (Cartesian components with respect to ref_triad ).

Definition at line 1126 of file etoile.h.

References d_logn_auto_regu.

const Tenseur& Lorene::Etoile_bin::get_d_logn_comp (  )  const [inline]

Returns the gradient of logn_comp (Cartesian components with respect to ref_triad ).

Definition at line 1131 of file etoile.h.

References d_logn_comp.

const Tenseur& Lorene::Etoile_bin::get_d_psi (  )  const [inline]

Returns the gradient of the velocity potential (Cartesian components with respect to ref_triad ).

Definition at line 1100 of file etoile.h.

References d_psi.

const Cmp Lorene::Etoile_bin::get_decouple (  )  const [inline]

Returns the function used to construct tkij_auto from tkij_tot .

Definition at line 1224 of file etoile.h.

References decouple.

const Tenseur& Lorene::Etoile::get_ener (  )  const [inline, inherited]

Returns the proper total energy density.

Definition at line 679 of file etoile.h.

References Lorene::Etoile::ener.

const Tenseur& Lorene::Etoile::get_ener_euler (  )  const [inline, inherited]

Returns the total energy density with respect to the Eulerian observer.

Definition at line 685 of file etoile.h.

References Lorene::Etoile::ener_euler.

const Tenseur& Lorene::Etoile::get_ent (  )  const [inline, inherited]

Returns the enthalpy field.

Definition at line 673 of file etoile.h.

References Lorene::Etoile::ent.

const Eos& Lorene::Etoile::get_eos (  )  const [inline, inherited]

Returns the equation of state.

Reimplemented in Lorene::Et_rot_bifluid.

Definition at line 670 of file etoile.h.

References Lorene::Etoile::eos.

const Tenseur& Lorene::Etoile::get_gam_euler (  )  const [inline, inherited]

Returns the Lorentz factor between the fluid and Eulerian observers.

Definition at line 691 of file etoile.h.

References Lorene::Etoile::gam_euler.

const Tenseur& Lorene::Etoile_bin::get_khi_shift (  )  const [inline]

Returns the scalar $\chi$ used in the decomposition of shift_auto following Shibata's prescription [Prog.

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

\[ N^i = {7\over 8} W^i - {1\over 8} \left(\nabla^i\chi+\nabla^iW^kx_k\right) \]

NB: w_shift contains the components of $W^i$ with respect to the Cartesian triad associated with the mapping mp .

Definition at line 1186 of file etoile.h.

References khi_shift.

const Tenseur& Lorene::Etoile_bin::get_loggam (  )  const [inline]

Returns the logarithm of the Lorentz factor between the fluid and the co-orbiting observer.

Definition at line 1111 of file etoile.h.

References loggam.

const Tenseur& Lorene::Etoile::get_logn_auto (  )  const [inline, inherited]

Returns the logarithm of the part of the lapse N generated principaly by the star.

In the Newtonian case, this is the Newtonian gravitational potential (in units of $c^2$).

Definition at line 701 of file etoile.h.

References Lorene::Etoile::logn_auto.

const Tenseur& Lorene::Etoile::get_logn_auto_div (  )  const [inline, inherited]

Returns the divergent part of the logarithm of the part of the lapse N generated principaly by the star.

In the Newtonian case, this is the diverging part of the Newtonian gravitational potential (in units of $c^2$).

Definition at line 715 of file etoile.h.

References Lorene::Etoile::logn_auto_div.

const Tenseur& Lorene::Etoile::get_logn_auto_regu (  )  const [inline, inherited]

Returns the regular part of the logarithm of the part of the lapse N generated principaly by the star.

In the Newtonian case, this is the Newtonian gravitational potential (in units of $c^2$).

Definition at line 708 of file etoile.h.

References Lorene::Etoile::logn_auto_regu.

const Tenseur& Lorene::Etoile_bin::get_logn_comp (  )  const [inline]

Returns the part of the lapse logarithm (gravitational potential at the Newtonian limit) generated principaly by the companion star.

Definition at line 1116 of file etoile.h.

References logn_comp.

const Map& Lorene::Etoile::get_mp (  )  const [inline, inherited]

Returns the mapping.

Definition at line 659 of file etoile.h.

References Lorene::Etoile::mp.

const Tenseur& Lorene::Etoile::get_nbar (  )  const [inline, inherited]

Returns the proper baryon density.

Definition at line 676 of file etoile.h.

References Lorene::Etoile::nbar.

const Tenseur& Lorene::Etoile::get_nnn (  )  const [inline, inherited]

Returns the total lapse function N.

Definition at line 727 of file etoile.h.

References Lorene::Etoile::nnn.

int Lorene::Etoile::get_nzet (  )  const [inline, inherited]

Returns the number of domains occupied by the star.

Definition at line 662 of file etoile.h.

References Lorene::Etoile::nzet.

const Tenseur& Lorene::Etoile_bin::get_pot_centri (  )  const [inline]

Returns the centrifugal potential.

Definition at line 1219 of file etoile.h.

References pot_centri.

const Tenseur& Lorene::Etoile::get_press (  )  const [inline, inherited]

Returns the fluid pressure.

Definition at line 682 of file etoile.h.

References Lorene::Etoile::press.

const Tenseur& Lorene::Etoile_bin::get_psi0 (  )  const [inline]

Returns the non-translational part of the velocity potential.

Definition at line 1095 of file etoile.h.

References psi0.

const Tenseur& Lorene::Etoile::get_s_euler (  )  const [inline, inherited]

Returns the trace of the stress tensor in the Eulerian frame.

Definition at line 688 of file etoile.h.

References Lorene::Etoile::s_euler.

const Tenseur& Lorene::Etoile::get_shift (  )  const [inline, inherited]

Returns the total shift vector $N^i$.

Definition at line 730 of file etoile.h.

References Lorene::Etoile::shift.

const Tenseur& Lorene::Etoile_bin::get_shift_auto (  )  const [inline]

Returns the part of the shift vector $N^i$ generated principaly by the star.

(Cartesian components with respect to ref_triad )

Definition at line 1152 of file etoile.h.

References shift_auto.

const Tenseur& Lorene::Etoile_bin::get_shift_comp (  )  const [inline]

Returns the part of the shift vector $N^i$ generated principaly by the companion star.

(Cartesian components with respect to ref_triad )

Definition at line 1158 of file etoile.h.

References shift_comp.

const Tenseur_sym& Lorene::Etoile_bin::get_tkij_auto (  )  const [inline]

Returns the part of the extrinsic curvature tensor $\tilde K^{ij} = A^2 K^{ij}$ generated by shift_auto .

(Cartesian components with respect to ref_triad )

Reimplemented in Lorene::Et_bin_nsbh.

Definition at line 1192 of file etoile.h.

References tkij_auto.

const Tenseur_sym& Lorene::Etoile_bin::get_tkij_comp (  )  const [inline]

Returns the part of the extrinsic curvature tensor $\tilde K^{ij} = A^2 K^{ij}$ generated by shift_comp .

(Cartesian components with respect to ref_triad )

Definition at line 1198 of file etoile.h.

References tkij_comp.

const Tenseur& Lorene::Etoile::get_u_euler (  )  const [inline, inherited]

Returns the fluid 3-velocity with respect to the Eulerian observer.

Definition at line 694 of file etoile.h.

References Lorene::Etoile::u_euler.

const Tenseur& Lorene::Etoile_bin::get_w_shift (  )  const [inline]

Returns the vector $W^i$ used in the decomposition of shift_auto , following Shibata's prescription [Prog.

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

\[ N^i = {7\over 8} W^i - {1\over 8} \left(\nabla^i\chi+\nabla^iW^kx_k\right) \]

NB: w_shift contains the components of $W^i$ with respect to the Cartesian triad associated with the mapping mp .

Definition at line 1172 of file etoile.h.

References w_shift.

const Tenseur& Lorene::Etoile_bin::get_wit_w (  )  const [inline]

Returns the spatial projection of the fluid 3-velocity with respect to the co-orbiting observer.

(Cartesian components with respect to ref_triad )

Definition at line 1106 of file etoile.h.

References wit_w.

void Lorene::Etoile_bin::hydro_euler (  )  [virtual]

Computes the hydrodynamical quantities relative to the Eulerian observer from those in the fluid frame, as well as wit_w and loggam .

The calculation is performed starting from the quantities ent , ener , press , a_car and bsn , which are supposed to be up to date. From these, the following fields are updated: gam_euler , u_euler , ener_euler , s_euler , wit_w and loggam .

Reimplemented from Lorene::Etoile.

Definition at line 109 of file et_bin_hydro.C.

References Lorene::Etoile::a_car, Lorene::Tenseur::annule(), bsn, d_psi, del_deriv(), Lorene::Etoile::ener, Lorene::Etoile::ener_euler, Lorene::Etoile::ent, Lorene::exp(), Lorene::flat_scalar_prod_desal(), Lorene::Etoile::gam_euler, Lorene::Tenseur::get_etat(), Lorene::Map::get_mg(), Lorene::Mg3d::get_nzone(), Lorene::Tenseur::get_triad(), irrotational, Lorene::log(), loggam, Lorene::Etoile::mp, Lorene::Etoile::press, Lorene::Etoile::relativistic, Lorene::Etoile::s_euler, Lorene::Tenseur::set(), Lorene::Tenseur::set_etat_qcq(), Lorene::Tenseur::set_etat_zero(), Lorene::Tenseur::set_std_base(), Lorene::Tenseur::set_triad(), sprod(), Lorene::sqrt(), Lorene::Etoile::u_euler, Lorene::Etoile::unsurc2, and wit_w.

bool Lorene::Etoile_bin::is_irrotational (  )  const [inline]

Returns true for an irrotational motion, false for a corotating one.

Definition at line 1092 of file etoile.h.

References irrotational.

bool Lorene::Etoile::is_relativistic (  )  const [inline, inherited]

Returns true for a relativistic star, false for a Newtonian one.

Definition at line 667 of file etoile.h.

References Lorene::Etoile::relativistic.

void Lorene::Etoile_bin::kinematics ( double  omega,
double  x_axe 
) [virtual]

Computes the quantities bsn and pot_centri .

The calculation is performed starting from the quantities nnn , shift , a_car , which are supposed to be up to date.

Parameters:
omega angular velocity with respect to an asymptotically inertial observer
x_axe absolute X coordinate of the rotation axis

Reimplemented in Lorene::Et_bin_nsbh.

Definition at line 84 of file et_bin_kinema.C.

References Lorene::Tenseur::annule(), bsn, del_deriv(), Lorene::Map::get_mg(), Lorene::Mg3d::get_nzone(), Lorene::log(), Lorene::Etoile::mp, Lorene::Etoile::nnn, pot_centri, Lorene::Etoile::relativistic, Lorene::Tenseur::set(), Lorene::Tenseur::set_etat_qcq(), Lorene::Tenseur::set_std_base(), Lorene::Etoile::shift, sprod(), Lorene::sqrt(), Lorene::Map::xa, and Lorene::Map::ya.

const Itbl & Lorene::Etoile::l_surf (  )  const [virtual, inherited]

Description of the stellar surface: returns a 2-D Itbl containing the values of the domain index l on the surface at the collocation points in $(\theta', \phi')$.

The stellar surface is defined as the location where the enthalpy (member ent ) vanishes.

Reimplemented in Lorene::Et_rot_bifluid, and Lorene::Etoile_rot.

Definition at line 78 of file etoile_global.C.

References Lorene::Etoile::ent, Lorene::Map::get_mg(), Lorene::Mg3d::get_np(), Lorene::Mg3d::get_nt(), Lorene::Etoile::mp, Lorene::Etoile::nzet, Lorene::Etoile::p_l_surf, and Lorene::Etoile::p_xi_surf.

double Lorene::Etoile_bin::mass_b (  )  const [virtual]
double Lorene::Etoile_bin::mass_g (  )  const [virtual]
void Lorene::Etoile_bin::operator= ( const Etoile_bin et  ) 
ostream & Lorene::Etoile_bin::operator>> ( ostream &  ost  )  const [protected, virtual]
double Lorene::Etoile::ray_eq ( int  kk  )  const [inherited]
double Lorene::Etoile::ray_eq (  )  const [inherited]
double Lorene::Etoile::ray_eq_3pis2 (  )  const [inherited]
double Lorene::Etoile::ray_eq_pi (  )  const [inherited]
double Lorene::Etoile::ray_eq_pis2 (  )  const [inherited]
double Lorene::Etoile::ray_pole (  )  const [inherited]
void Lorene::Etoile_bin::relaxation ( const Etoile_bin star_prev,
double  relax_ent,
double  relax_met,
int  mer,
int  fmer_met 
)

Performs a relaxation on ent , logn_auto , beta_auto and shift_auto .

Parameters:
star_prev [input] star at the previous step.
relax_ent [input] Relaxation factor for ent
relax_met [input] Relaxation factor for logn_auto , beta_auto , shift_auto , only if (mer % fmer_met == 0) .
mer [input] Step number
fmer_met [input] Step interval between metric updates

Definition at line 866 of file etoile_bin.C.

References Lorene::Etoile::beta_auto, Lorene::Etoile::d_logn_auto_div, del_deriv(), Lorene::Etoile::ent, Lorene::Etoile::equation_of_state(), Lorene::Etoile::logn_auto, Lorene::Etoile::logn_auto_div, Lorene::Etoile::logn_auto_regu, and shift_auto.

void Lorene::Etoile_bin::sauve ( FILE *  fich  )  const [virtual]
void Lorene::Etoile_bin::set_der_0x0 (  )  const [protected, virtual]

Sets to 0x0 all the pointers on derived quantities.

Reimplemented from Lorene::Etoile.

Definition at line 462 of file etoile_bin.C.

References p_xa_barycenter.

void Lorene::Etoile::set_enthalpy ( const Cmp ent_i  )  [inherited]

Assignment of the enthalpy field.

Definition at line 468 of file etoile.C.

References Lorene::Etoile::del_deriv(), Lorene::Etoile::ent, and Lorene::Etoile::equation_of_state().

Tenseur & Lorene::Etoile_bin::set_khi_shift (  ) 

Read/write of khi_shift.

Definition at line 548 of file etoile_bin.C.

References del_deriv(), and khi_shift.

Tenseur & Lorene::Etoile_bin::set_logn_comp (  ) 

Read/write the part of the lapse logarithm (gravitational potential at the Newtonian limit) generated principaly by the companion star.

Definition at line 527 of file etoile_bin.C.

References del_deriv(), and logn_comp.

Map& Lorene::Etoile::set_mp (  )  [inline, inherited]

Read/write of the mapping.

Definition at line 601 of file etoile.h.

References Lorene::Etoile::mp.

Tenseur & Lorene::Etoile_bin::set_pot_centri (  ) 

Read/write the centrifugal potential.

Definition at line 534 of file etoile_bin.C.

References del_deriv(), and pot_centri.

Tenseur & Lorene::Etoile_bin::set_w_shift (  ) 

Read/write of w_shift.

Definition at line 541 of file etoile_bin.C.

References del_deriv(), and w_shift.

Tenseur Lorene::Etoile_bin::sprod ( const Tenseur t1,
const Tenseur t2 
) const [virtual]

Performs the scalar product of two tensors by contracting the last index of t1 with the first index of t2 .

Both indices are supposed to be contravariant, so that a multiplication by $A^2$ is performed to lower one index. For instance, for two vectors $V^i$ and $W^i$, this function returns the scalar $h_{ij} V^i W^j = A^2 f_{ij} V^i W^j$.

Definition at line 751 of file etoile_bin.C.

References Lorene::Etoile::a_car, Lorene::flat_scalar_prod(), Lorene::Tenseur::get_type_indice(), and Lorene::Tenseur::get_valence().

void Lorene::Etoile_bin::update_metric ( const Etoile_bin comp,
const Etoile_bin star_prev,
double  relax 
)
void Lorene::Etoile_bin::update_metric ( const Etoile_bin comp  ) 

Computes metric coefficients from known potentials, when the companion is another star.

The calculation is performed starting from the quantities logn_auto , beta_auto , shift_auto , comp.logn_auto , comp.beta_auto , comp.shift_auto which are supposed to be up to date. From these, the following fields are updated: logn_comp , beta_comp , shift_comp , nnn , a_car , shift , d_logn_auto , d_beta_auto , tkij_auto , akcar_auto .

Parameters:
comp companion star.

Definition at line 103 of file et_bin_upmetr.C.

References Lorene::Etoile::a_car, Lorene::Etoile::beta_auto, beta_comp, Lorene::Tenseur::change_triad(), d_beta_auto, d_logn_auto, Lorene::Etoile::d_logn_auto_div, d_logn_auto_regu, del_deriv(), Lorene::exp(), extrinsic_curvature(), Lorene::Map::get_bvect_cart(), Lorene::Tenseur::get_triad(), Lorene::Tenseur::gradient(), Lorene::Etoile::logn_auto, Lorene::Etoile::logn_auto_regu, logn_comp, Lorene::Etoile::mp, Lorene::Etoile::nnn, ref_triad, Lorene::Etoile::relativistic, Lorene::Tenseur::set(), Lorene::Tenseur::set_etat_qcq(), Lorene::Tenseur::set_etat_zero(), Lorene::Tenseur::set_std_base(), Lorene::Tenseur::set_triad(), Lorene::Etoile::shift, shift_auto, shift_comp, and Lorene::Etoile::unsurc2.

void Lorene::Etoile_bin::update_metric_der_comp ( const Etoile_bin comp  ) 

Computes the derivative of metric functions related to the companion star.

The calculation is performed starting from the quantities comp.d_logn_auto , comp.d_beta_auto , comp.tkij_auto which are supposed to be up to date. From these, the following fields are updated: d_logn_comp , d_beta_comp , tkij_comp , akcar_comp .

Parameters:
comp companion star.

Definition at line 87 of file et_bin_upmetr_der.C.

References Lorene::Etoile::a_car, akcar_comp, beta_comp, Lorene::Tenseur::change_triad(), Lorene::contract(), d_beta_auto, d_beta_comp, d_logn_auto, d_logn_comp, del_deriv(), Lorene::Map::get_bvect_cart(), Lorene::Tenseur::gradient(), logn_comp, Lorene::Etoile::mp, Lorene::Etoile::nnn, ref_triad, Lorene::Etoile::relativistic, Lorene::Tenseur::set(), Lorene::Tenseur::set_etat_qcq(), Lorene::Tenseur::set_etat_zero(), Lorene::Tenseur::set_std_base(), Lorene::Tenseur::set_triad(), shift_comp, tkij_auto, and tkij_comp.

double Lorene::Etoile_bin::velocity_potential ( int  mermax,
double  precis,
double  relax 
)

Computes the non-translational part of the velocity scalar potential $\psi0$ by solving the continuity equation.

Parameters:
mermax [input] Maximum number of steps in the iteration
precis [input] Required precision: the iteration will be stopped when the relative difference on $\psi0$ between two successive steps is lower than precis .
relax [input] Relaxation factor.
Returns:
Relative error of the resolution obtained by comparing the operator acting on the solution with the source.

Definition at line 145 of file et_bin_vel_pot.C.

References Lorene::Etoile::a_car, Lorene::Param::add_cmp_mod(), Lorene::Param::add_double(), Lorene::Param::add_int(), Lorene::Param::add_int_mod(), Lorene::Cmp::annule(), Lorene::Tenseur::annule(), Lorene::Tbl::annule_hard(), Lorene::Etoile::beta_auto, beta_comp, bsn, Lorene::Tenseur::change_triad(), Lorene::contract(), d_psi, Lorene::Eos::der_nbar_ent(), Lorene::Tenseur::derive_cov(), Lorene::diffrel(), Lorene::Cmp::dsdr(), Lorene::Etoile::ent, Lorene::Etoile::eos, Lorene::exp(), Lorene::flat_scalar_prod(), Lorene::Etoile::gam_euler, Lorene::Mg3d::get_angu(), Lorene::Map::get_bvect_cart(), Lorene::Map::get_bvect_spher(), Lorene::Tenseur::get_etat(), Lorene::Map::get_mg(), Lorene::Mg3d::get_np(), Lorene::Mg3d::get_nr(), Lorene::Mg3d::get_nt(), Lorene::Mg3d::get_nzone(), Lorene::Tenseur::get_triad(), Lorene::Tenseur::gradient(), Lorene::Tenseur::gradient_spher(), Lorene::Eos::identify(), Lorene::log(), Lorene::Etoile::mp, Lorene::Etoile::nnn, Lorene::norme(), Lorene::Etoile::nzet, Lorene::Map::poisson_compact(), psi0, Lorene::Map::r, ref_triad, Lorene::Tenseur::set(), Lorene::Cmp::set(), Lorene::Scalar::set_domain(), Lorene::Tenseur::set_etat_qcq(), Lorene::Scalar::set_outer_boundary(), Lorene::Tenseur::set_std_base(), Lorene::Tenseur::set_triad(), Lorene::sqrt(), ssjm1_psi, Lorene::Etoile::unsurc2, Lorene::Cmp::va, Lorene::Valeur::ylm(), and Lorene::Valeur::ylm_i().

double Lorene::Etoile_bin::xa_barycenter (  )  const [virtual]

Absolute coordinate X of the barycenter of the baryon density, defined according to the formula

\[ X_G := \int A^3 \Gamma_{\rm n} \, n \, X \, d^3x \ , \]

where $\Gamma_{\rm n}$ is the Lorentz factor between the fluid and Eulerian observers.

Definition at line 173 of file et_bin_global.C.

References Lorene::Etoile::a_car, Lorene::Etoile::gam_euler, Lorene::Cmp::integrale(), mass_b(), Lorene::Etoile::mp, Lorene::Etoile::nbar, p_xa_barycenter, Lorene::sqrt(), Lorene::Cmp::std_base_scal(), and Lorene::Map::xa.

const Tbl & Lorene::Etoile::xi_surf (  )  const [inherited]

Description of the stellar surface: returns a 2-D Tbl containing the values of the radial coordinate $\xi$ on the surface at the collocation points in $(\theta', \phi')$.

The stellar surface is defined as the location where the enthalpy (member ent ) vanishes.

Definition at line 104 of file etoile_global.C.

References Lorene::Etoile::l_surf(), Lorene::Etoile::p_l_surf, and Lorene::Etoile::p_xi_surf.


Friends And Related Function Documentation

friend class Bin_ns_bh [friend]

Friend class Bin_ns_bh.

Reimplemented in Lorene::Et_bin_nsbh.

Definition at line 1476 of file etoile.h.

ostream& operator<< ( ostream &  ,
const Etoile  
) [friend, inherited]

Display.


Member Data Documentation

Tenseur Lorene::Etoile::a_car [protected, inherited]

Total conformal factor $A^2$.

Definition at line 515 of file etoile.h.

Part of the scalar $A^2 K_{ij} K^{ij}$ generated by shift_auto , i.e.

$A^2 K_{ij}^{\rm auto} K^{ij}_{\rm auto}$

Definition at line 938 of file etoile.h.

Part of the scalar $A^2 K_{ij} K^{ij}$ generated by shift_auto and shift_comp , i.e.

$A^2 K_{ij}^{\rm auto} K^{ij}_{\rm comp}$

Definition at line 944 of file etoile.h.

Tenseur Lorene::Etoile::beta_auto [protected, inherited]

Logarithm of the part of the product AN generated principaly by by the star.

Definition at line 506 of file etoile.h.

Part of the logarithm of AN generated principaly by the companion star.

Definition at line 874 of file etoile.h.

3-vector shift, divided by N , of the rotating coordinates, $B^i/N$.

(Cartesian components with respect to ref_triad )

Definition at line 950 of file etoile.h.

Gradient of beta_auto (Cartesian components with respect to ref_triad ).

Definition at line 879 of file etoile.h.

Gradient of beta_comp (Cartesian components with respect to ref_triad ).

Definition at line 884 of file etoile.h.

Gradient of logn_auto (Cartesian components with respect to ref_triad ).

Definition at line 859 of file etoile.h.

Tenseur Lorene::Etoile::d_logn_auto_div [protected, inherited]

Gradient of logn_auto_div (if k_div!=0 ).

Definition at line 501 of file etoile.h.

Gradient of logn_auto_regu (Cartesian components with respect to ref_triad ).

Definition at line 864 of file etoile.h.

Gradient of logn_comp (Cartesian components with respect to ref_triad ).

Definition at line 869 of file etoile.h.

Gradient of $\Psi$ (in the irrotational case) (Cartesian components with respect to ref_triad ).

Definition at line 838 of file etoile.h.

Function used to construct the part of $K^{ij}$ generated by the star from the total $K^{ij}$.

Only used for a binary system where the other member is a black hole.

Mainly this Cmp is 1 around the hole and 0 around the companion and the sum of decouple for the hole and his companion is 1 everywhere.

Definition at line 1000 of file etoile.h.

Tenseur Lorene::Etoile::ener [protected, inherited]

Total energy density in the fluid frame.

Definition at line 460 of file etoile.h.

Tenseur Lorene::Etoile::ener_euler [protected, inherited]

Total energy density in the Eulerian frame.

Definition at line 465 of file etoile.h.

Tenseur Lorene::Etoile::ent [protected, inherited]

Log-enthalpy (relativistic case) or specific enthalpy (Newtonian case).

Definition at line 457 of file etoile.h.

const Eos& Lorene::Etoile::eos [protected, inherited]

Equation of state of the stellar matter.

Reimplemented in Lorene::Et_rot_bifluid.

Definition at line 451 of file etoile.h.

Tenseur Lorene::Etoile::gam_euler [protected, inherited]

Lorentz factor between the fluid and Eulerian observers.

Definition at line 471 of file etoile.h.

true for an irrotational star, false for a corotating one

Definition at line 822 of file etoile.h.

int Lorene::Etoile::k_div [protected, inherited]

Index of regularity of the gravitational potential logn_auto .

If k_div=0 , logn_auto contains the total potential generated principaly by the star, otherwise it should be supplemented by logn_auto_div .

Definition at line 449 of file etoile.h.

Scalar $\chi$ used in the decomposition of shift_auto , following Shibata's prescription [Prog.

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

\[ N^i = {7\over 8} W^i - {1\over 8} \left(\nabla^i\chi+\nabla^iW^kx_k\right) \]

Definition at line 918 of file etoile.h.

Logarithm of the Lorentz factor between the fluid and the co-orbiting observer.

Definition at line 849 of file etoile.h.

Tenseur Lorene::Etoile::logn_auto [protected, inherited]

Total of the logarithm of the part of the lapse N generated principaly by the star.

In the Newtonian case, this is the Newtonian gravitational potential (in units of $c^2$).

Definition at line 484 of file etoile.h.

Tenseur Lorene::Etoile::logn_auto_div [protected, inherited]

Divergent part (if k_div!=0 ) of the logarithm of the part of the lapse N generated principaly by the star.

Definition at line 497 of file etoile.h.

Tenseur Lorene::Etoile::logn_auto_regu [protected, inherited]

Regular part of the logarithm of the part of the lapse N generated principaly by the star.

In the Newtonian case, this is the Newtonian gravitational potential (in units of $c^2$).

Definition at line 491 of file etoile.h.

Part of the lapse logarithm (gravitational potential at the Newtonian limit) generated principaly by the companion star.

Definition at line 854 of file etoile.h.

Map& Lorene::Etoile::mp [protected, inherited]

Mapping associated with the star.

Definition at line 429 of file etoile.h.

Tenseur Lorene::Etoile::nbar [protected, inherited]

Baryon density in the fluid frame.

Definition at line 459 of file etoile.h.

Tenseur Lorene::Etoile::nnn [protected, inherited]

Total lapse function.

Definition at line 509 of file etoile.h.

int Lorene::Etoile::nzet [protected, inherited]

Number of domains of *mp occupied by the star.

Definition at line 432 of file etoile.h.

Itbl* Lorene::Etoile::p_l_surf [mutable, protected, inherited]

Description of the stellar surface: 2-D Itbl containing the values of the domain index l on the surface at the collocation points in $(\theta', \phi')$.

Definition at line 539 of file etoile.h.

double* Lorene::Etoile::p_mass_b [mutable, protected, inherited]

Baryon mass.

Definition at line 547 of file etoile.h.

double* Lorene::Etoile::p_mass_g [mutable, protected, inherited]

Gravitational mass.

Definition at line 548 of file etoile.h.

double* Lorene::Etoile::p_ray_eq [mutable, protected, inherited]

Coordinate radius at $\phi=0$, $\theta=\pi/2$.

Definition at line 521 of file etoile.h.

double* Lorene::Etoile::p_ray_eq_3pis2 [mutable, protected, inherited]

Coordinate radius at $\phi=3\pi/2$, $\theta=\pi/2$.

Definition at line 530 of file etoile.h.

double* Lorene::Etoile::p_ray_eq_pi [mutable, protected, inherited]

Coordinate radius at $\phi=\pi$, $\theta=\pi/2$.

Definition at line 527 of file etoile.h.

double* Lorene::Etoile::p_ray_eq_pis2 [mutable, protected, inherited]

Coordinate radius at $\phi=\pi/2$, $\theta=\pi/2$.

Definition at line 524 of file etoile.h.

double* Lorene::Etoile::p_ray_pole [mutable, protected, inherited]

Coordinate radius at $\theta=0$.

Definition at line 533 of file etoile.h.

double* Lorene::Etoile_bin::p_xa_barycenter [mutable, protected]

Absolute coordinate X of the barycenter of the baryon density.

Definition at line 1006 of file etoile.h.

Tbl* Lorene::Etoile::p_xi_surf [mutable, protected, inherited]

Description of the stellar surface: 2-D Tbl containing the values of the radial coordinate $\xi$ on the surface at the collocation points in $(\theta', \phi')$.

Definition at line 545 of file etoile.h.

Centrifugal potential.

Definition at line 953 of file etoile.h.

Tenseur Lorene::Etoile::press [protected, inherited]

Fluid pressure.

Definition at line 461 of file etoile.h.

Scalar potential $\Psi_0$ of the non-translational part of fluid 4-velocity (in the irrotational case).

Definition at line 833 of file etoile.h.

Reference triad ("absolute frame"), with respect to which the components of all the member Tenseur 's are defined, except for w_shift and ssjm1_wshift .

Definition at line 828 of file etoile.h.

bool Lorene::Etoile::relativistic [protected, inherited]

Indicator of relativity: true for a relativistic star, false for a Newtonian one.

Definition at line 437 of file etoile.h.

Tenseur Lorene::Etoile::s_euler [protected, inherited]

Trace of the stress tensor in the Eulerian frame.

Definition at line 468 of file etoile.h.

Tenseur Lorene::Etoile::shift [protected, inherited]

Total shift vector.

Definition at line 512 of file etoile.h.

Part of the shift vector $N^i$ generated principaly by the star.

(Cartesian components with respect to ref_triad )

Definition at line 889 of file etoile.h.

Part of the shift vector $N^i$ generated principaly by the companion star.

(Cartesian components with respect to ref_triad )

Definition at line 895 of file etoile.h.

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

Definition at line 965 of file etoile.h.

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

$\chi$ is an intermediate quantity for the resolution of the elliptic equation for the shift vector $N^i$

Definition at line 973 of file etoile.h.

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

Definition at line 959 of file etoile.h.

Effective source at the previous step for the resolution of the Poisson equation for the scalar $\psi$ by means of Map_et::poisson_interne .

Definition at line 989 of file etoile.h.

Effective source at the previous step for the resolution of the vector Poisson equation for $W^i$ by means of Map_et::poisson .

$W^i$ is an intermediate quantity for the resolution of the elliptic equation for the shift vector $N^i$ (Components with respect to the Cartesian triad associated with the mapping mp )

Definition at line 983 of file etoile.h.

Part of the extrinsic curvature tensor $\tilde K^{ij} = A^2 K^{ij}$ generated by shift_auto .

(Cartesian components with respect to ref_triad )

Reimplemented in Lorene::Et_bin_nsbh.

Definition at line 925 of file etoile.h.

Part of the extrinsic curvature tensor $\tilde K^{ij} = A^2 K^{ij}$ generated by shift_comp .

(Cartesian components with respect to ref_triad )

Definition at line 932 of file etoile.h.

Tenseur Lorene::Etoile::u_euler [protected, inherited]

Fluid 3-velocity with respect to the Eulerian observer.

Definition at line 474 of file etoile.h.

double Lorene::Etoile::unsurc2 [protected, inherited]

$1/c^2$ : unsurc2=1 for a relativistic star, 0 for a Newtonian one.

Definition at line 442 of file etoile.h.

Vector $W^i$ used in the decomposition of shift_auto , following Shibata's prescription [Prog.

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

\[ N^i = {7\over 8} W^i - {1\over 8} \left(\nabla^i\chi+\nabla^iW^kx_k\right) \]

NB: w_shift contains the components of $W^i$ with respect to the Cartesian triad associated with the mapping mp .

Definition at line 908 of file etoile.h.

Spatial projection of the fluid 3-velocity with respect to the co-orbiting observer.

(Cartesian components with respect to ref_triad )

Definition at line 844 of file etoile.h.


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

Generated on 7 Dec 2019 for LORENE by  doxygen 1.6.1