SEVN
Loading...
Searching...
No Matches
NSrem Class Reference

#include <remnant.h>

Inheritance diagram for NSrem:
Staremnant NSCCrem NSECrem

Public Member Functions

 NSrem (_UNUSED Star *s, double Mremnant, double time)
 
 NSrem (Star *s, double Mremnant)
 
double Radius (_UNUSED Star *s) const override
 
double Luminosity (_UNUSED Star *s) const override
 
double OmegaRem (_UNUSED Star *s) const override
 
double Inertia (_UNUSED Star *s) const override
 
double Bmag (_UNUSED Star *s) const override
 
double Xspin (_UNUSED Star *s) const override
 
double get_alpha () const
 
double get_salpha () const
 
double get_Bmin () const
 
double get_born_time () const
 
double get_Mremnant_at_born () const
 
virtual double Mass (_UNUSED Star *s) const
 
double get (Star *s, size_t ID) const
 
Lookup::Remnants get_remnant_type () const
 
double age (Star *s) const
 
double InertiaSphere (Star *s) const
 

Public Attributes

SevnLogging svlog
 

Static Public Attributes

static constexpr double Rns = 11*utilities::km_to_RSun
 

Protected Member Functions

double generate_uniform (double a, double b)
 
void default_initialiser (_UNUSED Star *s)
 
void print_log_message (_UNUSED Star *s)
 

Protected Attributes

std::uniform_real_distribution< double > root_distribution
 
Lookup::Remnants remnant_type
 

Private Attributes

double sinalpha
 
double B0
 
double Bmin
 
double Omega0
 
double tau_magnetic
 
double born_time
 
double Mremnant_at_born
 

Constructor & Destructor Documentation

◆ NSrem() [1/2]

NSrem::NSrem ( _UNUSED Star s,
double  Mremnant,
double  time 
)
inline

◆ NSrem() [2/2]

NSrem::NSrem ( Star s,
double  Mremnant 
)
inline

Member Function Documentation

◆ age()

double Staremnant::age ( Star s) const
inherited

Estimate the elapsed time from the remannt creation. It is estimated simply as Worldtime-creation time

Parameters
sPointe to the star
Returns
Age of the remnant in Myr.

◆ Bmag()

double NSrem::Bmag ( _UNUSED Star s) const
overridevirtual

Implements Staremnant.

◆ default_initialiser()

void NSrem::default_initialiser ( _UNUSED Star s)
protected

◆ generate_uniform()

double NSrem::generate_uniform ( double  a,
double  b 
)
inlineprotected

◆ get()

double Staremnant::get ( Star s,
size_t  ID 
) const
inherited

Get the property with given ID. This a wrapper and a dispatcher to get the results of the various class methods.

Parameters
sPointer to the star
IDID of the Property
Returns
The value of the property as estimated for the remnant or throw a not_implemented_error if the property is not available in the class

◆ get_alpha()

double NSrem::get_alpha ( ) const
inline

Returh the alpha angle, i.e. the angle between the rotation axis and the magnetic axis

Returns
alpha in radians

◆ get_Bmin()

double NSrem::get_Bmin ( ) const
inline

Return the value of Bmin

Returns
Bmin in Gauss

◆ get_born_time()

double Staremnant::get_born_time ( ) const
inlineinherited

◆ get_Mremnant_at_born()

double Staremnant::get_Mremnant_at_born ( ) const
inlineinherited

◆ get_remnant_type()

Lookup::Remnants Staremnant::get_remnant_type ( ) const
inlineinherited

◆ get_salpha()

double NSrem::get_salpha ( ) const
inline

Returh the sin of the alpha angle, i.e. the angle between the rotation axis and the magnetic axis

Returns
sin alpha

◆ Inertia()

double NSrem::Inertia ( _UNUSED Star s) const
overridevirtual

Implements Staremnant.

◆ InertiaSphere()

double Staremnant::InertiaSphere ( Star s) const
inherited

◆ Luminosity()

double NSrem::Luminosity ( _UNUSED Star s) const
overridevirtual

NS Luminosity, Eq. 93 Hurley 2000, LNS=0.02*M^(2/3)/(max(t,0.1)^2) from Eq. 93 using Hurley, 2000

Parameters
sPointer to the star
Returns
Neutrpm star luminosity

Implements Staremnant.

◆ Mass()

double Staremnant::Mass ( _UNUSED Star s) const
virtualinherited

◆ OmegaRem()

double NSrem::OmegaRem ( _UNUSED Star s) const
overridevirtual

Implements Staremnant.

◆ print_log_message()

void NSrem::print_log_message ( _UNUSED Star s)
protected

◆ Radius()

double NSrem::Radius ( _UNUSED Star s) const
inlineoverridevirtual

Implements Staremnant.

◆ Xspin()

double NSrem::Xspin ( _UNUSED Star s) const
inlineoverridevirtual

Implements Staremnant.

Member Data Documentation

◆ B0

double NSrem::B0
private

◆ Bmin

double NSrem::Bmin
private

◆ born_time

double Staremnant::born_time
privateinherited

Time of remnant creation

◆ Mremnant_at_born

double Staremnant::Mremnant_at_born
privateinherited

Mass of the remnant at the moment of the creation

◆ Omega0

double NSrem::Omega0
private

◆ remnant_type

Lookup::Remnants Staremnant::remnant_type
protectedinherited

◆ Rns

constexpr double NSrem::Rns = 11*utilities::km_to_RSun
staticconstexpr

◆ root_distribution

std::uniform_real_distribution<double> NSrem::root_distribution
protected

◆ sinalpha

double NSrem::sinalpha
private

◆ svlog

SevnLogging Staremnant::svlog
inherited

◆ tau_magnetic

double NSrem::tau_magnetic
private

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