29char single_hor_C[] =
"$Header: /cvsroot/Lorene/C++/Source/Isol_hor/single_hor.C,v 1.3 2014/10/13 08:53:01 j_novak Exp $" ;
55#include "utilitaires.h"
56#include "time_slice.h"
71 mp(mpi), nz(mpi.get_mg()->get_nzone()), radius ((mpi.get_alpha())[0]),
73 n_auto(mpi), n_comp(mpi), nn(mpi),
74 psi_auto(mpi), psi_comp(mpi), psi(mpi),
75 dn(mpi, COV, mpi.get_bvect_spher()),
76 dpsi(mpi, COV, mpi.get_bvect_spher()),
77 beta_auto(mpi, CON, mpi.get_bvect_spher()),
78 beta_comp(mpi, CON, mpi.get_bvect_spher()),
79 beta(mpi, CON, mpi.get_bvect_spher()),
80 aa_auto(mpi, CON, mpi.get_bvect_spher()),
81 aa_comp(mpi, CON, mpi.get_bvect_spher()),
82 aa(mpi, CON, mpi.get_bvect_spher()),
83 tgam(mpi.flat_met_spher()),
84 ff(mpi.flat_met_spher()),
85 hh(mpi, CON, mpi.get_bvect_spher()),
86 gamt_point(mpi, CON, mpi.get_bvect_spher()),
87 trK(mpi), trK_point(mpi), decouple(mpi){
97 : mp(singlehor_in.mp),
99 radius(singlehor_in.radius),
100 omega(singlehor_in.omega),
101 regul(singlehor_in.regul),
102 n_auto(singlehor_in.n_auto),
103 n_comp(singlehor_in.n_comp),
105 psi_auto(singlehor_in.psi_auto),
106 psi_comp(singlehor_in.psi_comp),
107 psi(singlehor_in.psi),
109 dpsi(singlehor_in.dpsi),
110 beta_auto(singlehor_in.beta_auto),
111 beta_comp(singlehor_in.beta_comp),
112 beta(singlehor_in.beta),
113 aa_auto(singlehor_in.aa_auto),
114 aa_comp(singlehor_in.aa_comp),
116 tgam(singlehor_in.tgam),
119 gamt_point(singlehor_in.gamt_point),
120 trK(singlehor_in.trK),
121 trK_point(singlehor_in.trK_point),
122 decouple(singlehor_in.decouple){
131 : mp(mpi), nz(mpi.get_mg()->get_nzone()), radius ((mpi.get_alpha())[0]),
133 n_auto(mpi, *(mpi.get_mg()), fich), n_comp(mpi),
135 psi_auto(mpi, *(mpi.get_mg()), fich), psi_comp(mpi),
137 dn(mpi, COV, mpi.get_bvect_spher()),
138 dpsi(mpi, COV, mpi.get_bvect_spher()),
139 beta_auto(mpi, mpi.get_bvect_spher(), fich),
140 beta_comp(mpi, CON, mpi.get_bvect_spher()),
141 beta(mpi, CON, mpi.get_bvect_spher()),
142 aa_auto(mpi, CON, mpi.get_bvect_spher()),
143 aa_comp(mpi, CON, mpi.get_bvect_spher()),
144 aa(mpi, CON, mpi.get_bvect_spher()),
145 tgam(mpi.flat_met_spher()),
146 ff(mpi.flat_met_spher()),
147 hh(mpi, CON, mpi.get_bvect_spher()),
148 gamt_point(mpi, CON, mpi.get_bvect_spher()),
149 trK(mpi), trK_point(mpi), decouple(mpi){
188 mp = singlehor_in.
mp ;
189 nz = singlehor_in.
nz ;
195 nn = singlehor_in.
nn ;
199 dn = singlehor_in.
dn ;
206 aa = singlehor_in.
aa ;
208 ff = singlehor_in.
ff ;
209 hh = singlehor_in.
hh ;
403 for (
int i=1 ; i<=3 ; i++){
404 if (auxi(i).get_etat() != ETATZERO)
411 for (
int i=1 ; i<=3 ; i++){
437 for (
int i=1 ; i<=3 ; i++){
438 if (auxi(i).get_etat() != ETATZERO)
445 for (
int i=1 ; i<=3 ; i++){
490 auxi = 0.5 - 0.5/
mp.
r ;
523 temp_vect1.
set(2) = 0. ;
524 temp_vect1.
set(3) = 0. ;
const Base_vect_cart & get_bvect_cart() const
Returns the Cartesian basis associated with the coordinates (x,y,z) of the mapping,...
Coord r
r coordinate centered on the grid
const Base_vect_spher & get_bvect_spher() const
Returns the orthonormal vectorial basis associated with the coordinates of the mapping.
const Mg3d * get_mg() const
Gives the Mg3d on which the mapping is defined.
const Metric_flat & flat_met_spher() const
Returns the flat metric associated with the spherical coordinates and with components expressed in th...
virtual const Sym_tensor & con() const
Read-only access to the contravariant representation.
Metric for tensor calculation.
virtual const Sym_tensor & con() const
Read-only access to the contravariant representation.
virtual const Sym_tensor & cov() const
Read-only access to the covariant representation.
Tensor field of valence 0 (or component of a tensorial field).
virtual void sauve(FILE *) const
Save in a file.
void raccord(int n)
Performs the matching of the nucleus with respect to the first shell.
const Vector & derive_cov(const Metric &gam) const
Returns the gradient (1-form = covariant vector) of *this
virtual void std_spectral_base()
Sets the spectral bases of the Valeur va to the standard ones for a scalar field.
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.
Valeur & set_spectral_va()
Returns va (read/write version)
void set_dzpuis(int)
Modifies the dzpuis flag.
void set_outer_boundary(int l, double x)
Sets the value of the Scalar at the outer boundary of a given domain.
void import(const Scalar &ci)
Assignment to another Scalar defined on a different mapping.
Binary black holes system.
Vector dpsi
Covariant derivative of the conformal factor .
Scalar psi_auto
Conformal factor .
double radius
Radius of the horizon in LORENE's units.
const Metric & get_gam() const
metric
Scalar trK_point
Time derivative of the trace of the extrinsic curvature.
Scalar decouple
Function used to construct from the total .
Vector beta_auto
Shift function .
void beta_comp_import(const Single_hor &comp)
Imports the part of due to the companion hole comp.
void set_psi_auto(const Scalar &psi_in)
Sets the conformal factor relating the physical metric to the conformal one: .
Scalar n_comp
Lapse function .
const Sym_tensor & get_k_dd() const
k_dd
void operator=(const Single_hor &)
Assignment to another Single_hor.
Sym_tensor aa_auto
Components of the conformal representation of the traceless part of the extrinsic curvature:
const Scalar & get_psi_comp() const
Conformal factor .
void set_beta_auto(const Scalar &shift_in)
Sets the shift.
const Scalar & get_psi4() const
Conformal factor .
void set_n_auto(const Scalar &nn_in)
Sets the lapse.
const Scalar & get_n_auto() const
Lapse function .
const Scalar & get_n_comp() const
Lapse function .
Metric_flat ff
3 metric flat
Scalar psi
Conformal factor .
Map_af & mp
Affine mapping.
const Vector & get_dpsi() const
Covariant derivative with respect to the flat metric of the conformal factor .
const Vector & get_beta_comp() 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.
void init_bhole()
Sets the values of the fields to :
const Scalar & get_nn() const
Lapse function .
Scalar * p_psi4
Conformal factor .
Vector dn
Covariant derivative of the lapse with respect to the flat metric .
Single_hor(Map_af &mpi)
Standard constructor.
void set_der_0x0() const
Sets to 0x0 all the pointers on derived quantities.
const Vector & get_beta_auto() const
Shift function .
const Sym_tensor & get_aa() const
Conformal representation of the traceless part of the extrinsic curvature:
const Vector & get_beta() const
Shift function .
void set_aa_comp(const Scalar &aa_comp_in)
Sets aa_comp.
void init_bhole_seul()
Initiates for a single black hole.
Sym_tensor aa_comp
Components of the conformal representation of the traceless part of the extrinsic curvature:
void del_deriv() const
Deletes all the derived quantities.
void set_aa(const Scalar &aa_in)
Sets aa.
double regul
Intensity of the correction on the shift vector.
Vector beta_comp
Shift function .
Sym_tensor gamt_point
Time derivative of the 3-metric tilde.
const Sym_tensor & get_aa_comp() const
Conformal representation of the traceless part of the extrinsic curvature:
const Vector & get_dn() const
Covariant derivative of the lapse function .
virtual ~Single_hor()
Destructor.
double omega
Angular velocity in LORENE's units.
virtual void sauve(FILE *fich) const
Total or partial saves in a binary file.
void set_aa_auto(const Scalar &aa_auto_in)
Sets aa_auto.
Metric * p_gam
Spatial metric .
void n_comp_import(const Single_hor &comp)
Imports the part of N due to the companion hole comp .
Scalar n_auto
Lapse function .
Scalar nn
Lapse function .
const Sym_tensor & get_aa_auto() const
Conformal representation of the traceless part of the extrinsic curvature:
const Scalar & get_psi() const
Conformal factor .
Sym_tensor * p_k_dd
Components of the extrinsic curvature:
const Scalar & get_psi_auto() const
Conformal factor
Sym_tensor hh
Deviation metric.
Sym_tensor aa
Components of the conformal representation of the traceless part of the extrinsic curvature:
Vector beta
Shift function .
Scalar trK
Trace of the extrinsic curvature.
Scalar psi_comp
Conformal factor .
void psi_comp_import(const Single_hor &comp)
Imports the part of due to the companion hole comp .
Metric tgam
3 metric tilde
Class intended to describe valence-2 symmetric tensors.
void set_base(const Base_val &)
Sets the bases for spectral expansions (member base )
Tensor field of valence 1.
virtual void std_spectral_base()
Sets the standard spectal bases of decomposition for each component.
virtual void change_triad(const Base_vect &)
Sets a new vectorial basis (triad) of decomposition and modifies the components accordingly.
Scalar & set(int)
Read/write access to a component.
Cmp pow(const Cmp &, int)
Power .
int fread_be(int *aa, int size, int nb, FILE *fich)
Reads integer(s) from a binary file according to the big endian convention.
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.
const Map & get_mp() const
Returns the mapping.
virtual void sauve(FILE *) const
Save in a binary file.
virtual void dec_dzpuis(int dec=1)
Decreases by dec units the value of dzpuis and changes accordingly the values in the compactified ext...
Tensor up_down(const Metric &gam) const
Computes a new tensor by raising or lowering all the indices of *this .
virtual void sauve(FILE *) const
Save in a binary file.
virtual void inc_dzpuis(int inc=1)
Increases by inc units the value of dzpuis and changes accordingly the values in the compactified ext...
const Base_vect * get_triad() const
Returns the vectorial basis (triad) on which the components are defined.
virtual void set_etat_qcq()
Sets the logical state of all components to ETATQCQ (ordinary state).
virtual void set_etat_zero()
Sets the logical state of all components to ETATZERO (zero state).
virtual void std_spectral_base()
Sets the standard spectal bases of decomposition for each component.