58 #include "utilitaires.h" 59 #include "time_slice.h" 63 #include "evolution.h" 74 mp(mpi), nz(mpi.get_mg()->get_nzone()), radius ((mpi.get_alpha())[0]),
76 n_auto(mpi), n_comp(mpi), nn(mpi),
77 psi_auto(mpi), psi_comp(mpi), psi(mpi),
78 dn(mpi, COV, mpi.get_bvect_spher()),
79 dpsi(mpi, COV, mpi.get_bvect_spher()),
80 beta_auto(mpi, CON, mpi.get_bvect_spher()),
81 beta_comp(mpi, CON, mpi.get_bvect_spher()),
82 beta(mpi, CON, mpi.get_bvect_spher()),
83 aa_auto(mpi, CON, mpi.get_bvect_spher()),
84 aa_comp(mpi, CON, mpi.get_bvect_spher()),
85 aa(mpi, CON, mpi.get_bvect_spher()),
86 tgam(mpi.flat_met_spher()),
87 ff(mpi.flat_met_spher()),
88 hh(mpi, CON, mpi.get_bvect_spher()),
89 gamt_point(mpi, CON, mpi.get_bvect_spher()),
90 trK(mpi), trK_point(mpi), decouple(mpi){
100 : mp(singlehor_in.mp),
102 radius(singlehor_in.radius),
103 omega(singlehor_in.omega),
104 regul(singlehor_in.regul),
105 n_auto(singlehor_in.n_auto),
106 n_comp(singlehor_in.n_comp),
108 psi_auto(singlehor_in.psi_auto),
109 psi_comp(singlehor_in.psi_comp),
110 psi(singlehor_in.psi),
112 dpsi(singlehor_in.dpsi),
113 beta_auto(singlehor_in.beta_auto),
114 beta_comp(singlehor_in.beta_comp),
115 beta(singlehor_in.beta),
116 aa_auto(singlehor_in.aa_auto),
117 aa_comp(singlehor_in.aa_comp),
119 tgam(singlehor_in.tgam),
122 gamt_point(singlehor_in.gamt_point),
123 trK(singlehor_in.trK),
124 trK_point(singlehor_in.trK_point),
125 decouple(singlehor_in.decouple){
134 : mp(mpi), nz(mpi.get_mg()->get_nzone()), radius ((mpi.get_alpha())[0]),
136 n_auto(mpi, *(mpi.get_mg()), fich), n_comp(mpi),
138 psi_auto(mpi, *(mpi.get_mg()), fich), psi_comp(mpi),
140 dn(mpi, COV, mpi.get_bvect_spher()),
141 dpsi(mpi, COV, mpi.get_bvect_spher()),
142 beta_auto(mpi, mpi.get_bvect_spher(), fich),
143 beta_comp(mpi, CON, mpi.get_bvect_spher()),
144 beta(mpi, CON, mpi.get_bvect_spher()),
145 aa_auto(mpi, CON, mpi.get_bvect_spher()),
146 aa_comp(mpi, CON, mpi.get_bvect_spher()),
147 aa(mpi, CON, mpi.get_bvect_spher()),
148 tgam(mpi.flat_met_spher()),
149 ff(mpi.flat_met_spher()),
150 hh(mpi, CON, mpi.get_bvect_spher()),
151 gamt_point(mpi, CON, mpi.get_bvect_spher()),
152 trK(mpi), trK_point(mpi), decouple(mpi){
191 mp = singlehor_in.
mp ;
192 nz = singlehor_in.
nz ;
198 nn = singlehor_in.
nn ;
202 dn = singlehor_in.
dn ;
209 aa = singlehor_in.
aa ;
211 ff = singlehor_in.
ff ;
212 hh = singlehor_in.
hh ;
405 auxi.change_triad(auxi.get_mp().get_bvect_cart()) ;
406 for (
int i=1 ; i<=3 ; i++){
407 if (auxi(i).get_etat() != ETATZERO)
408 auxi.set(i).raccord(3) ;
412 assert ( *(auxi.get_triad()) == *(dn_comp.get_triad())) ;
414 for (
int i=1 ; i<=3 ; i++){
415 dn_comp.set(i).import(auxi(i)) ;
416 dn_comp.set(i).set_spectral_va().set_base(auxi(i).get_spectral_va().
419 dn_comp.inc_dzpuis(2) ;
439 auxi.change_triad(auxi.get_mp().get_bvect_cart()) ;
440 for (
int i=1 ; i<=3 ; i++){
441 if (auxi(i).get_etat() != ETATZERO)
442 auxi.set(i).raccord(3) ;
446 assert ( *(auxi.get_triad()) == *(dpsi_comp.get_triad())) ;
448 for (
int i=1 ; i<=3 ; i++){
449 dpsi_comp.set(i).import(auxi(i)) ;
450 dpsi_comp.set(i).set_spectral_va().set_base(auxi(i).get_spectral_va().
453 dpsi_comp.inc_dzpuis(2) ;
474 assert (*(shift_comp.get_triad()) == *(tmp_vect.get_triad())) ;
476 tmp_vect.set(1).import(shift_comp(1)) ;
477 tmp_vect.set(2).import(shift_comp(2)) ;
478 tmp_vect.set(3).import(shift_comp(3)) ;
479 tmp_vect.std_spectral_base() ;
493 auxi = 0.5 - 0.5/
mp.
r ;
526 temp_vect1.
set(2) = 0. ;
527 temp_vect1.set(3) = 0. ;
528 temp_vect1.std_spectral_base() ;
void beta_comp_import(const Single_hor &comp)
Imports the part of due to the companion hole comp.
Metric for tensor calculation.
virtual void set_etat_qcq()
Sets the logical state of all components to ETATQCQ (ordinary state).
virtual void sauve(FILE *) const
Save in a binary file.
virtual const Sym_tensor & con() const
Read-only access to the contravariant representation.
void set_psi_auto(const Scalar &psi_in)
Sets the conformal factor relating the physical metric to the conformal one: .
const Metric & get_gam() const
metric
Vector dn
Covariant derivative of the lapse with respect to the flat metric .
Metric tgam
3 metric tilde
void set_der_0x0() const
Sets to 0x0 all the pointers on derived quantities.
virtual void set_etat_zero()
Sets the logical state to ETATZERO (zero).
virtual void annule(int l_min, int l_max)
Sets the Scalar to zero in several domains.
const Sym_tensor & get_k_dd() const
k_dd
Scalar decouple
Function used to construct from the total .
const Base_vect_spher & get_bvect_spher() const
Returns the orthonormal vectorial basis associated with the coordinates of the mapping.
const Scalar & get_psi() const
Conformal factor .
const Mg3d * get_mg() const
Gives the Mg3d on which the mapping is defined.
Scalar n_comp
Lapse function .
Tensor field of valence 0 (or component of a tensorial field).
const Vector & get_beta_comp() const
Shift function .
double omega
Angular velocity in LORENE's units.
Tensor up_down(const Metric &gam) const
Computes a new tensor by raising or lowering all the indices of *this .
const Scalar & get_psi4() const
Conformal factor .
virtual void std_spectral_base()
Sets the spectral bases of the Valeur va to the standard ones for a scalar field. ...
virtual void sauve(FILE *) const
Save in a binary file.
const Vector & get_beta_auto() const
Shift function .
Sym_tensor aa_auto
Components of the conformal representation of the traceless part of the extrinsic curvature: ...
void set(const Map *mp, Mtbl *(*construct)(const Map *))
Semi-constructor from a mapping and a method.
const Scalar & get_psi_comp() const
Conformal factor .
Tensor field of valence 1.
void set_dzpuis(int)
Modifies the dzpuis flag.
virtual void dec_dzpuis(int dec=1)
Decreases by dec units the value of dzpuis and changes accordingly the values in the compactified ext...
Vector beta_comp
Shift function .
Sym_tensor aa
Components of the conformal representation of the traceless part of the extrinsic curvature: ...
void raccord(int n)
Performs the matching of the nucleus with respect to the first shell.
void set_beta_auto(const Scalar &shift_in)
Sets the shift.
Metric * p_gam
Spatial metric .
virtual const Sym_tensor & con() const
Read-only access to the contravariant representation.
const Scalar & get_n_auto() const
Lapse function .
virtual void sauve(FILE *) const
Save in a file.
const Scalar & get_nn() const
Lapse function .
Single_hor(Map_af &mpi)
Standard constructor.
Scalar psi
Conformal factor .
Scalar trK
Trace of the extrinsic curvature.
double regul
Intensity of the correction on the shift vector.
Sym_tensor * p_k_dd
Components of the extrinsic curvature:
void set_n_auto(const Scalar &nn_in)
Sets the lapse.
Sym_tensor hh
Deviation metric.
void set_outer_boundary(int l, double x)
Sets the value of the Scalar at the outer boundary of a given domain.
virtual ~Single_hor()
Destructor.
const Sym_tensor & get_aa_comp() const
Conformal representation of the traceless part of the extrinsic curvature:
Vector beta_auto
Shift function .
Vector beta
Shift function .
void init_bhole()
Sets the values of the fields to :
const Vector & get_dpsi() const
Covariant derivative with respect to the flat metric of the conformal factor .
void init_bhole_seul()
Initiates for a single black hole.
int fwrite_be(const int *aa, int size, int nb, FILE *fich)
Writes integer(s) into a binary file according to the big endian convention.
Sym_tensor aa_comp
Components of the conformal representation of the traceless part of the extrinsic curvature: ...
Cmp pow(const Cmp &, int)
Power .
virtual void sauve(FILE *fich) const
Total or partial saves in a binary file.
Scalar n_auto
Lapse function .
Vector dpsi
Covariant derivative of the conformal factor .
void set_aa(const Scalar &aa_in)
Sets aa.
int fread_be(int *aa, int size, int nb, FILE *fich)
Reads integer(s) from a binary file according to the big endian convention.
void import(const Scalar &ci)
Assignment to another Scalar defined on a different mapping.
virtual const Sym_tensor & cov() const
Read-only access to the covariant representation.
void operator=(const Single_hor &)
Assignment to another Single_hor.
void del_deriv() const
Deletes all the derived quantities.
Binary black holes system.
const Vector & get_dn() const
Covariant derivative of the lapse function .
const Base_vect_cart & get_bvect_cart() const
Returns the Cartesian basis associated with the coordinates (x,y,z) of the mapping, i.e.
Scalar psi_comp
Conformal factor .
Map_af & mp
Affine mapping.
void n_comp_import(const Single_hor &comp)
Imports the part of N due to the companion hole comp .
void set_aa_comp(const Scalar &aa_comp_in)
Sets aa_comp.
Sym_tensor gamt_point
Time derivative of the 3-metric tilde.
void set_aa_auto(const Scalar &aa_auto_in)
Sets aa_auto.
void psi_comp_import(const Single_hor &comp)
Imports the part of due to the companion hole comp .
const Sym_tensor & get_aa_auto() const
Conformal representation of the traceless part of the extrinsic curvature:
Scalar trK_point
Time derivative of the trace of the extrinsic curvature.
Scalar psi_auto
Conformal factor .
virtual void set_etat_zero()
Sets the logical state of all components to ETATZERO (zero state).
Scalar & set(int)
Read/write access to a component.
const Vector & get_beta() const
Shift function .
void init_met_trK()
Sets the 3-metric tilde to the flat metric and gamt_point, trK and trK_point to zero.
double radius
Radius of the horizon in LORENE's units.
const Scalar & get_n_comp() const
Lapse function .
Metric_flat ff
3 metric flat
const Vector & derive_cov(const Metric &gam) const
Returns the gradient (1-form = covariant vector) of *this
const Sym_tensor & get_aa() const
Conformal representation of the traceless part of the extrinsic curvature:
virtual void std_spectral_base()
Sets the standard spectal bases of decomposition for each component.
const Metric_flat & flat_met_spher() const
Returns the flat metric associated with the spherical coordinates and with components expressed in th...
Class intended to describe valence-2 symmetric tensors.
Scalar nn
Lapse function .
Scalar * p_psi4
Conformal factor .
Coord r
r coordinate centered on the grid
const Scalar & get_psi_auto() const
Conformal factor .