Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Modelling motions of binary star system #4095

Draft
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

henrysky
Copy link
Contributor

I have added support to model motions of binary star system as seen on the sky and their 6D astrometry (RA, DEC, PMRA, PMDEC, PLX, RV).

So far I have only manually added Alpha Centauri A/B, Sirius A/B and 61 Cygni A/B. In order to model a binary system we need:

  • $e$ - Eccentricity
  • $a$ - Semi-major axis
  • $\Omega$ - Longitude of the ascending node
  • $\omega$ - Argument of periapsis
  • $i$ - Inclination
  • $P$ - Period
  • $T$ - Periastron epoch
  • Barycenter RA/DEC, PMRA/PMDEC, PLX, RV
  • Barycenter data epoch
  • HIP or Gaia ID of primary and secondary stars
  • Primary and secondary star masses

At least for Alpha Centauri A/B and Sirius A/B, the motion on the sky as well as radial velocity matched really well to past observations (https://iopscience.iop.org/article/10.3847/1538-3881/abfaff/pdf, https://arxiv.org/pdf/1703.10625).

If there are other binary systems you want to model, I can try to find all the required orbital parameters and add them manually before we figure it out a way to model a large amount of binary stars if possible.

Fixes #353

Screenshots (if appropriate):

An example of Sirius A/B with parallax disabled to avoid confusion:

Untitled.mov

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • This change requires a documentation update
  • Housekeeping

How Has This Been Tested?

Test Configuration:

  • Operating system: MacOS 15.2
  • Graphics Card: Apple M3

Checklist:

  • My code follows the code style of this project.
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation (header file)
  • I have updated the respective chapter in the Stellarium User Guide
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • Any dependent changes have been merged and published in downstream modules

Copy link

Great PR! Please pay attention to the following items before merging:

Files matching src/**/*.cpp:

  • Are possibly unused includes removed?

This is an automatically generated QA checklist based on modified files.

@gzotti
Copy link
Member

gzotti commented Jan 23, 2025

Great stuff! But probably #4076 should be 100% fixed before adding this.

γ Vir is another nice double. For a catalog, this looks promising: http://www.astro.gsu.edu/wds/orb6.html

@alex-w
Copy link
Member

alex-w commented Jan 23, 2025

Great stuff! But probably #4076 should be 100% fixed before adding this.

γ Vir is another nice double. For a catalog, this looks promising: http://www.astro.gsu.edu/wds/orb6.html

Damn, I don't have access to WDS catalog anymore O_o

Yes, adding full support WDS catalog is possible now and probably it should be adding via 2 files - one file for known orbital elements of binaries (multiple systems) and one file for cross identification and informational data (likewise a currect HIP subset of WDS).

@Atque
Copy link
Contributor

Atque commented Jan 23, 2025

Great work! However, proper motions seem odd now (possibly not calculated for the barycenter of the star system). Compare 61 Cyg in 21,000 AD between this branch and master:

henrysky:binary
stellarium-315

Stellarium:master
stellarium-314

@henrysky
Copy link
Contributor Author

Great work! However, proper motions seem odd now (possibly not calculated for the barycenter of the star system). Compare 61 Cyg in 21,000 AD between this branch and master:

Thanks for noticing the inconsistency! Motion of the barycenter is taken into account already but a problem on normalized vector caused the error in position. Now I have fixed the issue and added γ Vir.

@Atque
Copy link
Contributor

Atque commented Jan 24, 2025

I see some discrepancies with 61 Cyg. Compare the HiPS layer, with the plate in question probably taken around 1990-01-01 (based on the position of 61 Cyg in master):

henrysky-binary
stellarium-317

stellarium-master
stellarium-318

Maybe weird parameters for the stellar orbits?

@alex-w alex-w added the subsystem: catalogs The issue is related to supported catalogs of planetarium... label Jan 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
subsystem: catalogs The issue is related to supported catalogs of planetarium...
Development

Successfully merging this pull request may close these issues.

Binary Star : Mean Proper Motions and True Motions
4 participants