hole_bhns.C
/*
* Methods of class Hole_bhns
*
* (see file hole_bhns.h for documentation).
*
*/
/*
* Copyright (c) 2005-2007 Keisuke Taniguchi
*
* This file is part of LORENE.
*
* LORENE is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2
* as published by the Free Software Foundation.
*
* LORENE is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with LORENE; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
*/
char 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 $" ;
/*
* $Id: hole_bhns.C,v 1.4 2014/10/13 08:52:59 j_novak Exp $
* $Log: hole_bhns.C,v $
* Revision 1.4 2014/10/13 08:52:59 j_novak
* Lorene classes and functions now belong to the namespace Lorene.
*
* Revision 1.3 2014/10/06 15:13:10 j_novak
* Modified #include directives to use c++ syntax.
*
* Revision 1.2 2008/05/15 19:03:00 k_taniguchi
* Change of some parameters.
*
* Revision 1.1 2007/06/22 01:24:16 k_taniguchi
* *** empty log message ***
*
*
* $Header: /cvsroot/Lorene/C++/Source/Hole_bhns/hole_bhns.C,v 1.4 2014/10/13 08:52:59 j_novak Exp $
*
*/
// C++ headers
//#include <>
// C headers
#include <cmath>
// Lorene headers
#include "hole_bhns.h"
#include "unites.h"
//----------------------//
// Constructors //
//----------------------//
// Standard constructor
// --------------------
namespace Lorene {
Hole_bhns::Hole_bhns(Map& mp_i, bool kerrschild_i, bool bc_nd_i,
bool bc_fs_i, bool irrot_i, double massbh)
: Black_hole(mp_i, kerrschild_i, massbh),
bc_lapconf_nd(bc_nd_i),
bc_lapconf_fs(bc_fs_i),
irrotational(irrot_i),
lapconf_auto_rs(mp_i),
lapconf_auto_bh(mp_i),
lapconf_auto(mp_i),
lapconf_comp(mp_i),
lapconf_tot(mp_i),
lapse_auto(mp_i),
lapse_tot(mp_i),
d_lapconf_auto_rs(mp_i, COV, mp_i.get_bvect_cart()),
d_lapconf_auto_bh(mp_i, COV, mp_i.get_bvect_cart()),
d_lapconf_auto(mp_i, COV, mp_i.get_bvect_cart()),
d_lapconf_comp(mp_i, COV, mp_i.get_bvect_cart()),
shift_auto_rs(mp_i, CON, mp_i.get_bvect_cart()),
shift_auto_bh(mp_i, CON, mp_i.get_bvect_cart()),
shift_auto(mp_i, CON, mp_i.get_bvect_cart()),
shift_comp(mp_i, CON, mp_i.get_bvect_cart()),
shift_tot(mp_i, CON, mp_i.get_bvect_cart()),
d_shift_auto_rs(mp_i, 2, CON, mp_i.get_bvect_cart()),
d_shift_auto_bh(mp_i, 2, CON, mp_i.get_bvect_cart()),
d_shift_auto(mp_i, 2, CON, mp_i.get_bvect_cart()),
d_shift_comp(mp_i, 2, CON, mp_i.get_bvect_cart()),
confo_auto_rs(mp_i),
confo_auto_bh(mp_i),
confo_auto(mp_i),
confo_comp(mp_i),
confo_tot(mp_i),
d_confo_auto_rs(mp_i, COV, mp_i.get_bvect_cart()),
d_confo_auto_bh(mp_i, COV, mp_i.get_bvect_cart()),
d_confo_auto(mp_i, COV, mp_i.get_bvect_cart()),
d_confo_comp(mp_i, COV, mp_i.get_bvect_cart()),
taij_tot_rs(mp_i, CON, mp_i.get_bvect_cart()),
taij_tot_rot(mp_i, CON, mp_i.get_bvect_cart()),
taij_tot_bh(mp_i, CON, mp_i.get_bvect_cart()),
taij_tot(mp_i, CON, mp_i.get_bvect_cart()),
taij_auto_rs(mp_i, CON, mp_i.get_bvect_cart()),
taij_auto(mp_i, CON, mp_i.get_bvect_cart()),
taij_comp(mp_i, CON, mp_i.get_bvect_cart()),
taij_quad_tot_rs(mp_i),
taij_quad_tot_rot(mp_i),
taij_quad_tot_bh(mp_i),
taij_quad_tot(mp_i),
taij_quad_auto(mp_i),
taij_quad_comp(mp_i)
{
omega_spin = 0. ;
// The metric quantities are initialized to the flat one or zero
lapconf_auto_rs = 0. ;
lapconf_auto_rs.std_spectral_base() ;
lapconf_auto_bh = 1. ;
lapconf_auto_bh.std_spectral_base() ;
lapconf_auto = 1. ;
lapconf_auto.std_spectral_base() ;
lapconf_comp = 0. ;
lapconf_comp.std_spectral_base() ;
lapconf_tot = 1. ;
lapconf_tot.std_spectral_base() ;
lapse_auto = 1. ;
lapse_auto.std_spectral_base() ;
lapse_tot = 1. ;
lapse_tot.std_spectral_base() ;
d_lapconf_auto_rs.set_etat_zero() ;
d_lapconf_auto_bh.set_etat_zero() ;
d_lapconf_auto.set_etat_zero() ;
d_lapconf_comp.set_etat_zero() ;
shift_auto_rs.set_etat_zero() ;
shift_auto_bh.set_etat_zero() ;
shift_auto.set_etat_zero() ;
shift_comp.set_etat_zero() ;
shift_tot.set_etat_zero() ;
d_shift_auto_rs.set_etat_zero() ;
d_shift_auto_bh.set_etat_zero() ;
d_shift_auto.set_etat_zero() ;
d_shift_comp.set_etat_zero() ;
confo_auto_rs = 0. ;
confo_auto_rs.std_spectral_base() ;
confo_auto_bh = 1. ;
confo_auto_bh.std_spectral_base() ;
confo_auto = 1. ;
confo_auto.std_spectral_base() ;
confo_comp = 0. ;
confo_comp.std_spectral_base() ;
confo_tot = 1. ;
confo_tot.std_spectral_base() ;
d_confo_auto_rs.set_etat_zero() ;
d_confo_auto_bh.set_etat_zero() ;
d_confo_auto.set_etat_zero() ;
d_confo_comp.set_etat_zero() ;
taij_tot_rs.set_etat_zero() ;
taij_tot_rot.set_etat_zero() ;
taij_tot_bh.set_etat_zero() ;
taij_tot.set_etat_zero() ;
taij_auto_rs.set_etat_zero() ;
taij_auto.set_etat_zero() ;
taij_comp.set_etat_zero() ;
taij_quad_tot_rs = 0. ;
taij_quad_tot_rs.std_spectral_base() ;
taij_quad_tot_rot = 0. ;
taij_quad_tot_rot.std_spectral_base() ;
taij_quad_tot_bh = 0. ;
taij_quad_tot_bh.std_spectral_base() ;
taij_quad_tot = 0. ;
taij_quad_tot.std_spectral_base() ;
taij_quad_auto = 0. ;
taij_quad_auto.std_spectral_base() ;
taij_quad_comp = 0. ;
taij_quad_comp.std_spectral_base() ;
// Pointers of derived quantities initialized to zero :
set_der_0x0() ;
}
// Copy constructor
// ----------------
Hole_bhns::Hole_bhns(const Hole_bhns& hole)
: Black_hole(hole),
bc_lapconf_nd(hole.bc_lapconf_nd),
bc_lapconf_fs(hole.bc_lapconf_fs),
irrotational(hole.irrotational),
omega_spin(hole.omega_spin),
lapconf_auto_rs(hole.lapconf_auto_rs),
lapconf_auto_bh(hole.lapconf_auto_bh),
lapconf_auto(hole.lapconf_auto),
lapconf_comp(hole.lapconf_comp),
lapconf_tot(hole.lapconf_tot),
lapse_auto(hole.lapse_auto),
lapse_tot(hole.lapse_tot),
d_lapconf_auto_rs(hole.d_lapconf_auto_rs),
d_lapconf_auto_bh(hole.d_lapconf_auto_bh),
d_lapconf_auto(hole.d_lapconf_auto),
d_lapconf_comp(hole.d_lapconf_comp),
shift_auto_rs(hole.shift_auto_rs),
shift_auto_bh(hole.shift_auto_bh),
shift_auto(hole.shift_auto),
shift_comp(hole.shift_comp),
shift_tot(hole.shift_tot),
d_shift_auto_rs(hole.d_shift_auto_rs),
d_shift_auto_bh(hole.d_shift_auto_bh),
d_shift_auto(hole.d_shift_auto),
d_shift_comp(hole.d_shift_comp),
confo_auto_rs(hole.confo_auto_rs),
confo_auto_bh(hole.confo_auto_bh),
confo_auto(hole.confo_auto),
confo_comp(hole.confo_comp),
confo_tot(hole.confo_tot),
d_confo_auto_rs(hole.d_confo_auto_rs),
d_confo_auto_bh(hole.d_confo_auto_bh),
d_confo_auto(hole.d_confo_auto),
d_confo_comp(hole.d_confo_comp),
taij_tot_rs(hole.taij_tot_rs),
taij_tot_rot(hole.taij_tot_rot),
taij_tot_bh(hole.taij_tot_bh),
taij_tot(hole.taij_tot),
taij_auto_rs(hole.taij_auto_rs),
taij_auto(hole.taij_auto),
taij_comp(hole.taij_comp),
taij_quad_tot_rs(hole.taij_quad_tot_rs),
taij_quad_tot_rot(hole.taij_quad_tot_rot),
taij_quad_tot_bh(hole.taij_quad_tot_bh),
taij_quad_tot(hole.taij_quad_tot),
taij_quad_auto(hole.taij_quad_auto),
taij_quad_comp(hole.taij_quad_comp)
{
set_der_0x0() ;
}
// Constructor from a file
// -----------------------
Hole_bhns::Hole_bhns(Map& mp_i, FILE* fich)
: Black_hole(mp_i, fich),
lapconf_auto_rs(mp_i, *(mp_i.get_mg()), fich),
lapconf_auto_bh(mp_i),
lapconf_auto(mp_i),
lapconf_comp(mp_i),
lapconf_tot(mp_i),
lapse_auto(mp_i),
lapse_tot(mp_i),
d_lapconf_auto_rs(mp_i, COV, mp_i.get_bvect_cart()),
d_lapconf_auto_bh(mp_i, COV, mp_i.get_bvect_cart()),
d_lapconf_auto(mp_i, COV, mp_i.get_bvect_cart()),
d_lapconf_comp(mp_i, COV, mp_i.get_bvect_cart()),
shift_auto_rs(mp_i, mp_i.get_bvect_cart(), fich),
shift_auto_bh(mp_i, CON, mp_i.get_bvect_cart()),
shift_auto(mp_i, CON, mp_i.get_bvect_cart()),
shift_comp(mp_i, CON, mp_i.get_bvect_cart()),
shift_tot(mp_i, CON, mp_i.get_bvect_cart()),
d_shift_auto_rs(mp_i, 2, CON, mp_i.get_bvect_cart()),
d_shift_auto_bh(mp_i, 2, CON, mp_i.get_bvect_cart()),
d_shift_auto(mp_i, 2, CON, mp_i.get_bvect_cart()),
d_shift_comp(mp_i, 2, CON, mp_i.get_bvect_cart()),
confo_auto_rs(mp_i, *(mp_i.get_mg()), fich),
confo_auto_bh(mp_i),
confo_auto(mp_i),
confo_comp(mp_i),
confo_tot(mp_i),
d_confo_auto_rs(mp_i, COV, mp_i.get_bvect_cart()),
d_confo_auto_bh(mp_i, COV, mp_i.get_bvect_cart()),
d_confo_auto(mp_i, COV, mp_i.get_bvect_cart()),
d_confo_comp(mp_i, COV, mp_i.get_bvect_cart()),
taij_tot_rs(mp_i, CON, mp_i.get_bvect_cart()),
taij_tot_rot(mp_i, CON, mp_i.get_bvect_cart()),
taij_tot_bh(mp_i, CON, mp_i.get_bvect_cart()),
taij_tot(mp_i, CON, mp_i.get_bvect_cart()),
taij_auto_rs(mp_i, CON, mp_i.get_bvect_cart()),
taij_auto(mp_i, CON, mp_i.get_bvect_cart()),
taij_comp(mp_i, CON, mp_i.get_bvect_cart()),
taij_quad_tot_rs(mp_i),
taij_quad_tot_rot(mp_i),
taij_quad_tot_bh(mp_i),
taij_quad_tot(mp_i),
taij_quad_auto(mp_i),
taij_quad_comp(mp_i)
{
// bc_lapconf_nd, bc_lapconf_fs, irrotational, and omega_spin
// are read from the file
fread(&bc_lapconf_nd, sizeof(bool), 1, fich) ;
fread(&bc_lapconf_fs, sizeof(bool), 1, fich) ;
fread(&irrotational, sizeof(bool), 1, fich) ;
fread(&omega_spin, sizeof(double), 1, fich) ;
// All other quantities are initialized to zero
// --------------------------------------------
lapconf_auto_bh = 1. ;
lapconf_auto_bh.std_spectral_base() ;
lapconf_auto = 1. ;
lapconf_auto.std_spectral_base() ;
lapconf_comp = 0. ;
lapconf_comp.std_spectral_base() ;
lapconf_tot = 1. ;
lapconf_tot.std_spectral_base() ;
lapse_auto = 1. ;
lapse_auto.std_spectral_base() ;
lapse_tot = 1. ;
lapse_tot.std_spectral_base() ;
d_lapconf_auto_rs.set_etat_zero() ;
d_lapconf_auto_bh.set_etat_zero() ;
d_lapconf_auto.set_etat_zero() ;
d_lapconf_comp.set_etat_zero() ;
shift_auto_bh.set_etat_zero() ;
shift_auto.set_etat_zero() ;
shift_comp.set_etat_zero() ;
shift_tot.set_etat_zero() ;
d_shift_auto_rs.set_etat_zero() ;
d_shift_auto_bh.set_etat_zero() ;
d_shift_auto.set_etat_zero() ;
d_shift_comp.set_etat_zero() ;
confo_auto_bh = 1. ;
confo_auto_bh.std_spectral_base() ;
confo_auto = 1. ;
confo_auto.std_spectral_base() ;
confo_comp = 0. ;
confo_comp.std_spectral_base() ;
confo_tot = 1. ;
confo_tot.std_spectral_base() ;
d_confo_auto_rs.set_etat_zero() ;
d_confo_auto_bh.set_etat_zero() ;
d_confo_auto.set_etat_zero() ;
d_confo_comp.set_etat_zero() ;
taij_tot_rs.set_etat_zero() ;
taij_tot_rot.set_etat_zero() ;
taij_tot_bh.set_etat_zero() ;
taij_tot.set_etat_zero() ;
taij_auto_rs.set_etat_zero() ;
taij_auto.set_etat_zero() ;
taij_comp.set_etat_zero() ;
taij_quad_tot_rs = 0. ;
taij_quad_tot_rs.std_spectral_base() ;
taij_quad_tot_rot = 0. ;
taij_quad_tot_rot.std_spectral_base() ;
taij_quad_tot_bh = 0. ;
taij_quad_tot_bh.std_spectral_base() ;
taij_quad_tot = 0. ;
taij_quad_tot.std_spectral_base() ;
taij_quad_auto = 0. ;
taij_quad_auto.std_spectral_base() ;
taij_quad_comp = 0. ;
taij_quad_comp.std_spectral_base() ;
// Pointers of derived quantities initialized to zero
// --------------------------------------------------
set_der_0x0() ;
}
//--------------------//
// Destructor //
//--------------------//
Hole_bhns::~Hole_bhns()
{
del_deriv() ;
}
//------------------------------------------//
// Management of derived quantities //
//------------------------------------------//
void Hole_bhns::del_deriv() const {
Black_hole::del_deriv() ;
if (p_mass_irr_bhns != 0x0) delete p_mass_irr_bhns ;
if (p_spin_am_bhns != 0x0) delete p_spin_am_bhns ;
set_der_0x0() ;
}
void Hole_bhns::set_der_0x0() const {
Black_hole::set_der_0x0() ;
p_mass_irr_bhns = 0x0 ;
p_spin_am_bhns = 0x0 ;
}
//--------------------//
// Assignment //
//--------------------//
// Assignment to another Hole_bhns
// -------------------------------
void Hole_bhns::operator=(const Hole_bhns& hole) {
// Assignment of quantities common to the derived classes of Black_hole
Black_hole::operator=(hole) ;
// Assignment of proper quantities of class Hole_bhns
bc_lapconf_nd = hole.bc_lapconf_nd ;
bc_lapconf_fs = hole.bc_lapconf_fs ;
irrotational = hole.irrotational ;
omega_spin = hole.omega_spin ;
lapconf_auto_rs = hole.lapconf_auto_rs ;
lapconf_auto_bh = hole.lapconf_auto_bh ;
lapconf_auto = hole.lapconf_auto ;
lapconf_comp = hole.lapconf_comp ;
lapconf_tot = hole.lapconf_tot ;
lapse_auto = hole.lapse_auto ;
lapse_tot = hole.lapse_tot ;
d_lapconf_auto_rs = hole.d_lapconf_auto_rs ;
d_lapconf_auto_bh = hole.d_lapconf_auto_bh ;
d_lapconf_auto = hole.d_lapconf_auto ;
d_lapconf_comp = hole.d_lapconf_comp ;
shift_auto_rs = hole.shift_auto_rs ;
shift_auto_bh = hole.shift_auto_bh ;
shift_auto = hole.shift_auto ;
shift_comp = hole.shift_comp ;
shift_tot = hole.shift_tot ;
d_shift_auto_rs = hole.d_shift_auto_rs ;
d_shift_auto_bh = hole.d_shift_auto_bh ;
d_shift_auto = hole.d_shift_auto ;
d_shift_comp = hole.d_shift_comp ;
confo_auto_rs = hole.confo_auto_rs ;
confo_auto_bh = hole.confo_auto_bh ;
confo_auto = hole.confo_auto ;
confo_comp = hole.confo_comp ;
confo_tot = hole.confo_tot ;
d_confo_auto_rs = hole.d_confo_auto_rs ;
d_confo_auto_bh = hole.d_confo_auto_bh ;
d_confo_auto = hole.d_confo_auto ;
d_confo_comp = hole.d_confo_comp ;
taij_tot_rs = hole.taij_tot_rs ;
taij_tot_rot = hole.taij_tot_rot ;
taij_tot_bh = hole.taij_tot_bh ;
taij_tot = hole.taij_tot ;
taij_auto_rs = hole.taij_auto_rs ;
taij_auto = hole.taij_auto ;
taij_comp = hole.taij_comp ;
taij_quad_tot_rs = hole.taij_quad_tot_rs ;
taij_quad_tot_rot = hole.taij_quad_tot_rot ;
taij_quad_tot_bh = hole.taij_quad_tot_bh ;
taij_quad_tot = hole.taij_quad_tot ;
taij_quad_auto = hole.taij_quad_auto ;
taij_quad_comp = hole.taij_quad_comp ;
del_deriv() ;
}
Scalar& Hole_bhns::set_lapconf_auto_rs() {
del_deriv() ;
return lapconf_auto_rs ;
}
Scalar& Hole_bhns::set_lapconf_auto_bh() {
del_deriv() ;
return lapconf_auto_bh ;
}
Scalar& Hole_bhns::set_lapconf_auto() {
del_deriv() ;
return lapconf_auto ;
}
Scalar& Hole_bhns::set_lapconf_comp() {
del_deriv() ;
return lapconf_comp ;
}
Scalar& Hole_bhns::set_lapconf_tot() {
del_deriv() ;
return lapconf_tot ;
}
Scalar& Hole_bhns::set_lapse_auto() {
del_deriv() ;
return lapse_auto ;
}
Scalar& Hole_bhns::set_lapse_tot() {
del_deriv() ;
return lapse_tot ;
}
Vector& Hole_bhns::set_shift_auto_rs() {
del_deriv() ;
return shift_auto_rs ;
}
Vector& Hole_bhns::set_shift_auto_bh() {
del_deriv() ;
return shift_auto_bh ;
}
Vector& Hole_bhns::set_shift_auto() {
del_deriv() ;
return shift_auto ;
}
Vector& Hole_bhns::set_shift_comp() {
del_deriv() ;
return shift_comp ;
}
Vector& Hole_bhns::set_shift_tot() {
del_deriv() ;
return shift_tot ;
}
Scalar& Hole_bhns::set_confo_auto_rs() {
del_deriv() ;
return confo_auto_rs ;
}
Scalar& Hole_bhns::set_confo_auto_bh() {
del_deriv() ;
return confo_auto_bh ;
}
Scalar& Hole_bhns::set_confo_auto() {
del_deriv() ;
return confo_auto ;
}
Scalar& Hole_bhns::set_confo_comp() {
del_deriv() ;
return confo_comp ;
}
Scalar& Hole_bhns::set_confo_tot() {
del_deriv() ;
return confo_tot ;
}
//-----------------//
// Outputs //
//-----------------//
// Save in a file
// --------------
void Hole_bhns::sauve(FILE* fich) const {
Black_hole::sauve(fich) ;
lapconf_auto_rs.sauve(fich) ;
shift_auto_rs.sauve(fich) ;
confo_auto_rs.sauve(fich) ;
fwrite(&bc_lapconf_nd, sizeof(bool), 1, fich) ;
fwrite(&bc_lapconf_fs, sizeof(bool), 1, fich) ;
fwrite(&irrotational, sizeof(bool), 1, fich) ;
fwrite(&omega_spin, sizeof(double), 1, fich) ;
}
// Printing
// --------
ostream& Hole_bhns::operator>>(ostream& ost) const {
using namespace Unites ;
// Black_hole::operator>>(ost) ;
ost << endl ;
ost << "Black hole in a BHNS binary" << endl ;
ost << "---------------------------" << endl ;
int nt = mp.get_mg()->get_nt(1) ;
ost << "Irreducible mass of BH : "
<< mass_irr_bhns() / msol << " [Mo]" << endl ;
ost << "Mass in the background : "
<< mass_bh / msol << " [Mo]" << endl ;
ost << "Radius of the apparent horison : "
<< rad_ah() / km << " [km]" << endl ;
ost << "Spin angular velocity : "
<< omega_spin * f_unit << " [rad/s]" << endl ;
ost << "Lapse function on the AH : "
<< lapse_tot.val_grid_point(1,0,nt-1,0) << endl ;
ost << "Conformal factor on the AH : "
<< confo_tot.val_grid_point(1,0,nt-1,0) << endl ;
ost << "shift(1) on the AH : "
<< shift_tot(1).val_grid_point(1,0,nt-1,0) << endl ;
ost << "shift(2) on the AH : "
<< shift_tot(2).val_grid_point(1,0,nt-1,0) << endl ;
ost << "shift(3) on the AH : "
<< shift_tot(3).val_grid_point(1,0,nt-1,0) << endl ;
return ost ;
}
//--------------------------------//
// Computational routines //
//--------------------------------//
void Hole_bhns::relax_bhns(const Hole_bhns& hole_prev,
double relax_met, int mer, int fmer_met) {
double relax_met_jm1 = 1. - relax_met ;
if ( (mer != 0) && (mer % fmer_met == 0)) {
lapconf_auto_rs = relax_met * lapconf_auto_rs
+ relax_met_jm1 * hole_prev.lapconf_auto_rs ;
shift_auto_rs = relax_met * shift_auto_rs
+ relax_met_jm1 * hole_prev.shift_auto_rs ;
confo_auto_rs = relax_met * confo_auto_rs
+ relax_met_jm1 * hole_prev.confo_auto_rs ;
}
del_deriv() ;
}
}
Lorene::Black_hole::Black_hole
Black_hole(Map &mp_i, bool Kerr_schild, double massbh)
Standard constructor.
Definition blackhole.C:71
Lorene::Black_hole::mp
Map & mp
Mapping associated with the black hole.
Definition blackhole.h:80
Lorene::Black_hole::rad_ah
virtual double rad_ah() const
Radius of the apparent horizon.
Definition blackhole_global.C:505
Lorene::Black_hole::set_der_0x0
void set_der_0x0() const
Sets to 0x0 all the pointers on derived quantities.
Definition blackhole.C:218
Lorene::Black_hole::sauve
virtual void sauve(FILE *) const
Save in a file.
Definition blackhole.C:267
Lorene::Black_hole::operator=
void operator=(const Black_hole &)
Assignment to another Black_hole.
Definition blackhole.C:236
Lorene::Black_hole::mass_bh
double mass_bh
Gravitational mass of BH.
Definition blackhole.h:88
Lorene::Black_hole::del_deriv
virtual void del_deriv() const
Deletes all the derived quantities.
Definition blackhole.C:205
Lorene::Hole_bhns::confo_auto
Scalar confo_auto
Conformal factor generated by the black hole.
Definition hole_bhns.h:163
Lorene::Hole_bhns::taij_tot_bh
Sym_tensor taij_tot_bh
Part of the extrinsic curvature tensor from the analytic background.
Definition hole_bhns.h:200
Lorene::Hole_bhns::lapconf_auto
Scalar lapconf_auto
Lapconf function generated by the black hole.
Definition hole_bhns.h:95
Lorene::Hole_bhns::shift_tot
Vector shift_tot
Total shift vector ;.
Definition hole_bhns.h:138
Lorene::Hole_bhns::set_confo_comp
Scalar & set_confo_comp()
Read/write of the conformal factor generated by the companion star.
Definition hole_bhns.C:582
Lorene::Hole_bhns::taij_comp
Sym_tensor taij_comp
Part of the extrinsic curvature tensor generated by the companion star.
Definition hole_bhns.h:221
Lorene::Hole_bhns::d_lapconf_auto
Vector d_lapconf_auto
Derivative of the lapconf function generated by the black hole.
Definition hole_bhns.h:120
Lorene::Hole_bhns::d_shift_auto
Tensor d_shift_auto
Derivative of the shift vector generated by the black hole.
Definition hole_bhns.h:151
Lorene::Hole_bhns::set_lapconf_auto_bh
Scalar & set_lapconf_auto_bh()
Read/write of the lapconf function generated by the black hole.
Definition hole_bhns.C:484
Lorene::Hole_bhns::d_lapconf_auto_rs
Vector d_lapconf_auto_rs
Derivative of the part of the lapconf function from the numerical computation.
Definition hole_bhns.h:112
Lorene::Hole_bhns::taij_auto
Sym_tensor taij_auto
Part of the extrinsic curvature tensor generated by the black hole.
Definition hole_bhns.h:216
Lorene::Hole_bhns::confo_auto_bh
Scalar confo_auto_bh
Part of the conformal factor from the analytic background.
Definition hole_bhns.h:160
Lorene::Hole_bhns::d_shift_auto_rs
Tensor d_shift_auto_rs
Derivative of the part of the shift vector from the numerical computation.
Definition hole_bhns.h:143
Lorene::Hole_bhns::taij_tot_rs
Sym_tensor taij_tot_rs
Part of the extrinsic curvature tensor from the numerical computation.
Definition hole_bhns.h:190
Lorene::Hole_bhns::operator>>
virtual ostream & operator>>(ostream &) const
Operator >> (virtual function called by the operator <<).
Definition hole_bhns.C:620
Lorene::Hole_bhns::taij_quad_auto
Scalar taij_quad_auto
Part of the scalar from the black hole.
Definition hole_bhns.h:238
Lorene::Hole_bhns::~Hole_bhns
virtual ~Hole_bhns()
Destructor.
Definition hole_bhns.C:380
Lorene::Hole_bhns::mass_irr_bhns
virtual double mass_irr_bhns() const
Irreducible mass of the black hole.
Definition hole_bhns_global.C:69
Lorene::Hole_bhns::set_shift_auto
Vector & set_shift_auto()
Read/write of the shift vector generated by the black hole.
Definition hole_bhns.C:540
Lorene::Hole_bhns::Hole_bhns
Hole_bhns(Map &mp_i, bool kerrschild_i, bool bc_lapconf_nd, bool bc_lapconf_fs, bool irrotational, double massbh)
Standard constructor.
Definition hole_bhns.C:68
Lorene::Hole_bhns::shift_auto_rs
Vector shift_auto_rs
Part of the shift vector from the numerical computation.
Definition hole_bhns.h:126
Lorene::Hole_bhns::omega_spin
double omega_spin
Spin angular velocity of the black hole.
Definition hole_bhns.h:86
Lorene::Hole_bhns::set_shift_auto_rs
Vector & set_shift_auto_rs()
Read/write of the shift vector generated by the black hole.
Definition hole_bhns.C:526
Lorene::Hole_bhns::set_confo_auto_rs
Scalar & set_confo_auto_rs()
Read/write of the conformal factor generated by the black hole.
Definition hole_bhns.C:561
Lorene::Hole_bhns::del_deriv
virtual void del_deriv() const
Deletes all the derived quantities.
Definition hole_bhns.C:392
Lorene::Hole_bhns::d_shift_auto_bh
Tensor d_shift_auto_bh
Derivative of the part of the shift vector from the analytic background.
Definition hole_bhns.h:148
Lorene::Hole_bhns::set_lapconf_auto_rs
Scalar & set_lapconf_auto_rs()
Read/write of the lapconf function generated by the black hole.
Definition hole_bhns.C:477
Lorene::Hole_bhns::set_confo_tot
Scalar & set_confo_tot()
Read/write of the total conformal factor.
Definition hole_bhns.C:589
Lorene::Hole_bhns::operator=
void operator=(const Hole_bhns &)
Assignment to another Hole_bhns.
Definition hole_bhns.C:419
Lorene::Hole_bhns::relax_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 .
Definition hole_bhns.C:659
Lorene::Hole_bhns::bc_lapconf_fs
bool bc_lapconf_fs
true for the first type BC for the lapconf function, false for the second type BH
Definition hole_bhns.h:78
Lorene::Hole_bhns::d_lapconf_auto_bh
Vector d_lapconf_auto_bh
Derivative of the part of the lapconf function from the analytic background.
Definition hole_bhns.h:117
Lorene::Hole_bhns::set_confo_auto
Scalar & set_confo_auto()
Read/write of the conformal factor generated by the black hole.
Definition hole_bhns.C:575
Lorene::Hole_bhns::set_lapconf_tot
Scalar & set_lapconf_tot()
Read/write of the total lapconf function.
Definition hole_bhns.C:505
Lorene::Hole_bhns::d_confo_auto_rs
Vector d_confo_auto_rs
Derivative of the part of the conformal factor from the numerical computation.
Definition hole_bhns.h:174
Lorene::Hole_bhns::confo_auto_rs
Scalar confo_auto_rs
Part of the conformal factor from the numerical computation.
Definition hole_bhns.h:157
Lorene::Hole_bhns::taij_quad_tot_rot
Scalar taij_quad_tot_rot
Part of the scalar from the rotation shift vector.
Definition hole_bhns.h:227
Lorene::Hole_bhns::set_shift_tot
Vector & set_shift_tot()
Read/write of the total shift vector.
Definition hole_bhns.C:554
Lorene::Hole_bhns::taij_quad_tot
Scalar taij_quad_tot
Total scalar generated by .
Definition hole_bhns.h:235
Lorene::Hole_bhns::lapse_tot
Scalar lapse_tot
Total lapse function.
Definition hole_bhns.h:107
Lorene::Hole_bhns::set_shift_auto_bh
Vector & set_shift_auto_bh()
Read/write of the shift vector generated by the black hole.
Definition hole_bhns.C:533
Lorene::Hole_bhns::set_lapse_auto
Scalar & set_lapse_auto()
Read/write of the lapse function generated by the black hole.
Definition hole_bhns.C:512
Lorene::Hole_bhns::taij_tot_rot
Sym_tensor taij_tot_rot
Part of the extrinsic curvature tensor from the rotation shift vector.
Definition hole_bhns.h:195
Lorene::Hole_bhns::set_shift_comp
Vector & set_shift_comp()
Read/write of the shift vector generated by the companion star.
Definition hole_bhns.C:547
Lorene::Hole_bhns::d_lapconf_comp
Vector d_lapconf_comp
Derivative of the lapconf function generated by the companion star.
Definition hole_bhns.h:123
Lorene::Hole_bhns::taij_tot
Sym_tensor taij_tot
Total extrinsic curvature tensor generated by shift_tot , lapse_tot , and confo_tot .
Definition hole_bhns.h:206
Lorene::Hole_bhns::lapse_auto
Scalar lapse_auto
Lapse function of the "black hole" part.
Definition hole_bhns.h:104
Lorene::Hole_bhns::shift_auto_bh
Vector shift_auto_bh
Part of the shift vector from the analytic background.
Definition hole_bhns.h:129
Lorene::Hole_bhns::confo_comp
Scalar confo_comp
Conformal factor generated by the companion star.
Definition hole_bhns.h:166
Lorene::Hole_bhns::lapconf_comp
Scalar lapconf_comp
Lapconf function generated by the companion star.
Definition hole_bhns.h:98
Lorene::Hole_bhns::lapconf_auto_bh
Scalar lapconf_auto_bh
Part of the lapconf function from the analytic background.
Definition hole_bhns.h:92
Lorene::Hole_bhns::d_confo_auto
Vector d_confo_auto
Derivative of the conformal factor generated by the black hole.
Definition hole_bhns.h:182
Lorene::Hole_bhns::sauve
virtual void sauve(FILE *) const
Save in a file.
Definition hole_bhns.C:603
Lorene::Hole_bhns::shift_auto
Vector shift_auto
Shift vector generated by the black hole.
Definition hole_bhns.h:132
Lorene::Hole_bhns::set_der_0x0
void set_der_0x0() const
Sets to 0x0 all the pointers on derived quantities.
Definition hole_bhns.C:403
Lorene::Hole_bhns::lapconf_auto_rs
Scalar lapconf_auto_rs
Part of the lapconf function from the numerical computation.
Definition hole_bhns.h:89
Lorene::Hole_bhns::set_lapconf_auto
Scalar & set_lapconf_auto()
Read/write of the lapconf function generated by the black hole.
Definition hole_bhns.C:491
Lorene::Hole_bhns::d_confo_comp
Vector d_confo_comp
Derivative of the conformal factor generated by the companion star.
Definition hole_bhns.h:185
Lorene::Hole_bhns::taij_quad_comp
Scalar taij_quad_comp
Part of the scalar from the companion star.
Definition hole_bhns.h:241
Lorene::Hole_bhns::bc_lapconf_nd
bool bc_lapconf_nd
true for the Neumann type BC for the lapconf function, false for the Dirichlet type BH
Definition hole_bhns.h:73
Lorene::Hole_bhns::set_lapconf_comp
Scalar & set_lapconf_comp()
Read/write of the lapconf function generated by the companion star.
Definition hole_bhns.C:498
Lorene::Hole_bhns::lapconf_tot
Scalar lapconf_tot
Total lapconf function.
Definition hole_bhns.h:101
Lorene::Hole_bhns::d_shift_comp
Tensor d_shift_comp
Derivative of the shift vector generated by the companion star.
Definition hole_bhns.h:154
Lorene::Hole_bhns::d_confo_auto_bh
Vector d_confo_auto_bh
Derivative of the part of the conformal factor from the analytic background.
Definition hole_bhns.h:179
Lorene::Hole_bhns::shift_comp
Vector shift_comp
Shift vector generated by the companion star.
Definition hole_bhns.h:135
Lorene::Hole_bhns::confo_tot
Scalar confo_tot
Total conformal factor.
Definition hole_bhns.h:169
Lorene::Hole_bhns::set_confo_auto_bh
Scalar & set_confo_auto_bh()
Read/write of the conformal factor generated by the black hole.
Definition hole_bhns.C:568
Lorene::Hole_bhns::p_spin_am_bhns
double * p_spin_am_bhns
Irreducible mass of BH.
Definition hole_bhns.h:248
Lorene::Hole_bhns::taij_auto_rs
Sym_tensor taij_auto_rs
Part of the extrinsic curvature tensor numericalty computed for the black hole.
Definition hole_bhns.h:211
Lorene::Hole_bhns::taij_quad_tot_rs
Scalar taij_quad_tot_rs
Part of the scalar from the numerical computation.
Definition hole_bhns.h:224
Lorene::Hole_bhns::taij_quad_tot_bh
Scalar taij_quad_tot_bh
Part of the scalar from the analytic background.
Definition hole_bhns.h:230
Lorene::Hole_bhns::irrotational
bool irrotational
true for an irrotational black hole, false for a corotating one
Definition hole_bhns.h:83
Lorene::Hole_bhns::set_lapse_tot
Scalar & set_lapse_tot()
Read/write of the total lapse function.
Definition hole_bhns.C:519
Lorene::Scalar
Tensor field of valence 0 (or component of a tensorial field).
Definition scalar.h:387
Lorene::Vector
Tensor field of valence 1.
Definition vector.h:188
Lorene
Lorene prototypes.
Definition app_hor.h:64
Lorene::get_bvect_cart
const Base_vect_cart & get_bvect_cart() const
Returns the Cartesian basis associated with the coordinates (x,y,z) of the mapping,...
Definition map.h:791
Lorene::get_mg
const Mg3d * get_mg() const
Gives the Mg3d on which the mapping is defined.
Definition map.h:765
Lorene::Map
Map(const Mg3d &)
Constructor from a multi-domain 3D grid.
Definition map.C:139
Unites
Standard units of space, time and mass.