116 #include "et_rot_mag.h" 138 if (ApAp.get_etat() != ETATZERO) {
139 ApAp.
set().div_rsint() ;
140 ApAp.set().div_rsint() ;
142 if (ApAt.get_etat() != ETATZERO)
143 ApAt.set().div_rsint() ;
216 return mm*j_unit*
pow(r_unit,4) ;
231 double Q_c = -4*M_PI*(*asymp[1])(Z-1,0,0,0) ;
237 return Q_c *(j_unit/v_unit*
pow(r_unit,3)) ;}
266 return Qi * (j_unit/v_unit*
pow(r_unit,3)) ;
295 p_mass_g =
new double( source().integrale() ) ;
320 dens.
va = (dens.
va).mult_st() ;
327 dens =
nbar() * dens ;
359 p_tsw =
new double( tcin / ( mass_p + tcin -
mass_g() ) ) ;
366 p_tsw =
new double( tcin / fabs(wgrav) ) ;
430 Cmp aa = alpha() - 0.5 * beta() ;
436 cout <<
"Etoile_rot::grv3: the mapping does not belong" 437 <<
" to the class Map_radial !" << endl ;
444 vdaadt = vdaadt.
ssint() ;
457 vtemp = (mpr->
xsr) * vtemp ;
465 source =
bbb() * source() + 0.5 * temp ;
475 double int_grav = source().integrale() ;
489 double int_mat = source().integrale() ;
494 *ost <<
"Etoile_rot::grv3 : gravitational term : " << int_grav
496 *ost <<
"Etoile_rot::grv3 : matter term : " << int_mat
500 p_grv3 =
new double( (int_grav + int_mat) / int_mat ) ;
532 source = qpig *
nbar ;
542 Cmp& csource = source.
set() ;
554 assert( dynamic_cast<const Map_radial*>(&
mp) != 0x0 ) ;
564 source = 0.5 * source() - 1.5 * temp ;
const Cmp & dsdr() const
Returns of *this .
double * p_mom_quad_old
Part of the quadrupole moment.
Cmp log(const Cmp &)
Neperian logarithm.
virtual double grv3(ostream *ost=0x0) const
Error on the virial identity GRV3.
Tenseur E_em
electromagnetic energy density in the Eulerian frame
Component of a tensorial field *** DEPRECATED : use class Scalar instead ***.
Tenseur tnphi
Component of the shift vector.
double GyroMag() const
Gyromagnetic ratio .
const Tenseur & gradient_spher() const
Returns the gradient of *this (Spherical coordinates) (scalar field only).
virtual double angu_mom() const
Angular momentum.
Cmp sqrt(const Cmp &)
Square root.
void set_std_base()
Set the standard spectal basis of decomposition for each component.
const Base_vect_spher & get_bvect_spher() const
Returns the orthonormal vectorial basis associated with the coordinates of the mapping.
Standard units of space, time and mass.
const Mg3d * get_mg() const
Gives the Mg3d on which the mapping is defined.
int get_etat() const
Returns the logical state.
Tenseur nnn
Total lapse function.
Tenseur nphi
Metric coefficient .
Tenseur s_euler
Trace of the stress tensor in the Eulerian frame.
Tenseur flat_scalar_prod(const Tenseur &t1, const Tenseur &t2)
Scalar product of two Tenseur when the metric is : performs the contraction of the last index of t1 w...
const Cmp & srdsdt() const
Returns of *this .
Tenseur b_car
Square of the metric factor B.
virtual double mass_g() const
Gravitational mass.
Tenseur Magn() const
Computes the magnetic field spherical components in Lorene's units.
const Valeur & sx() const
Returns (r -sampling = RARE ) \ Id (r sampling = FIN ) \ (r -sampling = UNSURR ) ...
Values and coefficients of a (real-value) function.
Tenseur press
Fluid pressure.
void set_base(const Base_val &)
Sets the bases for spectral expansions (member base )
Cmp A_phi
-component of the electromagnetic potential 1-form divided by .
virtual double grv2() const
Error on the virial identity GRV2.
Tenseur Srr_em
rr component of the electromagnetic stress 3-tensor, as measured in the Eulerian frame. (not used and set to 0, should be supressed)
void mult_r()
Multiplication by r everywhere.
Cmp & set()
Read/write for a scalar (see also operator=(const Cmp&) ).
double * p_grv3
Error on the virial identity GRV3.
Tenseur flat_scalar_prod_desal(const Tenseur &t1, const Tenseur &t2)
Same as flat_scalar_prod but with desaliasing.
const Valeur & ssint() const
Returns of *this.
Tenseur nbar
Baryon density in the fluid frame.
Tenseur gam_euler
Lorentz factor between the fluid and Eulerian observers.
virtual double mass_b() const
Baryon mass.
Base class for pure radial mappings.
void mult_rsint()
Multiplication by .
Map & mp
Mapping associated with the star.
int get_nzone() const
Returns the number of domains.
double integrale() const
Computes the integral over all space of *this .
int get_etat() const
Returns the logical state.
static double lambda_grv2(const Cmp &sou_m, const Cmp &sou_q)
Computes the coefficient which ensures that the GRV2 virial identity is satisfied.
Coord xsr
in the nucleus; \ 1/R in the non-compactified shells; \ in the compactified outer domain...
Tenseur bbb
Metric factor B.
Cmp pow(const Cmp &, int)
Power .
void inc2_dzpuis()
Increases by 2 the value of dzpuis and changes accordingly the values of the Cmp in the external comp...
Tenseur uuu
Norm of u_euler.
double * p_mass_g
Gravitational mass.
double omega
Rotation angular velocity ([f_unit] )
void std_base_scal()
Sets the spectral bases of the Valeur va to the standard ones for a scalar.
Tenseur a_car
Total conformal factor .
Cmp j_t
t-component of the current 4-vector
bool relativistic
Indicator of relativity: true for a relativistic star, false for a Newtonian one. ...
Tbl & set(int l)
Read/write of the value in a given domain.
Tenseur ener
Total energy density in the fluid frame.
virtual double tsw() const
Ratio T/W.
int get_dzpuis() const
Returns dzpuis.
double Q_int() const
Computed charge from the integration of charge density over the star (i.e.
Tenseur Elec() const
Computes the electric field spherical components in Lorene's units.
bool check_dzpuis(int dzi) const
Returns false if the last domain is compactified and *this is not zero in this domain and dzpuis is n...
Valeur ** asymptot(int n, const int flag=0) const
Asymptotic expansion at r = infinity.
const Valeur & mult_ct() const
Returns applied to *this.
Cmp A_t
t-component of the elecctromagnetic potential 1-form, divided by .
virtual void MHD_comput()
Computes the electromagnetic part of the stress-energy tensor.
Tenseur & logn
Metric potential = logn_auto.
void set_dzpuis(int)
Set a value to dzpuis.
int get_nt(int l) const
Returns the number of points in the co-latitude direction ( ) in domain no. l.
double * p_grv2
Error on the virial identity GRV2.
void set_etat_qcq()
Sets the logical state to ETATQCQ (ordinary state).
double Q_comput() const
Computed charge deduced from the asymptotic behaviour of At [SI units].
double MagMom() const
Magnetic Momentum in SI units.
Tenseur ener_euler
Total energy density in the Eulerian frame.
Tenseur & dzeta
Metric potential = beta_auto.
Cmp B_phi
-component of the magnetic field
Valeur va
The numerical value of the Cmp.
virtual double mom_quad_old() const
Part of the quadrupole moment.
Standard electro-magnetic units.
Tensor handling *** DEPRECATED : use class Tensor instead ***.
Tenseur Jp_em
component of the electromagnetic momentum density 3-vector, as measured in the Eulerian frame...
Tenseur Spp_em
component of the electromagnetic stress 3-tensor, as measured in the Eulerian frame.
double * p_angu_mom
Angular momentum.