567 Etoile(
Map& mp_i,
int nzet_i,
bool relat,
const Eos& eos_i) ;
633 const Tbl* ent_limit = 0x0 ) ;
656 double precis = 1.e-14) ;
741 virtual void sauve(FILE* )
const ;
748 virtual ostream&
operator>>(ostream& )
const ;
769 double ray_eq(
int kk)
const ;
790 virtual double mass_b()
const ;
793 virtual double mass_g()
const ;
796 ostream& operator<<(ostream& ,
const Etoile& ) ;
1031 bool irrot,
const Base_vect& ref_triad_i) ;
1232 virtual void sauve(FILE* )
const ;
1236 virtual ostream&
operator>>(ostream& )
const ;
1242 virtual double mass_b()
const ;
1245 virtual double mass_g()
const ;
1339 virtual void kinematics(
double omega,
double x_axe) ;
1402 int mermax,
int mermax_poisson,
1403 double relax_poisson,
int mermax_potvit,
1404 double relax_potvit,
double thres_adapt,
1405 const Tbl& fact,
Tbl& diff,
const Tbl* ent_limit = 0x0) ;
1446 void equil_regular(
double ent_c,
int mermax,
int mermax_poisson,
1447 double relax_poisson,
int mermax_potvit,
1448 double relax_potvit,
double thres_adapt,
1449 const Tbl& fact,
Tbl& diff) ;
1477 double relax_met,
int mer,
int fmer_met) ;
1808 virtual void sauve(FILE* )
const ;
1815 virtual ostream&
operator>>(ostream& )
const ;
1833 virtual double mass_b()
const ;
1834 virtual double mass_g()
const ;
1836 virtual double tsw()
const ;
1841 virtual double grv2()
const ;
1854 virtual double grv3(ostream* ost = 0x0)
const ;
1856 virtual double r_circ()
const ;
1858 virtual double area()
const ;
1860 virtual double aplat()
const ;
1861 virtual double z_eqf()
const ;
1862 virtual double z_eqb()
const ;
1863 virtual double z_pole()
const ;
1904 virtual double r_isco(ostream* ost = 0x0)
const ;
1907 virtual double f_isco()
const ;
1926 virtual double f_eccentric(
double ecc,
double periast,
1927 ostream* ost = 0x0)
const ;
1930 virtual double f_eq()
const ;
2089 virtual void equilibrium(
double ent_c,
double omega0,
double fact_omega,
2090 int nzadapt,
const Tbl& ent_limit,
2091 const Itbl& icontrol,
const Tbl& control,
2092 double mbar_wanted,
double aexp_mass,
double * p_z_eqb
Backward redshift factor at equator.
virtual double z_eqf() const
Forward redshift factor at equator.
const Tenseur & get_logn_auto_regu() const
Returns the regular part of the logarithm of the part of the lapse N generated principaly by the star...
const Tenseur & get_nuq() const
Returns the Part of the Metric potential = logn generated by the quadratic terms.
virtual void set_der_0x0() const
Sets to 0x0 all the pointers on derived quantities.
double * p_z_pole
Redshift factor at North pole.
Base class for stars *** DEPRECATED : use class Star instead ***.
virtual double mom_quad_Bo() const
Part of the quadrupole moment.
int k_div
Index of regularity of the gravitational potential logn_auto .
virtual double r_circ() const
Circumferential equatorial radius.
virtual ostream & operator>>(ostream &) const
Operator >> (virtual function called by the operator <<).
const Tbl & xi_surf() const
Description of the stellar surface: returns a 2-D Tbl containing the values of the radial coordinate...
double * p_mom_quad_old
Part of the quadrupole moment.
Tenseur khi_shift
Scalar used in the decomposition of shift , following Shibata's prescription [Prog.
Tenseur shift_comp
Part of the shift vector generated principaly by the companion star.
const Tenseur & get_beta_comp() const
Returns the part of the logarithm of AN generated principaly by the companion star.
const Base_vect & ref_triad
Reference triad ("absolute frame"), with respect to which the components of all the member Tenseur 's...
double * p_r_circ
Circumferential equatorial radius.
Cmp ssjm1_khi
Effective source at the previous step for the resolution of the Poisson equation for the scalar by m...
double * p_mom_quad_Bo
Part of the quadrupole moment.
Component of a tensorial field *** DEPRECATED : use class Scalar instead ***.
const Cmp get_decouple() const
Returns the function used to construct tkij_auto from tkij_tot .
virtual double lspec_isco() const
Angular momentum of a particle on the ISCO.
double * p_r_isco
Circumferential radius of the ISCO.
virtual void sauve(FILE *) const
Save in a file.
Tenseur tnphi
Component of the shift vector.
const Tenseur & get_d_logn_auto_regu() const
Returns the gradient of logn_auto_regu (Cartesian components with respect to ref_triad ) ...
const Map & get_mp() const
Returns the mapping.
const Tenseur & get_a_car() const
Returns the total conformal factor .
Neutron star - black hole binary system.
void update_metric(const Etoile_bin &comp)
Computes metric coefficients from known potentials, when the companion is another star...
const Tenseur & get_wit_w() const
Returns the spatial projection of the fluid 3-velocity with respect to the co-orbiting observer...
const Tenseur_sym & get_tkij_comp() const
Returns the part of the extrinsic curvature tensor generated by shift_comp .
void fait_shift_auto()
Computes shift_auto from w_shift and khi_shift according to Shibata's prescription [Prog...
const Tenseur & get_tggg() const
Returns the Metric potential .
double ray_eq_pis2() const
Coordinate radius at , [r_unit].
virtual void display_poly(ostream &) const
Display in polytropic units.
virtual double mass_g() const
Gravitational mass.
Class intended to describe tensors with a symmetry on the two last indices *** DEPRECATED : use class...
Tenseur pot_centri
Centrifugal potential.
virtual void sauve(FILE *) const
Save in a file.
void fait_nphi()
Computes tnphi and nphi from the Cartesian components of the shift, stored in shift ...
Cmp ssjm1_logn
Effective source at the previous step for the resolution of the Poisson equation for logn_auto by mea...
void operator=(const Etoile &)
Assignment to another Etoile.
Tenseur logn_auto_regu
Regular part of the logarithm of the part of the lapse N generated principaly by the star...
const Tenseur & get_akcar_comp() const
Returns the part of the scalar generated by shift_auto and shift_comp , i.e.
Tenseur w_shift
Vector used in the decomposition of shift , following Shibata's prescription [Prog.
Equation of state base class.
Tenseur ssjm1_wshift
Effective source at the previous step for the resolution of the vector Poisson equation for ...
const Tenseur_sym & get_tkij_auto() const
Returns the part of the extrinsic curvature tensor generated by shift_auto .
Tenseur nnn
Total lapse function.
virtual void equilibrium_spher(double ent_c, double precis=1.e-14, const Tbl *ent_limit=0x0)
Computes a spherical static configuration.
const Tenseur & get_d_beta_auto() const
Returns the gradient of beta_auto (Cartesian components with respect to ref_triad ) ...
double * p_z_eqf
Forward redshift factor at equator.
Tenseur nphi
Metric coefficient .
Tenseur s_euler
Trace of the stress tensor in the Eulerian frame.
const Tenseur & get_shift() const
Returns the total shift vector .
double ray_eq() const
Coordinate radius at , [r_unit].
Base class for coordinate mappings.
Class for isolated rotating stars *** DEPRECATED : use class Star_rot instead ***.
double * p_mom_quad
Quadrupole moment.
Tenseur b_car
Square of the metric factor B.
const Tenseur & get_b_car() const
Returns the square of the metric factor B.
int get_nzet() const
Returns the number of domains occupied by the star.
void operator=(const Etoile_rot &)
Assignment to another Etoile_rot.
Tenseur wit_w
Spatial projection of the fluid 3-velocity with respect to the co-orbiting observer.
const Tenseur & get_logn_auto() const
Returns the logarithm of the part of the lapse N generated principaly by the star.
virtual double mom_quad_old() const
Part of the quadrupole moment.
virtual void del_hydro_euler()
Sets to ETATNONDEF (undefined state) the hydrodynamical quantities relative to the Eulerian observer...
Basic integer array class.
const Tenseur & get_d_psi() const
Returns the gradient of the velocity potential (Cartesian components with respect to ref_triad ) ...
bool is_irrotational() const
Returns true for an irrotational motion, false for a corotating one.
double unsurc2
: unsurc2=1 for a relativistic star, 0 for a Newtonian one.
virtual double mass_g() const
Gravitational mass.
virtual double r_isco(ostream *ost=0x0) const
Circumferential radius of the innermost stable circular orbit (ISCO).
Class for stars in binary system.
const Tenseur & get_logn_auto_div() const
Returns the divergent part of the logarithm of the part of the lapse N generated principaly by the st...
virtual double xa_barycenter() const
Absolute coordinate X of the barycenter of the baryon density, defined according to the formula wher...
Tenseur press
Fluid pressure.
const Tenseur & get_uuu() const
Returns the norm of u_euler.
virtual void extrinsic_curvature()
Computes tkij_auto and akcar_auto from shift_auto , nnn and a_car .
const Tenseur & get_d_logn_auto() const
Returns the gradient of logn_auto (Cartesian components with respect to ref_triad ) ...
Tenseur d_beta_auto
Gradient of beta_auto (Cartesian components with respect to ref_triad )
virtual const Itbl & l_surf() const
Description of the stellar surface: returns a 2-D Itbl containing the values of the domain index l on...
Etoile_rot(Map &mp_i, int nzet_i, bool relat, const Eos &eos_i)
Standard constructor.
virtual double mean_radius() const
Mean radius.
Vectorial bases (triads) with respect to which the tensorial components are defined.
void set_enthalpy(const Cmp &)
Assignment of the enthalpy field.
Tenseur shift
Total shift vector.
const Tenseur & get_nuf() const
Returns the part of the Metric potential = logn generated by the matter terms.
double * p_aplat
Flatening r_pole/r_eq.
const Tenseur & get_nphi() const
Returns the metric coefficient .
virtual void del_deriv() const
Deletes all the derived quantities.
Tenseur shift_auto
Part of the shift vector generated principaly by the star.
const Tenseur & get_d_logn_auto_div() const
Returns the gradient of logn_auto_div.
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 .
virtual double r_circ_merid() const
Circumferential meridional radius.
double * p_ray_pole
Coordinate radius at .
const Tenseur & get_press() const
Returns the fluid pressure.
const Tenseur & get_logn_comp() const
Returns the part of the lapse logarithm (gravitational potential at the Newtonian limit) generated pr...
void extrinsic_curvature()
Computes tkij and ak_car from shift , nnn and b_car .
Tenseur logn_auto_div
Divergent part (if k_div!=0 ) of the logarithm of the part of the lapse N generated principaly by t...
const Tenseur & get_w_shift() const
Returns the vector used in the decomposition of shift_auto , following Shibata's prescription [Prog...
bool irrotational
true for an irrotational star, false for a corotating one
virtual void del_deriv() const
Deletes all the derived quantities.
void update_metric()
Computes metric coefficients from known potentials.
virtual double get_omega_c() const
Returns the central value of the rotation angular velocity ([f_unit] )
Tenseur psi0
Scalar potential of the non-translational part of fluid 4-velocity (in the irrotational case) ...
Cmp ssjm1_dzeta
Effective source at the previous step for the resolution of the Poisson equation for dzeta ...
Tenseur w_shift
Vector used in the decomposition of shift_auto , following Shibata's prescription [Prog...
Tenseur u_euler
Fluid 3-velocity with respect to the Eulerian observer.
Cmp ssjm1_nuq
Effective source at the previous step for the resolution of the Poisson equation for nuq by means of ...
double * p_r_circ_merid
Circumferential meridional radius.
virtual ostream & operator>>(ostream &) const
Operator >> (virtual function called by the operator <<).
virtual ~Etoile_rot()
Destructor.
double * p_grv3
Error on the virial identity GRV3.
const Tenseur & get_loggam() const
Returns the logarithm of the Lorentz factor between the fluid and the co-orbiting observer...
Tenseur d_beta_comp
Gradient of beta_comp (Cartesian components with respect to ref_triad )
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 double angu_mom() const
Angular momentum.
Tenseur logn_comp
Part of the lapse logarithm (gravitational potential at the Newtonian limit) generated principaly by ...
virtual ~Etoile_bin()
Destructor.
Map & set_mp()
Read/write of the mapping.
Tenseur d_logn_auto
Gradient of logn_auto (Cartesian components with respect to ref_triad )
Tenseur bsn
3-vector shift, divided by N , of the rotating coordinates, .
virtual double z_pole() const
Redshift factor at North pole.
Tenseur nbar
Baryon density in the fluid frame.
void fait_d_psi()
Computes the gradient of the total velocity potential .
virtual double grv3(ostream *ost=0x0) const
Error on the virial identity GRV3.
const Tenseur & get_khi_shift() const
Returns the scalar used in the decomposition of shift_auto following Shibata's prescription [Prog...
virtual void sauve(FILE *) const
Save in a file.
Tenseur gam_euler
Lorentz factor between the fluid and Eulerian observers.
Cmp decouple
Function used to construct the part of generated by the star from the total .
const Tenseur & get_s_euler() const
Returns the trace of the stress tensor in the Eulerian frame.
Tenseur akcar_comp
Part of the scalar generated by shift_auto and shift_comp , i.e.
Etoile_bin(Map &mp_i, int nzet_i, bool relat, const Eos &eos_i, bool irrot, const Base_vect &ref_triad_i)
Standard constructor.
virtual double grv2() const
Error on the virial identity GRV2.
virtual double mass_b() const
Baryon mass.
const Tenseur & get_logn() const
Returns the metric potential = logn_auto.
double * p_area
Surface area.
const Tenseur_sym & get_tkij() const
Returns the tensor related to the extrinsic curvature tensor by .
Tenseur beta_comp
Part of the logarithm of AN generated principaly by the companion star.
const Tenseur & get_bsn() const
Returns the shift vector, divided by N , of the rotating coordinates, .
void equil_spher_regular(double ent_c, double precis=1.e-14)
Computes a spherical static configuration.
virtual double mass_b() const
Baryon mass.
Map & mp
Mapping associated with the star.
virtual double espec_isco() const
Energy of a particle on the ISCO.
virtual void equation_of_state()
Computes the proper baryon and energy density, as well as pressure from the enthalpy.
const Eos & eos
Equation of state of the stellar matter.
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.
Tbl * p_xi_surf
Description of the stellar surface: 2-D Tbl containing the values of the radial coordinate on the su...
const Tenseur & get_khi_shift() const
Returns the scalar used in the decomposition of shift following Shibata's prescription [Prog...
const Tenseur & get_nnn() const
Returns the total lapse function N.
virtual double z_eqb() const
Backward redshift factor at equator.
virtual void hydro_euler()
Computes the hydrodynamical quantities relative to the Eulerian observer from those in the fluid fram...
Cmp ssjm1_nuf
Effective source at the previous step for the resolution of the Poisson equation for nuf by means of ...
static double lambda_grv2(const Cmp &sou_m, const Cmp &sou_q)
Computes the coefficient which ensures that the GRV2 virial identity is satisfied.
double * p_f_isco
Orbital frequency of the ISCO.
double * p_ray_eq
Coordinate radius at , .
virtual double tsw() const
Ratio T/W.
Tenseur khi_shift
Scalar used in the decomposition of shift_auto , following Shibata's prescription [Prog...
virtual double f_eq() const
Orbital frequency at the equator.
Tenseur & set_w_shift()
Read/write of w_shift.
const Tenseur & get_pot_centri() const
Returns the centrifugal potential.
Tenseur bbb
Metric factor B.
virtual void hydro_euler()
Computes the hydrodynamical quantities relative to the Eulerian observer from those in the fluid fram...
const Tenseur & get_dzeta() const
Returns the Metric potential = beta_auto.
const Tenseur & get_gam_euler() const
Returns the Lorentz factor between the fluid and Eulerian observers.
Etoile(Map &mp_i, int nzet_i, bool relat, const Eos &eos_i)
Standard constructor.
Tenseur_sym tkij_auto
Part of the extrinsic curvature tensor generated by shift_auto .
const Tenseur & get_d_beta_comp() const
Returns the gradient of beta_comp (Cartesian components with respect to ref_triad ) ...
Tenseur & set_logn_comp()
Read/write the part of the lapse logarithm (gravitational potential at the Newtonian limit) generated...
Tenseur uuu
Norm of u_euler.
const Tenseur & get_ener_euler() const
Returns the total energy density with respect to the Eulerian observer.
double * p_mass_g
Gravitational mass.
Tenseur tggg
Metric potential .
double omega
Rotation angular velocity ([f_unit] )
virtual void partial_display(ostream &) const
Printing of some informations, excluding all global quantities.
Tenseur nuf
Part of the Metric potential = logn generated by the matter terms.
void operator=(const Etoile_bin &)
Assignment to another Etoile_bin.
const Tenseur & get_d_logn_comp() const
Returns the gradient of logn_comp (Cartesian components with respect to ref_triad ) ...
int nzet
Number of domains of *mp occupied by the star.
virtual double mom_quad() const
Quadrupole moment.
Tenseur a_car
Total conformal factor .
virtual ~Etoile()
Destructor.
double * p_ray_eq_pis2
Coordinate radius at , .
bool relativistic
Indicator of relativity: true for a relativistic star, false for a Newtonian one. ...
void fait_shift()
Computes shift from w_shift and khi_shift according to Shibata's prescription [Prog.
double * p_ray_eq_3pis2
Coordinate radius at , .
double ray_pole() const
Coordinate radius at [r_unit].
double * p_xa_barycenter
Absolute coordinate X of the barycenter of the baryon density.
Tenseur ener
Total energy density in the fluid frame.
const Tenseur & get_w_shift() const
Returns the vector used in the decomposition of shift , following Shibata's prescription [Prog...
Cmp ssjm1_beta
Effective source at the previous step for the resolution of the Poisson equation for beta_auto by mea...
virtual ostream & operator>>(ostream &) const
Operator >> (virtual function called by the operator <<).
double ray_eq_pi() const
Coordinate radius at , [r_unit].
Tenseur logn_auto
Total of the logarithm of the part of the lapse N generated principaly by the star.
Tenseur d_logn_auto_regu
Gradient of logn_auto_regu (Cartesian components with respect to ref_triad )
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.
const Tenseur & get_akcar_auto() const
Returns the part of the scalar generated by shift_auto , i.e.
Tenseur loggam
Logarithm of the Lorentz factor between the fluid and the co-orbiting observer.
Tenseur ent
Log-enthalpy (relativistic case) or specific enthalpy (Newtonian case)
virtual const Itbl & l_surf() const
Description of the stellar surface: returns a 2-D Itbl containing the values of the domain index l o...
virtual void equilibrium(double ent_c, double omega0, double fact_omega, int nzadapt, const Tbl &ent_limit, const Itbl &icontrol, const Tbl &control, double mbar_wanted, double aexp_mass, Tbl &diff, Param *=0x0)
Computes an equilibrium configuration.
Cmp ssjm1_psi
Effective source at the previous step for the resolution of the Poisson equation for the scalar by m...
virtual void del_hydro_euler()
Sets to ETATNONDEF (undefined state) the hydrodynamical quantities relative to the Eulerian observer...
virtual double area() const
Surface area.
friend ostream & operator<<(ostream &, const Etoile &)
Display.
double velocity_potential(int mermax, double precis, double relax)
Computes the non-translational part of the velocity scalar potential by solving the continuity equat...
const Tenseur & get_tnphi() const
Returns the component of the shift vector.
const Tenseur & get_ener() const
Returns the proper total energy density.
virtual void kinematics(double omega, double x_axe)
Computes the quantities bsn and pot_centri .
Tenseur & logn
Metric potential = logn_auto.
double * p_ray_eq_pi
Coordinate radius at , .
virtual void set_der_0x0() const
Sets to 0x0 all the pointers on derived quantities.
double * p_lspec_isco
Specific angular momentum of a particle on the ISCO.
void update_metric_der_comp(const Etoile_bin &comp)
Computes the derivative of metric functions related to the companion star.
const Tenseur & get_psi0() const
Returns the non-translational part of the velocity potential.
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...
virtual double mass_g() const
Gravitational mass.
Tenseur beta_auto
Logarithm of the part of the product AN generated principaly by by the star.
double * p_grv2
Error on the virial identity GRV2.
const Tenseur & get_u_euler() const
Returns the fluid 3-velocity with respect to the Eulerian observer.
Tenseur & set_pot_centri()
Read/write the centrifugal potential.
const Tenseur & get_shift_comp() const
Returns the part of the shift vector generated principaly by the companion star. ...
const Tenseur & get_shift_auto() const
Returns the part of the shift vector generated principaly by the star.
virtual void del_hydro_euler()
Sets to ETATNONDEF (undefined state) the hydrodynamical quantities relative to the Eulerian observer...
const Tenseur & get_bbb() const
Returns the metric factor B.
Tenseur nuq
Part of the Metric potential = logn generated by the quadratic terms.
Tenseur akcar_auto
Part of the scalar generated by shift_auto , i.e.
Tenseur ener_euler
Total energy density in the Eulerian frame.
virtual double f_eccentric(double ecc, double periast, ostream *ost=0x0) const
Computation of frequency of eccentric orbits.
virtual double f_isco() const
Orbital frequency at the innermost stable circular orbit (ISCO).
Tenseur & dzeta
Metric potential = beta_auto.
Tenseur d_logn_comp
Gradient of logn_comp (Cartesian components with respect to ref_triad )
virtual double mass_b() const
Baryon mass.
Tenseur & set_khi_shift()
Read/write of khi_shift.
Tenseur d_logn_auto_div
Gradient of logn_auto_div (if k_div!=0 )
double ray_eq_3pis2() const
Coordinate radius at , [r_unit].
const Tenseur & get_nbar() const
Returns the proper baryon density.
bool is_relativistic() const
Returns true for a relativistic star, false for a Newtonian one.
Tenseur_sym tkij_comp
Part of the extrinsic curvature tensor generated by shift_comp .
Cmp ssjm1_tggg
Effective source at the previous step for the resolution of the Poisson equation for tggg ...
Tenseur_sym tkij
Tensor related to the extrinsic curvature tensor by .
double * p_mass_b
Baryon mass.
const Eos & get_eos() const
Returns the equation of state.
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 o...
Tensor handling *** DEPRECATED : use class Tensor instead ***.
const Tenseur & get_ent() const
Returns the enthalpy field.
const Tenseur & get_beta_auto() const
Returns the logarithm of the part of the product AN generated principaly by the star.
double * p_espec_isco
Specific energy of a particle on the ISCO.
double * p_angu_mom
Angular momentum.
Cmp ssjm1_khi
Effective source at the previous step for the resolution of the Poisson equation for the scalar by m...
Tenseur d_psi
Gradient of (in the irrotational case) (Cartesian components with respect to ref_triad ) ...
virtual void hydro_euler()
Computes the hydrodynamical quantities relative to the Eulerian observer from those in the fluid fram...
virtual double aplat() const
Flatening r_pole/r_eq.
double * p_f_eq
Orbital frequency at the equator.
Itbl * p_l_surf
Description of the stellar surface: 2-D Itbl containing the values of the domain index l on the surfa...
Tenseur ssjm1_wshift
Effective source at the previous step for the resolution of the vector Poisson equation for by means...
const Tenseur & get_ak_car() const
Returns the scalar .