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

Add some routines for roll range determination #5

Closed
wants to merge 3 commits into from
Closed

Conversation

jeanconn
Copy link
Contributor

Add some routines for roll range determination.

@jeanconn
Copy link
Contributor Author

Not sure what to call the allowed range, I went with "rolldev". Ska.Sun doesn't seem to have any tests, so should probably add some of those too.

Ska/Sun.py Outdated
# segments are flat, however, so this local copy does not bother with the duplication.
# This ROLL_TABLE does not have all padding needed to provide 100% valid results
# for planning purposes.
ROLL_TABLE = Table.read(
Copy link
Contributor Author

Choose a reason for hiding this comment

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

An inline table seemed easiest to manage, but this can obviously drift from the one in Matlab characteristics.

Ska/Sun.py Outdated
:returns: maximum roll deviation / difference from nominal roll
"""
idx = np.searchsorted(ROLL_TABLE['pitch'], pitch, side='right')
return ROLL_TABLE['rolldev'][idx - 1]
Copy link
Contributor Author

Choose a reason for hiding this comment

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

This presently doesn't return really meaningful results for not-allowed pitch between 0 and 46. Should probably return error instead of just returning 19.99.

@jeanconn
Copy link
Contributor Author

It looks like this also needs some pads. My impression is also that the range of the useful roll deviation for a target may be somewhat limited by the maneuver profiles, as in if you want to get to the attitude or away from the attitude without an intermediate attitude those maneuvers may constrain the roll range a bit. These routines in Ska.Sun are obviously not going to have that information.

Copy link
Member

@taldcroft taldcroft left a comment

Choose a reason for hiding this comment

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

Needs tests.

Can you make it be exactly identical to the FOT MP planning constraint?

@jeanconn
Copy link
Contributor Author

That's my plan.

@jeanconn
Copy link
Contributor Author

I think we gave up on this and if we want to we can open a new issue and new approach to move roll determination back here from, say, sparkles.

@jeanconn jeanconn closed this Sep 24, 2020
@jeanconn jeanconn mentioned this pull request Feb 10, 2022
@jeanconn jeanconn deleted the roll_range branch September 14, 2022 15:41
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.

2 participants