Skip to content

Conversation

@PabloVD
Copy link

@PabloVD PabloVD commented Nov 5, 2025

  • Tickets addressed: bsk-000
  • Review: By commit
  • Merge strategy: squash and merge

Description

Verification

Units verified by example codes.

Documentation

Documentation about orbital elements.

@PabloVD PabloVD requested a review from a team as a code owner November 5, 2025 23:36
@schaubh schaubh self-assigned this Nov 6, 2025
@schaubh schaubh added the documentation Improvements or additions to documentation label Nov 6, 2025
@schaubh schaubh added this to Basilisk Nov 6, 2025
@schaubh schaubh moved this to 👀 In review in Basilisk Nov 6, 2025
=== ========================= =======
a semi-major axis km
a semi-major axis m
Copy link
Contributor

Choose a reason for hiding this comment

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

I can see how this might be confusing, But, this is not strictly true. The distance units of 'a' and 'mu' must be the same. If both use km or m we are ok. Can we change this to discuss this?

Copy link
Author

Choose a reason for hiding this comment

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

While this is true for the specific function, the mu provided from the gravfactory are in m^3s^-2, and thus the general use in functions like orbitalMotion.elem2rv(mu, oe) would be in m, right?. Maybe it would be more clear for the user to have everything in meters there.
Also, if we want to set initial positions from the orbital elements with scObject.hub.r_CN_NInit = rN, they expect to be in m, right?

Copy link
Contributor

Choose a reason for hiding this comment

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

Your statement is true for mu from gravFactory. Maybe then say in the units

m, needs to have the same distance unit as used in mu variable

That should clarify this, as well as have a better default unit?

Copy link
Author

Choose a reason for hiding this comment

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

I added a line like that in each docstring, do you think is more clear now?

Copy link
Contributor

Choose a reason for hiding this comment

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

I'm ok with this approach. However, the CI tests are failing at the documentation stage. We are getting this warning:

/Users/runner/work/basilisk/basilisk/src/utilities/orbitalMotion.py:docstring of orbitalMotion.elem2rv_parab:12: WARNING: Inline emphasis start-string without end-string. [docutils]
looking for now-outdated files... none found
/Users/runner/work/basilisk/basilisk/src/utilities/orbitalMotion.py:docstring of orbitalMotion.rv2elem:16: WARNING: Inline emphasis start-string without end-string. [docutils]
/Users/runner/work/basilisk/basilisk/src/utilities/orbitalMotion.py:docstring of orbitalMotion.rv2elem_parab:16: WARNING: Inline emphasis start-string without end-string. [docutils]

Could you please test build the documentation and resolve this issue?

Copy link
Author

Choose a reason for hiding this comment

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

There was a problem with an asterisk in the docstring. The new commit should fix that.

Copy link
Contributor

@schaubh schaubh left a comment

Choose a reason for hiding this comment

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

  • made suggested edit to the unit statement
  • need to rebase on latest develop

=== ========================= =======
a semi-major axis km
a semi-major axis m
Copy link
Contributor

Choose a reason for hiding this comment

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

Your statement is true for mu from gravFactory. Maybe then say in the units

m, needs to have the same distance unit as used in mu variable

That should clarify this, as well as have a better default unit?

Copy link
Contributor

@schaubh schaubh left a comment

Choose a reason for hiding this comment

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

ok, I like how you clarified the unit issue. Can you please squash these commits now to two commits. One to update the units, one to add the method hints? This was we have a clean branch that does change prior commits.

=== ========================= =======
a semi-major axis km
a semi-major axis m
Copy link
Contributor

Choose a reason for hiding this comment

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

I'm ok with this approach. However, the CI tests are failing at the documentation stage. We are getting this warning:

/Users/runner/work/basilisk/basilisk/src/utilities/orbitalMotion.py:docstring of orbitalMotion.elem2rv_parab:12: WARNING: Inline emphasis start-string without end-string. [docutils]
looking for now-outdated files... none found
/Users/runner/work/basilisk/basilisk/src/utilities/orbitalMotion.py:docstring of orbitalMotion.rv2elem:16: WARNING: Inline emphasis start-string without end-string. [docutils]
/Users/runner/work/basilisk/basilisk/src/utilities/orbitalMotion.py:docstring of orbitalMotion.rv2elem_parab:16: WARNING: Inline emphasis start-string without end-string. [docutils]

Could you please test build the documentation and resolve this issue?

@PabloVD
Copy link
Author

PabloVD commented Nov 10, 2025

ok, I like how you clarified the unit issue. Can you please squash these commits now to two commits. One to update the units, one to add the method hints? This was we have a clean branch that does change prior commits.

The type hints were added in the same initial commit where I updated the units, so I cannot divide all commits in these two. Anyway, what about squash and merge the full PR in a single commit?

@schaubh
Copy link
Contributor

schaubh commented Nov 10, 2025

There are ways to split a commit if needed. But here, I'm ok to have them be one commit that that helps you. However, we should not be having several incremental commits.

Also, instead of merging your branch with the latest develop, we ask contributors to do a rebase process instead.

@PabloVD
Copy link
Author

PabloVD commented Nov 13, 2025

Tried to rebase but I messed up something and now there are a bunch of commits in the commit history. We can remove them from the PR description when merged. Is it ok now?

@schaubh
Copy link
Contributor

schaubh commented Nov 13, 2025

@PabloVD , agreed, this branch is a mess now. Not sure what happened here, but I can't accept this branch. Are you able to fix this? Or, I can cherry pick your PR related commits into a new branch and push from my side with a new PR?

@schaubh
Copy link
Contributor

schaubh commented Nov 21, 2025

@PabloVD , are you still working on this branch to clean it up? Thanks for a quick update.

@schaubh
Copy link
Contributor

schaubh commented Nov 27, 2025

@PabloVD , I'm going to close this PR request as there has been no development.
I created a new branch that provides the method variable hints for all the methods in orbitalMotion.py, and clarifies the units used for mu and a. This branch based on the latest develop, and I added release notes.
Thanks for supporting this fix to the BSK challenge you came across.

@schaubh schaubh closed this Nov 27, 2025
@github-project-automation github-project-automation bot moved this from 👀 In review to ✅ Done in Basilisk Nov 27, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

7 participants