LORENE
isol_hor.h
1/*
2 * Definition of Lorene class Isol_Hor
3 *
4 */
5
6/*
7 * Copyright (c) 2004-2005 Jose Luis Jaramillo
8 * Francois Limousin
9 *
10 * This file is part of LORENE.
11 *
12 * LORENE is free software; you can redistribute it and/or modify
13 * it under the terms of the GNU General Public License version 2
14 * as published by the Free Software Foundation.
15 *
16 * LORENE is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU General Public License for more details.
20 *
21 * You should have received a copy of the GNU General Public License
22 * along with LORENE; if not, write to the Free Software
23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
24 *
25 */
26
27#ifndef __Isol_hor_H_
28#define __Isol_hor_H_
29
30/*
31 * $Id: isol_hor.h,v 1.54 2014/10/13 08:52:35 j_novak Exp $
32 * $Log: isol_hor.h,v $
33 * Revision 1.54 2014/10/13 08:52:35 j_novak
34 * Lorene classes and functions now belong to the namespace Lorene.
35 *
36 * Revision 1.53 2007/08/22 16:10:37 f_limousin
37 * Correction of many errors in binhor_hh.C
38 *
39 * Revision 1.52 2007/04/13 15:29:44 f_limousin
40 * Lots of improvements, generalisation to an arbitrary state of
41 * rotation, implementation of the spatial metric given by Samaya.
42 *
43 * Revision 1.51 2006/08/01 14:36:25 f_limousin
44 * New argument for the functions vv_bound_cart_bin( )
45 *
46 * Revision 1.50 2006/06/29 08:58:57 f_limousin
47 * Boundary conditions in argument of write_global()
48 *
49 * Revision 1.49 2006/06/28 13:36:26 f_limousin
50 * Convergence to a given irreductible mass
51 *
52 * Revision 1.48 2006/05/24 16:53:51 f_limousin
53 * Funtion import(Bin_hor&)
54 *
55 * Revision 1.47 2006/02/22 16:55:42 f_limousin
56 * boundary_nn_Neu_kk(int nn = 1)
57 *
58 * Revision 1.46 2006/02/22 16:20:54 jl_jaramillo
59 * 2nc correction Valeur boundary_nn_Neu_kk(int nn)
60 *
61 * Revision 1.45 2006/02/20 16:48:14 jl_jaramillo
62 * corrections numerical viscosity
63 *
64 * Revision 1.44 2006/02/20 15:01:37 jl_jaramillo
65 * function for computing generalised Conformal THin Sandwich eqautions
66 *
67 * Revision 1.43 2006/01/18 12:29:18 jl_jaramillo
68 * new method (chi,theta) for the spherically symmetric case
69 *
70 * Revision 1.42 2006/01/16 17:15:34 jl_jaramillo
71 * function for solving the spherical case
72 *
73 * Revision 1.41 2005/11/02 16:10:38 jl_jaramillo
74 * change in boundary_nn_Dir_lapl
75 *
76 * Revision 1.40 2005/10/24 16:45:16 jl_jaramillo
77 * Cook boundary condition
78 *
79 * Revision 1.39 2005/10/23 12:32:00 f_limousin
80 * Pure Dirichlet boundary condition for Psi.
81 *
82 * Revision 1.38 2005/09/13 18:33:17 f_limousin
83 * New function vv_bound_cart_bin(double) for computing binaries with
84 * berlin condition for the shift vector.
85 * Suppress all the symy and asymy in the importations.
86 *
87 * Revision 1.37 2005/07/11 08:19:54 f_limousin
88 * New function axi_break() to compute the departure to axisymmetry.
89 *
90 * Revision 1.36 2005/06/09 07:56:24 f_limousin
91 * Implement a new function sol_elliptic_boundary() and
92 * Vector::poisson_boundary(...) which solve the vectorial poisson
93 * equation (method 6) with an inner boundary condition.
94 *
95 * Revision 1.35 2005/05/12 14:48:55 f_limousin
96 * New boundary condition for the lapse : boundary_nn_lapl().
97 *
98 * Revision 1.34 2005/04/29 14:05:03 f_limousin
99 * Important changes : manage the dependances between quantities (for
100 * instance psi and psi4). New function write_global(ost).
101 *
102 * Revision 1.33 2005/04/15 11:20:39 jl_jaramillo
103 * Function adapt_hor(double c_min, double c_max) for adapting a given surface
104 * to the excised surface
105 *
106 * Revision 1.32 2005/04/08 12:15:38 f_limousin
107 * Function set_psi(). And dependance in phi.
108 *
109 * Revision 1.31 2005/04/03 19:48:38 f_limousin
110 * Implementation of set_psi(psi_in).
111 *
112 * Revision 1.30 2005/04/02 15:50:08 f_limousin
113 * New data member nz (number of zones). Delete ww.
114 *
115 * Revision 1.29 2005/03/31 09:48:04 f_limousin
116 * New functions compute_ww(..) and aa_kerr_ww() and new data ww.
117 *
118 * Revision 1.28 2005/03/28 19:45:41 f_limousin
119 * Implement Isol_hor::aa_kerr_perturb(...) and new member aa_quad_evol.
120 *
121 * Revision 1.27 2005/03/24 16:50:40 f_limousin
122 * Add parameters solve_shift and solve_psi in par_isol.d and in function
123 * init_dat(...). Implement Isolhor::kerr_perturb().
124 *
125 * Revision 1.26 2005/03/10 16:57:01 f_limousin
126 * Improve the convergence of the code coal_bh.
127 *
128 * Revision 1.25 2005/03/10 10:19:42 f_limousin
129 * Add the regularisation of the shift in the case of a single black hole
130 * and lapse zero on the horizon.
131 *
132 * Revision 1.24 2005/03/09 10:28:37 f_limousin
133 * Delete functions init_data_b_neumann(...) and init_data_berlin(...)
134 * --> New parameter solve_lapse in the function init_data(...).
135 * New function update_aa().
136 *
137 * Revision 1.23 2005/03/06 16:59:33 f_limousin
138 * New function Isol_hor::aa() (the one belonging to the class
139 * Time_slice_conf need to compute the time derivative of hh and thus
140 * cannot work in the class Isol_hor).
141 *
142 * Revision 1.22 2005/03/04 09:39:31 f_limousin
143 * Implement the constructor from a file, operator>>, operator<<
144 * and function sauve in the class Bin_hor.
145 *
146 * Revision 1.21 2005/03/03 10:25:16 f_limousin
147 * In the class Isol_hor :
148 * - Add the boost in x and z-direction (members boost_x and boost_z,
149 * and functions get_boost_x(), set_boost_x(double))
150 * - Add function area_hor()
151 * - Put the boundary conditions for the lapse, psi and beta in
152 * the parameter file.
153 * In the class bin_hor :
154 * - Introduce function to compute global quantities as ADM mass,
155 * Komar mass and angular momentum.
156 *
157 * Revision 1.20 2005/02/24 17:22:53 f_limousin
158 * Suppression of the function beta_bound_cart().
159 * The boundary conditions for psi, N and beta are now some parameters
160 * in par_init.D and par_coal.d.
161 *
162 * Revision 1.19 2005/02/07 10:30:09 f_limousin
163 * Add the regularisation in the case N=0 on the horizon.
164 *
165 * Revision 1.18 2004/12/31 15:33:37 f_limousin
166 * Change the constructor from a file and the standard constructor.
167 *
168 * Revision 1.17 2004/12/29 16:30:00 f_limousin
169 * Improve comments for doxygen
170 *
171 * Revision 1.16 2004/12/29 16:10:25 f_limousin
172 * Add the new class Bin_hor.
173 *
174 * Revision 1.14 2004/11/24 19:32:05 jl_jaramillo
175 * Method for initial data with Berlin boundary conditions
176 *
177 * Revision 1.13 2004/11/18 10:53:03 jl_jaramillo
178 * Declarations for Berlin boundary conditions
179 *
180 * Revision 1.12 2004/11/05 11:01:13 f_limousin
181 * Delete arguments ener_dens, mom_dens and trace_stress in all functions
182 * source_nn, source_psi, source_beta, init_data. Delete also
183 * argument partial_save in function save.
184 *
185 * Revision 1.11 2004/11/05 10:11:23 f_limousin
186 * The member Metric met_gamt replace Sym_tensor gamt.
187 *
188 * Revision 1.10 2004/11/03 17:15:46 f_limousin
189 * Change the standart constructor. Add 4 memebers : trK, trK_point,
190 * gamt and gamt_point.
191 * Add also a constructor from a file.
192 *
193 * Revision 1.9 2004/11/02 17:42:33 f_limousin
194 * New method sauve(...) to save in a binary file.
195 *
196 * Revision 1.8 2004/11/02 16:15:12 f_limousin
197 * Add new argument ang_vel in function init_dat(...).
198 *
199 * Revision 1.7 2004/10/29 15:46:14 jl_jaramillo
200 * Remove 2 members, add ADM angular momentum and change name
201 * of functions.
202 *
203 * Revision 1.6 2004/10/01 16:51:16 f_limousin
204 * Pure Dirichlet boundary condition added
205 *
206 * Revision 1.5 2004/09/28 16:03:58 f_limousin
207 * Add parameter niter in the parameter file par_hor.d. It appears in
208 * argument of the function init_data_schwarz(...).
209 *
210 * Revision 1.4 2004/09/17 13:35:25 f_limousin
211 * Introduction of relaxation in init_data_schwarz
212 *
213 * Revision 1.3 2004/09/16 08:36:57 f_limousin
214 * New boundary conditions for lapse and psi.
215 *
216 * Revision 1.2 2004/09/09 17:04:27 jl_jaramillo
217 * Elimination of _ih
218 *
219 *
220 *
221 * $Header: /cvsroot/Lorene/C++/Include/isol_hor.h,v 1.54 2014/10/13 08:52:35 j_novak Exp $
222 *
223 */
224
225#include "time_slice.h"
226#include "proto.h"
227#include "headcpp.h"
228#include "cmp.h"
229#include "evolution.h"
230
231namespace Lorene {
232class Sym_tensor_trans ;
233class Sym_tensor ;
234class Vector ;
235class Scalar ;
236class Metric ;
237class Metric_flat ;
238class Base_vect ;
239class Map ;
240class Tbl ;
241class Time_slice ;
242class Time_slice_conf ;
243
244//----------------------------//
245// class Isol_Hor //
246//----------------------------//
247
254class Isol_hor : public Time_slice_conf {
255
256 // Data :
257 // -----
258 protected:
261
263 int nz ;
264
266 double radius ;
267
269 double omega ;
270
272 double boost_x ;
273
275 double boost_z ;
276
278 double regul ;
279
282
285
288
291
295
299
302
305
311
317
321
324
327
330
333
336
346
347 // Constructors - Destructor
348 // -------------------------
349 public:
350
358 Isol_hor(Map_af& mpi, int depth_in = 3) ;
359
382 Isol_hor(Map_af& mpi, const Scalar& lapse_in, const Scalar& psi_in,
383 const Vector& shift_in, const Sym_tensor& aa_in,
384 const Metric& gamt, const Sym_tensor& gamt_point,
385 const Scalar& trK, const Scalar& trK_point,
386 const Metric_flat& ff_in, int depth_in = 3) ;
387
389 Isol_hor(const Isol_hor& ) ;
390
402 Isol_hor (Map_af& mp, FILE* fich,
403 bool partial_read, int depth_in = 3) ;
404
406 virtual ~Isol_hor() ;
407
408
409 // Mutators / assignment
410 // ---------------------
411 public:
413 void operator=(const Isol_hor&) ;
414
415
416 public:
418 const Map_af& get_mp() const {return mp;} ;
419
421 Map_af& set_mp() {return mp; } ;
422
426 double get_radius() const {return radius;} ;
427
431 void set_radius(double rad) {radius = rad ;} ;
432
436 double get_omega() const {return omega ;} ;
440 void set_omega(double ome) {omega = ome ;} ;
441
445 double get_boost_x() const {return boost_x ;} ;
449 void set_boost_x(double bo) {boost_x = bo ;} ;
450
454 double get_boost_z() const {return boost_z ;} ;
458 void set_boost_z(double bo) {boost_z = bo ;} ;
459
460
461
462 // Accessors
463 // ---------
464 public:
465
467 virtual const Scalar& n_auto() const ;
468
470 virtual const Scalar& n_comp() const ;
471
473 virtual const Scalar& psi_auto() const ;
474
476 virtual const Scalar& psi_comp() const ;
477
480 virtual const Vector& dnn() const ;
481
485 virtual const Vector& dpsi() const ;
486
488 virtual const Vector& beta_auto() const ;
489
491 virtual const Vector& beta_comp() const ;
492
497 virtual const Sym_tensor& aa_auto() const ;
498
503 virtual const Sym_tensor& aa_comp() const ;
504
508 virtual const Scalar& aa_quad() const ;
509
514 virtual const Metric& tgam() const {return met_gamt ;}
515
519 const Scalar get_decouple() const {return decouple ;}
520
521
522 public:
530 void n_comp (const Isol_hor& comp) ;
531
539 void psi_comp (const Isol_hor& comp) ;
540
546 void beta_comp (const Isol_hor& comp) ;
547
556 double viriel_seul () const ;
557
567 void init_bhole () ;
568
574 void init_met_trK() ;
575
582 void init_bhole_seul () ;
583
594 void set_psi(const Scalar& psi_in) ;
595
597 void set_nn(const Scalar& nn_in) ;
598
600 void set_gamt(const Metric& gam_tilde) ;
601
602 // Physical parameters
603 //--------------------
604 public:
605
606
608 const Vector radial_vect_hor() const ;
609
611 const Vector tradial_vect_hor() const ;
612
614 const Scalar b_tilde() const ;
615
617 const Scalar darea_hor() const ;
618
620 double area_hor() const ;
621
623 double radius_hor() const ;
624
626 double ang_mom_hor() const ;
627
629 double mass_hor() const ;
630
632 double kappa_hor() const ;
633
635 double omega_hor() const ;
636
638 double ang_mom_adm() const ;
639
641 Scalar expansion() const ;
642
643
644 //Computational methods
645 //---------------------
646 public:
647
648 /* function to compute initial data for a single black hole
649 * @param bound_nn boundary condition for the lapse
650 * @param lim_nn value of the boundary condition for the lapse
651 * @param bound_psi boundary condition for \f$ \Psi \f$
652 * @param bound_beta boundary condition for the shift
653 * @param solve_lapse do we solve the equation for the lapse ?
654 * @param precis precision for the convergence
655 * @param relax relaxation
656 * @param niter number of iterations
657 */
658 void init_data(int bound_nn, double lim_nn, int bound_psi, int bound_beta,
659 int solve_lapse, int solve_psi, int solve_shift,
660 double precis = 1.e-12,
661 double relax_nn = 0.5, double relax_psi = 0.5,
662 double relax_beta = 0.5, int niter = 100) ;
663
664 void init_data_loop(int bound_nn, double lim_nn, int bound_psi,
665 int bound_beta, int solve_lapse, int solve_psi,
666 int solve_shift, double precis= 1.e-12,
667 double precis_loop= 1.e-12,
668 double relax_nn = 1., double relax_psi= 1.,
669 double relax_beta = 1., double relax_loop = 1.,
670 int niter = 100) ;
671
672
673
674 void init_data_spher(int bound_nn, double lim_nn, int bound_psi,
675 int bound_beta, int solve_lapse, int solve_psi,
676 int solve_shift, double precis = 1.e-12,
677 double relax = 1., int niter = 100) ;
678
679 void init_data_alt(int bound_nn, double lim_nn, int bound_psi,
680 int bound_beta, int solve_lapse, int solve_psi,
681 int solve_shift, double precis = 1.e-12,
682 double relax = 1., int niter = 100) ;
683
684 void init_data_CTS_gen(int bound_nn, double lim_nn, int bound_psi, int bound_beta,
685 int solve_lapse, int solve_psi, int solve_shift,
686 double precis = 1.e-12, double relax_nn = 1.,
687 double relax_psi = 1., double relax_beta = 1.,
688 int niter = 100, double a = 1., double zeta = 4.) ;
689
690
691
692
693 //Sources
694 //-------
695
697 const Scalar source_psi() const ;
698
700 const Scalar source_nn() const ;
701
703 const Vector source_beta() const ;
704
706 const Scalar source_b_tilde() const ;
707
709 const Vector source_vector_b() const ;
710
711
712 // BOUNDARY CONDITIONS
713 //--------------------
714
716 const Valeur boundary_psi_Dir_evol() const ;
717
719 const Valeur boundary_psi_Neu_evol() const ;
720
722 const Valeur boundary_psi_Dir_spat() const ;
723
725 const Valeur boundary_psi_Neu_spat() const ;
726
728 const Valeur boundary_psi_app_hor() const ;
729
731 const Valeur boundary_psi_Dir() const ;
732
734 const Valeur boundary_nn_Dir_kk() const ;
735
737 const Valeur boundary_nn_Neu_kk(int nn = 1) const ;
738
740 const Valeur boundary_nn_Neu_Cook() const ;
741
744 const Valeur boundary_nn_Dir_eff(double aa) const ;
745
748 const Valeur boundary_nn_Dir_lapl(int mer = 1) const ;
749
752 const Valeur boundary_nn_Neu_eff(double aa) const ;
753
755 const Valeur boundary_nn_Dir(double aa) const ;
756
758 const Valeur boundary_beta_r() const ;
759
761 const Valeur boundary_beta_theta() const ;
762
764 const Valeur boundary_beta_phi(double om) const ;
765
767 const Valeur boundary_beta_x(double om) const ;
768
770 const Valeur boundary_beta_y(double om) const ;
771
773 const Valeur boundary_beta_z() const ;
774
776 const Valeur beta_boost_x() const ;
777
779 const Valeur beta_boost_z() const ;
780
782 const Vector vv_bound_cart(double om) const ;
783
786 const Vector vv_bound_cart_bin(double om, int hole = 0) const ;
787
789 const Valeur boundary_vv_x(double om) const ;
790
792 const Valeur boundary_vv_y(double om) const ;
793
795 const Valeur boundary_vv_z(double om) const ;
796
798 const Valeur boundary_vv_x_bin(double om, int hole = 0) const ;
799
801 const Valeur boundary_vv_y_bin(double om, int hole = 0) const ;
802
804 const Valeur boundary_vv_z_bin(double om, int hole = 0) const ;
805
807 const Valeur boundary_b_tilde_Neu() const ;
808
810 const Valeur boundary_b_tilde_Dir() const ;
811
816 void update_aa() ;
817
829 double regularisation (const Vector& shift_auto, const Vector& shift_comp,
830 double ang_vel) ;
831
841 double regularise_one() ;
842
845 void met_kerr_perturb() ;
846
847 /* Perturbation of Kerr using \f$ A^{ij}A_{ij} \f$ from
848 * equation (14) of Dain (2002).
849 * @param mm mass of the Kerr black hole metric.
850 * @param aa rotation parameter of the Kerr black hole metric.
851 */
852 void aa_kerr_ww(double mm, double aa) ;
853
855
856 double axi_break() const ;
857
858 /* Calculation of the outermost trapped surface and adaptation
859 * of all necessary quantities
860 */
861
862 void adapt_hor(double c_min, double c_max) ;
863
864
865 // Outputs
866 // -------
867 protected:
869 virtual ostream& operator>>(ostream& ) const ;
870
871
872 public :
879 virtual void sauve(FILE* fich, bool partial_save) const ;
880
881 friend class Bin_hor ;
882
883};
884
895
896 // Data :
897 // -----
898 protected:
901
903 int nz ;
904
906 double radius ;
907
909 double omega ;
910
912 double regul ;
913
916
919
922
925
928
931
933 mutable Scalar* p_psi4 ;
934
938
942
945
948
951
953 mutable Metric* p_gam ;
954
960
966
972
974 mutable Sym_tensor* p_k_dd ;
975
978
981
984
987
990
993
1003
1004 // Constructors - Destructor
1005 // -------------------------
1006 public:
1007
1011 Single_hor(Map_af& mpi) ;
1012
1014 Single_hor(const Single_hor& ) ;
1015
1023 Single_hor (Map_af& mp, FILE* fich) ;
1024
1026 virtual ~Single_hor() ;
1027
1028
1029 // Mutators / assignment
1030 // ---------------------
1031 public:
1033 void operator=(const Single_hor&) ;
1034
1035
1036 public:
1038 const Map_af& get_mp() const {return mp;} ;
1039
1041 Map_af& set_mp() {return mp; } ;
1042
1046 double get_radius() const {return radius;} ;
1047
1051 void set_radius(double rad) {radius = rad ;} ;
1052
1056 double get_omega() const {return omega ;} ;
1060 void set_omega(double ome) {omega = ome ;} ;
1061
1062 // Memory management
1063 // -----------------
1064 protected:
1065
1067 void del_deriv() const ;
1068
1070 void set_der_0x0() const ;
1071
1072
1073
1074 // Accessors
1075 // ---------
1076 public:
1077
1079 const Scalar& get_n_auto() const ;
1080
1082 const Scalar& get_n_comp() const ;
1083
1085 const Scalar& get_nn() const ;
1086
1088 const Scalar& get_psi_auto() const ;
1089
1091 const Scalar& get_psi_comp() const ;
1092
1094 const Scalar& get_psi() const ;
1095
1097 const Scalar& get_psi4() const ;
1098
1100 const Vector& get_dn() const ;
1101
1104 const Vector& get_dpsi() const ;
1105
1107 const Vector& get_beta_auto() const ;
1108
1110 const Vector& get_beta_comp() const ;
1111
1113 const Vector& get_beta() const ;
1114
1118 const Sym_tensor& get_aa_auto() const ;
1119
1123 const Sym_tensor& get_aa_comp() const ;
1124
1128 const Sym_tensor& get_aa() const ;
1129
1133 const Metric& get_tgam() const {return tgam ;}
1134
1137 const Metric& get_gam() const ;
1138
1141 const Sym_tensor& get_k_dd() const ;
1142
1146 const Scalar get_decouple() const {return decouple ;}
1147
1148
1149 public:
1157 void n_comp_import (const Single_hor& comp) ;
1158
1166 void psi_comp_import (const Single_hor& comp) ;
1167
1173 void beta_comp_import (const Single_hor& comp) ;
1174
1183 double viriel_seul () const ;
1184
1194 void init_bhole () ;
1195
1201 void init_met_trK() ;
1202
1209 void init_bhole_seul () ;
1210
1221 void set_psi_auto(const Scalar& psi_in) ;
1222
1224 void set_n_auto(const Scalar& nn_in) ;
1225
1227 void set_beta_auto(const Scalar& shift_in) ;
1228
1230 void set_aa_auto(const Scalar& aa_auto_in) ;
1231
1233 void set_aa_comp(const Scalar& aa_comp_in) ;
1234
1236 void set_aa(const Scalar& aa_in) ;
1237
1238
1239 // Physical parameters
1240 //--------------------
1241 public:
1242
1243
1245 const Scalar b_tilde() const ;
1246
1248 const Scalar darea_hor() const ;
1249
1251 double area_hor() const ;
1252
1254 double radius_hor() const ;
1255
1257 double ang_mom_hor() const ;
1258
1260 double mass_hor() const ;
1261
1263 double kappa_hor() const ;
1264
1266 double omega_hor() const ;
1267
1269 double ang_mom_adm() const ;
1270
1272 Scalar expansion() const ;
1273
1274
1275 // BOUNDARY CONDITIONS
1276 //--------------------
1277
1279 const Valeur boundary_psi_app_hor() const ;
1280
1283 const Valeur boundary_nn_Dir(double aa) const ;
1284
1287 const Valeur boundary_nn_Neu(double aa) const ;
1288
1290 const Valeur boundary_beta_x(double om_orb, double om_loc) const ;
1291
1293 const Valeur boundary_beta_y(double om_orb, double om_loc) const ;
1294
1296 const Valeur boundary_beta_z() const ;
1297
1298
1310 double regularisation (const Vector& shift_auto, const Vector& shift_comp,
1311 double ang_vel) ;
1312
1322 double regularise_one() ;
1323
1324 public :
1331 virtual void sauve(FILE* fich) const ;
1332
1333 friend class Bin_hor ;
1334
1335};
1336
1337class Bin_hor {
1338
1339 // data :
1340 private:
1341 // lThe two black holes
1344
1347
1348 double omega ;
1349
1350 public:
1351
1360 Bin_hor(Map_af& mp1, Map_af& mp2) ;
1361
1362 Bin_hor(const Bin_hor& ) ;
1363
1376 Bin_hor (Map_af& mp1, Map_af& mp2, FILE* fich) ;
1377
1378 virtual ~Bin_hor() ;
1379
1380 public :
1387 void sauve(FILE* fich) const ;
1388
1392 void write_global(ostream&, double lim_nn, int bound_nn,
1393 int bound_psi, int bound_beta, double alpha) const ;
1394
1395 public:
1396
1397 void operator=(const Bin_hor&) ;
1398
1404 { assert( (i==1) || (i==2) );
1405 return *holes[i-1] ;} ;
1409 void set_omega(double ome) {omega = ome ;
1410 hole1.set_omega (ome) ;
1411 hole2.set_omega (ome) ;} ;
1412
1413 public:
const Single_hor& operator()(int i) const
1418 { assert( (i==1) || (i==2) );
1419 return *holes[i-1] ;} ;
1420
1422 double get_omega() const {return omega; } ;
1423
1432 void init_bin_hor() ;
1433
1440 double viriel() const ;
1441
1446 void extrinsic_curvature () ;
1447
1452 void decouple () ;
1453
1454 public:
1470 void set_statiques (double precis, double relax, int bound_nn,
1471 double lim_nn, int bound_psi) ;
1472
1499 double coal (double ang_vel, double relax, int nb_om,
1500 int nb_it, int bound_nn, double lim_nn,
1501 int bound_psi, int bound_beta, double omega_eff,
1502 double alpha,
1503 ostream& fich_iteration, ostream& fich_correction,
1504 ostream& fich_viriel, ostream& fich_kss,
1505 int step, int search_mass, double mass_irr,
1506 const int sortie = 0) ;
1507
1508
1523 void solve_lapse (double precis, double relax, int bound_nn,
1524 double lim_nn) ;
1525
1538 void solve_psi (double precis, double relax, int bound_psi) ;
1539
1553 void solve_shift (double precis, double relax, int bound_beta,
1554 double omega_eff) ;
1555
1560 void import_bh (const Bin_hor& bin) ;
1561
1565 double adm_mass() const ;
1566
1571 double komar_mass() const ;
1572
1577 double ang_mom_hor() const ;
1578
1582 double ang_mom_adm() const ;
1583
1590 double proper_distance(const int nr = 65) const ;
1591
1597
1603
1607 void set_hh_Samaya() ;
1608
1609
1610
1611} ;
1612
1613
1614}
1615#endif
1616
double viriel() const
Computes the viriel error, that is the difference between the ADM and the Komar masses,...
void solve_psi(double precis, double relax, int bound_psi)
Solves the equation for the conformal factor : The fields are the total values excpet those with subs...
double omega
Angular velocity.
Definition isol_hor.h:1348
double coal(double ang_vel, double relax, int nb_om, int nb_it, int bound_nn, double lim_nn, int bound_psi, int bound_beta, double omega_eff, double alpha, ostream &fich_iteration, ostream &fich_correction, ostream &fich_viriel, ostream &fich_kss, int step, int search_mass, double mass_irr, const int sortie=0)
Solves the equation for a particular angular velocity, the systeme being initialized to Misner-Lindqu...
Single_hor hole1
Black hole one.
Definition isol_hor.h:1342
Single_hor * holes[2]
Array on the black holes.
Definition isol_hor.h:1346
Single_hor hole2
Black hole two.
Definition isol_hor.h:1343
double ang_mom_hor() const
Calculates the angular momentum of the black hole using the formula at the horizon.
void init_bin_hor()
Initialisation of the system.
Definition bin_hor.C:161
double adm_mass() const
Calculates the ADM mass of the system.
void solve_shift(double precis, double relax, int bound_beta, double omega_eff)
Solves the equation for the shift, using the Oohara-Nakarmure scheme : The fields are the total value...
void import_bh(const Bin_hor &bin)
Function to initialize a Bin_hor from a solution computed with a smaller number of colocation points.
double ang_mom_adm() const
Calculates the angular momentum of the black hole.
void sauve(FILE *fich) const
Total or partial saves in a binary file.
Definition bin_hor.C:151
double komar_mass() const
Calculates the Komar mass of the system using : .
void decouple()
Calculates decouple which is used to obtain tkij_auto and tkij_comp.
Definition binhor_kij.C:473
void operator=(const Bin_hor &)
Affectation operator.
Definition bin_hor.C:139
void set_statiques(double precis, double relax, int bound_nn, double lim_nn, int bound_psi)
Initialize the systeme to Misner Lindquist solution, that is solving for N and in the case .
Definition binhor_coal.C:96
void set_hh_Samaya()
Calculation of the Post-Newtonian correction to .
Definition binhor_hh.C:786
Sym_tensor hh_Samaya_hole2()
Calculation of the hole2 part of the Post-Newtonian correction to .
Definition binhor_hh.C:453
void solve_lapse(double precis, double relax, int bound_nn, double lim_nn)
Solves the equation for the lapse : The fields are the total values except those with subscript ,...
virtual ~Bin_hor()
Destructor.
Definition bin_hor.C:132
Single_hor & set(int i)
Read/write of a component of the system.
Definition isol_hor.h:1403
void set_omega(double ome)
Sets the orbital velocity to ome.
Definition isol_hor.h:1409
double proper_distance(const int nr=65) const
Calculation of the proper distance between the two spheres of inversion, along the x axis.
const Single_hor & operator()(int i) const
Read only of a component of the system.
Definition isol_hor.h:1417
void write_global(ostream &, double lim_nn, int bound_nn, int bound_psi, int bound_beta, double alpha) const
Write global quantities in a formatted file.
Definition bin_hor.C:178
void extrinsic_curvature()
Calculation of the extrinsic curvature tensor.
Definition binhor_kij.C:88
Sym_tensor hh_Samaya_hole1()
Calculation of the hole1 part of the Post-Newtonian correction to .
Definition binhor_hh.C:63
double get_omega() const
Returns the angular velocity.
Definition isol_hor.h:1422
Time evolution with partial storage (*** under development ***).
Definition evolution.h:371
Spacelike time-slice of an Isolated Horizon in a 3+1 spacetime with conformal decomposition.
Definition isol_hor.h:254
virtual const Vector & dnn() const
Covariant derivative of the lapse function at the current time step jtime
Definition isol_hor.C:479
Scalar expansion() const
Expansion of the outgoing null normal ( )
Definition phys_param.C:263
void met_kerr_perturb()
Initialisation of the metric tilde from equation (15) of Dain (2002).
Definition isol_hor.C:895
const Map_af & get_mp() const
Returns the mapping (readonly).
Definition isol_hor.h:418
void set_omega(double ome)
Sets the angular velocity to ome .
Definition isol_hor.h:440
virtual const Scalar & aa_quad() const
Conformal representation .
Definition isol_hor.C:884
Evolution_std< Sym_tensor > aa_nn
Values at successive time steps of the components .
Definition isol_hor.h:320
virtual const Metric & tgam() const
Conformal metric Returns the value at the current time step (jtime ).
Definition isol_hor.h:514
void init_bhole()
Sets the values of the fields to :
Definition isol_hor.C:733
const Valeur boundary_vv_z_bin(double om, int hole=0) const
Component z of boundary value of .
Definition bound_hor.C:1625
const Valeur boundary_vv_y(double om) const
Component y of boundary value of .
Definition bound_hor.C:1521
Sym_tensor gamt_point
Time derivative of the 3-metric tilde.
Definition isol_hor.h:329
const Valeur boundary_psi_Dir_evol() const
Dirichlet boundary condition for (evolution)
Definition bound_hor.C:174
const Valeur boundary_psi_Dir_spat() const
Dirichlet boundary condition for (spatial)
Definition bound_hor.C:231
const Vector source_beta() const
Source for .
double get_omega() const
Returns the angular velocity.
Definition isol_hor.h:436
double regularise_one()
Corrects the shift in the innermost shell, so that it remains and that equals zero on the horizon.
Evolution_std< Scalar > aa_quad_evol
Values at successive time steps of the components .
Definition isol_hor.h:323
double omega
Angular velocity in LORENE's units.
Definition isol_hor.h:269
const Valeur boundary_nn_Neu_eff(double aa) const
Neumann boundary condition on nn (effectif)
Definition bound_hor.C:622
double regul
Intensity of the correction on the shift vector.
Definition isol_hor.h:278
const Valeur boundary_vv_x(double om) const
Component x of boundary value of .
Definition bound_hor.C:1493
const Valeur boundary_beta_y(double om) const
Component y of boundary value of .
Definition bound_hor.C:1071
const Valeur boundary_psi_app_hor() const
Neumann boundary condition for (spatial)
Definition bound_hor.C:297
virtual const Scalar & n_comp() const
Lapse function at the current time step jtime.
Definition isol_hor.C:461
const Vector source_vector_b() const
Source for vector_b.
Scalar trK
Trace of the extrinsic curvature.
Definition isol_hor.h:332
virtual ostream & operator>>(ostream &) const
Operator >> (virtual function called by the operator<<).
Definition isol_hor.C:378
const Valeur boundary_beta_x(double om) const
Component x of boundary value of .
Definition bound_hor.C:1021
const Scalar darea_hor() const
Element of area of the horizon.
Definition phys_param.C:146
Metric met_gamt
3 metric tilde
Definition isol_hor.h:326
const Valeur boundary_nn_Neu_Cook() const
Neumann boundary condition for N using Cook's boundary condition.
Definition bound_hor.C:489
const Valeur boundary_b_tilde_Neu() const
Neumann boundary condition for b_tilde.
Definition bound_hor.C:1169
const Scalar b_tilde() const
Radial component of the shift with respect to the conformal metric.
Definition phys_param.C:136
const Scalar source_psi() const
Source for .
Evolution_std< Vector > dpsi_evol
Values at successive time steps of the covariant derivative of the conformal factor .
Definition isol_hor.h:298
const Valeur beta_boost_x() const
Boundary value for a boost in x-direction.
Definition bound_hor.C:1144
Evolution_std< Scalar > psi_auto_evol
Values at successive time steps of the conformal factor .
Definition isol_hor.h:287
const Valeur boundary_beta_r() const
Component r of boundary value of .
Definition bound_hor.C:897
int nz
Number of zones.
Definition isol_hor.h:263
const Valeur boundary_vv_z(double om) const
Component z of boundary value of .
Definition bound_hor.C:1547
const Valeur boundary_vv_y_bin(double om, int hole=0) const
Component y of boundary value of .
Definition bound_hor.C:1599
double ang_mom_hor() const
Angular momentum (modulo)
Definition phys_param.C:178
void set_boost_z(double bo)
Sets the boost velocity in z-direction to bo .
Definition isol_hor.h:458
Evolution_std< Sym_tensor > aa_comp_evol
Values at successive time steps of the components of the conformal representation of the traceless p...
Definition isol_hor.h:316
void set_psi(const Scalar &psi_in)
Sets the conformal factor relating the physical metric to the conformal one: .
Definition isol_hor.C:515
double viriel_seul() const
Computes the viriel error, that is the difference between the ADM and the Komar masses,...
virtual const Vector & beta_comp() const
Shift function at the current time step jtime.
Definition isol_hor.C:497
void init_met_trK()
Sets the 3-metric tilde to the flat metric and gamt_point, trK and trK_point to zero.
Definition isol_hor.C:785
Scalar trK_point
Time derivative of the trace of the extrinsic curvature.
Definition isol_hor.h:335
Evolution_std< Vector > beta_auto_evol
Values at successive time steps of the shift function .
Definition isol_hor.h:301
virtual const Vector & dpsi() const
Covariant derivative with respect to the flat metric of the conformal factor at the current time ste...
Definition isol_hor.C:485
void set_nn(const Scalar &nn_in)
Sets the lapse.
Definition isol_hor.C:540
const Valeur boundary_nn_Dir_lapl(int mer=1) const
Dirichlet boundary condition for N fixing the divergence of the connection form .
Definition bound_hor.C:693
double boost_z
Boost velocity in z-direction.
Definition isol_hor.h:275
const Valeur boundary_beta_theta() const
Component theta of boundary value of .
Definition bound_hor.C:938
virtual const Scalar & psi_auto() const
Conformal factor at the current time step jtime.
Definition isol_hor.C:467
const Valeur beta_boost_z() const
Boundary value for a boost in z-direction.
Definition bound_hor.C:1155
const Valeur boundary_vv_x_bin(double om, int hole=0) const
Component x of boundary value of .
Definition bound_hor.C:1572
double ang_mom_adm() const
ADM angular Momentum
Definition phys_param.C:248
virtual const Sym_tensor & aa_comp() const
Conformal representation of the traceless part of the extrinsic curvature: Returns the value at the ...
Definition isol_hor.C:509
void set_radius(double rad)
Sets the radius of the horizon to rad .
Definition isol_hor.h:431
const Vector vv_bound_cart(double om) const
Vector for boundary conditions in cartesian
Definition bound_hor.C:1251
Scalar decouple
Function used to construct from the total .
Definition isol_hor.h:345
double kappa_hor() const
Surface gravity
Definition phys_param.C:218
void update_aa()
Conformal representation of the traceless part of the extrinsic curvature: .
Definition isol_hor.C:842
const Valeur boundary_beta_z() const
Component z of boundary value of .
Definition bound_hor.C:1121
virtual const Scalar & n_auto() const
Lapse function at the current time step jtime.
Definition isol_hor.C:455
virtual ~Isol_hor()
Destructor.
Definition isol_hor.C:336
double radius
Radius of the horizon in LORENE's units.
Definition isol_hor.h:266
virtual const Sym_tensor & aa_auto() const
Conformal representation of the traceless part of the extrinsic curvature: Returns the value at the ...
Definition isol_hor.C:503
const Scalar get_decouple() const
Returns the function used to construct tkij_auto from tkij_tot .
Definition isol_hor.h:519
const Valeur boundary_nn_Dir_kk() const
Dirichlet boundary condition for N using the extrinsic curvature.
Definition bound_hor.C:371
double mass_hor() const
Mass computed at the horizon
Definition phys_param.C:206
void init_bhole_seul()
Initiates for a single black hole.
Definition isol_hor.C:797
Evolution_std< Sym_tensor > aa_auto_evol
Values at successive time steps of the components of the conformal representation of the traceless p...
Definition isol_hor.h:310
void set_gamt(const Metric &gam_tilde)
Sets the conformal metric to gam_tilde.
Definition isol_hor.C:550
double radius_hor() const
Radius of the horizon.
Definition phys_param.C:167
double get_boost_x() const
Returns the boost velocity in x-direction.
Definition isol_hor.h:445
const Vector tradial_vect_hor() const
Vector radial normal tilde.
Definition phys_param.C:116
Map_af & mp
Affine mapping.
Definition isol_hor.h:260
const Valeur boundary_psi_Neu_spat() const
Neumann boundary condition for (spatial)
Definition bound_hor.C:267
const Valeur boundary_beta_phi(double om) const
Component phi of boundary value of .
Definition bound_hor.C:978
virtual const Scalar & psi_comp() const
Conformal factor at the current time step jtime.
Definition isol_hor.C:473
const Vector radial_vect_hor() const
Vector radial normal.
Definition phys_param.C:95
double axi_break() const
Breaking of the axial symmetry on the horizon.
Definition isol_hor.C:1087
double get_boost_z() const
Returns the boost velocity in z-direction.
Definition isol_hor.h:454
Evolution_std< Scalar > n_auto_evol
Values at successive time steps of the lapse function .
Definition isol_hor.h:281
Evolution_std< Scalar > n_comp_evol
Values at successive time steps of the lapse function .
Definition isol_hor.h:284
void set_boost_x(double bo)
Sets the boost velocity in x-direction to bo .
Definition isol_hor.h:449
const Valeur boundary_nn_Dir_eff(double aa) const
Dirichlet boundary condition for N (effectif) .
Definition bound_hor.C:586
Evolution_std< Vector > dn_evol
Values at successive time steps of the covariant derivative of the lapse with respect to the flat met...
Definition isol_hor.h:294
double regularisation(const Vector &shift_auto, const Vector &shift_comp, double ang_vel)
Corrects shift_auto in such a way that the total is equal to zero in the horizon,...
const Valeur boundary_nn_Dir(double aa) const
Dirichlet boundary condition .
Definition bound_hor.C:647
const Valeur boundary_nn_Neu_kk(int nn=1) const
Neumann boundary condition for N using the extrinsic curvature.
Definition bound_hor.C:420
double boost_x
Boost velocity in x-direction.
Definition isol_hor.h:272
const Valeur boundary_psi_Dir() const
Dirichlet boundary condition for (spatial)
Definition bound_hor.C:324
void operator=(const Isol_hor &)
Assignment to another Isol_hor.
Definition isol_hor.C:343
Evolution_std< Vector > beta_comp_evol
Values at successive time steps of the shift function .
Definition isol_hor.h:304
double area_hor() const
Area of the horizon.
Definition phys_param.C:157
const Valeur boundary_b_tilde_Dir() const
Dirichlet boundary condition for b_tilde.
Definition bound_hor.C:1212
const Valeur boundary_psi_Neu_evol() const
Neumann boundary condition for (evolution)
Definition bound_hor.C:203
const Vector vv_bound_cart_bin(double om, int hole=0) const
Vector for boundary conditions in cartesian for binary systems.
Definition bound_hor.C:1379
const Scalar source_nn() const
Source for N.
virtual const Vector & beta_auto() const
Shift function at the current time step jtime.
Definition isol_hor.C:491
virtual void sauve(FILE *fich, bool partial_save) const
Total or partial saves in a binary file.
Definition isol_hor.C:401
Map_af & set_mp()
Read/write of the mapping.
Definition isol_hor.h:421
double omega_hor() const
Orbital velocity
Definition phys_param.C:233
double get_radius() const
Returns the radius of the horizon.
Definition isol_hor.h:426
Evolution_std< Scalar > psi_comp_evol
Values at successive time steps of the lapse function .
Definition isol_hor.h:290
const Scalar source_b_tilde() const
Source for b_tilde.
Affine radial mapping.
Definition map.h:2027
Flat metric for tensor calculation.
Definition metric.h:261
Metric for tensor calculation.
Definition metric.h:90
Tensor field of valence 0 (or component of a tensorial field).
Definition scalar.h:387
Binary black holes system.
Definition isol_hor.h:894
double radius_hor() const
Radius of the horizon.
Vector dpsi
Covariant derivative of the conformal factor .
Definition isol_hor.h:941
Scalar psi_auto
Conformal factor .
Definition isol_hor.h:924
double radius
Radius of the horizon in LORENE's units.
Definition isol_hor.h:906
const Metric & get_gam() const
metric
Definition single_hor.C:339
Scalar trK_point
Time derivative of the trace of the extrinsic curvature.
Definition isol_hor.h:992
const Scalar darea_hor() const
Element of area of the horizon.
const Valeur boundary_psi_app_hor() const
Neumann boundary condition for.
Scalar decouple
Function used to construct from the total .
Definition isol_hor.h:1002
Vector beta_auto
Shift function .
Definition isol_hor.h:944
void beta_comp_import(const Single_hor &comp)
Imports the part of due to the companion hole comp.
Definition single_hor.C:465
void set_psi_auto(const Scalar &psi_in)
Sets the conformal factor relating the physical metric to the conformal one: .
Definition single_hor.C:362
double mass_hor() const
Mass computed at the horizon
Scalar n_comp
Lapse function .
Definition isol_hor.h:918
const Sym_tensor & get_k_dd() const
k_dd
Definition single_hor.C:348
void operator=(const Single_hor &)
Assignment to another Single_hor.
Definition single_hor.C:186
void set_omega(double ome)
Sets the angular velocity to ome .
Definition isol_hor.h:1060
Sym_tensor aa_auto
Components of the conformal representation of the traceless part of the extrinsic curvature:
Definition isol_hor.h:959
const Scalar & get_psi_comp() const
Conformal factor .
Definition single_hor.C:280
void set_beta_auto(const Scalar &shift_in)
Sets the shift.
Definition single_hor.C:370
const Scalar & get_psi4() const
Conformal factor .
Definition single_hor.C:288
void set_n_auto(const Scalar &nn_in)
Sets the lapse.
Definition single_hor.C:366
const Scalar & get_n_auto() const
Lapse function .
Definition single_hor.C:261
const Scalar & get_n_comp() const
Lapse function .
Definition single_hor.C:266
Metric_flat ff
3 metric flat
Definition isol_hor.h:980
Scalar psi
Conformal factor .
Definition isol_hor.h:930
Map_af & mp
Affine mapping.
Definition isol_hor.h:900
const Vector & get_dpsi() const
Covariant derivative with respect to the flat metric of the conformal factor .
Definition single_hor.C:304
void set_radius(double rad)
Sets the radius of the horizon to rad .
Definition isol_hor.h:1051
const Vector & get_beta_comp() const
Shift function .
Definition single_hor.C:314
void init_met_trK()
Sets the 3-metric tilde to the flat metric and gamt_point, trK and trK_point to zero.
Definition single_hor.C:536
double area_hor() const
Area of the horizon.
void init_bhole()
Sets the values of the fields to :
Definition single_hor.C:484
Scalar expansion() const
Expansion of the outgoing null normal ( )
double ang_mom_adm() const
ADM angular Momentum
const Scalar & get_nn() const
Lapse function .
Definition single_hor.C:270
Scalar * p_psi4
Conformal factor .
Definition isol_hor.h:933
Vector dn
Covariant derivative of the lapse with respect to the flat metric .
Definition isol_hor.h:937
double viriel_seul() const
Computes the viriel error, that is the difference between the ADM and the Komar masses,...
void set_der_0x0() const
Sets to 0x0 all the pointers on derived quantities.
Definition single_hor.C:231
const Vector & get_beta_auto() const
Shift function .
Definition single_hor.C:309
const Sym_tensor & get_aa() const
Conformal representation of the traceless part of the extrinsic curvature:
Definition single_hor.C:334
const Vector & get_beta() const
Shift function .
Definition single_hor.C:319
void set_aa_comp(const Scalar &aa_comp_in)
Sets aa_comp.
Definition single_hor.C:378
int nz
Number of zones.
Definition isol_hor.h:903
double regularisation(const Vector &shift_auto, const Vector &shift_comp, double ang_vel)
Corrects shift_auto in such a way that the total is equal to zero in the horizon,...
void init_bhole_seul()
Initiates for a single black hole.
Definition single_hor.C:548
double kappa_hor() const
Surface gravity
Sym_tensor aa_comp
Components of the conformal representation of the traceless part of the extrinsic curvature:
Definition isol_hor.h:965
const Map_af & get_mp() const
Returns the mapping (readonly).
Definition isol_hor.h:1038
void del_deriv() const
Deletes all the derived quantities.
Definition single_hor.C:221
void set_aa(const Scalar &aa_in)
Sets aa.
Definition single_hor.C:382
double regul
Intensity of the correction on the shift vector.
Definition isol_hor.h:912
Vector beta_comp
Shift function .
Definition isol_hor.h:947
double ang_mom_hor() const
Angular momentum (modulo)
Sym_tensor gamt_point
Time derivative of the 3-metric tilde.
Definition isol_hor.h:986
Map_af & set_mp()
Read/write of the mapping.
Definition isol_hor.h:1041
double omega_hor() const
Orbital velocity
const Sym_tensor & get_aa_comp() const
Conformal representation of the traceless part of the extrinsic curvature:
Definition single_hor.C:329
const Vector & get_dn() const
Covariant derivative of the lapse function .
Definition single_hor.C:299
virtual ~Single_hor()
Destructor.
Definition single_hor.C:176
double omega
Angular velocity in LORENE's units.
Definition isol_hor.h:909
virtual void sauve(FILE *fich) const
Total or partial saves in a binary file.
Definition single_hor.C:244
void set_aa_auto(const Scalar &aa_auto_in)
Sets aa_auto.
Definition single_hor.C:374
double get_radius() const
Returns the radius of the horizon.
Definition isol_hor.h:1046
Metric * p_gam
Spatial metric .
Definition isol_hor.h:953
const Scalar get_decouple() const
Returns the function used to construct tkij_auto from tkij_tot .
Definition isol_hor.h:1146
void n_comp_import(const Single_hor &comp)
Imports the part of N due to the companion hole comp .
Definition single_hor.C:390
Scalar n_auto
Lapse function .
Definition isol_hor.h:915
double regularise_one()
Corrects the shift in the innermost shell, so that it remains and that equals zero on the horizon.
Scalar nn
Lapse function .
Definition isol_hor.h:921
const Sym_tensor & get_aa_auto() const
Conformal representation of the traceless part of the extrinsic curvature:
Definition single_hor.C:324
const Scalar & get_psi() const
Conformal factor .
Definition single_hor.C:284
Sym_tensor * p_k_dd
Components of the extrinsic curvature:
Definition isol_hor.h:974
const Scalar & get_psi_auto() const
Conformal factor
Definition single_hor.C:275
Sym_tensor hh
Deviation metric.
Definition isol_hor.h:983
double get_omega() const
Returns the angular velocity.
Definition isol_hor.h:1056
Sym_tensor aa
Components of the conformal representation of the traceless part of the extrinsic curvature:
Definition isol_hor.h:971
Vector beta
Shift function .
Definition isol_hor.h:950
const Metric & get_tgam() const
Conformal metric .
Definition isol_hor.h:1133
const Scalar b_tilde() const
Radial component of the shift with respect to the conformal metric.
Scalar trK
Trace of the extrinsic curvature.
Definition isol_hor.h:989
Scalar psi_comp
Conformal factor .
Definition isol_hor.h:927
void psi_comp_import(const Single_hor &comp)
Imports the part of due to the companion hole comp .
Definition single_hor.C:424
Metric tgam
3 metric tilde
Definition isol_hor.h:977
Class intended to describe valence-2 symmetric tensors.
Definition sym_tensor.h:223
Spacelike time slice of a 3+1 spacetime with conformal decomposition.
Definition time_slice.h:498
virtual const Scalar & nn() const
Lapse function N at the current time step (jtime )
virtual Sym_tensor aa() const
Conformal representation of the traceless part of the extrinsic curvature: .
Values and coefficients of a (real-value) function.
Definition valeur.h:287
Tensor field of valence 1.
Definition vector.h:188
Lorene prototypes.
Definition app_hor.h:64