#include <piiorio22.h>
iorio22 option
Simple prescription presented in Iorio+22 (in prep.) based on the Farmer+19 results see:
Modification with respect to the standard
- apply_beforeSN: modify the preSN mass
- MCO<38 Msun or MHE>135 Msun -> not modifications
- MCO>=38 Msun and (MHE<=135 Msun)-> Mass=MHE=MCO
- apply_afterSN:
- MCO<38 Msun or MHE>135 Msun, no mass correction ->Core Collapse
- 38 Msun<=MCO<=60 Msun, no mass correction (but apply_beforeSN already set Mass=MHE=MCO) -> PPISN
- MCO>60 Msun and (MHE<135 Msun), set Mremnant to 0 -> PISN
◆ PIIorio22()
| PIIorio22::PIIorio22 |
( |
bool |
reg = true | ) |
|
|
explicit |
◆ apply_afterSN()
Main function to call to apply the pair instability after the SN explosion This function has to be called after the remnant mass has been defined. It apply a correction to the remnant mass (if needed) and set the SNtype The method of the base class just set Mremnant_after_pi=mremnant and SNType=CoreCollapse NOTICE: the default method does nothing, just initialise the PISNreturn with:
- Mremnant_after_pi=mremnant
- SNType=Lookup::SNExplosionType::CoreCollapse
- Parameters
-
| s | Pointer to the exploding star to which we want to apply the correction |
| mremnant | Mass of the remnant before the pair instability correction |
- Returns
- an Instance of the struct PISNeturn with only two members:
- Mremnant_after_pi, Mass of the remnant after the application of pi
- SNType: SN explosion type an object of the enum Lookup::SNExplosionType (ElectronCapture, CoreCollapse, PPISN,PISN)
Reimplemented from PairInstability.
◆ apply_beforeSN()
Methods that can be customized in new models: NOTICE these are the two methods that actually estimate the pisn corrections. By default they do nothing (indeed they are not changed in the disabled model) You may want to change one or both of them Main function to call to apply the pulsation pair instability before the SN explosion The function return a structure containing the modified preSN stellar mass(es) (total mass, MHE, MCO) due to the pulsation pair instability. This function should be called before estimating the final mass in the explosion method in the Supernova classes The method of the base class just copy the Mass,MHE and MCO NOTICE: the default method does nothing, just initialise the utilities::MassContainer with the current stellar mass properties
- Parameters
-
| s | Pointer to the exploding star |
- Returns
- an Instance of the struct PPISNMass with only three members:
- Mass_after_ppi, Mass of the star before the explosion due to the pulsation pair instability
- MHE_after_ppi: Mass of the HE core of the star before the explosion due to the pulsation pair instability
- MCO_after_ppi: Mass of the CO core of the star before the explosion due to the pulsation pair instability
Reimplemented from PairInstability.
◆ GetStaticMap()
| static std::map< std::string, PairInstability * > & PairInstability::GetStaticMap |
( |
| ) |
|
|
inlinestaticprivateinherited |
◆ GetUsed()
| static std::vector< int > & PairInstability::GetUsed |
( |
| ) |
|
|
inlinestaticprivateinherited |
TODO we are never using this method, we should remove it.
◆ instance()
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
Implements PairInstability.
Reimplemented in PIIorio22Limited.
◆ Instance()
Base class.
Generic method to call an instance based on name
- Parameters
-
- Returns
- a pointer to a real instance of the class that is allocated on the heap
◆ name()
| std::string PIIorio22::name |
( |
| ) |
const |
|
inlineoverridevirtual |
◆ ppisn_mass_limitation()
| virtual double PIIorio22::ppisn_mass_limitation |
( |
_UNUSED double |
Mremnant, |
|
|
_UNUSED Star * |
s |
|
) |
| const |
|
inlineprotectedvirtual |
Apply a mass limit to the BH mass after ppisn By default not mass limit is applied
- Parameters
-
| Mremnant | Remnant mass before the application of the mass limit |
| s | Pointer to the exploding star |
- Returns
- New value of the remnant mass after the application of the limits
Reimplemented in PIIorio22Limited.
◆ Register()
Register function, to be called inside the option constructor to register the given option
◆ _piiorio22
◆ svlog
The documentation for this class was generated from the following files:
- /Users/giulianoiorio/Documents/sevn_public/src/star/procs/pairinstability/piiorio22.h
- /Users/giulianoiorio/Documents/sevn_public/src/star/procs/pairinstability/piiorio22.cpp
- /Users/giulianoiorio/Documents/sevn_public/include/static_main.h