Inertia.
More...
#include <property.h>
|
| typedef std::map< std::string, size_t > | _PrintMap |
| |
◆ _PrintMap
◆ Inertia()
| Inertia::Inertia |
( |
bool |
reg = true | ) |
|
|
inline |
◆ amiderived()
| bool OptionalTableProperty::amiderived |
( |
| ) |
|
|
inlineoverridevirtualinherited |
Check if this is a derived. A property is defined dervied if it is estimated by the combination of other properties and it is not the derivative of a property.
- Returns
- true if it is derived, false if it is not (overrided in the derived properties)
Reimplemented from Property.
◆ are_table_loaded()
| bool TableProperty::are_table_loaded |
( |
| ) |
const |
|
inlineoverridevirtualinherited |
◆ changed_track()
◆ check_and_set_rzams()
◆ copy_V_from()
| virtual void Property::copy_V_from |
( |
Property * |
p | ) |
|
|
inlinevirtualinherited |
◆ correct_interpolation_errors()
| virtual void Property::correct_interpolation_errors |
( |
_UNUSED Star * |
s | ) |
|
|
inlinevirtualinherited |
◆ correct_interpolation_errors_real()
| void Inertia::correct_interpolation_errors_real |
( |
_UNUSED Star * |
s | ) |
|
|
overridevirtual |
If we are following the tracks, it could happen that after a change of tracks the Inertia evolve to 0 in this case we just set a minimum value of 0.1
- Parameters
-
Reimplemented from Property.
◆ estimate_Inertia_DeMink()
| double Inertia::estimate_Inertia_DeMink |
( |
_UNUSED Star * |
s | ) |
|
|
protected |
Estimate the inertia following the formalism in DeMink+13 (Appendix A, A1,A2,A3)
- Parameters
-
- Returns
- the inertia in Msun Rsun^2
◆ estimate_Inertia_homogeneous_sphere() [1/2]
| double Inertia::estimate_Inertia_homogeneous_sphere |
( |
_UNUSED Star * |
s | ) |
|
|
protected |
Estimate the Inertia of a star assuming that the star is an homogeneous sphere
- Parameters
-
- Returns
- the inertia in Msun Rsun^2
◆ estimate_Inertia_homogeneous_sphere() [2/2]
| double Inertia::estimate_Inertia_homogeneous_sphere |
( |
double |
Mass, |
|
|
double |
Outer_radius, |
|
|
double |
Inner_radius = 0. |
|
) |
| |
Estimate the Inertia considering an homogeneous sphere considering the presence of a cavity
- Parameters
-
| Mass | total mass of the sphere |
| Outer_radius | total radius of the sphere |
| Inner_radius | sphere of the inner cavity |
- Returns
- the inertia in Msun Rsun^2
◆ estimate_Inertia_homogeneous_sphere_wcore()
| double Inertia::estimate_Inertia_homogeneous_sphere_wcore |
( |
_UNUSED Star * |
s | ) |
|
|
protected |
Estimate the Inertia of a star assuming that the star is composed by two elements, an inner homogeneous sphere (the core) and an outer homogeneous sphere with a cavity (the envelope).
- Parameters
-
- Returns
- the inertia in Msun Rsun^2
◆ estimate_Inertia_Hurley()
| double Inertia::estimate_Inertia_Hurley |
( |
_UNUSED Star * |
s | ) |
|
|
protected |
Estimate the inertia following the formalism in Hurley+00 (Eq. 109)
- Parameters
-
- Returns
- the inertia in Msun Rsun^2
◆ estimate_logInertia()
| double Inertia::estimate_logInertia |
( |
_UNUSED Star * |
s | ) |
|
|
protected |
Estimate the log10 of the Inertia assuming a uniform sphere
- Parameters
-
- Returns
- log10 (2/5 MR^2)
◆ evolve() [1/2]
Reimplemented in MHE, MCO, RHE, RCO, Localtime, Worldtime, Timestep, NextOutput, Radius, Phase, Bmag, OmegaRem, RemnantType, dMcumul_binary, dMcumul_RLO, dMcumulacc_wind, AngMomSpin, dMdt, dMHEdt, dMCOdt, dRdt, Temperature, Rs, OmegaSpin, Spin, Xspin, JIT_Property, and NSsalpha.
◆ evolve() [2/2]
| void OptionalTableProperty::evolve |
( |
Star * |
s | ) |
|
|
inlineoverrideinherited |
◆ evolve_empty()
| virtual void Property::evolve_empty |
( |
_UNUSED Star * |
s | ) |
|
|
inlinevirtualinherited |
◆ evolve_fake()
| void Property::evolve_fake |
( |
Star * |
s | ) |
|
|
virtualinherited |
Set v0=v
Move to new value in the interpolating track
Find new values at times t for the interpolatring tracks using linear interpolation
Find the interpolating z value, M1*v1 + M2*v2
Find the final interpolated value, v=Z1*v1 + Z2*v2
Reimplemented in Radius.
◆ evolve_nakedco()
◆ evolve_real()
| virtual void Property::evolve_real |
( |
| ) |
|
|
inlinevirtualinherited |
◆ evolve_remnant()
◆ evolve_without_table()
|
|
inlineoverrideprotectedvirtual |
◆ get()
◆ get_0()
◆ get_0_fk()
| double Inertia::get_0_fk |
( |
_UNUSED const Star * |
s = NULL | ) |
|
|
inlineoverridevirtual |
◆ get_0_fk_raw()
| double Property::get_0_fk_raw |
( |
_UNUSED const Star * |
s = NULL | ) |
const |
|
inlineinherited |
◆ get_0_raw()
| double Property::get_0_raw |
( |
_UNUSED const Star * |
s = NULL | ) |
const |
|
inlineinherited |
◆ get_fk()
| double Inertia::get_fk |
( |
_UNUSED const Star * |
s = NULL | ) |
|
|
inlineoverridevirtual |
Here Star is optional, because it is needed only by property that have to estimate V on the fly. Notice that const Star*s means that inside the function we can only call method that we are sure will not change the Star s.
Reimplemented from Property.
◆ get_fk_raw()
| double Property::get_fk_raw |
( |
_UNUSED const Star * |
s = NULL | ) |
const |
|
inlineinherited |
◆ get_raw()
| double Property::get_raw |
( |
_UNUSED const Star * |
s = NULL | ) |
const |
|
inlineinherited |
◆ get_Vlast()
| virtual double Property::get_Vlast |
( |
_UNUSED const Star * |
s | ) |
const |
|
inlinevirtualinherited |
Get the value of the property expected at the end of the evolution (before becoming a remnant). It is based on the last values of the tables.
- Parameters
-
- Returns
- The value of the property at the end of the evolution estimated as the weighted mean of the interpolating track values
◆ get_wm()
| double * Property::get_wm |
( |
| ) |
|
|
inlineinherited |
◆ get_wz()
| double * Property::get_wz |
( |
| ) |
|
|
inlineinherited |
◆ init()
| virtual void Property::init |
( |
_UNUSED const double & |
a | ) |
|
|
inlinevirtualinherited |
◆ Instance()
◆ name()
| std::string Inertia::name |
( |
| ) |
const |
|
inlineoverridevirtual |
◆ Register()
| void Property::Register |
( |
Property * |
_p, |
|
|
size_t * |
id, |
|
|
const std::string & |
_name |
|
) |
| |
|
inlineprotectedinherited |
◆ reset()
| virtual void Property::reset |
( |
| ) |
|
|
inlinevirtualinherited |
◆ restore()
| virtual void Property::restore |
( |
| ) |
|
|
inlinevirtualinherited |
◆ resynch() [1/2]
| virtual void Property::resynch |
( |
_UNUSED const double & |
dt, |
|
|
_UNUSED bool |
set0 = true |
|
) |
| |
|
inlinevirtualinherited |
◆ resynch() [2/2]
◆ safety_check()
| virtual void Property::safety_check |
( |
| ) |
|
|
inlineprotectedvirtualinherited |
◆ set()
| virtual void Property::set |
( |
const double & |
a | ) |
|
|
inlineprotectedvirtualinherited |
◆ set_0()
| virtual void Property::set_0 |
( |
const double & |
a | ) |
|
|
inlineprotectedvirtualinherited |
◆ set_0_fk()
| void Property::set_0_fk |
( |
const double & |
a | ) |
|
|
inlineprotectedinherited |
◆ set_empty()
◆ set_empty_in_bse()
Set empty method to be used during BSE evolution
- Parameters
-
| s | pointer to Star |
| b | pointer to Binary |
Reimplemented in Timestep.
◆ set_fk()
| void Property::set_fk |
( |
const double & |
a | ) |
|
|
inlineprotectedinherited |
◆ set_refpointers()
◆ set_remnant()
◆ set_remnant_in_bse()
Set remnant method to be used during BSE evolution
- Parameters
-
| s | pointer to Star |
| b | pointer to Binary |
Reimplemented in Timestep.
◆ set_VBIN()
| void Property::set_VBIN |
( |
const size_t & |
id, |
|
|
const double & |
a |
|
) |
| |
|
inlineprotectedinherited |
◆ set_w()
◆ set_wM() [1/2]
|
|
protectedvirtualinherited |
◆ set_wM() [2/2]
| void Inertia::set_wM |
( |
Star * |
s | ) |
|
|
overrideprotected |
◆ set_wM_linear()
Simple linear interpolation in Mass.
- Parameters
-
◆ set_wM_log()
◆ set_wM_rational()
| void TableProperty::set_wM_rational |
( |
_UNUSED Star * |
s | ) |
|
|
protectedinherited |
Linear interpolation with an additional weighting correction
- Parameters
-
◆ set_wZ()
|
|
protectedvirtualinherited |
◆ size()
| static size_t Property::size |
( |
| ) |
|
|
inlinestaticinherited |
◆ special_evolve()
| virtual void Property::special_evolve |
( |
_UNUSED Star * |
s | ) |
|
|
inlinevirtualinherited |
◆ synch()
| virtual void OptionalTableProperty::synch |
( |
| ) |
|
|
inlineoverridevirtualinherited |
◆ synch_v_value_without_table()
| void OptionalTableProperty::synch_v_value_without_table |
( |
| ) |
|
|
inlineprotectedinherited |
◆ TabID() [1/2]
| virtual size_t Property::TabID |
( |
| ) |
|
|
inlinevirtualinherited |
◆ TabID() [2/2]
| size_t Inertia::TabID |
( |
| ) |
const |
|
inlineoverridevirtual |
◆ units()
| virtual std::string Property::units |
( |
| ) |
|
|
inlinevirtualinherited |
Reimplemented in Bmag, OmegaRem, Time_object, R_object, Mass_obejct, AngMomSpin, dMdt, dMHEdt, dMCOdt, dRdt, Temperature, Rs, OmegaSpin, Spin, Lambda, Ebind, PhaseBSE, Zams, Zmet, dMRLOdt, dMaccwinddt, NSsalpha, and Plife.
◆ update_derived() [1/2]
| virtual void Property::update_derived |
( |
_UNUSED Star * |
s | ) |
|
|
inlinevirtualinherited |
This function can be called to update the value of V in derived proprties (without setting V0) It is empty for all the others. This is needed since after a binary evolution, the derived properties have to be updated without setting V0 (same as update_from_binary).
Reimplemented in JIT_Property.
◆ update_derived() [2/2]
| void OptionalTableProperty::update_derived |
( |
Star * |
s | ) |
|
|
overrideinherited |
If not following a table, these are derived properties, so they have to follow the update_derived function same as derived properties
◆ update_from_binary()
◆ update_variation()
| virtual void Property::update_variation |
( |
| ) |
|
|
inlinevirtualinherited |
◆ _inertia
◆ _size
| size_t Property::_size = 0 |
|
staticprotectedinherited |
Instruction for adding new property PROP 1- Add the size_t PROP::ID 2- Initialise the static (fake) instance PROP PROP::_prop. NB: take care of the order of initilisation. The properies will be evolved exactly in the same order in which they are initialised here Define: @size: total number of instances of Property and derived classes (both fake and real). @all: vector containing all the (pointers) to the Property. @PrintMap: map containing the pair (Property_name, Property_id) for output purpose. Note all and PrintMap are filled during the instantiation of the fake Processes (see below)
◆ all
◆ Dvalue
◆ ID
◆ inertia_func
| double(Inertia::* Inertia::inertia_func) (_UNUSED Star *s) = nullptr |
|
private |
◆ interpolating_values
| double Property::interpolating_values[4] |
|
protectedinherited |
◆ PrintMap
◆ spin_core
| double Inertia::spin_core |
|
private |
◆ svlog
◆ table_loaded
| bool TableProperty::table_loaded =false |
|
protectedinherited |
◆ V0
◆ val_in
| double* Property::val_in[4] |
|
inherited |
◆ val_ref
| double* Property::val_ref[4] |
|
inherited |
◆ value
◆ value0
◆ VBIN
| vector<double> Property::VBIN |
|
protectedinherited |
◆ wM
◆ wZ
The documentation for this class was generated from the following files:
- /Users/giulianoiorio/Documents/sevn_public/src/star/property.h
- /Users/giulianoiorio/Documents/sevn_public/src/star/property.cpp
- /Users/giulianoiorio/Documents/sevn_public/include/static_main.h