Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -1822,12 +1822,60 @@ both. If both are printed then the file will contain two columns with the same h
* - Data type:
- DOUBLE
* - COMPAS variable:
- BaseBinaryStar::m_SystemicVelocity
- BaseBinaryStar::m_SystemicVelocity.Magnitude()
* - Description:
- Post-supernova systemic (centre-of-mass) velocity (\ :math:`km s^{-1}`).
- Post-supernova systemic (centre-of-mass) speed (\ :math:`km s^{-1}`).
* - Header String:
- SystemicSpeed

.. flat-table::
:widths: 25 75 1 1
:header-rows: 0
:class: aligned-text

* - :cspan:`2` **SYSTEMIC_VELOCITY_X**
-
* - Data type:
- DOUBLE
* - COMPAS variable:
- BaseBinaryStar::m_SystemicVelocity.xValue()
* - Description:
- Post-supernova systemic (centre-of-mass) velocity in x-direction (\ :math:`km s^{-1}`).
* - Header String:
- SystemicVelocityX

.. flat-table::
:widths: 25 75 1 1
:header-rows: 0
:class: aligned-text

* - :cspan:`2` **SYSTEMIC_VELOCITY_Y**
-
* - Data type:
- DOUBLE
* - COMPAS variable:
- BaseBinaryStar::m_SystemicVelocity.yValue()
* - Description:
- Post-supernova systemic (centre-of-mass) velocity in y-direction (\ :math:`km s^{-1}`).
* - Header String:
- SystemicVelocityY

.. flat-table::
:widths: 25 75 1 1
:header-rows: 0
:class: aligned-text

* - :cspan:`2` **SYSTEMIC_VELOCITY_Z**
-
* - Data type:
- DOUBLE
* - COMPAS variable:
- BaseBinaryStar::m_SystemicVelocity.zValue()
* - Description:
- Post-supernova systemic (centre-of-mass) velocity in z-direction (\ :math:`km s^{-1}`).
* - Header String:
- SystemicVelocityZ

.. _binary-props-T:

:ref:`Back to Top <binary-props-top>`
Expand Down
3 changes: 3 additions & 0 deletions src/BaseBinaryStar.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -622,6 +622,9 @@ COMPAS_VARIABLE BaseBinaryStar::BinaryPropertyValue(const T_ANY_PROPERTY p_Prope
case BINARY_PROPERTY::SUPERNOVA_STATE: value = SN_State(); break;
case BINARY_PROPERTY::SYNCHRONIZATION_TIMESCALE: value = SynchronizationTimescale(); break;
case BINARY_PROPERTY::SYSTEMIC_SPEED: value = SystemicSpeed(); break;
case BINARY_PROPERTY::SYSTEMIC_VELOCITY_X: value = SystemicVelocityX(); break;
case BINARY_PROPERTY::SYSTEMIC_VELOCITY_Y: value = SystemicVelocityY(); break;
case BINARY_PROPERTY::SYSTEMIC_VELOCITY_Z: value = SystemicVelocityZ(); break;
case BINARY_PROPERTY::TIME: value = Time(); break;
case BINARY_PROPERTY::TIME_TO_COALESCENCE: value = TimeToCoalescence(); break;
case BINARY_PROPERTY::TOTAL_ANGULAR_MOMENTUM: value = TotalAngularMomentum(); break;
Expand Down
3 changes: 3 additions & 0 deletions src/BaseBinaryStar.h
Original file line number Diff line number Diff line change
Expand Up @@ -246,6 +246,9 @@ class BaseBinaryStar {
SN_STATE SN_State() const { return m_SupernovaState; }
double SynchronizationTimescale() const { return m_SynchronizationTimescale; }
double SystemicSpeed() const { return m_SystemicVelocity.Magnitude(); }
double SystemicVelocityX() const { return m_SystemicVelocity.xValue(); }
double SystemicVelocityY() const { return m_SystemicVelocity.yValue(); }
double SystemicVelocityZ() const { return m_SystemicVelocity.zValue(); }
double Time() const { return m_Time; }
double TimeToCoalescence() const { return m_TimeToCoalescence; }
double TotalAngularMomentum() const { return m_TotalAngularMomentum; }
Expand Down
9 changes: 9 additions & 0 deletions src/LogTypedefs.h
Original file line number Diff line number Diff line change
Expand Up @@ -567,6 +567,9 @@ enum class BINARY_PROPERTY: int {
SUPERNOVA_STATE,
SYNCHRONIZATION_TIMESCALE,
SYSTEMIC_SPEED,
SYSTEMIC_VELOCITY_X,
SYSTEMIC_VELOCITY_Y,
SYSTEMIC_VELOCITY_Z,
TIME,
TIME_TO_COALESCENCE,
TOTAL_ANGULAR_MOMENTUM,
Expand Down Expand Up @@ -688,6 +691,9 @@ const COMPASUnorderedMap<BINARY_PROPERTY, std::string> BINARY_PROPERTY_LABEL = {
{ BINARY_PROPERTY::SUPERNOVA_STATE, "SUPERNOVA_STATE" },
{ BINARY_PROPERTY::SYNCHRONIZATION_TIMESCALE, "SYNCHRONIZATION_TIMESCALE" },
{ BINARY_PROPERTY::SYSTEMIC_SPEED, "SYSTEMIC_SPEED" },
{ BINARY_PROPERTY::SYSTEMIC_VELOCITY_X, "SYSTEMIC_VELOCITY_X" },
{ BINARY_PROPERTY::SYSTEMIC_VELOCITY_Y, "SYSTEMIC_VELOCITY_Y" },
{ BINARY_PROPERTY::SYSTEMIC_VELOCITY_Z, "SYSTEMIC_VELOCITY_Z" },
{ BINARY_PROPERTY::TIME, "TIME" },
{ BINARY_PROPERTY::TIME_TO_COALESCENCE, "TIME_TO_COALESCENCE" },
{ BINARY_PROPERTY::TOTAL_ANGULAR_MOMENTUM, "TOTAL_ANGULAR_MOMENTUM" },
Expand Down Expand Up @@ -1449,6 +1455,9 @@ const std::map<BINARY_PROPERTY, PROPERTY_DETAILS> BINARY_PROPERTY_DETAIL = {
{ BINARY_PROPERTY::SUPERNOVA_STATE, { TYPENAME::SN_STATE, "Supernova_State", "State", 4, 1 }},
{ BINARY_PROPERTY::SYNCHRONIZATION_TIMESCALE, { TYPENAME::DOUBLE, "Tau_Sync", "Myr", 24, 15}},
{ BINARY_PROPERTY::SYSTEMIC_SPEED, { TYPENAME::DOUBLE, "SystemicSpeed", "kms^-1", 24, 15}},
{ BINARY_PROPERTY::SYSTEMIC_VELOCITY_X, { TYPENAME::DOUBLE, "SystemicVelocityX", "kms^-1", 24, 15}},
{ BINARY_PROPERTY::SYSTEMIC_VELOCITY_Y, { TYPENAME::DOUBLE, "SystemicVelocityY", "kms^-1", 24, 15}},
{ BINARY_PROPERTY::SYSTEMIC_VELOCITY_Z, { TYPENAME::DOUBLE, "SystemicVelocityZ", "kms^-1", 24, 15}},
{ BINARY_PROPERTY::TIME, { TYPENAME::DOUBLE, "Time", "Myr", 24, 15}},
{ BINARY_PROPERTY::TIME_TO_COALESCENCE, { TYPENAME::DOUBLE, "Coalescence_Time", "Myr", 24, 15}},
{ BINARY_PROPERTY::TOTAL_ANGULAR_MOMENTUM, { TYPENAME::DOUBLE, "Ang_Momentum_Total", "Msol AU^2 yr^-1", 24, 15}},
Expand Down
4 changes: 3 additions & 1 deletion src/changelog.h
Original file line number Diff line number Diff line change
Expand Up @@ -1399,6 +1399,8 @@
// - The nuclear timescale mass transfer rate is now set by the requirement that the star ends the time step just filling its Roche lobe (addresses issue #1285)
// - Fix an issue with the root finder for fitting into the RL that led to artificial failures to find a root
// - Fix issue (likely introduced in 03.08.00) with the accretor not gaining mass appropriately
const std::string VERSION_STRING = "03.09.00";
// 03.09.01 RTW - Nov 27, 2024 - Enhancement:
// - Added systemic velocity components x, y, and z to the output
const std::string VERSION_STRING = "03.09.01";

# endif // __changelog_h__