#include <Processes.h>
|
| typedef std::map< std::string, size_t > | _PrintMap |
| |
|
| void | Register (Process *_p, size_t *id, const std::string &_name) |
| |
| void | set (const size_t &id, const double &value) |
| |
| void | set_var (const size_t &starID, const size_t &propID, const double &value) |
| |
| void | set_msg (const std::string &str) |
| |
| void | set_V_to_0 () |
| |
◆ _PrintMap
◆ Mix()
| Mix::Mix |
( |
_UNUSED IO * |
_io = nullptr, |
|
|
bool |
reg = true |
|
) |
| |
|
inline |
◆ estimate_accreted_mass()
Public interface to allow the user to get information without actually evolving the systems. NOTICE: to be self-consistent the protected and private methods (such DA and DE should use these methods) when changing the properties of stars and binaries. This function should be an interface for the user to return the amount of mass accreted on the accretor given the binary, the donor and the available amount of mass DM. NOTICE: internally the accrete mass should use this method to be self-consistent
- Parameters
-
| DM | amount of mass available to be accreted in Msun. |
| donor | Pointer to the Star that is donating the mass |
| accretor | Pointer to the star that is receiving the mass |
| binstar | Pointer to the binary system hosting the donor and the accretore |
- Returns
- the amount of accreted mass
Reimplemented in WindaccretionHurley.
◆ evolve()
◆ get()
| double Process::get |
( |
const size_t & |
id | ) |
|
|
inlineinherited |
◆ get_event()
| double Process::get_event |
( |
| ) |
|
|
inlineinherited |
◆ get_msg()
| std::string & Process::get_msg |
( |
| ) |
|
|
inlineinherited |
◆ get_var()
| double Process::get_var |
( |
const size_t & |
starID, |
|
|
const size_t & |
propID |
|
) |
| |
|
inlineinherited |
◆ Instance() [1/2]
◆ Instance() [2/2]
| Mix * Mix::Instance |
( |
IO * |
_io | ) |
|
|
inlineoverride |
◆ is_mass_transfer_happening()
| bool Process::is_mass_transfer_happening |
( |
| ) |
|
|
inlineinherited |
Check if this process is changing the mass
- Returns
- false if the DV regarding the Mass of both stars is currently set to 0, true otherwise
◆ is_process_ongoing()
| virtual bool Process::is_process_ongoing |
( |
| ) |
const |
|
inlinevirtualinherited |
◆ is_special_evolution_alarm_on()
| bool Process::is_special_evolution_alarm_on |
( |
| ) |
const |
|
inlineinherited |
◆ log_message()
| std::string Mix::log_message |
( |
Binstar * |
binstar, |
|
|
Star * |
accretor, |
|
|
Star * |
donor |
|
) |
| |
|
static |
Log message print
- Parameters
-
| binstar | Pointer to binstar |
| accretor | Pointer the accretor (the star surviving the merger) |
| donor | Pointer to the donor (the star set to empty after the merger) |
- Returns
- A string message from utilities::log_print containing IDaccretor:Maccretor:MHEaccretor:MCOaccretor:Phaseaccretor:RemTypeaccretor:IDdonor:Mdono:MHEdonor:MCOdonor:Phasedonor:RemTypedonor @Notice: This function assume that whe it is called, the properties of the accretor have been already changed while the donor has not been set to empty yet.
◆ modify_EccentricityDV_by_a_factor()
| int Process::modify_EccentricityDV_by_a_factor |
( |
double |
factor | ) |
|
|
inlineinherited |
Correct the VB cell containing the Eccentricity variation
- Parameters
-
| factor | correction factor the new DE will be DE*factor. |
- Returns
- EXIT_SUCCESS
◆ modify_SemimajorDV_by_a_factor()
| int Process::modify_SemimajorDV_by_a_factor |
( |
double |
factor | ) |
|
|
inlineinherited |
Correct the VB cell containing the Semimajor variation
- Parameters
-
| factor | correction factor the new DA will be DA*factor. |
- Returns
- EXIT_SUCCESS
◆ name()
| std::string Mix::name |
( |
| ) |
|
|
inlineoverridevirtual |
◆ Register()
| void Process::Register |
( |
Process * |
_p, |
|
|
size_t * |
id, |
|
|
const std::string & |
_name |
|
) |
| |
|
inlineprotectedinherited |
◆ reset_event()
| void Process::reset_event |
( |
| ) |
|
|
inlineinherited |
◆ restore()
| void Process::restore |
( |
| ) |
|
|
inlineinherited |
◆ set()
| void Process::set |
( |
const size_t & |
id, |
|
|
const double & |
value |
|
) |
| |
|
inlineprotectedinherited |
◆ set_event()
| void Process::set_event |
( |
double |
code | ) |
|
|
inlineinherited |
◆ set_msg()
| void Process::set_msg |
( |
const std::string & |
str | ) |
|
|
inlineprotectedinherited |
◆ set_V_to_0()
| void Process::set_V_to_0 |
( |
| ) |
|
|
inlineprotectedinherited |
◆ set_var()
| void Process::set_var |
( |
const size_t & |
starID, |
|
|
const size_t & |
propID, |
|
|
const double & |
value |
|
) |
| |
|
inlineprotectedinherited |
◆ special_evolution_alarm_switch_off()
| void Process::special_evolution_alarm_switch_off |
( |
| ) |
|
|
inlineinherited |
◆ special_evolution_alarm_switch_on()
| void Process::special_evolution_alarm_switch_on |
( |
| ) |
|
|
inlineinherited |
Three methods to handle the private member special_evolution_alarm.
◆ special_evolve() [1/2]
◆ special_evolve() [2/2]
| int Mix::special_evolve |
( |
Binstar * |
binstar | ) |
|
|
override |
Choose the star that remains and the one that is set to empty
Let's mix
Jump to a new track
LOGPRINT AND EVENT SET
LAST STUFF
◆ _mix
◆ _uniform_real
| std::uniform_real_distribution<double> Process::_uniform_real |
|
protectedinherited |
◆ accretor
| Star* Process::accretor = nullptr |
|
protectedinherited |
◆ all
| std::vector< Process * > Process::all |
|
staticinherited |
◆ donor
| Star* Process::donor = nullptr |
|
protectedinherited |
◆ event_code
| double Process::event_code =-1 |
|
privateinherited |
◆ ID
◆ message
| std::string Process::message |
|
privateinherited |
◆ orb_change
◆ PrintMap
◆ size
Instruction for adding new property PROC 1- Add the size_t PROC::ID 2- Initialise the static (fake) instance PROC PROC::_proc. NB: take care of the order of initialisation. The processes will be evolved exactly in the same order in which they are initialised here Define: @size: total number of instances of Process and derived classes (both fake and real). @all: vector containing all the (pointers) to the processes. @PrintMap: map containing the pair (process_name, process_id) for output purpose. Note all and PrintMap are filled during the instantiation of the fake Processes (see below)
◆ special_evolution_alarm
| bool Process::special_evolution_alarm =false |
|
privateinherited |
Member used to check if a special evolution is required
◆ svlog
◆ VB
| std::vector<double> Process::VB |
|
privateinherited |
values of the properties of the binary system (e.g. processes change eccentricity, semimajor...)
◆ VS
| std::vector<std::vector<double> > Process::VS |
|
privateinherited |
variations of the single star parameters due to binary stellar evolution processes (e.g. mass, radius...)
The documentation for this class was generated from the following files:
- /Users/giulianoiorio/Documents/sevn_public/src/binstar/Processes.h
- /Users/giulianoiorio/Documents/sevn_public/src/binstar/Processes.cpp
- /Users/giulianoiorio/Documents/sevn_public/include/static_main.h