-
Notifications
You must be signed in to change notification settings - Fork 9
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
First steps module implementation #3
Conversation
- Adding main simulation module as singleton - Added func to load cfg and set log level - Added cfg file
- Added more docs and logging
- Fixing long lines
- Added test for line of sight - Added some additional checks
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I tried to executed the line of sight test and works correctly for me. The code is pretty straightforward. Could you, please, just clarify who is the origin (0,0,0)? I guess the code should work independently, but maybe add a comment on this somewhere.
p1.plotter(c="r", s=100), | ||
p2.plotter(c="r", s=100), | ||
) | ||
except ValueError: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why ValueError?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See comment in L107
# Currently skspatial throws a ValueError if there is no intersection so we have to use this rather ugly way.
|
||
Args: | ||
name (str): Name of this actor | ||
position (list of floats): [x,y,z] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It looks odd that Groundstation has a "velocity". I guess you are doing that because our (0,0,0) is not necessarily the ground station. Maybe, add a comment.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Everything is in central body frame, the ground station is "orbiting" it with the Earth's (or other body's) rotation as velocity and position relative to the center. Added a comment to clarify
|
||
# check positions one second later | ||
r, v = actor.get_position_velocity(pk.epoch(1 * pk.SEC2DAY)) | ||
assert np.isclose(r[0], 999800.6897266058) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you, please, add some comments on the meaning of these magic numbers?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
r,v are commonly position velocity vector in astrodynamics, added a comment to clarify
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(the numbers are just values I determined trying out, there is #1 to make more robust tests)
Description
Summary of changes
Resolved Issues
N/A
How Has This Been Tested?
Related Pull Requests
N/A