Skip to content

Conversation

@veome22
Copy link
Collaborator

@veome22 veome22 commented Jan 30, 2026

Major Updates:

  1. Introduced a new tidal prescription called ZAHN1977, based mostly on Zahn (1977), although this should be mostly the same as Hurley+ (2002). I wrote this option for my own internal testing, so please feel free to point out any code inefficiencies/ bad documentation.
  2. Updated the KAPIL2025 prescription to allow for pseudo-synchronization based on Eq. (45) of Hut (1981), which should also help with this.
  3. Renamed KAPIL2025 to KAPIL2026.

Minor updates:
Changes to the dynamical tides equations in KAPIL2026.

@veome22 veome22 self-assigned this Jan 30, 2026
@github-actions
Copy link

✅ COMPAS Build Successful!

Item Value
Commit 92ccde2
Logs View workflow

Detailed Evolution Plot

Click to view evolution plot


Generated by COMPAS CI

@github-actions
Copy link

✅ COMPAS Build Successful!

Item Value
Commit d7629b4
Logs View workflow

Detailed Evolution Plot

Click to view evolution plot


Generated by COMPAS CI

Copy link
Collaborator

@ilyamandel ilyamandel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, @veome22 !

This will be a fairly quick skim, because I am about to go offline for 10 days. I trust that @jeffriley will review once he is back from his work trip to Italy, so I am marking this as comments, not review -- once @jeffriley approves, I am happy. ;-) The non-cosmetic ones are starred.

  • changelog.h -- you need to actually change the version number on the last line :-), and then re-create the YAML file with that version (currently, it claims it was created with 3.28.00).

KAPIL2025->KAPIL2026 -- I guess our methods will be a bit wrong, but we can live with that ;-)

  • I am quite worried about updating previous values in BaseBinaryStar.cpp, lines 2800-2804. Normally, these previous values are meant to hold the values from the previous time step. Now, we may be updating these multiple times per time step, which could create problems elsewhere. Jeff will be fixing this in his "state vector" PR, but can we avoid putting this in here for now, because it might cause unanticipated side effects? If you need to store pre-tide values to be used just a few lines later in the same function (lines 2811-2815), save them as local variables.

*Speaking of lines 2811-2815 in BaseBinaryStar.cpp, I don't quite understand what you are doing here and why. Aren't the equations above intended to conserve angular momentum? If they don't, shouldn't you be computing the angular momentum of the orbit using conservation laws, rather than just capping it (what if the eccentricity is too small to conserve total angular momentum rather than too large)? Also, I can't easily see what lines 2811-2815 are doing; can you write a mathematical equation in the comments above, or refer to one from the literature?

There seem to be multiple commented out equations in the Zahn tidal prescription (BaseBinaryStar.cpp, lines 2876 onwards). Some appear to be pseudo-code and are presumably there as explanations, but others just seem like code that was commented out (say, lines 2918-2920). Please check and remove any equations that were just temporary code.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants