bin_bhns_extr.h
/*
* Definition of Lorene class Bin_bhns_extr
*
*/
/*
* Copyright (c) 2004-2005 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
*
*/
#ifndef __BIN_BHNS_EXTR_H_
#define __BIN_BHNS_EXTR_H_
/*
* $Id: bin_bhns_extr.h,v 1.3 2014/10/13 08:52:32 j_novak Exp $
* $Log: bin_bhns_extr.h,v $
* Revision 1.3 2014/10/13 08:52:32 j_novak
* Lorene classes and functions now belong to the namespace Lorene.
*
* Revision 1.2 2005/02/28 23:02:51 k_taniguchi
* Addition of some codes for the conformally flat case
*
* Revision 1.1 2004/11/30 20:36:00 k_taniguchi
* *** empty log message ***
*
*
* $Header: /cvsroot/Lorene/C++/Include/bin_bhns_extr.h,v 1.3 2014/10/13 08:52:32 j_novak Exp $
*
*/
// Lorene header
#include "et_bin_bhns_extr.h"
#include "etoile.h"
namespace Lorene {
class Bin_bhns_extr {
// Data :
// -----
private:
const Base_vect_cart ref_triad ;
Et_bin_bhns_extr star ;
double omega ;
double separ ;
double mass_bh ;
// Derived data :
// ------------
private :
mutable double* p_xa_barycenter_extr ;
mutable double* p_ya_barycenter_extr ;
mutable double* p_mass_b_extr ;
// Constructors - Destructor
// -------------------------
public:
Bin_bhns_extr(Map& mp, int nzet, const Eos& eos,
bool irrot, bool relat, bool kerrs, bool multi) ;
Bin_bhns_extr(const Bin_bhns_extr& ) ;
Bin_bhns_extr(Map& mp, const Eos& eos, FILE* fich) ;
~Bin_bhns_extr() ;
// Memory management
// -----------------
private:
void del_deriv() const ;
void set_der_0x0() const ;
// Mutators / assignment
// ---------------------
public:
void operator=(const Bin_bhns_extr&) ;
Et_bin_bhns_extr& set_ns()
{ del_deriv() ;
return star ; } ;
double& set_omega() { return omega ; } ;
double& set_separ() { return separ ; } ;
double& set_mass_bh() { return mass_bh ; } ;
// Accessors
// ---------
public:
const Et_bin_bhns_extr& get_ns() const
{ return star ; } ;
double get_omega() const { return omega ; } ;
double get_separ() const { return separ ; } ;
double get_mass_bh() const { return mass_bh ; } ;
// Outputs
// -------
public:
void sauve(FILE* ) const ;
friend ostream& operator<<(ostream& , const Bin_bhns_extr& ) ;
void display_poly(ostream& ) const ;
private:
ostream& operator>>(ostream& ) const ;
// Computational routines
// ----------------------
public:
double xa_barycenter_extr() const ;
// Absolute coordinate Y of the barycenter of the baryon density
double ya_barycenter_extr() const ;
double mass_b_extr() const ;
void orbit_omega_ks(double fact_omeg_min, double fact_omeg_max) ;
void orbit_omega_cf(double fact_omeg_min, double fact_omeg_max) ;
void analytical_omega() ;
void analytical_shift() ;
};
ostream& operator<<(ostream& , const Bin_bhns_extr& ) ;
}
#endif
Lorene::Base_vect_cart
Cartesian vectorial bases (triads).
Definition base_vect.h:201
Lorene::Bin_bhns_extr
Class for computing a Black hole - Neutron star binary system with an extreme mass ratio.
Definition bin_bhns_extr.h:57
Lorene::Bin_bhns_extr::orbit_omega_ks
void orbit_omega_ks(double fact_omeg_min, double fact_omeg_max)
Computes the orbital angular velocity {\tt omega} in the Kerr-Schild background metric.
Definition bin_bhns_extr_orbit.C:70
Lorene::Bin_bhns_extr::ref_triad
const Base_vect_cart ref_triad
Cartesian triad of the absolute reference frame.
Definition bin_bhns_extr.h:63
Lorene::Bin_bhns_extr::p_ya_barycenter_extr
double * p_ya_barycenter_extr
Absolute coordinate Y of the barycenter of the baryon density in the Kerr-Schild background metric.
Definition bin_bhns_extr.h:91
Lorene::Bin_bhns_extr::get_ns
const Et_bin_bhns_extr & get_ns() const
Returns a reference to the neutron star.
Definition bin_bhns_extr.h:166
Lorene::Bin_bhns_extr::get_omega
double get_omega() const
Returns the orbital angular velocity [{\tt f_unit}].
Definition bin_bhns_extr.h:170
Lorene::Bin_bhns_extr::get_separ
double get_separ() const
Returns the coordinate separation of the binary system [{\tt r_unit}].
Definition bin_bhns_extr.h:175
Lorene::Bin_bhns_extr::set_ns
Et_bin_bhns_extr & set_ns()
Read/write of the neutron star.
Definition bin_bhns_extr.h:149
Lorene::Bin_bhns_extr::p_mass_b_extr
double * p_mass_b_extr
Baryon mass of the neutron star in the Kerr-Schild background metric or in the conformally flat one.
Definition bin_bhns_extr.h:96
Lorene::Bin_bhns_extr::ya_barycenter_extr
double ya_barycenter_extr() const
in the Kerr-Schild background metric
Definition bin_bhns_extr_global.C:140
Lorene::Bin_bhns_extr::mass_b_extr
double mass_b_extr() const
Baryon mass of the neutron star in the Kerr-Schild background metric or in the conformally flat.
Definition bin_bhns_extr_global.C:218
Lorene::Bin_bhns_extr::star
Et_bin_bhns_extr star
Neutron star.
Definition bin_bhns_extr.h:66
Lorene::Bin_bhns_extr::operator=
void operator=(const Bin_bhns_extr &)
Assignment to another Bin_bhns_extr.
Definition bin_bhns_extr.C:169
Lorene::Bin_bhns_extr::set_separ
double & set_separ()
Sets the orbital separation [{\tt r_unit}].
Definition bin_bhns_extr.h:157
Lorene::Bin_bhns_extr::Bin_bhns_extr
Bin_bhns_extr(Map &mp, int nzet, const Eos &eos, bool irrot, bool relat, bool kerrs, bool multi)
Standard constructor.
Definition bin_bhns_extr.C:85
Lorene::Bin_bhns_extr::set_omega
double & set_omega()
Sets the orbital angular velocity [{\tt f_unit}].
Definition bin_bhns_extr.h:154
Lorene::Bin_bhns_extr::set_der_0x0
void set_der_0x0() const
Sets to 0x0 all the pointers on derived quantities.
Definition bin_bhns_extr.C:155
Lorene::Bin_bhns_extr::separ
double separ
Absolute orbital separation between two centers of BH and NS.
Definition bin_bhns_extr.h:74
Lorene::Bin_bhns_extr::operator<<
friend ostream & operator<<(ostream &, const Bin_bhns_extr &)
Display.
Definition bin_bhns_extr.C:203
Lorene::Bin_bhns_extr::analytical_omega
void analytical_omega()
Sets the orbital angular velocity to some 2-PN analytical value (Keplerian value in the Newtonian cas...
Definition bin_bhns_extr_omegaana.C:55
Lorene::Bin_bhns_extr::orbit_omega_cf
void orbit_omega_cf(double fact_omeg_min, double fact_omeg_max)
Computes the orbital angular velocity {\tt omega} in the conformally flat background metric.
Definition bin_bhns_extr_orbit.C:322
Lorene::Bin_bhns_extr::mass_bh
double mass_bh
Gravitational mass of BH.
Definition bin_bhns_extr.h:77
Lorene::Bin_bhns_extr::xa_barycenter_extr
double xa_barycenter_extr() const
Absolute coordinate X of the barycenter of the baryon density in the Kerr-Schild background metric or...
Definition bin_bhns_extr_global.C:63
Lorene::Bin_bhns_extr::display_poly
void display_poly(ostream &) const
Display in polytropic units.
Definition bin_bhns_extr.C:323
Lorene::Bin_bhns_extr::analytical_shift
void analytical_shift()
Sets some analytical template for the shift vector (via the members {\tt w_shift} and {\tt khi_shift}...
Definition bin_bhns_extr_anashift.C:55
Lorene::Bin_bhns_extr::sauve
void sauve(FILE *) const
Save in a file.
Definition bin_bhns_extr.C:191
Lorene::Bin_bhns_extr::operator>>
ostream & operator>>(ostream &) const
Operator >> (function called by the operator <<).
Definition bin_bhns_extr.C:210
Lorene::Bin_bhns_extr::set_mass_bh
double & set_mass_bh()
Sets the gravitational mass of BH [{\tt m_unit}].
Definition bin_bhns_extr.h:160
Lorene::Bin_bhns_extr::~Bin_bhns_extr
~Bin_bhns_extr()
Destructor.
Definition bin_bhns_extr.C:136
Lorene::Bin_bhns_extr::omega
double omega
Angular velocity with respect to an asymptotically inertial observer.
Definition bin_bhns_extr.h:71
Lorene::Bin_bhns_extr::get_mass_bh
double get_mass_bh() const
Returns the gravitational mass of BH [{\tt m_unit}].
Definition bin_bhns_extr.h:178
Lorene::Bin_bhns_extr::p_xa_barycenter_extr
double * p_xa_barycenter_extr
Absolute coordinate X of the barycenter of the baryon density in the Kerr-Schild background metric or...
Definition bin_bhns_extr.h:86
Lorene::Bin_bhns_extr::del_deriv
void del_deriv() const
Deletes all the derived quantities.
Definition bin_bhns_extr.C:145
Lorene::Eos
Equation of state base class.
Definition eos.h:190
Lorene::Et_bin_bhns_extr
Class for a neutron star in black hole - neutron star binary systems.
Definition et_bin_bhns_extr.h:68
Lorene
Lorene prototypes.
Definition app_hor.h:64
Lorene::Map
Map(const Mg3d &)
Constructor from a multi-domain 3D grid.
Definition map.C:139