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

#include <neutrinomassloss.h>

Inheritance diagram for NeutrinoMassLoss:
NMLDisabled NMLLattimer89

Public Member Functions

virtual std::string name () const
 
virtual NeutrinoMassLossinstance ()=0
 
virtual double apply (_UNUSED const double mremnant, _UNUSED Star *s) const =0
 
 NeutrinoMassLoss (_UNUSED bool reg=true)
 
virtual ~NeutrinoMassLoss ()=default
 
 NeutrinoMassLoss (const NeutrinoMassLoss &)=delete
 
NeutrinoMassLossoperator= (const NeutrinoMassLoss &)=delete
 
 NeutrinoMassLoss (NeutrinoMassLoss &&other)=delete
 
NeutrinoMassLossoperator= (NeutrinoMassLoss &&other)=delete
 

Static Public Member Functions

static NeutrinoMassLossInstance (std::string const &name)
 

Static Protected Member Functions

static void Register (NeutrinoMassLoss *ptr)
 

Protected Attributes

SevnLogging svlog
 

Static Private Member Functions

static std::map< std::string, NeutrinoMassLoss * > & GetStaticMap ()
 Option handling. More...
 
static std::vector< int > & GetUsed ()
 TODO we are never using this method, we should remove it. More...
 

Detailed Description

Base class for NeutrinoMassLoss

Constructor & Destructor Documentation

◆ NeutrinoMassLoss() [1/3]

NeutrinoMassLoss::NeutrinoMassLoss ( _UNUSED bool  reg = true)
inlineexplicit

◆ ~NeutrinoMassLoss()

virtual NeutrinoMassLoss::~NeutrinoMassLoss ( )
virtualdefault

◆ NeutrinoMassLoss() [2/3]

NeutrinoMassLoss::NeutrinoMassLoss ( const NeutrinoMassLoss )
delete

◆ NeutrinoMassLoss() [3/3]

NeutrinoMassLoss::NeutrinoMassLoss ( NeutrinoMassLoss &&  other)
delete

Member Function Documentation

◆ apply()

virtual double NeutrinoMassLoss::apply ( _UNUSED const double  mremnant,
_UNUSED Star s 
) const
pure virtual

Estimate the neutrino mass loss correction

Parameters
mremnantMass of the remnant before the pair instability correction
sPointer to the exploding star to which we want to apply the correction
Returns
Mass after the neutrino mass loss correction

◆ GetStaticMap()

static std::map< std::string, NeutrinoMassLoss * > & NeutrinoMassLoss::GetStaticMap ( )
inlinestaticprivate

Option handling.

◆ GetUsed()

static std::vector< int > & NeutrinoMassLoss::GetUsed ( )
inlinestaticprivate

TODO we are never using this method, we should remove it.

◆ instance()

virtual NeutrinoMassLoss * NeutrinoMassLoss::instance ( )
pure virtual

Create an instance of the class allocated on the heap

Returns
a pointer to a real instance of the class that is allocated on the heap

Implemented in NMLDisabled, and NMLLattimer89.

◆ Instance()

NeutrinoMassLoss * NeutrinoMassLoss::Instance ( std::string const &  name)
static

Generic method to call an instance based on name

Parameters
namename of the option
Returns
a pointer to a real instance of the class that is allocated on the heap

◆ name()

virtual std::string NeutrinoMassLoss::name ( ) const
inlinevirtual

Remember that each new proper NeutrinoMassLoss model has to have a public static class instance to define in static_main.h e.g. static MyModel _mymodel; (in the class) and MyModel MyModel::_mymodel; in static_main.h Methods that must be overridded in new models Name of the NeutrinoMassLoss model, this will be use at runtime to select the given model

Reimplemented in NMLDisabled, and NMLLattimer89.

◆ operator=() [1/2]

NeutrinoMassLoss & NeutrinoMassLoss::operator= ( const NeutrinoMassLoss )
delete

◆ operator=() [2/2]

NeutrinoMassLoss & NeutrinoMassLoss::operator= ( NeutrinoMassLoss &&  other)
delete

◆ Register()

void NeutrinoMassLoss::Register ( NeutrinoMassLoss ptr)
staticprotected

Register function, to be called inside the option constructor to register the given option

Member Data Documentation

◆ svlog

SevnLogging NeutrinoMassLoss::svlog
protected

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