LORENE
Lorene::Bin_ns_bh Class Reference

Neutron star - black hole binary system. More...

#include <bin_ns_bh.h>

Public Member Functions

 Bin_ns_bh (Map &mp_ns, int nzet, const Eos &eos, bool irrot_ns, Map_af &mp_bh)
 Standard constructor.
 
 Bin_ns_bh (const Bin_ns_bh &)
 
 Bin_ns_bh (Map &mp_ns, const Eos &eos, Map_af &mp_bh, FILE *fich, bool old=false)
 Copy constructor.
 
void operator= (const Bin_ns_bh &)
 Assignment to another Bin_ns_bh.
 
Et_bin_nsbhset_ns ()
 Read/write of the neutron star.
 
Bholeset_bh ()
 Read/write of the black hole.
 
void set_omega (double)
 Sets the orbital angular velocity [{\tt f_unit}].
 
void set_x_axe (double)
 Sets the absolute coordinate X of the rotation axis [{\tt r_unit}].
 
const Et_bin_nsbhget_ns () const
 Returns a constant reference to the neutron star.
 
const Bholeget_bh () const
 Returns a constant reference to the black hole.
 
double get_omega () const
 Returns the orbital velocity.
 
double get_x_axe () const
 Returns a constant reference to the black hole.
 
double separation () const
 Return the separation.
 
virtual void sauve (FILE *) const
 
void fait_decouple ()
 Function used to compute the {\tt decouple} functions for both the NS and the BH.
 
void fait_tkij (int bound_nn=-1, double lim_nn=0)
 Computation of the extrinsic curvature tensor for both {\tt star} and {\tt bhole}.
 
void orbit_omega (double fact_omeg_min, double fact_omeg_max)
 Computes the orbital angular velocity {\tt omega}.
 
void analytical_omega ()
 Sets the orbital angular velocity of the neutron star to some 2-PN analytical value.
 
void analytical_shift ()
 Sets some analytical template for the shift vector (via the members {\tt w_shift} and {\tt khi_shift} of the neutron star.
 
void init_auto ()
 
void affecte (const Bin_ns_bh &)
 
void pseudo_misner (int &, int, double, double, int, double)
 
double adm_systeme () const
 
double adm_systeme_volume () const
 
double komar_systeme () const
 
double moment_systeme_inf () const
 
double moment_systeme_hor () const
 
double smarr () const
 
Tbl linear_momentum_systeme_inf () const
 
double viriel () const
 
void coal (double, double, int, int, double, double, double, double, double, double, double, const int, int, double)
 
double distance_propre_axe_bh (const int nr=65) const
 
double distance_propre_axe_ns (const int nr=65) const
 

Private Member Functions

void del_deriv () const
 Destructor.
 
void set_der_0x0 () const
 Sets to {\tt 0x0} all the pointers on derived quantities.
 
ostreamoperator>> (ostream &) const
 Operator >> (function called by the operator <<).
 

Private Attributes

const Base_vect_cart ref_triad
 Cartesian triad of the absolute reference frame.
 
Et_bin_nsbh star
 The neutron star.
 
Bhole hole
 The black hole.
 
double omega
 Angular velocity with respect to an asymptotically inertial observer.
 
double x_axe
 Absolute X coordinate of the rotation axis.
 
doublep_mass_adm
 Total ADM mass of the system.
 
doublep_mass_kom
 Total Komar mass of the system.
 
Tblp_angu_mom
 Total angular momentum of the system.
 
doublep_total_ener
 Total energy of the system.
 
doublep_virial
 Virial theorem error.
 
doublep_virial_gb
 Virial theorem error by E.Gourgoulhon and S.Bonazzola.
 
doublep_virial_fus
 Virial theorem error by J.L.Friedman, K.Uryu, and M.Shibata.
 
doublep_ham_constr
 Relative error on the Hamiltonian constraint.
 
Tblp_mom_constr
 Relative error on the momentum constraint.
 

Friends

ostreamoperator<< (ostream &, const Bin_ns_bh &)
 Save in a file.
 

Detailed Description

Neutron star - black hole binary system.

The class {\tt Bin_ns_bh} is composed of an object of class {\tt Et_bin_nsbh} and an object of class {\tt Bhole}.

Version
#$Id: bin_ns_bh.h,v 1.19 2014/10/13 08:52:32 j_novak Exp $#

Definition at line 117 of file bin_ns_bh.h.

Constructor & Destructor Documentation

◆ Bin_ns_bh() [1/3]

Lorene::Bin_ns_bh::Bin_ns_bh ( Map mp_ns,
int  nzet,
const Eos eos,
bool  irrot_ns,
Map_af mp_bh 
)

Standard constructor.

Parameters
mp_nsMapping on which {\tt star} will be defined
nzetNumber of domains occupied by {\tt star}
eosEquation of state of {\tt star}
irrot_nsshould be {\tt true} if {\tt star} is irrotational, {\tt false} if {\tt star} is corotating
mp_bhMapping on which {\tt bhole} will be defined

Definition at line 107 of file bin_ns_bh.C.

References set_der_0x0().

◆ Bin_ns_bh() [2/3]

Lorene::Bin_ns_bh::Bin_ns_bh ( const Bin_ns_bh bibi)

Definition at line 121 of file bin_ns_bh.C.

◆ Bin_ns_bh() [3/3]

Lorene::Bin_ns_bh::Bin_ns_bh ( Map mp_ns,
const Eos eos,
Map_af mp_bh,
FILE fich,
bool  old = false 
)

Copy constructor.

Constructor from a file (see {\tt sauve(FILE* )}).

Parameters
mp_nsMapping on which {\tt star} will be defined
eosEquation of state of {\tt star}
mp_bhMapping on which {\tt star} will be defined
fichinput file (must have been created by the function {\tt sauve})

Definition at line 134 of file bin_ns_bh.C.

References Lorene::fread_be(), Lorene::Bhole::get_omega(), hole, omega, set_der_0x0(), and x_axe.

◆ ~Bin_ns_bh()

Lorene::Bin_ns_bh::~Bin_ns_bh ( )
virtual

Definition at line 153 of file bin_ns_bh.C.

Member Function Documentation

◆ adm_systeme()

double Lorene::Bin_ns_bh::adm_systeme ( ) const

Definition at line 78 of file bin_ns_bh_glob.C.

◆ adm_systeme_volume()

double Lorene::Bin_ns_bh::adm_systeme_volume ( ) const

Definition at line 91 of file bin_ns_bh_glob.C.

◆ affecte()

void Lorene::Bin_ns_bh::affecte ( const Bin_ns_bh so)

Definition at line 321 of file bin_ns_bh.C.

◆ analytical_omega()

void Lorene::Bin_ns_bh::analytical_omega ( )

◆ analytical_shift()

◆ coal()

void Lorene::Bin_ns_bh::coal ( double  precis,
double  relax,
int  itemax_equil,
int  itemax_mp_et,
double  ent_c_init,
double  seuil_masses,
double  dist,
double  m1,
double  m2,
double  spin_cible,
double  scale_ome_local,
const int  sortie,
int  bound_nn,
double  lim_nn 
)

Definition at line 82 of file bin_ns_bh_coal.C.

◆ del_deriv()

void Lorene::Bin_ns_bh::del_deriv ( ) const
private

Destructor.

Deletes all the derived quantities

Definition at line 163 of file bin_ns_bh.C.

References p_angu_mom, p_ham_constr, p_mass_adm, p_mass_kom, p_mom_constr, p_total_ener, p_virial, p_virial_fus, p_virial_gb, and set_der_0x0().

◆ distance_propre_axe_bh()

double Lorene::Bin_ns_bh::distance_propre_axe_bh ( const int  nr = 65) const

Definition at line 393 of file bin_ns_bh_glob.C.

◆ distance_propre_axe_ns()

double Lorene::Bin_ns_bh::distance_propre_axe_ns ( const int  nr = 65) const

Definition at line 447 of file bin_ns_bh_glob.C.

◆ fait_decouple()

◆ fait_tkij()

void Lorene::Bin_ns_bh::fait_tkij ( int  bound_nn = -1,
double  lim_nn = 0 
)

Computation of the extrinsic curvature tensor for both {\tt star} and {\tt bhole}.

Definition at line 257 of file bin_ns_bh_kij.C.

References Lorene::Etoile::a_car, Lorene::Etoile_bin::akcar_auto, Lorene::Etoile_bin::akcar_comp, Lorene::Cmp::allocate_all(), Lorene::Tenseur::change_triad(), Lorene::Map::convert_absolute(), Lorene::Cmp::dec2_dzpuis(), Lorene::Tenseur::dec2_dzpuis(), Lorene::Bhole::decouple, Lorene::Etoile_bin::decouple, fait_decouple(), Lorene::Bhole::fait_taij_auto(), Lorene::Et_bin_nsbh::fait_taij_auto(), Lorene::Map_af::get_alpha(), Lorene::Map_af::get_beta(), Lorene::Map::get_bvect_cart(), Lorene::Tenseur::get_etat(), Lorene::Map::get_mg(), Lorene::Etoile::get_nnn(), Lorene::Mg3d::get_np(), Lorene::Mg3d::get_nr(), Lorene::Mg3d::get_nt(), Lorene::Mg3d::get_nzone(), Lorene::Bhole::get_shift_auto(), Lorene::Etoile_bin::get_shift_auto(), Lorene::Tenseur::get_triad(), hole, Lorene::Cmp::import(), Lorene::Cmp::import_asymy(), Lorene::Cmp::import_symy(), Lorene::Tenseur::inc2_dzpuis(), Lorene::max(), Lorene::Bhole::mp, Lorene::Etoile::mp, Lorene::Bhole::n_auto, Lorene::Bhole::n_comp, Lorene::Bhole::n_tot, Lorene::Etoile::nnn, Lorene::norme(), Lorene::Cmp::raccord(), ref_triad, Lorene::Etoile_bin::ref_triad, Lorene::Tenseur::set(), Lorene::Cmp::set(), Lorene::Tenseur::set_etat_qcq(), Lorene::Tenseur::set_etat_zero(), Lorene::Tenseur::set_std_base(), Lorene::Tenseur::set_triad(), star, Lorene::Bhole::taij_auto, Lorene::Et_bin_nsbh::taij_auto, Lorene::Bhole::taij_comp, Lorene::Bhole::taij_tot, Lorene::Et_bin_nsbh::taij_tot, Lorene::Bhole::tkij_auto, Lorene::Et_bin_nsbh::tkij_auto, Lorene::Etoile_bin::tkij_comp, Lorene::Bhole::tkij_tot, Lorene::Et_bin_nsbh::tkij_tot, Lorene::Cmp::val_point(), Lorene::Map::xa, Lorene::Map::ya, and Lorene::Map::za.

◆ get_bh()

const Bhole & Lorene::Bin_ns_bh::get_bh ( ) const
inline

Returns a constant reference to the black hole.

Definition at line 245 of file bin_ns_bh.h.

References hole.

◆ get_ns()

const Et_bin_nsbh & Lorene::Bin_ns_bh::get_ns ( ) const
inline

Returns a constant reference to the neutron star.

Definition at line 241 of file bin_ns_bh.h.

References star.

◆ get_omega()

double Lorene::Bin_ns_bh::get_omega ( ) const
inline

Returns the orbital velocity.

Definition at line 249 of file bin_ns_bh.h.

References omega.

◆ get_x_axe()

double Lorene::Bin_ns_bh::get_x_axe ( ) const
inline

Returns a constant reference to the black hole.

Definition at line 253 of file bin_ns_bh.h.

References x_axe.

◆ init_auto()

void Lorene::Bin_ns_bh::init_auto ( )

Definition at line 257 of file bin_ns_bh.C.

◆ komar_systeme()

double Lorene::Bin_ns_bh::komar_systeme ( ) const

Definition at line 152 of file bin_ns_bh_glob.C.

◆ linear_momentum_systeme_inf()

Tbl Lorene::Bin_ns_bh::linear_momentum_systeme_inf ( ) const

Definition at line 311 of file bin_ns_bh_glob.C.

◆ moment_systeme_hor()

double Lorene::Bin_ns_bh::moment_systeme_hor ( ) const

Definition at line 263 of file bin_ns_bh_glob.C.

◆ moment_systeme_inf()

double Lorene::Bin_ns_bh::moment_systeme_inf ( ) const

Definition at line 173 of file bin_ns_bh_glob.C.

◆ operator=()

void Lorene::Bin_ns_bh::operator= ( const Bin_ns_bh bibi)

Assignment to another Bin_ns_bh.

Definition at line 202 of file bin_ns_bh.C.

References del_deriv(), hole, omega, ref_triad, star, and x_axe.

◆ operator>>()

ostream & Lorene::Bin_ns_bh::operator>> ( ostream ost) const
private

Operator >> (function called by the operator <<).

Definition at line 481 of file bin_ns_bh.C.

References Lorene::Bhole::get_mp(), Lorene::Bhole::get_rayon(), hole, omega, star, and x_axe.

◆ orbit_omega()

void Lorene::Bin_ns_bh::orbit_omega ( double  fact_omeg_min,
double  fact_omeg_max 
)

Computes the orbital angular velocity {\tt omega}.

Parameters
fact_omeg_min[input] : determines the lower bound of the interval {\tt [omega_min, omega_max]} in which {\tt omega} is searched by {\tt omega_min = fact_omeg_min * omega}, where {\tt omega} is the previous value of the angular velocity (typical value : {\tt fact_omeg_min = 0.5})
fact_omeg_max[input] : determines the higher bound of the interval {\tt [omega_min, omega_max]} in which {\tt omega} is searched by {\tt omega_max = fact_omeg_max * omega}, where {\tt omega} is the previous value of the angular velocity. (typical value : {\tt fact_omeg_max = 1.5})

Definition at line 75 of file bin_ns_bh_orbit.C.

References Lorene::Param::add_double(), Lorene::Param::add_int(), Lorene::Cmp::dsdx(), Lorene::flat_scalar_prod(), Lorene::Et_bin_nsbh::get_confpsi(), Lorene::Etoile_bin::get_loggam(), Lorene::Etoile::get_mp(), Lorene::Etoile::get_nnn(), Lorene::Map::get_rot_phi(), Lorene::Etoile::get_shift(), Lorene::Tbl::get_taille(), Lorene::Etoile::is_relativistic(), Lorene::log(), omega, Lorene::pow(), star, Lorene::Cmp::std_base_scal(), x_axe, Lorene::zero_list(), and Lorene::zerosec_b().

◆ pseudo_misner()

void Lorene::Bin_ns_bh::pseudo_misner ( int ite,
int  itemax,
double  relax,
double  precis,
int  bound_nn,
double  lim_nn 
)

Definition at line 59 of file pseudo_misner.C.

◆ sauve()

void Lorene::Bin_ns_bh::sauve ( FILE fich) const
virtual

Definition at line 246 of file bin_ns_bh.C.

◆ separation()

double Lorene::Bin_ns_bh::separation ( ) const

Return the separation.

Definition at line 235 of file bin_ns_bh.C.

References Lorene::Map::get_ori_x(), hole, Lorene::Bhole::mp, Lorene::Etoile::mp, and star.

◆ set_bh()

Bhole & Lorene::Bin_ns_bh::set_bh ( )
inline

Read/write of the black hole.

Definition at line 227 of file bin_ns_bh.h.

References del_deriv(), and hole.

◆ set_der_0x0()

void Lorene::Bin_ns_bh::set_der_0x0 ( ) const
private

Sets to {\tt 0x0} all the pointers on derived quantities.

Definition at line 181 of file bin_ns_bh.C.

References p_angu_mom, p_ham_constr, p_mass_adm, p_mass_kom, p_mom_constr, p_total_ener, p_virial, p_virial_fus, and p_virial_gb.

◆ set_ns()

Et_bin_nsbh & Lorene::Bin_ns_bh::set_ns ( )
inline

Read/write of the neutron star.

Definition at line 222 of file bin_ns_bh.h.

References del_deriv(), and star.

◆ set_omega()

void Lorene::Bin_ns_bh::set_omega ( double  omega_i)

Sets the orbital angular velocity [{\tt f_unit}].

Definition at line 218 of file bin_ns_bh.C.

References del_deriv(), hole, omega, and Lorene::Bhole::set_omega().

◆ set_x_axe()

void Lorene::Bin_ns_bh::set_x_axe ( double  x_axe_i)

Sets the absolute coordinate X of the rotation axis [{\tt r_unit}].

Definition at line 227 of file bin_ns_bh.C.

References del_deriv(), and x_axe.

◆ smarr()

double Lorene::Bin_ns_bh::smarr ( ) const

Definition at line 501 of file bin_ns_bh_glob.C.

◆ viriel()

double Lorene::Bin_ns_bh::viriel ( ) const

Definition at line 166 of file bin_ns_bh_glob.C.

Friends And Related Symbol Documentation

◆ operator<<

ostream & operator<< ( ostream ost,
const Bin_ns_bh bibi 
)
friend

Save in a file.

Display

Definition at line 475 of file bin_ns_bh.C.

Member Data Documentation

◆ hole

Bhole Lorene::Bin_ns_bh::hole
private

The black hole.

Definition at line 131 of file bin_ns_bh.h.

◆ omega

double Lorene::Bin_ns_bh::omega
private

Angular velocity with respect to an asymptotically inertial observer.

Definition at line 136 of file bin_ns_bh.h.

◆ p_angu_mom

Tbl* Lorene::Bin_ns_bh::p_angu_mom
mutableprivate

Total angular momentum of the system.

Definition at line 152 of file bin_ns_bh.h.

◆ p_ham_constr

double* Lorene::Bin_ns_bh::p_ham_constr
mutableprivate

Relative error on the Hamiltonian constraint.

Definition at line 167 of file bin_ns_bh.h.

◆ p_mass_adm

double* Lorene::Bin_ns_bh::p_mass_adm
mutableprivate

Total ADM mass of the system.

Definition at line 146 of file bin_ns_bh.h.

◆ p_mass_kom

double* Lorene::Bin_ns_bh::p_mass_kom
mutableprivate

Total Komar mass of the system.

Definition at line 149 of file bin_ns_bh.h.

◆ p_mom_constr

Tbl* Lorene::Bin_ns_bh::p_mom_constr
mutableprivate

Relative error on the momentum constraint.

Definition at line 170 of file bin_ns_bh.h.

◆ p_total_ener

double* Lorene::Bin_ns_bh::p_total_ener
mutableprivate

Total energy of the system.

Definition at line 155 of file bin_ns_bh.h.

◆ p_virial

double* Lorene::Bin_ns_bh::p_virial
mutableprivate

Virial theorem error.

Definition at line 158 of file bin_ns_bh.h.

◆ p_virial_fus

double* Lorene::Bin_ns_bh::p_virial_fus
mutableprivate

Virial theorem error by J.L.Friedman, K.Uryu, and M.Shibata.

Definition at line 164 of file bin_ns_bh.h.

◆ p_virial_gb

double* Lorene::Bin_ns_bh::p_virial_gb
mutableprivate

Virial theorem error by E.Gourgoulhon and S.Bonazzola.

Definition at line 161 of file bin_ns_bh.h.

◆ ref_triad

const Base_vect_cart Lorene::Bin_ns_bh::ref_triad
private

Cartesian triad of the absolute reference frame.

Definition at line 125 of file bin_ns_bh.h.

◆ star

Et_bin_nsbh Lorene::Bin_ns_bh::star
private

The neutron star.

Definition at line 128 of file bin_ns_bh.h.

◆ x_axe

double Lorene::Bin_ns_bh::x_axe
private

Absolute X coordinate of the rotation axis.

Definition at line 140 of file bin_ns_bh.h.


The documentation for this class was generated from the following files: