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. More...
 
 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. More...
 
void operator= (const Bin_ns_bh &)
 Assignment to another Bin_ns_bh. More...
 
Et_bin_nsbhset_ns ()
 Read/write of the neutron star. More...
 
Bholeset_bh ()
 Read/write of the black hole. More...
 
void set_omega (double)
 Sets the orbital angular velocity [{ f_unit}]. More...
 
void set_x_axe (double)
 Sets the absolute coordinate X of the rotation axis [{ r_unit}]. More...
 
const Et_bin_nsbhget_ns () const
 Returns a constant reference to the neutron star. More...
 
const Bholeget_bh () const
 Returns a constant reference to the black hole. More...
 
double get_omega () const
 Returns the orbital velocity. More...
 
double get_x_axe () const
 Returns a constant reference to the black hole. More...
 
double separation () const
 Return the separation. More...
 
virtual void sauve (FILE *) const
 
void fait_decouple ()
 Function used to compute the { decouple} functions for both the NS and the BH. More...
 
void fait_tkij (int bound_nn=-1, double lim_nn=0)
 Computation of the extrinsic curvature tensor for both { star} and { bhole}. More...
 
void orbit_omega (double fact_omeg_min, double fact_omeg_max)
 Computes the orbital angular velocity { omega}. More...
 
void analytical_omega ()
 Sets the orbital angular velocity of the neutron star to some 2-PN analytical value. More...
 
void analytical_shift ()
 Sets some analytical template for the shift vector (via the members { w_shift} and { khi_shift} of the neutron star. More...
 
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. More...
 
void set_der_0x0 () const
 Sets to { 0x0} all the pointers on derived quantities. More...
 
ostream & operator>> (ostream &) const
 Operator >> (function called by the operator <<). More...
 

Private Attributes

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

Friends

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

Detailed Description

Neutron star - black hole binary system.

The class { Bin_ns_bh} is composed of an object of class { Et_bin_nsbh} and an object of class { 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/2]

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 { star} will be defined
nzetNumber of domains occupied by { star}
eosEquation of state of { star}
irrot_nsshould be { true} if { star} is irrotational, { false} if { star} is corotating
mp_bhMapping on which { bhole} will be defined

Definition at line 107 of file bin_ns_bh.C.

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

◆ Bin_ns_bh() [2/2]

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 { sauve(FILE* )}).

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

Definition at line 134 of file bin_ns_bh.C.

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

Member Function Documentation

◆ analytical_omega()

void Lorene::Bin_ns_bh::analytical_omega ( )

◆ analytical_shift()

◆ 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().

◆ fait_decouple()

void Lorene::Bin_ns_bh::fait_decouple ( )

Function used to compute the { decouple} functions for both the NS and the BH.

Definition at line 119 of file bin_ns_bh_kij.C.

References Lorene::Cmp::allocate_all(), Lorene::cos(), Lorene::pow(), Lorene::Cmp::set(), Lorene::sin(), and Lorene::Cmp::std_base_scal().

◆ 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 { star} and { bhole}.

Definition at line 257 of file bin_ns_bh_kij.C.

References Lorene::Tenseur::dec2_dzpuis(), Lorene::max(), Lorene::norme(), Lorene::Etoile_bin::ref_triad, and Lorene::Tenseur::set_etat_qcq().

◆ 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 analytical_omega(), analytical_shift(), fait_decouple(), fait_tkij(), operator<<, operator>>(), orbit_omega(), separation(), and x_axe.

◆ 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 { omega}.

Parameters
fact_omeg_min[input] : determines the lower bound of the interval { [omega_min, omega_max]} in which { omega} is searched by { omega_min = fact_omeg_min * omega}, where { omega} is the previous value of the angular velocity (typical value : { fact_omeg_min = 0.5})
fact_omeg_max[input] : determines the higher bound of the interval { [omega_min, omega_max]} in which { omega} is searched by { omega_max = fact_omeg_max * omega}, where { omega} is the previous value of the angular velocity. (typical value : { 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::Param::get_double(), Lorene::Param::get_int(), 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().

◆ separation()

double Lorene::Bin_ns_bh::separation ( ) const

Return the separation.

Definition at line 235 of file bin_ns_bh.C.

References Lorene::Map_et::adapt(), Lorene::Param::add_double(), Lorene::Param::add_int(), Lorene::Param::add_int_mod(), Lorene::Param::add_tbl(), Lorene::Tenseur::allocate_all(), Lorene::Et_bin_nsbh::confpsi_auto, Lorene::Map::convert_absolute(), Lorene::Etoile_bin::d_psi, Lorene::Cmp::dec2_dzpuis(), Lorene::Etoile::ent, Lorene::Etoile::equation_of_state(), Lorene::exp(), Lorene::Etoile_bin::fait_shift_auto(), fait_tkij(), Lorene::fwrite_be(), Lorene::Etoile::get_beta_auto(), Lorene::Etoile::get_logn_auto(), Lorene::Map::get_mg(), Lorene::Bhole::get_mp(), Lorene::Etoile::get_mp(), Lorene::Et_bin_nsbh::get_n_auto(), Lorene::Bhole::get_n_auto(), Lorene::Mg3d::get_np(), Lorene::Mg3d::get_nr(), Lorene::Mg3d::get_nt(), Lorene::Mg3d::get_nzone(), Lorene::Map::get_ori_x(), Lorene::Bhole::get_psi_auto(), Lorene::Bhole::get_rayon(), Lorene::Map::get_rot_phi(), hole, Lorene::Map_et::homothetie(), Lorene::Map_af::homothetie_interne(), Lorene::Etoile_bin::hydro_euler(), Lorene::Cmp::import(), Lorene::Etoile_bin::is_irrotational(), Lorene::Etoile_bin::khi_shift, Lorene::Et_bin_nsbh::kinematics(), Lorene::Bhole::mp, Lorene::Etoile::mp, Lorene::Et_bin_nsbh::n_auto, Lorene::Bhole::n_auto, Lorene::Etoile::nzet, omega, Lorene::Map::phi, Lorene::Bhole::psi_auto, Lorene::Map::r, Lorene::Cmp::raccord(), Lorene::Bhole::rayon, Lorene::Map_radial::reevaluate_symy(), Lorene::Et_bin_nsbh::sauve(), Lorene::Bhole::sauve(), Lorene::Tbl::set(), Lorene::Tenseur::set(), Lorene::Cmp::set(), Lorene::Et_bin_nsbh::set_confpsi_auto(), Lorene::Tbl::set_etat_qcq(), Lorene::Bhole::set_mp(), Lorene::Etoile::set_mp(), Lorene::Et_bin_nsbh::set_n_auto(), set_omega(), Lorene::Map::set_ori(), Lorene::Bhole::set_rayon(), Lorene::Map::set_rot_phi(), Lorene::Tenseur::set_std_base(), Lorene::Bhole::shift_auto, Lorene::sqrt(), star, Lorene::Cmp::std_base_scal(), Lorene::Map::tet, Lorene::Et_bin_nsbh::update_metric(), Lorene::Et_bin_nsbh::update_metric_der_comp(), Lorene::Map::val_r(), Lorene::Map_af::val_r(), Lorene::Map_et::val_r(), Lorene::Etoile_bin::w_shift, x_axe, Lorene::Map::xa, Lorene::Map::ya, and Lorene::Map::za.

◆ 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(), hole, set_omega(), and set_x_axe().

◆ set_der_0x0()

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

Sets to { 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 [{ 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 [{ r_unit}].

Definition at line 227 of file bin_ns_bh.C.

References del_deriv(), and x_axe.

Friends And Related Function 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: