239 class Bhole_binaire ;
333 void sauve (FILE* fich)
const ;
383 void set_boost (
double vx,
double vy,
double vz) {
442 Cmp return_shift_auto(
int i)
const {
return shift_auto(i) ;} ;
473 void set_lapse_hori(
double xx) {lapse_hori = xx;}
572 void init_kerr (
double masse,
double moment) ;
676 double precis,
double relax,
677 int bound_nn,
double lim_nn) ;
679 void equilibrium (
const Et_bin_nsbh& ns,
double precis,
double relax,
680 int bound_nn,
double lim_nn) ;
681 void update_metric (
const Et_bin_nsbh& ns) ;
691 double area()
const ;
732 double local_momentum()
const ;
786 { assert( (i==1) || (i==2) );
787 return *
holes[i-1] ;} ;
795 void set_pos_axe (
double) ;
804 { assert( (i==1) || (i==2) );
805 return *
holes[i-1] ;} ;
854 void solve_psi (
double precis,
double relax) ;
913 void coal (
double precis,
double relax,
int nbre_ome,
double search_ome,
914 double m1,
double m2,
const int sortie = 0) ;
952 Tbl linear_momentum_systeme_inf()
const ;
957 void solve_phi (
double precision,
double relax) ;
Bhole & set(int i)
Read/write of a component of the system.
void init_phi()
Initiates the system for a resolution using the logarithm of .
const Map_af & get_mp() const
Returns the mapping (readonly).
Tenseur_sym taij_auto
Part of generated by the hole.
Tenseur_sym tkij_tot
Total .
Map_af & mp
Affine mapping.
double get_rayon() const
Returns the radius of the horizon.
Tenseur grad_psi_tot
Total gradient of .
int rot_state
State of rotation.
Tensor handling *** DEPRECATED : use class Tensor instead ***.
Tenseur shift_auto
Part of generated by the hole.
void operator=(const Bhole_binaire &)
Affectation operator.
void fait_decouple()
Calculates {tt decouple} which is used to obtain tkij_auto by the formula : tkij_auto = decouple * tk...
double omega_local
local angular velocity
const Bhole & operator()(int i) const
Read only of a component of the system.
void fait_taij_auto()
Calculates the part of generated by shift_auto .
Cmp & set()
Read/write for a scalar (see also operator=(const Cmp&) ).
double rayon
Radius of the horizon in LORENE's units.
void fait_psi_comp(const Bhole &comp)
Imports the part of due to the companion hole comp .
double viriel() const
Computes the viriel error, that is the difference between the ADM and the Komar masses,...
double * boost
Lapse on the horizon.
Bhole hole2
Black hole two.
double get_omega() const
Returns the angular velocity.
Map_af & set_mp()
Read/write of the mapping.
void set_omega(double ome)
Sets the angular velocity to ome .
void fait_tkij()
Calculation af the extrinsic curvature tensor.
void solve_lapse(double precis, double relax)
Solves the equation for the lapse~:
double masse_komar_seul() const
Calculates the Komar mass of the black hole using : .
void solve_lapse_with_ns(double relax, int bound_nn, double lim_nn)
Solves the equation for N ~:
const Tenseur & get_psi_comp() const
Returns the part of generated by the companion hole.
const Tenseur & get_n_tot() const
Returns the total N .
Tenseur n_comp
Part of N generated by the companion hole.
void solve_shift_seul(double precis, double relax)
Solves the equation for ~:
double moment_systeme_hor() const
Calculates the angular momentum of the black hole using the formula on the horizon : where and den...
double get_regul() const
Returns the intensity of the regularisation on .
void solve_shift_with_ns(const Et_bin_nsbh &ns, double precis, double relax, int bound_nn, double lim_nn)
Solves the equation for ~:
void sauve(FILE *fich) const
Write on a file.
double get_omega_local() const
Returns the local angular velocity.
double get_rot_state() const
Returns the state of rotation.
const Tenseur & get_taij_tot() const
Returns the total .
double area() const
Computes the area of the throat.
const Tenseur & get_tkij_auto() const
Returns the part of generated by the hole.
Bhole hole1
Black hole one.
void solve_psi(double precis, double relax)
Solves the equation for the conformal factor~:
void set_omega(double ome)
Sets the orbital velocity to ome.
void operator=(const Bhole &)
Affectation.
const Tenseur & get_shift_auto() const
Returns the part of generated by the hole.
void solve_lapse_seul(double relax)
Solves the equation for N ~:
Neutron star - black hole binary system.
void solve_shift(double precis, double relax)
Solves the equation for the shift, using the Oohara-Nakarmure scheme~:
void init_bhole_binaire()
Initialisation of the system.
void solve_phi(double precision, double relax)
Solve the equation for the logarithm of .
void init_bhole_phi()
Initiates the black hole for a resolution with .
void set_rayon(double ray)
Sets the radius of the horizon to ray .
Tenseur n_auto
Part of N generated by the hole.
void init_bhole_seul()
Initiates for a single the black hole.
Class intended to describe tensors with a symmetry on the two last indices *** DEPRECATED : use class...
Component of a tensorial field *** DEPRECATED : use class Scalar instead ***.
void set_statiques(double precis, double relax)
Initialize the systeme to Misner Lindquist solution, that is solving for N and in the case .
const Tenseur & get_grad_psi_tot() const
Returns the gradient of .
const Tenseur & get_taij_comp() const
Returns the part of generated by the companion hole.
void set_omega_local(double ome)
Sets the local angular velocity to ome .
double * get_boost() const
Returns the cartesian components of the boost with respect to the reference frame.
Bhole(Map_af &mapping)
Standard constructor.
void coal(double precis, double relax, int nbre_ome, double search_ome, double m1, double m2, const int sortie=0)
Solves the equation for a particular angular velocity, the systeme being initialized to Misner-Lindqu...
void set_rot_state(int rotation)
Returns the state of rotation.
void fait_n_comp(const Bhole &comp)
Imports the part of N due to the companion hole comp .
void init_bhole()
Sets the values of the fields to :
void init_kerr(double masse, double moment)
Set the inital values to those of Kerr.
const Cmp get_decouple() const
Returns the function used to construct tkij_auto from tkij_tot .
void solve_psi_seul(double relax)
Solves the equation for ~:
~Bhole_binaire()
Destructor.
Tenseur_sym tkij_auto
Auto .
Cmp decouple
Function used to construct the part of generated by the hole from the total .
const Tenseur & get_psi_tot() const
Returns the total .
double adm_systeme() const
Calculates the ADM mass of the system using : .
double regul
Intensity of the correction on the shift vector.
Bhole * holes[2]
Array on the black holes.
Cmp return_psi_auto() const
Returns the part of generated by the hole as a cmp.
double masse_adm_seul() const
Calculates the ADM mass of the black hole using : .
void regularise_shift(const Tenseur &comp)
Corrects shift_auto in such a way that the total is equal to zero in the horizon,...
const Tenseur & get_tkij_tot() const
Returns the total .
double moment_seul_inf() const
Calculates the angular momentum of the black hole using the formula at infinity : where .
double moment_systeme_inf()
Calculates the angular momentum of the black hole using the formula at infinity : where .
const Tenseur & get_psi_auto() const
Returns the part of generated by the hole.
Bhole_binaire(Map_af &mp1, Map_af &mp2)
Standard constructor.
double viriel_seul() const
Computes the viriel error, that is the difference between the ADM and the Komar masses,...
double omega
Position of the axis of rotation.
Tenseur_sym taij_comp
Part of generated by the companion hole.
double distance_propre(const int nr=65) const
Calculation of the proper distance between the two spheres of inversion, along the x axis.
Cmp return_n_auto() const
Returns the part of N generated by the hole as a cmp.
double get_omega() const
Returns the angular velocity.
Tenseur psi_auto
Part of generated by the hole.
void regularise_seul()
Corrects the shift in the innermost shell, so that it remains and that equals zero on the horizon.
const Tenseur & get_n_auto() const
Returns the part of N generated by the hole.
void solve_psi_with_ns(double relax)
Solves the equation for ~:
double omega
Angular velocity in LORENE's units.
const Tenseur & get_taij_auto() const
Returns the part of generated by the hole.
const Tenseur & get_n_comp() const
Returns the part of N generated by the companion hole.
const Tenseur & get_grad_n_tot() const
Returns the gradient of N .
Binary black holes system.
double komar_systeme() const
Calculates the Komar mass of the system using : .
double moment_seul_hor() const
Calculates the angular momentum of the black hole using the formula on the horizon : where and H de...
void fait_tkij()
Calculates the total .
Tenseur psi_comp
Part of generated by the companion hole.
Tenseur_sym taij_tot
Total , which must be zero on the horizon of the regularisation on the shift has been done.
Tenseur grad_n_tot
Total gradient of N .