open-space-toolkit-astrodynamics 9.4.2__py38-none-manylinux2014_aarch64.whl → 9.5.0__py38-none-manylinux2014_aarch64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: open-space-toolkit-astrodynamics
3
- Version: 9.4.2
3
+ Version: 9.5.0
4
4
  Summary: Orbit, attitude, access.
5
5
  Author: Open Space Collective
6
6
  Author-email: contact@open-space-collective.org
@@ -15,6 +15,7 @@ Requires-Dist: open-space-toolkit-core ~=3.0
15
15
  Requires-Dist: open-space-toolkit-io ~=3.0
16
16
  Requires-Dist: open-space-toolkit-mathematics ~=3.0
17
17
  Requires-Dist: open-space-toolkit-physics ~=7.0
18
+ Requires-Dist: numpy ~=1.26
18
19
 
19
20
  # Open Space Toolkit ▸ Astrodynamics
20
21
 
@@ -1,9 +1,9 @@
1
1
  ostk/__init__.py,sha256=epnVn2PwdQkUDZ1msqBRO5nEZIOUBIq-IfK3IlNPijE,21
2
- ostk/astrodynamics/OpenSpaceToolkitAstrodynamicsPy.cpython-38-aarch64-linux-gnu.so,sha256=4HIiuiK7W0d9KRTMfxEvBImasK6j6ByZVG5MLAfo5js,1939208
2
+ ostk/astrodynamics/OpenSpaceToolkitAstrodynamicsPy.cpython-38-aarch64-linux-gnu.so,sha256=ecemx4bpp9zc3wrGteOpZCCElv4zUzG9EueLm-4xJ0g,1951496
3
3
  ostk/astrodynamics/__init__.py,sha256=3gWyqFIbhAfcdeMhmfBPQPlPQTmaOzm-6flkJe745Zk,251
4
4
  ostk/astrodynamics/converters.py,sha256=vsm7SHdlPIyIxW1h5ZGAizl284koGaRmyPCu--AQJfA,4670
5
5
  ostk/astrodynamics/display.py,sha256=KiEGsjNftQfoUe-HfZeYpQQQ4TkaEnxtEl6p5_LX5f0,6303
6
- ostk/astrodynamics/libopen-space-toolkit-astrodynamics.so.9,sha256=bw-DGsydAFMWdm5W1sTqnB8gseX53lHZQeTVnQjSL9Q,3224808
6
+ ostk/astrodynamics/libopen-space-toolkit-astrodynamics.so.9,sha256=Qhnp5xTxUOkdDa5gooVKSwDktMGrd94i-73Z83EDoIk,3228576
7
7
  ostk/astrodynamics/utilities.py,sha256=Jw-AT9CU-a2ERDDSNp7rEhZQKhbmZSCr2flGti9XysU,4813
8
8
  ostk/astrodynamics/viewer.py,sha256=8UxqsvU5wui7gPUwxXaKcIB-509NJiih9Df3mQgXyXY,11776
9
9
  ostk/astrodynamics/pytrajectory/__init__.py,sha256=epnVn2PwdQkUDZ1msqBRO5nEZIOUBIq-IfK3IlNPijE,21
@@ -58,7 +58,7 @@ ostk/astrodynamics/test/trajectory/__init__.py,sha256=epnVn2PwdQkUDZ1msqBRO5nEZI
58
58
  ostk/astrodynamics/test/trajectory/test_local_orbital_frame_direction.py,sha256=d72J50UGG9m0Atei0UQ8sITU1WdJmws5xgUiacLZMbw,2515
59
59
  ostk/astrodynamics/test/trajectory/test_local_orbital_frame_factory.py,sha256=33SuZgkXEgYwXhFftRBaSr9Vv60DDJBi5MiXD5H-n6A,2173
60
60
  ostk/astrodynamics/test/trajectory/test_model.py,sha256=epnVn2PwdQkUDZ1msqBRO5nEZIOUBIq-IfK3IlNPijE,21
61
- ostk/astrodynamics/test/trajectory/test_orbit.py,sha256=s002kf16REvXyWkyDHI9BnEjxjiavQl2B0ceu0CuJ2s,5671
61
+ ostk/astrodynamics/test/trajectory/test_orbit.py,sha256=iKVgScEo1osMIXjON4ToURCgp2LDZV18fKQuy49RktI,6484
62
62
  ostk/astrodynamics/test/trajectory/test_propagator.py,sha256=dG31S5FY0NjJ5bnisqJ_HdL7amj_AZAWWLiOmdHfJAc,14233
63
63
  ostk/astrodynamics/test/trajectory/test_segment.py,sha256=ACVMYvjlTyCQHZ2-hFEurK08-LQxt6VlcGTMOrgDHaE,9333
64
64
  ostk/astrodynamics/test/trajectory/test_sequence.py,sha256=gswWqEBTYvbi5TQjF0DNPkAj5COo9Nb9IK7TdwJ_5C0,12882
@@ -66,7 +66,7 @@ ostk/astrodynamics/test/trajectory/test_state.py,sha256=PZUpGZKMFRDIyDAfKvSMmmOk
66
66
  ostk/astrodynamics/test/trajectory/test_state_builder.py,sha256=PSlXtmGURCrlf0w50tn3dEBRo6p0x4NmIF9gJsNOR3k,4782
67
67
  ostk/astrodynamics/test/trajectory/orbit/__init__.py,sha256=epnVn2PwdQkUDZ1msqBRO5nEZIOUBIq-IfK3IlNPijE,21
68
68
  ostk/astrodynamics/test/trajectory/orbit/test_model.py,sha256=epnVn2PwdQkUDZ1msqBRO5nEZIOUBIq-IfK3IlNPijE,21
69
- ostk/astrodynamics/test/trajectory/orbit/test_pass.py,sha256=LYo0II9117pW7EszCTg5UupqfOJu0NnvejKTPkn2hqU,2397
69
+ ostk/astrodynamics/test/trajectory/orbit/test_pass.py,sha256=LTHDGW26I0kujifCXFMcUFu9yaHMeUoIM-7jt6kJkJU,2492
70
70
  ostk/astrodynamics/test/trajectory/orbit/message/__init__.py,sha256=epnVn2PwdQkUDZ1msqBRO5nEZIOUBIq-IfK3IlNPijE,21
71
71
  ostk/astrodynamics/test/trajectory/orbit/message/spacex/__init__.py,sha256=epnVn2PwdQkUDZ1msqBRO5nEZIOUBIq-IfK3IlNPijE,21
72
72
  ostk/astrodynamics/test/trajectory/orbit/message/spacex/conftest.py,sha256=O75ywkPJjoFp0uKptCu4C2tGMRaGN-8NVFVhps85eWE,379
@@ -91,8 +91,8 @@ ostk/astrodynamics/test/trajectory/state/coordinate_subset/test_angular_velocity
91
91
  ostk/astrodynamics/test/trajectory/state/coordinate_subset/test_attitude_quaternion.py,sha256=UEu9ApzQLmT87eeISw6_gcHTlX-4b2scIvHz-uE1p_c,393
92
92
  ostk/astrodynamics/test/trajectory/state/coordinate_subset/test_cartesian_position.py,sha256=XvHdk1KjacTwtkgx2jUAc9I9N3nvjPDv03FAanpv8jQ,2702
93
93
  ostk/astrodynamics/test/trajectory/state/coordinate_subset/test_cartesian_velocity.py,sha256=-kd5TZO5TICihbkqDTew2i_tDpggdpe3Yf23046FATM,3057
94
- open_space_toolkit_astrodynamics-9.4.2.dist-info/METADATA,sha256=YDFplnVFHW9QUmpLtSUvkd9uv-mIqn1mJxzLsn-rsIU,1915
95
- open_space_toolkit_astrodynamics-9.4.2.dist-info/WHEEL,sha256=ruvibKQJj3kl3kp4sxHjhK-9MsN8ma-eErrd4EI-fqU,111
96
- open_space_toolkit_astrodynamics-9.4.2.dist-info/top_level.txt,sha256=zOR18699uDYnafgarhL8WU_LmTZY_5NVqutv-flp_x4,5
97
- open_space_toolkit_astrodynamics-9.4.2.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
98
- open_space_toolkit_astrodynamics-9.4.2.dist-info/RECORD,,
94
+ open_space_toolkit_astrodynamics-9.5.0.dist-info/METADATA,sha256=4X-Yj7IuG7WT_j2wMSt-9n3cRjEFhLRHt4HUPZo3UVs,1943
95
+ open_space_toolkit_astrodynamics-9.5.0.dist-info/WHEEL,sha256=ruvibKQJj3kl3kp4sxHjhK-9MsN8ma-eErrd4EI-fqU,111
96
+ open_space_toolkit_astrodynamics-9.5.0.dist-info/top_level.txt,sha256=zOR18699uDYnafgarhL8WU_LmTZY_5NVqutv-flp_x4,5
97
+ open_space_toolkit_astrodynamics-9.5.0.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
98
+ open_space_toolkit_astrodynamics-9.5.0.dist-info/RECORD,,
@@ -47,6 +47,9 @@ class TestPass:
47
47
  def test_get_end_instant(self, pass_: Pass):
48
48
  assert pass_.get_end_instant() is not None
49
49
 
50
+ def test_get_interval(self, pass_: Pass):
51
+ assert pass_.get_interval() is not None
52
+
50
53
  def test_get_instant_at_ascending_node(self, pass_: Pass):
51
54
  assert pass_.get_instant_at_ascending_node() is not None
52
55
 
@@ -98,7 +98,19 @@ class TestOrbit:
98
98
  assert isinstance(pass_, Pass)
99
99
  assert pass_.is_defined()
100
100
 
101
- assert orbit.get_pass_with_revolution_number(2, Duration.minutes(10.0)) is not None
101
+ assert (
102
+ orbit.get_pass_with_revolution_number(2, Duration.minutes(10.0)) is not None
103
+ )
104
+
105
+ def test_get_passes_within_interval(self, orbit: Orbit):
106
+ passes: list[Pass] = orbit.get_passes_within_interval(
107
+ Interval.closed(
108
+ Instant.date_time(DateTime(2018, 1, 1, 0, 0, 0), Scale.UTC),
109
+ Instant.date_time(DateTime(2018, 1, 1, 0, 10, 0), Scale.UTC),
110
+ )
111
+ )
112
+
113
+ assert len(passes) > 0
102
114
 
103
115
  def test_undefined(self):
104
116
  assert Orbit.undefined().is_defined() is False
@@ -169,6 +181,16 @@ class TestOrbit:
169
181
  argument_of_latitude=Angle.degrees(50.0),
170
182
  ).is_defined()
171
183
 
172
- def test_compute_passes(self, orbit: Orbit, states: list[State]):
173
- passes: list[tuple[int, Pass]] = orbit.compute_passes(states, 1)
184
+ def test_compute_passes(self, states: list[State]):
185
+ passes: list[tuple[int, Pass]] = Orbit.compute_passes(states, 1)
174
186
  assert passes is not None
187
+
188
+ def test_compute_passes_with_model(self, orbit: Orbit):
189
+ passes: list[tuple[int, Pass]] = Orbit.compute_passes_with_model(
190
+ model=orbit.access_kepler_model(),
191
+ start_instant=Instant.date_time(DateTime(2018, 1, 1, 0, 0, 0), Scale.UTC),
192
+ end_instant=Instant.date_time(DateTime(2018, 1, 1, 0, 10, 0), Scale.UTC),
193
+ initial_revolution_number=1,
194
+ )
195
+
196
+ assert len(passes) > 0