SEVN
Loading...
Searching...
No Matches
Qcrit_Hurley_Webbink_Shao Class Referenceabstract

#include <MTstability.h>

Inheritance diagram for Qcrit_Hurley_Webbink_Shao:
Qcrit_Hurley_Webbink Qcrit_Hurley MT_Qcrit MTstability

Public Member Functions

 Qcrit_Hurley_Webbink_Shao (bool reg=true)
 
std::string name () override
 
Qcrit_Hurley_Webbink_Shaoinstance () override
 
bool mt_unstable (Star *donor, Star *accretor, _UNUSED Binstar *binary) const override
 
double get_tshold (Star *donor, Star *accretor, _UNUSED Binstar *binary) const override
 
virtual double get_tshold (_UNUSED Star *donor, _UNUSED Star *accretor, _UNUSED Binstar *binary) const =0
 
double get (Star *donor, Star *accretor, _UNUSED Binstar *binary) const override
 
virtual double get (_UNUSED Star *donor, _UNUSED Star *accretor, _UNUSED Binstar *binary) const =0
 

Static Public Member Functions

static MTstabilityInstance (std::string const &name)
 

Static Public Attributes

static Qcrit_Hurley_Webbink_Shao _qcrit_hurley_webbink_shao
 
static Qcrit_Hurley_Webbink _qcrit_hurley_webbink
 
static Qcrit_Hurley _qcrit_hurley
 

Protected Member Functions

double qcrit (Star *donor, Star *accretor) const override
 
double qcrit_giant (Star *donor, _UNUSED Star *accretor) const override
 
virtual double q (Star *donor, Star *accretor) const
 
void Register (MTstability *ptr, const std::string &_name)
 

Protected Attributes

SevnLogging svlog
 

Static Private Member Functions

static std::map< std::string, MTstability * > & GetStaticMap ()
 
static std::vector< int > & GetUsed ()
 

Detailed Description

Same qcrit as Hurley_Webbink but with a special treatment when the accretor is a BH coming from Shao+21 paper (https://arxiv.org/pdf/2107.03565.pdf).

Constructor & Destructor Documentation

◆ Qcrit_Hurley_Webbink_Shao()

Qcrit_Hurley_Webbink_Shao::Qcrit_Hurley_Webbink_Shao ( bool  reg = true)
inline

Member Function Documentation

◆ get() [1/2]

virtual double MTstability::get ( _UNUSED Star donor,
_UNUSED Star accretor,
_UNUSED Binstar binary 
) const
pure virtualinherited

Return the value used to make the comparison for mass stability

Parameters
donorPointer to the donor star
accretorPointer to the accretor star
binaryPointer to the binary
Returns
Return the value used to make the comparison for mass stability

Implemented in MT_Stable, and MT_UnStable.

◆ get() [2/2]

double MT_Qcrit::get ( Star donor,
Star accretor,
_UNUSED Binstar binary 
) const
inlineoverrideinherited

Return q, the critical mass-ratio, if q (get)>qcrit (get_tshold), the mst is unstable

Parameters
donorPointer to the donor star
accretorPointer to the accretor star
binaryPointer to the binary
Returns
qcrit

◆ get_tshold() [1/2]

virtual double MTstability::get_tshold ( _UNUSED Star donor,
_UNUSED Star accretor,
_UNUSED Binstar binary 
) const
pure virtualinherited

Return the threshold value used to make the comparison for mass stability

Parameters
donorPointer to the donor star
accretorPointer to the accretor star
binaryPointer to the binary
Returns
Return the threshold value used to make the comparison for mass stability

Implemented in MT_Stable, and MT_UnStable.

◆ get_tshold() [2/2]

double MT_Qcrit::get_tshold ( Star donor,
Star accretor,
_UNUSED Binstar binary 
) const
inlineoverrideinherited

Return qcrit, the critical mass-ratio, if q (get)>qcrit (get_tshold), the mst is unstable

Parameters
donorPointer to the donor star
accretorPointer to the accretor star
binaryPointer to the binary
Returns
qcrit

◆ GetStaticMap()

static std::map< std::string, MTstability * > & MTstability::GetStaticMap ( )
inlinestaticprivateinherited

◆ GetUsed()

static std::vector< int > & MTstability::GetUsed ( )
inlinestaticprivateinherited

◆ instance()

Qcrit_Hurley_Webbink_Shao * Qcrit_Hurley_Webbink_Shao::instance ( )
inlineoverridevirtual

Reimplemented from Qcrit_Hurley_Webbink.

◆ Instance()

MTstability * MTstability::Instance ( std::string const &  name)
staticinherited

◆ mt_unstable()

bool MT_Qcrit::mt_unstable ( Star donor,
Star accretor,
_UNUSED Binstar binary 
) const
overridevirtualinherited

Check if the mass transfer is stable or not

Parameters
donorPointer to the donor star
accretorPointer to the accretor star
binaryPointer to the binary
Returns
true is the mass transfer is unstable, false otherwise

Implements MTstability.

◆ name()

std::string Qcrit_Hurley_Webbink_Shao::name ( )
inlineoverridevirtual

Reimplemented from Qcrit_Hurley_Webbink.

◆ q()

double MT_Qcrit::q ( Star donor,
Star accretor 
) const
protectedvirtualinherited

Mass ratio in the previuous step

Parameters
donorPointer to the donor star
accretorPointer to the accretor star
Returns
Mass ratio between donor and accretor in the previous step

◆ qcrit()

double Qcrit_Hurley_Webbink_Shao::qcrit ( Star donor,
Star accretor 
) const
overrideprotectedvirtual

Same qcrit from Hurley+02 with Webbink 1988 for giants, but with a special treatment accretion on a BH following the Shao+21 paper. In the Shao+21 paper (https://arxiv.org/pdf/2107.03565.pdf) there is a special treatment for the accretion on a BH. Therefore if the accretor is not a BH we use the classical qc from Hurley. In Shao+21 there is not really a constant value for qc, but there are a number of criteria that we have to take into account to estimate the stability of the mass transfer, then if the mass trasnfer is stable we use a very large value for qcrit otherwise a very small one.

Parameters
donorPointer to the donor star
accretorPointer to the accretor star
Returns
qcrit

Reimplemented from Qcrit_Hurley.

◆ qcrit_giant()

double Qcrit_Hurley_Webbink::qcrit_giant ( Star donor,
_UNUSED Star accretor 
) const
overrideprotectedvirtualinherited

Qcrit for giants (BSE phase 3,5,6) following qc = 0.362 + 1.0/(3.0*(1.0 - Mcore_fraction)) After Eq. 57 (not numbered) in Hurley+02 The equation comes from Webbink (1988) and it has been obtained from models for condensed polytropes.

Parameters
donor
accretor
Returns

Reimplemented from Qcrit_Hurley.

◆ Register()

void MTstability::Register ( MTstability ptr,
const std::string &  _name 
)
inlineprotectedinherited

Member Data Documentation

◆ _qcrit_hurley

Qcrit_Hurley Qcrit_Hurley::_qcrit_hurley
staticinherited

◆ _qcrit_hurley_webbink

Qcrit_Hurley_Webbink Qcrit_Hurley_Webbink::_qcrit_hurley_webbink
staticinherited

◆ _qcrit_hurley_webbink_shao

Qcrit_Hurley_Webbink_Shao Qcrit_Hurley_Webbink_Shao::_qcrit_hurley_webbink_shao
static

◆ svlog

SevnLogging MTstability::svlog
protectedinherited

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