LORENE
Lorene::Star_rot_Dirac_diff Class Reference

Class for relativistic differentially rotating stars in Dirac gauge and maximal slicing. More...

#include <star_rot_dirac_diff.h>

Inheritance diagram for Lorene::Star_rot_Dirac_diff:
Lorene::Star_rot_Dirac Lorene::Star

Public Member Functions

 Star_rot_Dirac_diff (Map &mp_i, int nzet_i, const Eos &eos_i, double(*frot_i)(double, const Tbl &), double(*primfrot_i)(double, const Tbl &), const Tbl &par_frot_i)
 Standard constructor. More...
 
 Star_rot_Dirac_diff (const Star_rot_Dirac_diff &)
 Copy constructor. More...
 
 Star_rot_Dirac_diff (Map &mp_i, const Eos &eos_i, FILE *fich, double(*frot_i)(double, const Tbl &), double(*primfrot_i)(double, const Tbl &))
 Constructor from a file (see sauve(FILE*) ). More...
 
virtual ~Star_rot_Dirac_diff ()
 Destructor. More...
 
void operator= (const Star_rot_Dirac_diff &)
 Assignment to another Star_rot_Dirac_diff. More...
 
const Scalarget_omega_field () const
 Returns the angular velocity field $\Omega$. More...
 
virtual double get_omega_c () const
 Returns the central value of the rotation angular velocity ([f_unit] ) More...
 
virtual void sauve (FILE *) const
 Save in a file. More...
 
virtual double tsw () const
 Ratio T/W. More...
 
virtual void hydro_euler ()
 Computes the hydrodynamical quantities relative to the Eulerian observer from those in the fluid frame. More...
 
void fait_omega_field (double omeg_min, double omeg_max, double precis, int nitermax)
 Computes $\Omega(r,\theta)$ (member omega_field ). More...
 
void fait_prim_field ()
 Computes the member prim_field from omega_field . More...
 
double funct_omega (double omeg) const
 Evaluates $F(\Omega)$, where F is the function defining the rotation profile. More...
 
double prim_funct_omega (double omeg) const
 Evaluates the primitive of $F(\Omega)$, where F is the function defining the rotation profile. More...
 
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)
 Computes an equilibrium configuration. More...
 
int get_relat () const
 Returns the relativity parameter. More...
 
bool is_relativistic () const
 Checks whether the star is computed using a relativistic theory. More...
 
int spectral_filter_order () const
 Returns the filtering order. More...
 
double get_omega () const
 Returns the rotation angular velocity $\Omega$. More...
 
const Scalarget_psi4 () const
 Returns the conformal factor $\Psi^4$. More...
 
const Scalarget_psi2 () const
 Returns $\Psi^2$. More...
 
const Scalarget_qqq () const
 Returns $Q=\Psi^2 N$. More...
 
const Scalarget_ln_psi () const
 Returns $ln(\Psi)$. More...
 
const Vectorget_j_euler () const
 Returns the momentum density 3-vector with respect to the Eulerian observer. More...
 
const Scalarget_v2 () const
 Returns $\gamma_{ij}v^i v^j$. More...
 
const Metric get_tgamma () const
 Returns the conformal metric $\tilde{\gamma}_{ij}$. More...
 
const Sym_tensor get_aa () const
 Returns $A^{ij}$. More...
 
const Sym_tensor get_taa () const
 Returns $\tilde{A}_{ij}$. More...
 
const Scalar get_aa_quad () const
 Returns $\tilde{A}_{ij} A^{ij}$. More...
 
const Sym_tensor_trans get_hh () const
 Returns $h^{ij}$. More...
 
virtual double mass_b () const
 Baryonic mass. More...
 
virtual double mass_g () const
 Gravitational mass. More...
 
virtual double angu_mom () const
 Angular momentum. More...
 
virtual double grv2 () const
 Error on the virial identity GRV2. More...
 
virtual double grv3 () const
 Error on the virial identity GRV3. More...
 
virtual double aplat () const
 Flattening r_pole/r_eq. More...
 
virtual double r_circ () const
 Circumferential equatorial radius. More...
 
virtual double rp_circ () const
 Circumferential polar radius. More...
 
virtual double ellipt () const
 Ellipticity e. More...
 
void update_metric ()
 Computes metric quantities from known potentials. More...
 
void solve_logn_f (Scalar &ln_f_new) const
 Solution of the two scalar Poisson equations for rotating stars in Dirac gauge. More...
 
void solve_logn_q (Scalar &ln_q_new) const
 Solution of the two scalar Poisson equations for rotating stars in Dirac gauge. More...
 
void solve_qqq (Scalar &q_new) const
 Solution of the two scalar Poisson equations for rotating stars in Dirac gauge. More...
 
void solve_shift (Vector &shift_new) const
 Solution of the shift equation for rotating stars in Dirac gauge. More...
 
void solve_hij (Sym_tensor_trans &hij_new) const
 Solution of the tensor Poisson equation for rotating stars in Dirac gauge. More...
 
Mapset_mp ()
 Read/write of the mapping. More...
 
void set_enthalpy (const Scalar &)
 Assignment of the enthalpy field. More...
 
void equation_of_state ()
 Computes the proper baryon and energy density, as well as pressure from the enthalpy. More...
 
virtual void equilibrium_spher (double ent_c, double precis=1.e-14, const Tbl *pent_limit=0x0)
 Computes a spherical static configuration. More...
 
const Mapget_mp () const
 Returns the mapping. More...
 
int get_nzet () const
 Returns the number of domains occupied by the star. More...
 
const Eosget_eos () const
 Returns the equation of state. More...
 
const Scalarget_ent () const
 Returns the enthalpy field. More...
 
const Scalarget_nbar () const
 Returns the proper baryon density. More...
 
const Scalarget_ener () const
 Returns the proper total energy density. More...
 
const Scalarget_press () const
 Returns the fluid pressure. More...
 
const Scalarget_ener_euler () const
 Returns the total energy density with respect to the Eulerian observer. More...
 
const Scalarget_s_euler () const
 Returns the trace of the stress tensor in the Eulerian frame. More...
 
const Scalarget_gam_euler () const
 Returns the Lorentz factor between the fluid and Eulerian observers. More...
 
const Vectorget_u_euler () const
 Returns the fluid 3-velocity with respect to the Eulerian observer. More...
 
const Tensorget_stress_euler () const
 Returns the spatial part of the stress-energy tensor with respect to the Eulerian observer. More...
 
const Scalarget_logn () const
 Returns the logarithm of the lapse N. More...
 
const Scalarget_nn () const
 Returns the lapse function N. More...
 
const Vectorget_beta () const
 Returns the shift vector $\beta^i$. More...
 
const Scalarget_lnq () const
 
const Metricget_gamma () const
 Returns the 3-metric $\gamma$. More...
 
double ray_eq () const
 Coordinate radius at $\phi=0$, $\theta=\pi/2$ [r_unit]. More...
 
double ray_eq_pis2 () const
 Coordinate radius at $\phi=\pi/2$, $\theta=\pi/2$ [r_unit]. More...
 
double ray_eq_pi () const
 Coordinate radius at $\phi=\pi$, $\theta=\pi/2$ [r_unit]. More...
 
double ray_eq_3pis2 () const
 Coordinate radius at $\phi=3\pi/2$, $\theta=\pi/2$ [r_unit]. More...
 
double ray_pole () const
 Coordinate radius at $\theta=0$ [r_unit]. More...
 
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')$. More...
 
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')$. More...
 

Protected Member Functions

virtual ostream & operator>> (ostream &) const
 Operator >> (virtual function called by the operator <<). More...
 
virtual void del_deriv () const
 Deletes all the derived quantities. More...
 
void set_der_0x0 () const
 Sets to 0x0 all the pointers on derived quantities. More...
 
virtual void del_hydro_euler ()
 Sets to ETATNONDEF (undefined state) the hydrodynamical quantities relative to the Eulerian observer. More...
 

Protected Attributes

double(* frot )(double, const Tbl &)
 Function $F(\Omega)$ defining the rotation profile. More...
 
double(* primfrot )(double, const Tbl &)
 Primitive of the function $F(\Omega)$, which vanishes at the stellar center. More...
 
Tbl par_frot
 Parameters of the function $F(\Omega)$. More...
 
Scalar omega_field
 Field $\Omega(r,\theta)$. More...
 
double omega_min
 Minimum value of $\Omega$. More...
 
double omega_max
 Maximum value of $\Omega$. More...
 
Scalar prim_field
 Field $\int_{\Omega_{\rm c}}^\Omega F(\Omega') \, d\Omega' $. More...
 
int relat_type
 Relativistic flag. More...
 
int spectral_filter
 Spectral exponential filtering order. More...
 
double omega
 Rotation angular velocity ([f_unit] ) More...
 
Scalar psi4
 Conformal factor $\Psi^4$. More...
 
Scalar psi2
 $\Psi^2$ More...
 
Scalar qqq
 $Q = \Psi^2 N$ More...
 
Scalar ln_psi
 $ln(\Psi)$ More...
 
Vector j_euler
 Momentum density 3-vector with respect to the Eulerian observer. More...
 
Scalar v2
 $\gamma_{ij}v^i v^j$ More...
 
const Metric_flatflat
 flat metric $f_{ij}$ (spherical components) More...
 
Metric tgamma
 $\tilde{\gamma}_{ij}$ More...
 
Sym_tensor aa
 $A^{ij}$ More...
 
Sym_tensor taa
 $\tilde{A}_{ij}$ More...
 
Scalar aa_quad
 $\tilde{A}_{ij} A^{ij}$ More...
 
Sym_tensor_trans hh
 $h^{ij}$ is defined by $\tilde{\gamma}^{ij}=f^{ij}+h^{ij}$. More...
 
double * p_angu_mom
 Angular momentum. More...
 
double * p_grv2
 Error on the virial identity GRV2. More...
 
double * p_grv3
 Error on the virial identity GRV3. More...
 
double * p_tsw
 Ratio T/W. More...
 
double * p_r_circ
 Circumferential equatorial radius. More...
 
double * p_rp_circ
 Circumferential polar radius. More...
 
Mapmp
 Mapping associated with the star. More...
 
int nzet
 Number of domains of *mp occupied by the star. More...
 
const Eoseos
 Equation of state of the stellar matter. More...
 
Scalar ent
 Log-enthalpy. More...
 
Scalar nbar
 Baryon density in the fluid frame. More...
 
Scalar ener
 Total energy density in the fluid frame. More...
 
Scalar press
 Fluid pressure. More...
 
Scalar ener_euler
 Total energy density in the Eulerian frame. More...
 
Scalar s_euler
 Trace of the stress scalar in the Eulerian frame. More...
 
Scalar gam_euler
 Lorentz factor between the fluid and Eulerian observers. More...
 
Vector u_euler
 Fluid 3-velocity with respect to the Eulerian observer. More...
 
Sym_tensor stress_euler
 Spatial part of the stress-energy tensor with respect to the Eulerian observer. More...
 
Scalar logn
 Logarithm of the lapse N . More...
 
Scalar nn
 Lapse function N . More...
 
Vector beta
 Shift vector. More...
 
Scalar lnq
 
Metric gamma
 3-metric More...
 
double * p_ray_eq
 Coordinate radius at $\phi=0$, $\theta=\pi/2$. More...
 
double * p_ray_eq_pis2
 Coordinate radius at $\phi=\pi/2$, $\theta=\pi/2$. More...
 
double * p_ray_eq_pi
 Coordinate radius at $\phi=\pi$, $\theta=\pi/2$. More...
 
double * p_ray_eq_3pis2
 Coordinate radius at $\phi=3\pi/2$, $\theta=\pi/2$. More...
 
double * p_ray_pole
 Coordinate radius at $\theta=0$. More...
 
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')$. More...
 
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')$. More...
 
double * p_mass_b
 Baryon mass. More...
 
double * p_mass_g
 Gravitational mass. More...
 

Friends

ostream & operator<< (ostream &, const Star &)
 Display. More...
 

Detailed Description

Class for relativistic differentially rotating stars in Dirac gauge and maximal slicing.

(*** Under development ***)()

Definition at line 49 of file star_rot_dirac_diff.h.

Constructor & Destructor Documentation

◆ Star_rot_Dirac_diff() [1/3]

Lorene::Star_rot_Dirac_diff::Star_rot_Dirac_diff ( Map mp_i,
int  nzet_i,
const Eos eos_i,
double(*)(double, const Tbl &)  frot_i,
double(*)(double, const Tbl &)  primfrot_i,
const Tbl par_frot_i 
)

Standard constructor.

Parameters
mp_iMapping on which the star will be defined
nzet_iNumber of domains occupied by the star
relatshould be true for a relativistic star, false for a Newtonian one
eos_iEquation of state of the stellar matter
frot_iFunction $F(\Omega)$ defining the rotation profile.
primfrot_iPrimitive of $F(\Omega)$ which vanishes at the stellar center
par_frot_iParameters of functions frot_i and primfrot_i , par_frot_i(0) being the central value of $\Omega$.

Definition at line 53 of file star_rot_dirac_diff.C.

References omega_field, omega_max, omega_min, and prim_field.

◆ Star_rot_Dirac_diff() [2/3]

Lorene::Star_rot_Dirac_diff::Star_rot_Dirac_diff ( const Star_rot_Dirac_diff star)

Copy constructor.

Definition at line 76 of file star_rot_dirac_diff.C.

◆ Star_rot_Dirac_diff() [3/3]

Lorene::Star_rot_Dirac_diff::Star_rot_Dirac_diff ( Map mp_i,
const Eos eos_i,
FILE *  fich,
double(*)(double, const Tbl &)  frot_i,
double(*)(double, const Tbl &)  primfrot_i 
)

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

Parameters
mp_iMapping on which the star will be defined
eos_iEquation of state of the stellar matter
fichinput file (must have been created by the function sauve )
frot_iFunction $F(\Omega)$ defining the rotation profile.
primfrot_iPrimitive of $F(\Omega)$ which vanishes at the stellar center

Definition at line 90 of file star_rot_dirac_diff.C.

References fait_prim_field(), Lorene::fread_be(), Lorene::Map::get_mg(), Lorene::Star::mp, omega_field, omega_max, and omega_min.

◆ ~Star_rot_Dirac_diff()

Lorene::Star_rot_Dirac_diff::~Star_rot_Dirac_diff ( )
virtual

Destructor.

Definition at line 116 of file star_rot_dirac_diff.C.

Member Function Documentation

◆ angu_mom()

◆ aplat()

double Lorene::Star_rot_Dirac::aplat ( ) const
virtualinherited

Flattening r_pole/r_eq.

Definition at line 421 of file strot_dirac_global.C.

References Lorene::Star::ray_eq(), and Lorene::Star::ray_pole().

◆ del_deriv()

void Lorene::Star_rot_Dirac::del_deriv ( ) const
protectedvirtualinherited

◆ del_hydro_euler()

void Lorene::Star_rot_Dirac::del_hydro_euler ( )
protectedvirtualinherited

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

Reimplemented from Lorene::Star.

Definition at line 263 of file star_rot_dirac.C.

References Lorene::Star_rot_Dirac::del_deriv(), Lorene::Star::del_hydro_euler(), Lorene::Star_rot_Dirac::j_euler, Lorene::Scalar::set_etat_nondef(), Lorene::Tensor::set_etat_nondef(), and Lorene::Star_rot_Dirac::v2.

◆ ellipt()

double Lorene::Star_rot_Dirac::ellipt ( ) const
virtualinherited

Ellipticity e.

Defined as $ e = \sqrt{1 - \left( \frac{R^c_e}{R^c_p} \right)^2} $, where $R^c_e$ and $R^c_p$ are, respectively, the equatorial and polar circumferential radius, given by r_circ() and rp_circ().

Definition at line 431 of file strot_dirac_global.C.

References Lorene::Star_rot_Dirac::r_circ(), Lorene::Star_rot_Dirac::rp_circ(), and Lorene::sqrt().

◆ equation_of_state()

◆ equilibrium()

void Lorene::Star_rot_Dirac_diff::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 
)
virtual

Computes an equilibrium configuration.

Parameters
ent_c[input] Central enthalpy
omega0[input] Requested central angular velocity (if fact_omega=1. )
fact_omega[input] 1.01 = search for the Keplerian frequency,
  1. = otherwise.
nzadapt[input] Number of (inner) domains where the mapping adaptation to an iso-enthalpy surface should be performed
ent_limit[input] 1-D Tbl of dimension nzet which defines the enthalpy at the outer boundary of each domain
icontrol[input] Set of integer parameters (stored as a 1-D Itbl of size 8) to control the iteration:
  • icontrol(0) = mer_max : maximum number of steps
  • icontrol(1) = mer_rot : step at which the rotation is switched on
  • icontrol(2) = mer_change_omega : step at which the rotation velocity is changed to reach the final one
  • icontrol(3) = mer_fix_omega : step at which the final rotation velocity must have been reached
  • icontrol(4) = mer_mass : the absolute value of mer_mass is the step from which the baryon mass is forced to converge, by varying the central enthalpy (mer_mass > 0 ) or the angular velocity (mer_mass < 0 )
  • icontrol(5) = mermax_poisson : maximum number of steps in Map_et::poisson
  • icontrol(6) = mer_triax : step at which the 3-D perturbation is switched on
  • icontrol(7) = delta_mer_kep : number of steps after mer_fix_omega when omega starts to be increased by fact_omega to search for the Keplerian velocity
control[input] Set of parameters (stored as a 1-D Tbl of size 7) to control the iteration:
  • control(0) = precis : threshold on the enthalpy relative change for ending the computation
  • control(1) = omega_ini : initial central angular velocity, switched on only if mer_rot < 0 , otherwise 0 is used
  • control(2) = relax : relaxation factor in the main iteration
  • control(3) = relax_poisson : relaxation factor in Map_et::poisson
  • control(4) = thres_adapt : threshold on dH/dr for freezing the adaptation of the mapping
  • control(5) = ampli_triax : relative amplitude of the 3-D perturbation
  • control(6) = precis_adapt : precision for Map_et::adapt
mbar_wanted[input] Requested baryon mass (effective only if mer_mass > mer_max )
aexp_mass[input] Exponent for the increase factor of the central enthalpy to converge to the requested baryon mass
diff[output] 1-D Tbl of size 7 for the storage of some error indicators :
  • diff(0) : Relative change in the enthalpy field between two successive steps
  • diff(1) : Relative error in the resolution of the Poisson equation for nuf
  • diff(2) : Relative error in the resolution of the Poisson equation for nuq
  • diff(3) : Relative error in the resolution of the Poisson equation for dzeta
  • diff(4) : Relative error in the resolution of the Poisson equation for tggg
  • diff(5) : Relative error in the resolution of the equation for shift (x comp.)
  • diff(6) : Relative error in the resolution of the equation for shift (y comp.)

Definition at line 47 of file strot_dirac_diff_equil.C.

References Lorene::Map::get_mg(), Lorene::Mg3d::get_nzone(), Lorene::Mg3d::get_type_t(), and Lorene::Star::mp.

◆ equilibrium_spher()

void Lorene::Star::equilibrium_spher ( double  ent_c,
double  precis = 1.e-14,
const Tbl pent_limit = 0x0 
)
virtualinherited

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 101 of file star_equil_spher.C.

References Lorene::Star_rot::a_car, Lorene::Map_et::adapt(), Lorene::Param::add_double(), Lorene::Param::add_int(), Lorene::Param::add_int_mod(), Lorene::Param::add_tbl(), Lorene::Scalar::annule(), Lorene::Star_rot::b_car, Lorene::Star_rot::bbb, Lorene::diffrel(), Lorene::Scalar::dsdr(), Lorene::Map_af::dsdr(), Lorene::Star_rot::dzeta, Lorene::Star::ener, Lorene::Star::ener_euler, Lorene::Star::ent, Lorene::Star::equation_of_state(), Lorene::exp(), Lorene::Star::gam_euler, Lorene::Star::gamma, Lorene::Map_af::get_alpha(), Lorene::Map_et::get_alpha(), Lorene::Map_af::get_beta(), Lorene::Map_et::get_beta(), Lorene::Map::get_bvect_cart(), Lorene::Map::get_mg(), Lorene::Mg3d::get_nr(), Lorene::Mg3d::get_nt(), Lorene::Mg3d::get_nzone(), Lorene::Map_af::homothetie(), Lorene::Scalar::integrale(), Lorene::Star::logn, Lorene::Star::mass_b(), Lorene::Star::mass_g(), Lorene::Star::mp, Lorene::Star::nn, Lorene::norme(), Lorene::Star::nzet, Lorene::Map_af::poisson(), Lorene::Star::press, Lorene::Star::s_euler, Lorene::Vector::set(), Lorene::Map_af::set_alpha(), Lorene::Map_af::set_beta(), Lorene::Scalar::set_dzpuis(), Lorene::Cmp::set_etat_qcq(), Lorene::Tensor::set_etat_zero(), Lorene::sqrt(), Lorene::Scalar::std_spectral_base(), Lorene::Star::u_euler, Lorene::Scalar::val_grid_point(), and Lorene::Map::val_r().

◆ fait_omega_field()

void Lorene::Star_rot_Dirac_diff::fait_omega_field ( double  omeg_min,
double  omeg_max,
double  precis,
int  nitermax 
)

Computes $\Omega(r,\theta)$ (member omega_field ).

The computation amounts to solving the equation

\[ F(\Omega) - {\gamma_{\varphi \varphi} (\beta^\varphi + \Omega) \over N^2 - \gamma_{\varphi \varphi}(\beta^\varphi + \Omega)^2} = 0 \]

for $\Omega$.

Parameters
omeg_min[input] Lower bound of the interval for searching omega
omeg_max[input] Higher bound of the interval for searching omega
precis[input] Required precision in the determination of the zero by the secant method
nitermax[input] Maximum number of iterations in the secant method to compute the zero.

Definition at line 52 of file strot_dirac_diff_faitomeg.C.

References Lorene::Param::add_int(), Lorene::Param::add_scalar(), Lorene::Param::add_star(), Lorene::Scalar::annule(), Lorene::Star::beta, Lorene::Metric::cov(), Lorene::Scalar::div_rsint(), Lorene::Star::gamma, Lorene::Scalar::get_etat(), Lorene::Map::get_mg(), Lorene::Mg3d::get_nzone(), Lorene::Star::mp, Lorene::Scalar::mult_rsint(), omega_field, Lorene::Star_rot_Dirac::psi4, and Lorene::Star_rot_Dirac::qqq.

◆ fait_prim_field()

◆ funct_omega()

double Lorene::Star_rot_Dirac_diff::funct_omega ( double  omeg) const

Evaluates $F(\Omega)$, where F is the function defining the rotation profile.

This function is linked to the components of the fluid 4-velocity by

\[ F(\Omega) = u^t u_\varphi \ . \]

funct_omega calls frot with the parameters par_frot .

Parameters
omeg[input] value of $\Omega$
Returns
value of $F(\Omega)$

Definition at line 250 of file star_rot_dirac_diff.C.

References frot, and par_frot.

◆ get_aa()

const Sym_tensor Lorene::Star_rot_Dirac::get_aa ( ) const
inlineinherited

Returns $A^{ij}$.

Definition at line 245 of file star_rot_dirac.h.

References Lorene::Star_rot_Dirac::aa.

◆ get_aa_quad()

const Scalar Lorene::Star_rot_Dirac::get_aa_quad ( ) const
inlineinherited

Returns $\tilde{A}_{ij} A^{ij}$.

Definition at line 255 of file star_rot_dirac.h.

References Lorene::Star_rot_Dirac::aa_quad.

◆ get_beta()

const Vector& Lorene::Star::get_beta ( ) const
inlineinherited

Returns the shift vector $\beta^i$.

Definition at line 402 of file star.h.

References Lorene::Star::beta.

◆ get_ener()

const Scalar& Lorene::Star::get_ener ( ) const
inlineinherited

Returns the proper total energy density.

Definition at line 370 of file star.h.

References Lorene::Star::ener.

◆ get_ener_euler()

const Scalar& Lorene::Star::get_ener_euler ( ) const
inlineinherited

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

Definition at line 376 of file star.h.

References Lorene::Star::ener_euler.

◆ get_ent()

const Scalar& Lorene::Star::get_ent ( ) const
inlineinherited

Returns the enthalpy field.

Definition at line 364 of file star.h.

References Lorene::Star::ent.

◆ get_eos()

const Eos& Lorene::Star::get_eos ( ) const
inlineinherited

Returns the equation of state.

Definition at line 361 of file star.h.

References Lorene::Star::eos.

◆ get_gam_euler()

const Scalar& Lorene::Star::get_gam_euler ( ) const
inlineinherited

Returns the Lorentz factor between the fluid and Eulerian observers.

Definition at line 382 of file star.h.

References Lorene::Star::gam_euler.

◆ get_gamma()

const Metric& Lorene::Star::get_gamma ( ) const
inlineinherited

Returns the 3-metric $\gamma$.

Definition at line 409 of file star.h.

References Lorene::Star::gamma.

◆ get_hh()

const Sym_tensor_trans Lorene::Star_rot_Dirac::get_hh ( ) const
inlineinherited

Returns $h^{ij}$.

Definition at line 260 of file star_rot_dirac.h.

References Lorene::Star_rot_Dirac::hh.

◆ get_j_euler()

const Vector& Lorene::Star_rot_Dirac::get_j_euler ( ) const
inlineinherited

Returns the momentum density 3-vector with respect to the Eulerian observer.

Definition at line 227 of file star_rot_dirac.h.

References Lorene::Star_rot_Dirac::j_euler.

◆ get_ln_psi()

const Scalar& Lorene::Star_rot_Dirac::get_ln_psi ( ) const
inlineinherited

Returns $ln(\Psi)$.

Definition at line 217 of file star_rot_dirac.h.

References Lorene::Star_rot_Dirac::ln_psi.

◆ get_logn()

const Scalar& Lorene::Star::get_logn ( ) const
inlineinherited

Returns the logarithm of the lapse N.

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

Definition at line 396 of file star.h.

References Lorene::Star::logn.

◆ get_mp()

const Map& Lorene::Star::get_mp ( ) const
inlineinherited

Returns the mapping.

Definition at line 355 of file star.h.

References Lorene::Star::mp.

◆ get_nbar()

const Scalar& Lorene::Star::get_nbar ( ) const
inlineinherited

Returns the proper baryon density.

Definition at line 367 of file star.h.

References Lorene::Star::nbar.

◆ get_nn()

const Scalar& Lorene::Star::get_nn ( ) const
inlineinherited

Returns the lapse function N.

Definition at line 399 of file star.h.

References Lorene::Star::nn.

◆ get_nzet()

int Lorene::Star::get_nzet ( ) const
inlineinherited

Returns the number of domains occupied by the star.

Definition at line 358 of file star.h.

References Lorene::Star::nzet.

◆ get_omega()

double Lorene::Star_rot_Dirac::get_omega ( ) const
inlineinherited

Returns the rotation angular velocity $\Omega$.

Definition at line 196 of file star_rot_dirac.h.

References Lorene::Star_rot_Dirac::omega.

◆ get_omega_c()

double Lorene::Star_rot_Dirac_diff::get_omega_c ( ) const
virtual

Returns the central value of the rotation angular velocity ([f_unit] )

Definition at line 262 of file star_rot_dirac_diff.C.

References omega_field, and Lorene::Scalar::val_grid_point().

◆ get_omega_field()

const Scalar& Lorene::Star_rot_Dirac_diff::get_omega_field ( ) const
inline

Returns the angular velocity field $\Omega$.

Definition at line 149 of file star_rot_dirac_diff.h.

References omega_field.

◆ get_press()

const Scalar& Lorene::Star::get_press ( ) const
inlineinherited

Returns the fluid pressure.

Definition at line 373 of file star.h.

References Lorene::Star::press.

◆ get_psi2()

const Scalar& Lorene::Star_rot_Dirac::get_psi2 ( ) const
inlineinherited

Returns $\Psi^2$.

Definition at line 207 of file star_rot_dirac.h.

References Lorene::Star_rot_Dirac::psi2.

◆ get_psi4()

const Scalar& Lorene::Star_rot_Dirac::get_psi4 ( ) const
inlineinherited

Returns the conformal factor $\Psi^4$.

Definition at line 202 of file star_rot_dirac.h.

References Lorene::Star_rot_Dirac::psi4.

◆ get_qqq()

const Scalar& Lorene::Star_rot_Dirac::get_qqq ( ) const
inlineinherited

Returns $Q=\Psi^2 N$.

Definition at line 212 of file star_rot_dirac.h.

References Lorene::Star_rot_Dirac::qqq.

◆ get_relat()

int Lorene::Star_rot_Dirac::get_relat ( ) const
inlineinherited

Returns the relativity parameter.

Definition at line 185 of file star_rot_dirac.h.

References Lorene::Star_rot_Dirac::relat_type.

◆ get_s_euler()

const Scalar& Lorene::Star::get_s_euler ( ) const
inlineinherited

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

Definition at line 379 of file star.h.

References Lorene::Star::s_euler.

◆ get_stress_euler()

const Tensor& Lorene::Star::get_stress_euler ( ) const
inlineinherited

Returns the spatial part of the stress-energy tensor with respect to the Eulerian observer.

Definition at line 390 of file star.h.

References Lorene::Star::stress_euler.

◆ get_taa()

const Sym_tensor Lorene::Star_rot_Dirac::get_taa ( ) const
inlineinherited

Returns $\tilde{A}_{ij}$.

Definition at line 250 of file star_rot_dirac.h.

References Lorene::Star_rot_Dirac::taa.

◆ get_tgamma()

const Metric Lorene::Star_rot_Dirac::get_tgamma ( ) const
inlineinherited

Returns the conformal metric $\tilde{\gamma}_{ij}$.

Definition at line 240 of file star_rot_dirac.h.

References Lorene::Star_rot_Dirac::tgamma.

◆ get_u_euler()

const Vector& Lorene::Star::get_u_euler ( ) const
inlineinherited

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

Definition at line 385 of file star.h.

References Lorene::Star::u_euler.

◆ get_v2()

const Scalar& Lorene::Star_rot_Dirac::get_v2 ( ) const
inlineinherited

Returns $\gamma_{ij}v^i v^j$.

Definition at line 232 of file star_rot_dirac.h.

References Lorene::Star_rot_Dirac::v2.

◆ grv2()

◆ grv3()

◆ hydro_euler()

void Lorene::Star_rot_Dirac_diff::hydro_euler ( )
virtual

Computes the hydrodynamical quantities relative to the Eulerian observer from those in the fluid frame.

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

Reimplemented from Lorene::Star_rot_Dirac.

Definition at line 44 of file strot_dirac_diff_hydro.C.

References Lorene::Star::beta, Lorene::Metric::con(), Lorene::contract(), Lorene::Metric::cov(), Lorene::Star_rot_Dirac::del_deriv(), Lorene::Star::ener, Lorene::Star::ener_euler, Lorene::Star::gam_euler, Lorene::Star::gamma, Lorene::Star_rot_Dirac::j_euler, Lorene::Scalar::mult_rsint(), Lorene::Star::nn, omega_field, Lorene::Star::press, Lorene::Star::s_euler, Lorene::Vector::set(), Lorene::Scalar::set_etat_zero(), Lorene::sqrt(), Lorene::Vector::std_spectral_base(), Lorene::Tensor::std_spectral_base(), Lorene::Scalar::std_spectral_base(), Lorene::Star::stress_euler, Lorene::Star::u_euler, and Lorene::Star_rot_Dirac::v2.

◆ is_relativistic()

bool Lorene::Star_rot_Dirac::is_relativistic ( ) const
inlineinherited

Checks whether the star is computed using a relativistic theory.

Definition at line 188 of file star_rot_dirac.h.

References Lorene::Star_rot_Dirac::relat_type.

◆ l_surf()

const Itbl & Lorene::Star::l_surf ( ) const
virtualinherited

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::Star_rot.

Definition at line 66 of file star_global.C.

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

◆ mass_b()

double Lorene::Star_rot_Dirac::mass_b ( ) const
virtualinherited

◆ mass_g()

◆ operator=()

void Lorene::Star_rot_Dirac_diff::operator= ( const Star_rot_Dirac_diff star)

◆ operator>>()

◆ prim_funct_omega()

double Lorene::Star_rot_Dirac_diff::prim_funct_omega ( double  omeg) const

Evaluates the primitive of $F(\Omega)$, where F is the function defining the rotation profile.

Parameters
omeg[input] value of $\Omega$
Returns
value of $\int_{\Omega_{\rm c}}^\Omega F(\Omega') \, d\Omega' $

Definition at line 256 of file star_rot_dirac_diff.C.

References par_frot, and primfrot.

◆ r_circ()

double Lorene::Star_rot_Dirac::r_circ ( ) const
virtualinherited

◆ ray_eq()

double Lorene::Star::ray_eq ( ) const
inherited

◆ ray_eq_3pis2()

double Lorene::Star::ray_eq_3pis2 ( ) const
inherited

◆ ray_eq_pi()

double Lorene::Star::ray_eq_pi ( ) const
inherited

◆ ray_eq_pis2()

double Lorene::Star::ray_eq_pis2 ( ) const
inherited

◆ ray_pole()

double Lorene::Star::ray_pole ( ) const
inherited

Coordinate radius at $\theta=0$ [r_unit].

Definition at line 281 of file star_global.C.

References Lorene::Map::get_mg(), Lorene::Mg3d::get_type_t(), Lorene::Star::mp, and Lorene::Star::p_ray_pole.

◆ rp_circ()

◆ sauve()

void Lorene::Star_rot_Dirac_diff::sauve ( FILE *  fich) const
virtual

◆ set_der_0x0()

void Lorene::Star_rot_Dirac::set_der_0x0 ( ) const
protectedvirtualinherited

◆ set_enthalpy()

void Lorene::Star::set_enthalpy ( const Scalar ent_i)
inherited

Assignment of the enthalpy field.

Definition at line 382 of file star.C.

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

◆ set_mp()

Map& Lorene::Star::set_mp ( )
inlineinherited

Read/write of the mapping.

Definition at line 322 of file star.h.

References Lorene::Star::mp.

◆ solve_hij()

◆ solve_logn_f()

void Lorene::Star_rot_Dirac::solve_logn_f ( Scalar ln_f_new) const
inherited

Solution of the two scalar Poisson equations for rotating stars in Dirac gauge.

Definition at line 65 of file strot_dirac_solvenq.C.

References Lorene::Star::ener_euler, Lorene::Scalar::poisson(), Lorene::Star_rot_Dirac::psi4, and Lorene::Star::s_euler.

◆ solve_logn_q()

◆ solve_qqq()

◆ solve_shift()

◆ spectral_filter_order()

int Lorene::Star_rot_Dirac::spectral_filter_order ( ) const
inlineinherited

Returns the filtering order.

Definition at line 191 of file star_rot_dirac.h.

References Lorene::Star_rot_Dirac::spectral_filter.

◆ tsw()

◆ update_metric()

◆ xi_surf()

const Tbl & Lorene::Star::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 92 of file star_global.C.

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

Friends And Related Function Documentation

◆ operator<<

ostream& operator<< ( ostream &  ost,
const Star et 
)
friend

Display.

Definition at line 415 of file star.C.

Member Data Documentation

◆ aa

Sym_tensor Lorene::Star_rot_Dirac::aa
protectedinherited

$A^{ij}$

Definition at line 97 of file star_rot_dirac.h.

◆ aa_quad

Scalar Lorene::Star_rot_Dirac::aa_quad
protectedinherited

$\tilde{A}_{ij} A^{ij}$

Definition at line 99 of file star_rot_dirac.h.

◆ beta

Vector Lorene::Star::beta
protectedinherited

Shift vector.

Definition at line 228 of file star.h.

◆ ener

Scalar Lorene::Star::ener
protectedinherited

Total energy density in the fluid frame.

Definition at line 193 of file star.h.

◆ ener_euler

Scalar Lorene::Star::ener_euler
protectedinherited

Total energy density in the Eulerian frame.

Definition at line 198 of file star.h.

◆ ent

Scalar Lorene::Star::ent
protectedinherited

Log-enthalpy.

Definition at line 190 of file star.h.

◆ eos

const Eos& Lorene::Star::eos
protectedinherited

Equation of state of the stellar matter.

Definition at line 185 of file star.h.

◆ flat

const Metric_flat& Lorene::Star_rot_Dirac::flat
protectedinherited

flat metric $f_{ij}$ (spherical components)

Definition at line 94 of file star_rot_dirac.h.

◆ frot

double(* Lorene::Star_rot_Dirac_diff::frot) (double, const Tbl &)
protected

Function $F(\Omega)$ defining the rotation profile.

This function is linked to the components of the fluid 4-velocity by

\[ F(\Omega) = u^t u_\varphi \ . \]

The first argument of frot must be $\Omega$; the second argument contains the parameters, the first of which being necessarily the central value of $\Omega$.

Definition at line 64 of file star_rot_dirac_diff.h.

◆ gam_euler

Scalar Lorene::Star::gam_euler
protectedinherited

Lorentz factor between the fluid and Eulerian observers.

Definition at line 204 of file star.h.

◆ gamma

Metric Lorene::Star::gamma
protectedinherited

3-metric

Definition at line 235 of file star.h.

◆ hh

Sym_tensor_trans Lorene::Star_rot_Dirac::hh
protectedinherited

$h^{ij}$ is defined by $\tilde{\gamma}^{ij}=f^{ij}+h^{ij}$.

We impose the Dirac gauge $D_j h^{ij}$ explicitly by defining $h^{ij}$ to be a symmetric transverse tensor.

Definition at line 106 of file star_rot_dirac.h.

◆ j_euler

Vector Lorene::Star_rot_Dirac::j_euler
protectedinherited

Momentum density 3-vector with respect to the Eulerian observer.

Definition at line 87 of file star_rot_dirac.h.

◆ ln_psi

Scalar Lorene::Star_rot_Dirac::ln_psi
protectedinherited

$ln(\Psi)$

Definition at line 77 of file star_rot_dirac.h.

◆ logn

Scalar Lorene::Star::logn
protectedinherited

Logarithm of the lapse N .

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

Definition at line 222 of file star.h.

◆ mp

Map& Lorene::Star::mp
protectedinherited

Mapping associated with the star.

Definition at line 180 of file star.h.

◆ nbar

Scalar Lorene::Star::nbar
protectedinherited

Baryon density in the fluid frame.

Definition at line 192 of file star.h.

◆ nn

Scalar Lorene::Star::nn
protectedinherited

Lapse function N .

Definition at line 225 of file star.h.

◆ nzet

int Lorene::Star::nzet
protectedinherited

Number of domains of *mp occupied by the star.

Definition at line 183 of file star.h.

◆ omega

double Lorene::Star_rot_Dirac::omega
protectedinherited

Rotation angular velocity ([f_unit] )

Definition at line 69 of file star_rot_dirac.h.

◆ omega_field

Scalar Lorene::Star_rot_Dirac_diff::omega_field
protected

Field $\Omega(r,\theta)$.

Definition at line 84 of file star_rot_dirac_diff.h.

◆ omega_max

double Lorene::Star_rot_Dirac_diff::omega_max
protected

Maximum value of $\Omega$.

Definition at line 87 of file star_rot_dirac_diff.h.

◆ omega_min

double Lorene::Star_rot_Dirac_diff::omega_min
protected

Minimum value of $\Omega$.

Definition at line 86 of file star_rot_dirac_diff.h.

◆ p_angu_mom

double* Lorene::Star_rot_Dirac::p_angu_mom
mutableprotectedinherited

Angular momentum.

Definition at line 116 of file star_rot_dirac.h.

◆ p_grv2

double* Lorene::Star_rot_Dirac::p_grv2
mutableprotectedinherited

Error on the virial identity GRV2.

Definition at line 117 of file star_rot_dirac.h.

◆ p_grv3

double* Lorene::Star_rot_Dirac::p_grv3
mutableprotectedinherited

Error on the virial identity GRV3.

Definition at line 118 of file star_rot_dirac.h.

◆ p_l_surf

Itbl* Lorene::Star::p_l_surf
mutableprotectedinherited

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 260 of file star.h.

◆ p_mass_b

double* Lorene::Star::p_mass_b
mutableprotectedinherited

Baryon mass.

Definition at line 268 of file star.h.

◆ p_mass_g

double* Lorene::Star::p_mass_g
mutableprotectedinherited

Gravitational mass.

Definition at line 269 of file star.h.

◆ p_r_circ

double* Lorene::Star_rot_Dirac::p_r_circ
mutableprotectedinherited

Circumferential equatorial radius.

Definition at line 120 of file star_rot_dirac.h.

◆ p_ray_eq

double* Lorene::Star::p_ray_eq
mutableprotectedinherited

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

Definition at line 242 of file star.h.

◆ p_ray_eq_3pis2

double* Lorene::Star::p_ray_eq_3pis2
mutableprotectedinherited

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

Definition at line 251 of file star.h.

◆ p_ray_eq_pi

double* Lorene::Star::p_ray_eq_pi
mutableprotectedinherited

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

Definition at line 248 of file star.h.

◆ p_ray_eq_pis2

double* Lorene::Star::p_ray_eq_pis2
mutableprotectedinherited

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

Definition at line 245 of file star.h.

◆ p_ray_pole

double* Lorene::Star::p_ray_pole
mutableprotectedinherited

Coordinate radius at $\theta=0$.

Definition at line 254 of file star.h.

◆ p_rp_circ

double* Lorene::Star_rot_Dirac::p_rp_circ
mutableprotectedinherited

Circumferential polar radius.

Definition at line 121 of file star_rot_dirac.h.

◆ p_tsw

double* Lorene::Star_rot_Dirac::p_tsw
mutableprotectedinherited

Ratio T/W.

Definition at line 119 of file star_rot_dirac.h.

◆ p_xi_surf

Tbl* Lorene::Star::p_xi_surf
mutableprotectedinherited

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 266 of file star.h.

◆ par_frot

Tbl Lorene::Star_rot_Dirac_diff::par_frot
protected

Parameters of the function $F(\Omega)$.

To be used as the second argument of functions frot and primfrot . The parameter par_frot(0) must always be the central angular velocity.

Definition at line 81 of file star_rot_dirac_diff.h.

◆ press

Scalar Lorene::Star::press
protectedinherited

Fluid pressure.

Definition at line 194 of file star.h.

◆ prim_field

Scalar Lorene::Star_rot_Dirac_diff::prim_field
protected

Field $\int_{\Omega_{\rm c}}^\Omega F(\Omega') \, d\Omega' $.

Definition at line 90 of file star_rot_dirac_diff.h.

◆ primfrot

double(* Lorene::Star_rot_Dirac_diff::primfrot) (double, const Tbl &)
protected

Primitive of the function $F(\Omega)$, which vanishes at the stellar center.

The first argument of primfrot must be $\Omega$; the second argument contains the parameters, the first of which being necessarily the central value of $\Omega$.

Definition at line 72 of file star_rot_dirac_diff.h.

◆ psi2

Scalar Lorene::Star_rot_Dirac::psi2
protectedinherited

$\Psi^2$

Definition at line 75 of file star_rot_dirac.h.

◆ psi4

Scalar Lorene::Star_rot_Dirac::psi4
protectedinherited

Conformal factor $\Psi^4$.

Definition at line 74 of file star_rot_dirac.h.

◆ qqq

Scalar Lorene::Star_rot_Dirac::qqq
protectedinherited

$Q = \Psi^2 N$

Definition at line 76 of file star_rot_dirac.h.

◆ relat_type

int Lorene::Star_rot_Dirac::relat_type
protectedinherited

Relativistic flag.

0 : Newtonian theory (not implemented) 1 : full General Relativity, maximal slicing and Dirac's Gauge 2 : Conformal Flatness Condition (CFC) 3 : CFC with $\hat{A}^{ij}_{TT} = 0$ (see Cordero-Carrion et al. 2009).

Definition at line 59 of file star_rot_dirac.h.

◆ s_euler

Scalar Lorene::Star::s_euler
protectedinherited

Trace of the stress scalar in the Eulerian frame.

Definition at line 201 of file star.h.

◆ spectral_filter

int Lorene::Star_rot_Dirac::spectral_filter
protectedinherited

Spectral exponential filtering order.

If 0, no filtering is done (see also Scalar::exponential_filter_r). Filtering is performed only in shells containing matter, i.e. for domain numbers l such that $0 < l <$ nzet .

Definition at line 67 of file star_rot_dirac.h.

◆ stress_euler

Sym_tensor Lorene::Star::stress_euler
protectedinherited

Spatial part of the stress-energy tensor with respect to the Eulerian observer.

Definition at line 212 of file star.h.

◆ taa

Sym_tensor Lorene::Star_rot_Dirac::taa
protectedinherited

$\tilde{A}_{ij}$

Definition at line 98 of file star_rot_dirac.h.

◆ tgamma

Metric Lorene::Star_rot_Dirac::tgamma
protectedinherited

$\tilde{\gamma}_{ij}$

Definition at line 96 of file star_rot_dirac.h.

◆ u_euler

Vector Lorene::Star::u_euler
protectedinherited

Fluid 3-velocity with respect to the Eulerian observer.

Definition at line 207 of file star.h.

◆ v2

Scalar Lorene::Star_rot_Dirac::v2
protectedinherited

$\gamma_{ij}v^i v^j$

Definition at line 88 of file star_rot_dirac.h.


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