283 Star(
Map& mp_i,
int nzet_i,
const Eos& eos_i) ;
295 Star(
Map& mp_i,
const Eos& eos_i, FILE* fich) ;
349 const Tbl* pent_limit = 0x0 ) ;
406 const Scalar& get_lnq()
const {
return lnq;} ;
414 virtual void sauve(FILE* )
const ;
421 virtual ostream&
operator>>(ostream& )
const ;
460 virtual double mass_b()
const = 0 ;
463 virtual double mass_g()
const = 0 ;
466ostream& operator<<(ostream& ,
const Star& ) ;
910 bool is_conf_flat()
const {
return conf_flat; } ;
915 virtual void sauve(FILE* )
const ;
919 virtual ostream&
operator>>(ostream& )
const ;
925 virtual double mass_b()
const ;
928 virtual double mass_g()
const ;
980 void update_metric(
const Star_bin& comp,
const Star_bin& star_prev,
981 double relax,
double omega) ;
1000 void kinematics(
double omega,
double x_axe) ;
1031 void equilibrium(
double ent_c,
int mermax,
int mermax_potvit,
1032 int mermax_poisson,
double relax_poisson,
1033 double relax_potvit,
double thres_adapt, Tbl& diff,
1063 void relaxation(
const Star_bin& star_prev,
double relax_ent,
1064 double relax_met,
int mer,
int fmer_met) ;
1427 virtual void sauve(FILE* )
const ;
1431 virtual ostream&
operator>>(ostream& )
const ;
1437 virtual double mass_b()
const ;
1440 virtual double mass_g()
const ;
1511 void kinematics(
double omega,
double x_axe) ;
1544 void equilibrium(
double ent_c,
int mermax,
int mermax_potvit,
1545 int mermax_poisson,
double relax_poisson,
1546 double relax_potvit,
double thres_adapt,
1547 const Tbl& fact,
const Tbl* pent_limit,
1577 double relax_met,
int mer,
int fmer_met) ;
Binary systems in eXtended Conformal Thin Sandwich formulation.
Equation of state base class.
Basic integer array class.
Base class for coordinate mappings.
Flat metric for tensor calculation.
Metric for tensor calculation.
Tensor field of valence 0 (or component of a tensorial field).
Class for stars in binary system in eXtended Conformal Thin Sandwich formulation.
Scalar Psi
Total conformal factor .
const Vector & get_beta_comp() const
Returns the part of the shift vector generated principally by the companion ( ).
Scalar psi0
Scalar potential of the non-translational part of fluid 4-velocity (in the irrotational case)
Scalar & set_pot_centri()
Read/write the centrifugal potential.
const Scalar & get_chi() const
Return the function .
const Vector & get_dcov_chi() const
Returns the covariant derivative of .
void operator=(const Star_bin_xcts &)
Assignment to another Star_bin_xcts.
const Sym_tensor & get_haij_auto() const
Returns the part of the extrinsic curvature tensor generated by beta_auto.
Scalar pot_centri
Centrifugal potential.
Sym_tensor haij_auto
Part of the extrinsic curvature tensor generated by beta_auto.
Vector & set_beta_auto()
Read/write of .
void fait_d_psi()
Computes the gradient of the total velocity potential .
const Scalar & get_hacar_comp() const
Returns the part of generated by beta_comp.
void extrinsic_curvature()
Computes haij_auto and hacar_auto from beta_auto, nn and Psi .
const Vector & get_wit_w() const
Returns the spatial projection of the fluid 3-velocity with respect to the co-orbiting observer.
Scalar psi4
Conformal factor .
Vector wit_w
Spatial projection of the fluid 3-velocity with respect to the co-orbiting observer.
virtual double xa_barycenter() const
Absolute coordinate X of the barycenter of the baryon density,.
virtual void set_der_0x0() const
Sets to 0x0 all the pointers on derived quantities.
Metric_flat flat
Flat metric defined on the mapping (Spherical components with respect to the mapping of the star) .
Vector & set_beta()
Read/write of .
void equilibrium(double ent_c, int mermax, int mermax_potvit, int mermax_poisson, double relax_poisson, double relax_potvit, double thres_adapt, const Tbl &fact, const Tbl *pent_limit, Tbl &diff)
Computes an equilibrium configuration.
Scalar ssjm1_khi
Effective source at the previous step for the resolution of the Poisson equation for khi.
Scalar khi
Solution for the scalar part of the vector Poisson equation for .
Vector ssjm1_wbeta
Effective source at the previous step for wbeta of the vector Poisson equation for wbeta (needed for ...
Scalar Psi_comp
Scalar field generated principally by the companion star.
Scalar ssjm1_chi
Effective source at the previous step for the resolution of the Poisson equation for \chi_auto .
const Scalar & get_Psi() const
Return the conformal factor .
Vector dcov_Psi
Covariant derivative of the conformal factor .
Vector beta_comp
Part of the shift vector generated principally by the star (Spherical components with respect to the ...
const Scalar & get_hacar_auto() const
Returns the part of generated by beta_auto.
const Scalar & get_chi_auto() const
Returns the scalar field generated principally by the star.
const Vector & get_dcov_Psi() const
Returns the covariant derivative of the conformal factor .
Vector beta_auto
Part of the shift vector generated principally by the star (Spherical components with respect to the ...
Scalar Psi_auto
Scalar field generated principally by the star.
Scalar hacar_comp
Part of the scalar generated by beta_auto and beta_comp, i.e.
const Scalar & get_chi_comp() const
Returns the scalar field generated principally by the companion star.
Scalar chi
Total function .
void update_metric_der_comp(const Star_bin_xcts &comp)
Computes the derivative of metric functions related to the companion star.
Scalar & set_chi_comp()
Read/write the conformal factor .
const Scalar & get_Psi_comp() const
Returns the scalar field generated principally by the companion star.
void kinematics(double omega, double x_axe)
Computes the quantities bsn and pot_centri.
const Scalar & get_psi0() const
Returns the non-translational part of the velocity potential.
const Vector & get_beta_auto() const
Returns the part of the shift vector generated principally by the star ( ).
const Scalar & get_psi4() const
Return the conformal factor .
Vector bsn
3-vector shift, divided by N, of the rotating coordinates, .
virtual void del_hydro_euler()
Sets to ETATNONDEF (undefined state) the hydrodynamical quantities relative to the Eulerian observer.
Scalar loggam
Logarithm of the Lorentz factor between the fluid and the co-orbiting observer.
Scalar & set_chi_auto()
Read/write the conformal factor .
const Scalar & get_pot_centri() const
Returns the centrifugal potential.
Sym_tensor haij_comp
Part of the extrinsic curvature tensor generated by beta_comp.
Scalar & set_Psi_comp()
Read/write the conformal factor .
Scalar & set_Psi_auto()
Read/write the conformal factor .
bool is_irrotational() const
Returns true for an irrotational motion, false for a corotating one.
const Vector & get_d_psi() const
Returns the covariant derivative of the velocity potential (Spherical components with respect to the ...
virtual ostream & operator>>(ostream &) const
Operator >> (virtual function called by the operator <<).
Vector dcov_chi
Covariant derivative of the function .
const Metric & get_flat() const
Return the flat metric defined on the mapping (Spherical components with respect to the mapping of th...
Scalar chi_auto
Scalar field generated principally by the star.
virtual double mass_g() const
Gravitational mass.
void update_metric(const Star_bin_xcts &comp)
Computes metric coefficients from known potentials, when the companion is another star.
Vector w_beta
Solution for the vector part of the vector Poisson equation for .
const Vector & get_bsn() const
Returns the shift vector, divided by N, of the rotating coordinates, .
Scalar chi_comp
Scalar field generated principally by the companion star.
Scalar ssjm1_psi
Effective source at the previous step for the resolution of the Poisson equation for \Psi_auto .
const Sym_tensor & get_haij_comp() const
Returns the part of the extrinsic curvature tensor generated by beta_comp.
virtual void hydro_euler()
Computes the hydrodynamical quantities relative to the Eulerian observer from those in the fluid fram...
void relaxation(const Star_bin_xcts &star_prev, double relax_ent, double relax_met, int mer, int fmer_met)
Performs a relaxation on ent, Psi_auto, chi_auto and beta_auto.
bool irrotational
true for an irrotational star, false for a corotating one
virtual void del_deriv() const
Deletes all the derived quantities.
Vector d_psi
Gradient of (in the irrotational case) (Spherical components with respect to the mapping of the star...
virtual void sauve(FILE *) const
Save in a file.
virtual double mass_b() const
Baryon mass.
const Scalar & get_loggam() const
Returns the logarithm of the Lorentz factor between the fluid and the co-orbiting observer.
virtual ~Star_bin_xcts()
Destructor.
double * p_xa_barycenter
Absolute coordinate X of the barycenter of the baryon density.
double velocity_potential(int mermax, double precis, double relax)
Computes the non-translational part of the velocity scalar potential by solving the continuity equat...
Scalar hacar_auto
Part of the scalar generated by beta_auto, i.e.
const Scalar & get_Psi_auto() const
Returns the scalar field generated principally by the star.
Class for stars in binary system.
Scalar loggam
Logarithm of the Lorentz factor between the fluid and the co-orbiting observer.
Scalar decouple
Function used to construct the part generated by the star from the total .
Scalar lnq_auto
Scalar field generated principally by the star.
Scalar ssjm1_khi
Effective source at the previous step for the resolution of the Poisson equation for khi.
Vector bsn
3-vector shift, divided by N, of the rotating coordinates, .
Vector dcon_logn
Contravariant derivative of the total logarithm of the lapse.
Vector d_psi
Gradient of (in the irrotational case) (Spherical components with respect to the mapping of the star...
Vector dcon_phi
Contravariant derivative of the logarithm of the conformal factor.
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 Scalar & get_logn_auto() const
Returns the part of the lapse logarithm (gravitational potential at the Newtonian limit) generated pr...
Sym_tensor hij_comp
Deviation of the inverse conformal metric from the inverse flat metric generated principally by the ...
double * p_xa_barycenter
Absolute coordinate X of the barycenter of the baryon density.
bool is_irrotational() const
Returns true for an irrotational motion, false for a corotating one.
virtual void del_deriv() const
Deletes all the derived quantities.
Scalar ssjm1_h11
Effective source at the previous step for the resolution of the Poisson equation for h00_auto.
const Scalar & get_lnq_auto() const
Returns the part of the vector field generated principally by the star.
const Vector & get_dcov_logn() const
Returns the covariant derivative of .
Vector beta_comp
Part of the shift vector generated principally by the star (Spherical components with respect to the ...
Scalar ssjm1_logn
Effective source at the previous step for the resolution of the Poisson equation for logn_auto.
Vector dcov_logn
Covariant derivative of the total logarithm of the lapse.
virtual ostream & operator>>(ostream &) const
Operator >> (virtual function called by the operator <<).
void update_metric(const Star_bin &comp, double omega)
Computes metric coefficients from known potentials, when the companion is another star.
Scalar logn_auto
Part of the lapse logarithm (gravitational potential at the Newtonian limit) generated principally by...
Scalar psi0
Scalar potential of the non-translational part of fluid 4-velocity (in the irrotational case)
const Vector & get_bsn() const
Returns the shift vector, divided by N, of the rotating coordinates, .
void kinematics(double omega, double x_axe)
Computes the quantities bsn and pot_centri.
bool irrotational
true for an irrotational star, false for a corotating one
const Vector & get_dcov_phi() const
Returns the covariant derivative of (logarithm of the conformal factor).
virtual double xa_barycenter() const
Absolute coordinate X of the barycenter of the baryon density,.
const Metric & get_flat() const
Return the flat metric defined on the mapping (Spherical components with respect to the mapping of th...
Scalar kcar_comp
Part of the scalar generated by beta_auto and beta_comp, i.e.
Scalar logn_comp
Part of the lapse logarithm (gravitational potential at the Newtonian limit) generated principally by...
Scalar ssjm1_h21
Effective source at the previous step for the resolution of the Poisson equation for h10_auto.
void extrinsic_curvature(double omega)
Computes tkij_auto and akcar_auto from beta_auto, nn and Q.
void fait_d_psi()
Computes the gradient of the total velocity potential .
virtual void hydro_euler()
Computes the hydrodynamical quantities relative to the Eulerian observer from those in the fluid fram...
Sym_tensor tkij_comp
Part of the extrinsic curvature tensor generated by beta_comp.
Scalar ssjm1_h33
Effective source at the previous step for the resolution of the Poisson equation for h22_auto.
const Sym_tensor & get_tkij_comp() const
Returns the part of the extrinsic curvature tensor generated by beta_comp.
void test_K_Hi() const
Test if the gauge conditions we impose are well satisfied.
Scalar lnq_comp
Scalar field generated principally by the companion star.
const Scalar get_decouple() const
Returns the function used to construct beta_auto from beta.
Scalar kcar_auto
Part of the scalar generated by beta_auto, i.e.
void helical(double omega) const
Test of the helical symmetry.
const Sym_tensor & get_hij() const
Return the total deviation of the inverse conformal metric from the inverse flat metric.
const Scalar & get_kcar_auto() const
Returns the part of generated by beta_auto.
Vector beta_auto
Part of the shift vector generated principally by the star (Spherical components with respect to the ...
virtual double mass_b() const
Baryon mass.
const Vector & get_dcon_logn() const
Returns the contravariant derivative of .
Sym_tensor hij
Total deviation of the inverse conformal metric from the inverse flat metric.
void set_lnq_auto(const Scalar &lnq_auto_new)
Assignment of a new lnq_auto.
virtual void set_der_0x0() const
Sets to 0x0 all the pointers on derived quantities.
Sym_tensor hij_auto
Deviation of the inverse conformal metric from the inverse flat metric generated principally by the ...
Scalar & set_logn_comp()
Read/write of the logarithm of the lapse generated principally by the companion.
const Scalar & get_psi4() const
Return the conformal factor .
Scalar psi4
Conformal factor .
const Scalar & get_kcar_comp() const
Returns the part of generated by beta_comp.
Scalar ssjm1_h31
Effective source at the previous step for the resolution of the Poisson equation for h20_auto.
void set_conf_flat(bool confflat)
Write if conformally flat.
const Vector & get_dcon_phi() const
Returns the contravariant derivative of (logarithm of the conformal factor).
const Sym_tensor & get_hij_comp() const
Return the deviation of the inverse conformal metric from the inverse flat metric generated principa...
void operator=(const Star_bin &)
Assignment to another Star_bin.
virtual void del_hydro_euler()
Sets to ETATNONDEF (undefined state) the hydrodynamical quantities relative to the Eulerian observer.
const Vector & get_beta_auto() const
Returns the part of the shift vector generated principally by the star.
Vector & set_beta()
Read/write of .
const Scalar & get_lnq_comp() const
Returns the part of the vector field generated principally by the companion star.
void relaxation(const Star_bin &star_prev, double relax_ent, double relax_met, int mer, int fmer_met)
Performs a relaxation on ent, logn_auto, lnq_auto, beta_auto and hij_auto.
const Sym_tensor & get_hij_auto() const
Return the deviation of the inverse conformal metric from the inverse flat metric principally genera...
const Vector & get_d_psi() const
Returns the covariant derivative of the velocity potential (Spherical components with respect to the ...
Sym_tensor tkij_auto
Part of the extrinsic curvature tensor generated by beta_auto.
Vector dcov_phi
Covariant derivative of the logarithm of the conformal factor.
const Sym_tensor & get_tkij_auto() const
Returns the part of the extrinsic curvature tensor generated by beta_auto.
Metric_flat flat
Flat metric defined on the mapping (Spherical components with respect to the mapping of the star) .
Scalar ssjm1_h22
Effective source at the previous step for the resolution of the Poisson equation for h11_auto.
const Vector & get_wit_w() const
Returns the spatial projection of the fluid 3-velocity with respect to the co-orbiting observer.
Vector wit_w
Spatial projection of the fluid 3-velocity with respect to the co-orbiting observer.
void set_logn_auto(const Scalar &logn_auto_new)
Assignment of a new logn_auto.
const Scalar & get_pot_centri() const
Returns the centrifugal potential.
const Scalar & get_psi0() const
Returns the non-translational part of the velocity potential.
Scalar ssjm1_h32
Effective source at the previous step for the resolution of the Poisson equation for h21_auto.
void update_metric_der_comp(const Star_bin &comp, double omega)
Computes the derivative of metric functions related to the companion star.
void equilibrium(double ent_c, int mermax, int mermax_potvit, int mermax_poisson, double relax_poisson, double relax_potvit, double thres_adapt, Tbl &diff, double om)
Computes an equilibrium configuration.
Metric gtilde
Conformal metric .
Scalar pot_centri
Centrifugal potential.
const Vector & get_beta_comp() const
Returns the part of the shift vector generated principally by the star.
Scalar & set_pot_centri()
Read/write the centrifugal potential.
virtual ~Star_bin()
Destructor.
Vector & set_beta_auto()
Read/write of .
const Scalar & get_loggam() const
Returns the logarithm of the Lorentz factor between the fluid and the co-orbiting observer.
const Metric & get_gtilde() const
Return the conformal 3-metric .
virtual void sauve(FILE *) const
Save in a file.
const Scalar & get_logn_comp() const
Returns the part of the lapse logarithm (gravitational potential at the Newtonian limit) generated pr...
Scalar ssjm1_lnq
Effective source at the previous step for the resolution of the Poisson equation for lnq_auto.
virtual double mass_g() const
Gravitational mass.
bool conf_flat
true if the 3-metric is conformally flat, false for a more general metric.
virtual ~Star()
Destructor.
const Scalar & get_nn() const
Returns the lapse function N.
Scalar ener
Total energy density in the fluid frame.
virtual double mass_g() const =0
Gravitational mass.
Scalar logn
Logarithm of the lapse N .
Scalar nn
Lapse function N .
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...
const Vector & get_u_euler() const
Returns the fluid 3-velocity with respect to the Eulerian observer.
virtual void del_hydro_euler()
Sets to ETATNONDEF (undefined state) the hydrodynamical quantities relative to the Eulerian observer.
const Scalar & get_gam_euler() const
Returns the Lorentz factor between the fluid and Eulerian observers.
const Tensor & get_stress_euler() const
Returns the spatial part of the stress-energy tensor with respect to the Eulerian observer.
double * p_mass_b
Baryon mass.
const Map & get_mp() const
Returns the mapping.
virtual void equilibrium_spher(double ent_c, double precis=1.e-14, const Tbl *pent_limit=0x0)
Computes a spherical static configuration.
double ray_eq_3pis2() const
Coordinate radius at , [r_unit].
const Eos & get_eos() const
Returns the equation of state.
virtual void hydro_euler()
Computes the hydrodynamical quantities relative to the Eulerian observer from those in the fluid fram...
double * p_ray_eq
Coordinate radius at , .
const Eos & eos
Equation of state of the stellar matter.
const Metric & get_gamma() const
Returns the 3-metric .
const Scalar & get_logn() const
Returns the logarithm of the lapse N.
Scalar nbar
Baryon density in the fluid frame.
Scalar ener_euler
Total energy density in the Eulerian frame.
const Tbl & xi_surf() const
Description of the stellar surface: returns a 2-D Tbl containing the values of the radial coordinate ...
const Scalar & get_ener_euler() const
Returns the total energy density with respect to the Eulerian observer.
double * p_ray_eq_pi
Coordinate radius at , .
Itbl * p_l_surf
Description of the stellar surface: 2-D Itbl containing the values of the domain index l on the surfa...
void equation_of_state()
Computes the proper baryon and energy density, as well as pressure from the enthalpy.
double * p_ray_eq_pis2
Coordinate radius at , .
double * p_ray_eq_3pis2
Coordinate radius at , .
virtual void del_deriv() const
Deletes all the derived quantities.
const Scalar & get_ener() const
Returns the proper total energy density.
Scalar gam_euler
Lorentz factor between the fluid and Eulerian observers.
Map & set_mp()
Read/write of the mapping.
virtual ostream & operator>>(ostream &) const
Operator >> (virtual function called by the operator <<).
virtual void set_der_0x0() const
Sets to 0x0 all the pointers on derived quantities.
double ray_eq() const
Coordinate radius at , [r_unit].
void set_enthalpy(const Scalar &)
Assignment of the enthalpy field.
Scalar s_euler
Trace of the stress scalar in the Eulerian frame.
double * p_mass_g
Gravitational mass.
Tbl * p_xi_surf
Description of the stellar surface: 2-D Tbl containing the values of the radial coordinate on the su...
virtual void sauve(FILE *) const
Save in a file.
double ray_eq_pis2() const
Coordinate radius at , [r_unit].
Sym_tensor stress_euler
Spatial part of the stress-energy tensor with respect to the Eulerian observer.
const Scalar & get_ent() const
Returns the enthalpy field.
const Scalar & get_s_euler() const
Returns the trace of the stress tensor in the Eulerian frame.
Scalar press
Fluid pressure.
double ray_eq_pi() const
Coordinate radius at , [r_unit].
Vector u_euler
Fluid 3-velocity with respect to the Eulerian observer.
const Vector & get_beta() const
Returns the shift vector .
Map & mp
Mapping associated with the star.
int get_nzet() const
Returns the number of domains occupied by the star.
const Scalar & get_press() const
Returns the fluid pressure.
void operator=(const Star &)
Assignment to another Star.
const Scalar & get_nbar() const
Returns the proper baryon density.
int nzet
Number of domains of *mp occupied by the star.
double * p_ray_pole
Coordinate radius at .
friend ostream & operator<<(ostream &, const Star &)
Display.
double ray_pole() const
Coordinate radius at [r_unit].
virtual double mass_b() const =0
Baryon mass.
Class intended to describe valence-2 symmetric tensors.
Tensor field of valence 1.