28char hole_bhns_C[] =
"$Header: /cvsroot/Lorene/C++/Source/Hole_bhns/hole_bhns.C,v 1.4 2014/10/13 08:52:59 j_novak Exp $" ;
69 bool bc_fs_i,
bool irrot_i,
double massbh)
71 bc_lapconf_nd(bc_nd_i),
72 bc_lapconf_fs(bc_fs_i),
73 irrotational(irrot_i),
74 lapconf_auto_rs(mp_i),
75 lapconf_auto_bh(mp_i),
81 d_lapconf_auto_rs(mp_i, COV, mp_i.get_bvect_cart()),
82 d_lapconf_auto_bh(mp_i, COV, mp_i.get_bvect_cart()),
83 d_lapconf_auto(mp_i, COV, mp_i.get_bvect_cart()),
84 d_lapconf_comp(mp_i, COV, mp_i.get_bvect_cart()),
85 shift_auto_rs(mp_i, CON, mp_i.get_bvect_cart()),
86 shift_auto_bh(mp_i, CON, mp_i.get_bvect_cart()),
87 shift_auto(mp_i, CON, mp_i.get_bvect_cart()),
88 shift_comp(mp_i, CON, mp_i.get_bvect_cart()),
89 shift_tot(mp_i, CON, mp_i.get_bvect_cart()),
90 d_shift_auto_rs(mp_i, 2, CON, mp_i.get_bvect_cart()),
91 d_shift_auto_bh(mp_i, 2, CON, mp_i.get_bvect_cart()),
92 d_shift_auto(mp_i, 2, CON, mp_i.get_bvect_cart()),
93 d_shift_comp(mp_i, 2, CON, mp_i.get_bvect_cart()),
99 d_confo_auto_rs(mp_i, COV, mp_i.get_bvect_cart()),
100 d_confo_auto_bh(mp_i, COV, mp_i.get_bvect_cart()),
101 d_confo_auto(mp_i, COV, mp_i.get_bvect_cart()),
102 d_confo_comp(mp_i, COV, mp_i.get_bvect_cart()),
103 taij_tot_rs(mp_i, CON, mp_i.get_bvect_cart()),
104 taij_tot_rot(mp_i, CON, mp_i.get_bvect_cart()),
105 taij_tot_bh(mp_i, CON, mp_i.get_bvect_cart()),
106 taij_tot(mp_i, CON, mp_i.get_bvect_cart()),
107 taij_auto_rs(mp_i, CON, mp_i.get_bvect_cart()),
108 taij_auto(mp_i, CON, mp_i.get_bvect_cart()),
109 taij_comp(mp_i, CON, mp_i.get_bvect_cart()),
110 taij_quad_tot_rs(mp_i),
111 taij_quad_tot_rot(mp_i),
112 taij_quad_tot_bh(mp_i),
114 taij_quad_auto(mp_i),
199 bc_lapconf_nd(hole.bc_lapconf_nd),
200 bc_lapconf_fs(hole.bc_lapconf_fs),
201 irrotational(hole.irrotational),
202 omega_spin(hole.omega_spin),
203 lapconf_auto_rs(hole.lapconf_auto_rs),
204 lapconf_auto_bh(hole.lapconf_auto_bh),
205 lapconf_auto(hole.lapconf_auto),
206 lapconf_comp(hole.lapconf_comp),
207 lapconf_tot(hole.lapconf_tot),
208 lapse_auto(hole.lapse_auto),
209 lapse_tot(hole.lapse_tot),
210 d_lapconf_auto_rs(hole.d_lapconf_auto_rs),
211 d_lapconf_auto_bh(hole.d_lapconf_auto_bh),
212 d_lapconf_auto(hole.d_lapconf_auto),
213 d_lapconf_comp(hole.d_lapconf_comp),
214 shift_auto_rs(hole.shift_auto_rs),
215 shift_auto_bh(hole.shift_auto_bh),
216 shift_auto(hole.shift_auto),
217 shift_comp(hole.shift_comp),
218 shift_tot(hole.shift_tot),
219 d_shift_auto_rs(hole.d_shift_auto_rs),
220 d_shift_auto_bh(hole.d_shift_auto_bh),
221 d_shift_auto(hole.d_shift_auto),
222 d_shift_comp(hole.d_shift_comp),
223 confo_auto_rs(hole.confo_auto_rs),
224 confo_auto_bh(hole.confo_auto_bh),
225 confo_auto(hole.confo_auto),
226 confo_comp(hole.confo_comp),
227 confo_tot(hole.confo_tot),
228 d_confo_auto_rs(hole.d_confo_auto_rs),
229 d_confo_auto_bh(hole.d_confo_auto_bh),
230 d_confo_auto(hole.d_confo_auto),
231 d_confo_comp(hole.d_confo_comp),
232 taij_tot_rs(hole.taij_tot_rs),
233 taij_tot_rot(hole.taij_tot_rot),
234 taij_tot_bh(hole.taij_tot_bh),
235 taij_tot(hole.taij_tot),
236 taij_auto_rs(hole.taij_auto_rs),
237 taij_auto(hole.taij_auto),
238 taij_comp(hole.taij_comp),
239 taij_quad_tot_rs(hole.taij_quad_tot_rs),
240 taij_quad_tot_rot(hole.taij_quad_tot_rot),
241 taij_quad_tot_bh(hole.taij_quad_tot_bh),
242 taij_quad_tot(hole.taij_quad_tot),
243 taij_quad_auto(hole.taij_quad_auto),
244 taij_quad_comp(hole.taij_quad_comp)
253 lapconf_auto_rs(mp_i, *(mp_i.get_mg()), fich),
254 lapconf_auto_bh(mp_i),
260 d_lapconf_auto_rs(mp_i, COV, mp_i.get_bvect_cart()),
261 d_lapconf_auto_bh(mp_i, COV, mp_i.get_bvect_cart()),
262 d_lapconf_auto(mp_i, COV, mp_i.get_bvect_cart()),
263 d_lapconf_comp(mp_i, COV, mp_i.get_bvect_cart()),
264 shift_auto_rs(mp_i, mp_i.get_bvect_cart(), fich),
265 shift_auto_bh(mp_i, CON, mp_i.get_bvect_cart()),
266 shift_auto(mp_i, CON, mp_i.get_bvect_cart()),
267 shift_comp(mp_i, CON, mp_i.get_bvect_cart()),
268 shift_tot(mp_i, CON, mp_i.get_bvect_cart()),
269 d_shift_auto_rs(mp_i, 2, CON, mp_i.get_bvect_cart()),
270 d_shift_auto_bh(mp_i, 2, CON, mp_i.get_bvect_cart()),
271 d_shift_auto(mp_i, 2, CON, mp_i.get_bvect_cart()),
272 d_shift_comp(mp_i, 2, CON, mp_i.get_bvect_cart()),
273 confo_auto_rs(mp_i, *(mp_i.get_mg()), fich),
278 d_confo_auto_rs(mp_i, COV, mp_i.get_bvect_cart()),
279 d_confo_auto_bh(mp_i, COV, mp_i.get_bvect_cart()),
280 d_confo_auto(mp_i, COV, mp_i.get_bvect_cart()),
281 d_confo_comp(mp_i, COV, mp_i.get_bvect_cart()),
282 taij_tot_rs(mp_i, CON, mp_i.get_bvect_cart()),
283 taij_tot_rot(mp_i, CON, mp_i.get_bvect_cart()),
284 taij_tot_bh(mp_i, CON, mp_i.get_bvect_cart()),
285 taij_tot(mp_i, CON, mp_i.get_bvect_cart()),
286 taij_auto_rs(mp_i, CON, mp_i.get_bvect_cart()),
287 taij_auto(mp_i, CON, mp_i.get_bvect_cart()),
288 taij_comp(mp_i, CON, mp_i.get_bvect_cart()),
289 taij_quad_tot_rs(mp_i),
290 taij_quad_tot_rot(mp_i),
291 taij_quad_tot_bh(mp_i),
293 taij_quad_auto(mp_i),
396 if (p_mass_irr_bhns != 0x0)
delete p_mass_irr_bhns ;
407 p_mass_irr_bhns = 0x0 ;
614 fwrite(&
omega_spin,
sizeof(
double), 1, fich) ;
627 ost <<
"Black hole in a BHNS binary" << endl ;
628 ost <<
"---------------------------" << endl ;
632 ost <<
"Irreducible mass of BH : "
634 ost <<
"Mass in the background : "
635 <<
mass_bh / msol <<
" [Mo]" << endl ;
636 ost <<
"Radius of the apparent horison : "
637 <<
rad_ah() / km <<
" [km]" << endl ;
638 ost <<
"Spin angular velocity : "
639 <<
omega_spin * f_unit <<
" [rad/s]" << endl ;
640 ost <<
"Lapse function on the AH : "
642 ost <<
"Conformal factor on the AH : "
644 ost <<
"shift(1) on the AH : "
645 <<
shift_tot(1).val_grid_point(1,0,nt-1,0) << endl ;
646 ost <<
"shift(2) on the AH : "
647 <<
shift_tot(2).val_grid_point(1,0,nt-1,0) << endl ;
648 ost <<
"shift(3) on the AH : "
649 <<
shift_tot(3).val_grid_point(1,0,nt-1,0) << endl ;
660 double relax_met,
int mer,
int fmer_met) {
662 double relax_met_jm1 = 1. - relax_met ;
664 if ( (mer != 0) && (mer % fmer_met == 0)) {
Base class for black holes.
Map & mp
Mapping associated with the black hole.
virtual double rad_ah() const
Radius of the apparent horizon.
void set_der_0x0() const
Sets to 0x0 all the pointers on derived quantities.
virtual void sauve(FILE *) const
Save in a file.
void operator=(const Black_hole &)
Assignment to another Black_hole.
double mass_bh
Gravitational mass of BH.
virtual void del_deriv() const
Deletes all the derived quantities.
Class for black holes in black hole-neutron star binaries.
Scalar confo_auto
Conformal factor generated by the black hole.
Sym_tensor taij_tot_bh
Part of the extrinsic curvature tensor from the analytic background.
Scalar lapconf_auto
Lapconf function generated by the black hole.
Vector shift_tot
Total shift vector ;.
Scalar & set_confo_comp()
Read/write of the conformal factor generated by the companion star.
Sym_tensor taij_comp
Part of the extrinsic curvature tensor generated by the companion star.
Vector d_lapconf_auto
Derivative of the lapconf function generated by the black hole.
Tensor d_shift_auto
Derivative of the shift vector generated by the black hole.
Scalar & set_lapconf_auto_bh()
Read/write of the lapconf function generated by the black hole.
Vector d_lapconf_auto_rs
Derivative of the part of the lapconf function from the numerical computation.
Sym_tensor taij_auto
Part of the extrinsic curvature tensor generated by the black hole.
Scalar confo_auto_bh
Part of the conformal factor from the analytic background.
Tensor d_shift_auto_rs
Derivative of the part of the shift vector from the numerical computation.
Sym_tensor taij_tot_rs
Part of the extrinsic curvature tensor from the numerical computation.
virtual ostream & operator>>(ostream &) const
Operator >> (virtual function called by the operator <<)
Scalar taij_quad_auto
Part of the scalar from the black hole.
virtual ~Hole_bhns()
Destructor.
virtual double mass_irr_bhns() const
Irreducible mass of the black hole.
Vector & set_shift_auto()
Read/write of the shift vector generated by the black hole.
Hole_bhns(Map &mp_i, bool kerrschild_i, bool bc_lapconf_nd, bool bc_lapconf_fs, bool irrotational, double massbh)
Standard constructor.
Vector shift_auto_rs
Part of the shift vector from the numerical computation.
double omega_spin
Spin angular velocity of the black hole.
Vector & set_shift_auto_rs()
Read/write of the shift vector generated by the black hole.
Scalar & set_confo_auto_rs()
Read/write of the conformal factor generated by the black hole.
virtual void del_deriv() const
Deletes all the derived quantities.
Tensor d_shift_auto_bh
Derivative of the part of the shift vector from the analytic background.
Scalar & set_lapconf_auto_rs()
Read/write of the lapconf function generated by the black hole.
Scalar & set_confo_tot()
Read/write of the total conformal factor.
void operator=(const Hole_bhns &)
Assignment to another Hole_bhns.
void relax_bhns(const Hole_bhns &hole_prev, double relax_met, int mer, int fmer_met)
Performs a relaxation on lapse_auto , shift_auto , confo_auto .
bool bc_lapconf_fs
true for the first type BC for the lapconf function, false for the second type BH
Vector d_lapconf_auto_bh
Derivative of the part of the lapconf function from the analytic background.
Scalar & set_confo_auto()
Read/write of the conformal factor generated by the black hole.
Scalar & set_lapconf_tot()
Read/write of the total lapconf function.
Vector d_confo_auto_rs
Derivative of the part of the conformal factor from the numerical computation.
Scalar confo_auto_rs
Part of the conformal factor from the numerical computation.
Scalar taij_quad_tot_rot
Part of the scalar from the rotation shift vector.
Vector & set_shift_tot()
Read/write of the total shift vector.
Scalar taij_quad_tot
Total scalar generated by .
Scalar lapse_tot
Total lapse function.
Vector & set_shift_auto_bh()
Read/write of the shift vector generated by the black hole.
Scalar & set_lapse_auto()
Read/write of the lapse function generated by the black hole.
Sym_tensor taij_tot_rot
Part of the extrinsic curvature tensor from the rotation shift vector.
Vector & set_shift_comp()
Read/write of the shift vector generated by the companion star.
Vector d_lapconf_comp
Derivative of the lapconf function generated by the companion star.
Sym_tensor taij_tot
Total extrinsic curvature tensor generated by shift_tot , lapse_tot , and confo_tot .
Scalar lapse_auto
Lapse function of the "black hole" part.
Vector shift_auto_bh
Part of the shift vector from the analytic background.
Scalar confo_comp
Conformal factor generated by the companion star.
Scalar lapconf_comp
Lapconf function generated by the companion star.
Scalar lapconf_auto_bh
Part of the lapconf function from the analytic background.
Vector d_confo_auto
Derivative of the conformal factor generated by the black hole.
virtual void sauve(FILE *) const
Save in a file.
Vector shift_auto
Shift vector generated by the black hole.
void set_der_0x0() const
Sets to 0x0 all the pointers on derived quantities.
Scalar lapconf_auto_rs
Part of the lapconf function from the numerical computation.
Scalar & set_lapconf_auto()
Read/write of the lapconf function generated by the black hole.
Vector d_confo_comp
Derivative of the conformal factor generated by the companion star.
Scalar taij_quad_comp
Part of the scalar from the companion star.
bool bc_lapconf_nd
true for the Neumann type BC for the lapconf function, false for the Dirichlet type BH
Scalar & set_lapconf_comp()
Read/write of the lapconf function generated by the companion star.
Scalar lapconf_tot
Total lapconf function.
Tensor d_shift_comp
Derivative of the shift vector generated by the companion star.
Vector d_confo_auto_bh
Derivative of the part of the conformal factor from the analytic background.
Vector shift_comp
Shift vector generated by the companion star.
Scalar confo_tot
Total conformal factor.
Scalar & set_confo_auto_bh()
Read/write of the conformal factor generated by the black hole.
double * p_spin_am_bhns
Irreducible mass of BH.
Sym_tensor taij_auto_rs
Part of the extrinsic curvature tensor numericalty computed for the black hole.
Scalar taij_quad_tot_rs
Part of the scalar from the numerical computation.
Scalar taij_quad_tot_bh
Part of the scalar from the analytic background.
bool irrotational
true for an irrotational black hole, false for a corotating one
Scalar & set_lapse_tot()
Read/write of the total lapse function.
Base class for coordinate mappings.
const Mg3d * get_mg() const
Gives the Mg3d on which the mapping is defined.
int get_nt(int l) const
Returns the number of points in the co-latitude direction ( ) in domain no. l.
Tensor field of valence 0 (or component of a tensorial field).
virtual void sauve(FILE *) const
Save in a file.
virtual void std_spectral_base()
Sets the spectral bases of the Valeur va to the standard ones for a scalar field.
double val_grid_point(int l, int k, int j, int i) const
Returns the value of the field at a specified grid point.
Tensor field of valence 1.
virtual void sauve(FILE *) const
Save in a binary file.
virtual void set_etat_zero()
Sets the logical state of all components to ETATZERO (zero state).
Standard units of space, time and mass.