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) ;
const Tenseur & get_grad_psi_tot() const
Returns the gradient of .
void fait_tkij()
Calculation af the extrinsic curvature tensor.
void solve_phi(double precision, double relax)
Solve the equation for the logarithm of .
double moment_seul_hor() const
Calculates the angular momentum of the black hole using the formula on the horizon : where and H de...
Component of a tensorial field *** DEPRECATED : use class Scalar instead ***.
const Tenseur & get_tkij_auto() const
Returns the part of generated by the hole.
void init_kerr(double masse, double moment)
Set the inital values to those of Kerr.
Neutron star - black hole binary system.
Tenseur grad_n_tot
Total gradient of N .
Bhole * holes[2]
Array on the black holes.
void solve_shift(double precis, double relax)
Solves the equation for the shift, using the Oohara-Nakarmure scheme~: using the current for the ...
Class intended to describe tensors with a symmetry on the two last indices *** DEPRECATED : use class...
~Bhole_binaire()
Destructor.
const Tenseur & get_psi_comp() const
Returns the part of generated by the companion hole.
void set_rayon(double ray)
Sets the radius of the horizon to ray .
Bhole(Map_af &mapping)
Standard constructor.
void init_bhole_seul()
Initiates for a single the black hole.
const Tenseur & get_psi_tot() const
Returns the total .
void solve_psi_seul(double relax)
Solves the equation for ~: with the condition that on the horizon, where f is the value of on the ...
void solve_lapse_seul(double relax)
Solves the equation for N ~: with the condition that N =0 on the horizon.
const Tenseur & get_n_auto() const
Returns the part of N generated by the hole.
double moment_systeme_inf()
Calculates the angular momentum of the black hole using the formula at infinity : where ...
const Tenseur & get_tkij_tot() const
Returns the total .
double omega_local
local angular velocity
const Tenseur & get_n_comp() const
Returns the part of N generated by the companion hole.
Tenseur psi_auto
Part of generated by the hole.
const Tenseur & get_n_tot() const
Returns the total N .
Tenseur n_comp
Part of N generated by the companion hole.
void init_bhole_binaire()
Initialisation of the system.
Tenseur_sym taij_tot
Total , which must be zero on the horizon of the regularisation on the shift has been done...
void fait_taij_auto()
Calculates the part of generated by shift_auto .
Tenseur_sym taij_auto
Part of generated by the hole.
void fait_n_comp(const Bhole &comp)
Imports the part of N due to the companion hole comp .
double distance_propre(const int nr=65) const
Calculation of the proper distance between the two spheres of inversion, along the x axis...
double get_omega() const
Returns the angular velocity.
double * get_boost() const
Returns the cartesian components of the boost with respect to the reference frame.
Tenseur shift_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_psi_auto() const
Returns the part of generated by the hole.
Tenseur_sym taij_comp
Part of generated by the companion hole.
void operator=(const Bhole_binaire &)
Affectation operator.
const Tenseur & get_taij_comp() const
Returns the part of generated by the companion hole.
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...
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, calculated by the asymptotic behaviours of respectively and N .
void solve_shift_seul(double precis, double relax)
Solves the equation for ~: with on the horizon, being the boost and .
double get_regul() const
Returns the intensity of the regularisation on .
void solve_psi_with_ns(double relax)
Solves the equation for ~: with the condition that on the horizon, where f is the value of on th...
Cmp & set()
Read/write for a scalar (see also operator=(const Cmp&) ).
double omega
Position of the axis of rotation.
void fait_tkij()
Calculates the total .
void regularise_shift(const Tenseur &comp)
Corrects shift_auto in such a way that the total is equal to zero in the horizon, which should ensure the regularity of , using the stored values of the boost and the angular velocity.
Tenseur psi_comp
Part of generated by the companion hole.
void init_bhole_phi()
Initiates the black hole for a resolution with .
double area() const
Computes the area of the throat.
Map_af & mp
Affine mapping.
Bhole hole1
Black hole one.
void init_phi()
Initiates the system for a resolution using the logarithm of .
void set_omega_local(double ome)
Sets the local angular velocity to ome .
double get_rayon() const
Returns the radius of the horizon.
void solve_psi(double precis, double relax)
Solves the equation for the conformal factor~: The fields are the total values excpet those with s...
double viriel() const
Computes the viriel error, that is the difference between the ADM and the Komar masses, calculated by the asymptotic behaviours of respectively and N .
const Tenseur & get_taij_auto() const
Returns the part of generated by the hole.
void sauve(FILE *fich) const
Write on a file.
double rayon
Radius of the horizon in LORENE's units.
Tenseur_sym tkij_auto
Auto .
const Tenseur & get_grad_n_tot() const
Returns the gradient of N .
double * boost
Lapse on the horizon.
const Map_af & get_mp() const
Returns the mapping (readonly).
double get_rot_state() const
Returns the state of rotation.
void fait_decouple()
Calculates {tt decouple} which is used to obtain tkij_auto by the formula : tkij_auto = decouple * tk...
void set_statiques(double precis, double relax)
Initialize the systeme to Misner Lindquist solution, that is solving for N and in the case ...
Tenseur_sym tkij_tot
Total .
Tenseur grad_psi_tot
Total gradient of .
void set_omega(double ome)
Sets the orbital velocity to ome.
void solve_lapse(double precis, double relax)
Solves the equation for the lapse~: The fields are the total values excpet those with subscript ...
const Cmp get_decouple() const
Returns the function used to construct tkij_auto from tkij_tot .
void init_bhole()
Sets the values of the fields to :
void operator=(const Bhole &)
Affectation.
double get_omega() const
Returns the angular velocity.
Map_af & set_mp()
Read/write of the mapping.
const Bhole & operator()(int i) const
Read only of a component of the system.
int rot_state
State of rotation.
Cmp decouple
Function used to construct the part of generated by the hole from the total .
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 ~: with the condition that N =0 on the horizon.
void set_omega(double ome)
Sets the angular velocity to ome .
void solve_shift_with_ns(const Et_bin_nsbh &ns, double precis, double relax, int bound_nn, double lim_nn)
Solves the equation for ~: with on the horizon, being the boost and .
const Tenseur & get_taij_tot() const
Returns the total .
double moment_systeme_hor() const
Calculates the angular momentum of the black hole using the formula on the horizon : where and den...
double adm_systeme() const
Calculates the ADM mass of the system using : .
const Tenseur & get_shift_auto() const
Returns the part of generated by the hole.
double komar_systeme() const
Calculates the Komar mass of the system using : .
Cmp return_psi_auto() const
Returns the part of generated by the hole as a cmp.
double omega
Angular velocity in LORENE's units.
double moment_seul_inf() const
Calculates the angular momentum of the black hole using the formula at infinity : where ...
Binary black holes system.
Tenseur n_auto
Part of N generated by the hole.
void fait_psi_comp(const Bhole &comp)
Imports the part of due to the companion hole comp .
double masse_adm_seul() const
Calculates the ADM mass of the black hole using : .
void set_rot_state(int rotation)
Returns the state of rotation.
Cmp return_n_auto() const
Returns the part of N generated by the hole as a cmp.
Tensor handling *** DEPRECATED : use class Tensor instead ***.
double regul
Intensity of the correction on the shift vector.
double get_omega_local() const
Returns the local angular velocity.
Bhole hole2
Black hole two.