open-space-toolkit-astrodynamics 16.7.3__py313-none-manylinux2014_x86_64.whl → 16.8.0__py313-none-manylinux2014_x86_64.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.
- {open_space_toolkit_astrodynamics-16.7.3.dist-info → open_space_toolkit_astrodynamics-16.8.0.dist-info}/METADATA +1 -1
- {open_space_toolkit_astrodynamics-16.7.3.dist-info → open_space_toolkit_astrodynamics-16.8.0.dist-info}/RECORD +11 -10
- ostk/astrodynamics/OpenSpaceToolkitAstrodynamicsPy.cpython-313-x86_64-linux-gnu.so +0 -0
- ostk/astrodynamics/__init__.pyi +2 -2
- ostk/astrodynamics/flight/__init__.pyi +11 -0
- ostk/astrodynamics/libopen-space-toolkit-astrodynamics.so.16 +0 -0
- ostk/astrodynamics/test/flight/test_profile.py +12 -0
- ostk/astrodynamics/test/guidance_law/test_guidance_law.py +60 -0
- {open_space_toolkit_astrodynamics-16.7.3.dist-info → open_space_toolkit_astrodynamics-16.8.0.dist-info}/WHEEL +0 -0
- {open_space_toolkit_astrodynamics-16.7.3.dist-info → open_space_toolkit_astrodynamics-16.8.0.dist-info}/top_level.txt +0 -0
- {open_space_toolkit_astrodynamics-16.7.3.dist-info → open_space_toolkit_astrodynamics-16.8.0.dist-info}/zip-safe +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
ostk/__init__.py,sha256=epnVn2PwdQkUDZ1msqBRO5nEZIOUBIq-IfK3IlNPijE,21
|
|
2
|
-
ostk/astrodynamics/OpenSpaceToolkitAstrodynamicsPy.cpython-313-x86_64-linux-gnu.so,sha256=
|
|
2
|
+
ostk/astrodynamics/OpenSpaceToolkitAstrodynamicsPy.cpython-313-x86_64-linux-gnu.so,sha256=NaHV9omr3BgVsGGOyWMIHkXJK8z8Kf7BxOAeL6n_A_8,2988504
|
|
3
3
|
ostk/astrodynamics/__init__.py,sha256=3gWyqFIbhAfcdeMhmfBPQPlPQTmaOzm-6flkJe745Zk,251
|
|
4
|
-
ostk/astrodynamics/__init__.pyi,sha256=
|
|
4
|
+
ostk/astrodynamics/__init__.pyi,sha256=ZNV1KMKlUEgnNQw7AruUgQk-pnOZOoPnTSRpP0uSRpA,32224
|
|
5
5
|
ostk/astrodynamics/access.pyi,sha256=pp2t81kKH4sP4BcGb8nAZHmpwhISjFODMpbZ4ucLFAw,25157
|
|
6
6
|
ostk/astrodynamics/converters.py,sha256=luPh30qMp9bzEkN7hUccmxlLf7zRp_AzqmBe8IUjPhU,3314
|
|
7
7
|
ostk/astrodynamics/converters.pyi,sha256=tTUT0xGbiUkKxUj79Hq5EEtxV3b2uR6Wsnj_vwyj-mk,1625
|
|
@@ -12,7 +12,7 @@ ostk/astrodynamics/eclipse.pyi,sha256=Q8fzdukA7fyxbUM3wjEXAHukT-Ovl4FM00NbjsMPnU
|
|
|
12
12
|
ostk/astrodynamics/estimator.pyi,sha256=MnahWzp8aACxrNKWlYRsgQr5zpBxogNr-yPm7hJob5k,14000
|
|
13
13
|
ostk/astrodynamics/event_condition.pyi,sha256=2c_1Sq7tkYKeAA_aRWBi43KDQXXxu6EMSmUpEWz_Fa4,45814
|
|
14
14
|
ostk/astrodynamics/guidance_law.pyi,sha256=rVmbpV2Y5FsIXejaInxINS67nVHmTIxVEkhaDIn17SA,12171
|
|
15
|
-
ostk/astrodynamics/libopen-space-toolkit-astrodynamics.so.16,sha256=
|
|
15
|
+
ostk/astrodynamics/libopen-space-toolkit-astrodynamics.so.16,sha256=9lopt7pmx4GtwUuevC6QYumQZB6De2DRrZpMrSAcl5A,130585008
|
|
16
16
|
ostk/astrodynamics/solver.pyi,sha256=dRdR9RLqwSaBBX_ZRmpeBv06WvM_BFNo3WUdNzorYTY,17805
|
|
17
17
|
ostk/astrodynamics/utilities.py,sha256=y8mr3M46J5z-GhS1oIEnuEJA6otwcyJ9YDhvn_5JxHM,6976
|
|
18
18
|
ostk/astrodynamics/viewer.py,sha256=SlKyOWKjaF3V9HFB3I7ZgHy7n_GLeHTWM9q2wXkpxe8,27077
|
|
@@ -21,7 +21,7 @@ ostk/astrodynamics/conjunction/message/__init__.pyi,sha256=5H__sg_QUx7ybf9jtVWvX
|
|
|
21
21
|
ostk/astrodynamics/conjunction/message/ccsds.pyi,sha256=1Peto19hRqlD7KHf1cyLP3CT4OAKzwtemqvO6_4FZ0g,28162
|
|
22
22
|
ostk/astrodynamics/data/__init__.pyi,sha256=4l_mfVbnU_L7wImwgTCe8fVI81gK_tUmd0z7BY9lLi8,81
|
|
23
23
|
ostk/astrodynamics/data/provider.pyi,sha256=O4Lg9FBq9itufgATnic5SMg90pn8vJJJMUdNcWP72NI,1492
|
|
24
|
-
ostk/astrodynamics/flight/__init__.pyi,sha256=
|
|
24
|
+
ostk/astrodynamics/flight/__init__.pyi,sha256=OnR2OxLLvmVSp18nLzM7R_QHoJvoikIaz2qiIZgH0bA,23606
|
|
25
25
|
ostk/astrodynamics/flight/system.pyi,sha256=WVxy6Oe4q3C81c0AOxSwAmnwUHcpXO7JCEvESjs2g4A,10508
|
|
26
26
|
ostk/astrodynamics/flight/profile/__init__.pyi,sha256=WBTG17V59UwD-X1r6TOrXT_rA3WjKY-2ML1cWfji_4g,3688
|
|
27
27
|
ostk/astrodynamics/flight/profile/model.pyi,sha256=wwnVaTjTytxPqKyNo1tpdZRedabQlIHgyxfT0nivO5M,7777
|
|
@@ -72,7 +72,7 @@ ostk/astrodynamics/test/event_condition/test_logical_condition.py,sha256=09h5TYW
|
|
|
72
72
|
ostk/astrodynamics/test/event_condition/test_real_condition.py,sha256=tle6HVzMFMIIkfRY7CuaA0mPtw3riJBG_JQkc1L0dpk,1374
|
|
73
73
|
ostk/astrodynamics/test/flight/__init__.py,sha256=epnVn2PwdQkUDZ1msqBRO5nEZIOUBIq-IfK3IlNPijE,21
|
|
74
74
|
ostk/astrodynamics/test/flight/test_maneuver.py,sha256=HonAvD9qtax72lizoDLR6ELI-poC3LWk_umg-WYygYA,5388
|
|
75
|
-
ostk/astrodynamics/test/flight/test_profile.py,sha256=
|
|
75
|
+
ostk/astrodynamics/test/flight/test_profile.py,sha256=U1l7pbFYrUjjxYBotQ3ujrvBxnBcyWgTrKwVHHClStc,8602
|
|
76
76
|
ostk/astrodynamics/test/flight/test_system.py,sha256=5kJCULHdpkwAC7i6xLV7vdJnGfOdrOuhi0G22p_L160,1224
|
|
77
77
|
ostk/astrodynamics/test/flight/profile/model/test_tabulated_profile.py,sha256=NZVa9dXzp4UDmohAlBaYeY594CPbqIv5j3VSEzlbYHk,3168
|
|
78
78
|
ostk/astrodynamics/test/flight/system/__init__.py,sha256=epnVn2PwdQkUDZ1msqBRO5nEZIOUBIq-IfK3IlNPijE,21
|
|
@@ -80,6 +80,7 @@ ostk/astrodynamics/test/flight/system/test_propulsion_system.py,sha256=SoxOt-fjH
|
|
|
80
80
|
ostk/astrodynamics/test/flight/system/test_satellite_system.py,sha256=dCFcl2RKiLxDKLI0sytPBXr3vHOFQIVNNCzpw5WzlAA,2437
|
|
81
81
|
ostk/astrodynamics/test/flight/system/test_satellite_system_builder.py,sha256=QCk70dPcptvdpWQOxtYR0-iGnlbtOIx2V6oO0UhYIQ0,2426
|
|
82
82
|
ostk/astrodynamics/test/guidance_law/test_constant_thrust.py,sha256=YpMkMvat4YnE1Fyy5vZ1Sf3VvbvDaC_UvbIKNNCG_B4,2635
|
|
83
|
+
ostk/astrodynamics/test/guidance_law/test_guidance_law.py,sha256=4ElWLS9ovnYBcj5HwJI3a6R9wrSLxyb_VMvxcCLDrKE,1560
|
|
83
84
|
ostk/astrodynamics/test/guidance_law/test_qlaw.py,sha256=kZaBZeU_J8Qk2nFnnpSuu-2NXT_13g3vLamG--eZfeU,3634
|
|
84
85
|
ostk/astrodynamics/test/solvers/__init__.py,sha256=epnVn2PwdQkUDZ1msqBRO5nEZIOUBIq-IfK3IlNPijE,21
|
|
85
86
|
ostk/astrodynamics/test/solvers/test_finite_difference_solver.py,sha256=0tcarIg2HTpcdzItWlL5Kd6q2nHcDBA8ZE0D3ugUN_s,5953
|
|
@@ -138,8 +139,8 @@ ostk/astrodynamics/trajectory/orbit/model/kepler.pyi,sha256=KL-FwPbG4OUkPjhQb1Pa
|
|
|
138
139
|
ostk/astrodynamics/trajectory/orbit/model/sgp4.pyi,sha256=OhFzoPPQHlYy7m3LiZ8TXF89M4uBTfNk6tGsBEp0sjI,14235
|
|
139
140
|
ostk/astrodynamics/trajectory/state/__init__.pyi,sha256=bq__Fii35czVrTeNxc9eQVjXdqwbbQxUdNQWK3vLrMo,17649
|
|
140
141
|
ostk/astrodynamics/trajectory/state/coordinate_subset.pyi,sha256=kYMfMwEjCqO1NepMYFT4QS6kIPBkVL6sGCLeLbogcMw,10176
|
|
141
|
-
open_space_toolkit_astrodynamics-16.
|
|
142
|
-
open_space_toolkit_astrodynamics-16.
|
|
143
|
-
open_space_toolkit_astrodynamics-16.
|
|
144
|
-
open_space_toolkit_astrodynamics-16.
|
|
145
|
-
open_space_toolkit_astrodynamics-16.
|
|
142
|
+
open_space_toolkit_astrodynamics-16.8.0.dist-info/METADATA,sha256=EfkYJE8PmXGgbf8PpG_rAkZgnWlv8XFvMDYSXiMxVV8,1913
|
|
143
|
+
open_space_toolkit_astrodynamics-16.8.0.dist-info/WHEEL,sha256=mg_J2-vBxmW0UA4lbss-1qkxaUbm-OTIuSSaNWv6mlo,110
|
|
144
|
+
open_space_toolkit_astrodynamics-16.8.0.dist-info/top_level.txt,sha256=zOR18699uDYnafgarhL8WU_LmTZY_5NVqutv-flp_x4,5
|
|
145
|
+
open_space_toolkit_astrodynamics-16.8.0.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
146
|
+
open_space_toolkit_astrodynamics-16.8.0.dist-info/RECORD,,
|
|
Binary file
|
ostk/astrodynamics/__init__.pyi
CHANGED
|
@@ -14,8 +14,8 @@ from ostk import mathematics as OpenSpaceToolkitMathematicsPy
|
|
|
14
14
|
from ostk.mathematics import curve_fitting
|
|
15
15
|
from ostk.mathematics import geometry
|
|
16
16
|
from ostk.mathematics import object
|
|
17
|
-
from ostk import physics as OpenSpaceToolkitPhysicsPy
|
|
18
17
|
import ostk.physics
|
|
18
|
+
from ostk import physics as OpenSpaceToolkitPhysicsPy
|
|
19
19
|
from ostk.physics import Environment
|
|
20
20
|
from ostk.physics import Manager
|
|
21
21
|
from ostk.physics import Unit
|
|
@@ -24,8 +24,8 @@ import ostk.physics.coordinate
|
|
|
24
24
|
import ostk.physics.coordinate.spherical
|
|
25
25
|
from ostk.physics import environment
|
|
26
26
|
import ostk.physics.environment.object
|
|
27
|
-
from ostk.physics import time
|
|
28
27
|
import ostk.physics.time
|
|
28
|
+
from ostk.physics import time
|
|
29
29
|
import ostk.physics.unit
|
|
30
30
|
from ostk.physics import unit
|
|
31
31
|
import typing
|
|
@@ -439,6 +439,17 @@ class Profile:
|
|
|
439
439
|
Returns:
|
|
440
440
|
Model: The profile model.
|
|
441
441
|
"""
|
|
442
|
+
def construct_body_frame(self, frame_name: ostk.core.type.String, overwrite: bool = False) -> ostk.physics.coordinate.Frame:
|
|
443
|
+
"""
|
|
444
|
+
Construct the body frame of the profile.
|
|
445
|
+
|
|
446
|
+
Args:
|
|
447
|
+
frame_name (str): The name of the frame.
|
|
448
|
+
overwrite (bool): If True, destruct existing frame with same name. Defaults to False.
|
|
449
|
+
|
|
450
|
+
Returns:
|
|
451
|
+
Frame: The body frame of the profile.
|
|
452
|
+
"""
|
|
442
453
|
def get_axes_at(self, instant: ostk.physics.time.Instant) -> ostk.physics.coordinate.Axes:
|
|
443
454
|
"""
|
|
444
455
|
Get the axes of the profile at a given instant.
|
|
Binary file
|
|
@@ -180,6 +180,18 @@ class TestProfile:
|
|
|
180
180
|
assert frame is not None
|
|
181
181
|
assert isinstance(frame, Frame)
|
|
182
182
|
|
|
183
|
+
def test_construct_body_frame(self, profile: Profile):
|
|
184
|
+
frame_name: str = "test_construct_body_frame"
|
|
185
|
+
|
|
186
|
+
if Frame.exists(frame_name):
|
|
187
|
+
Frame.destruct(frame_name)
|
|
188
|
+
|
|
189
|
+
frame: Frame = profile.construct_body_frame(frame_name)
|
|
190
|
+
assert frame is not None
|
|
191
|
+
|
|
192
|
+
frame_2: Frame = profile.construct_body_frame(frame_name, True)
|
|
193
|
+
assert frame_2 is not None
|
|
194
|
+
|
|
183
195
|
def test_undefined(self):
|
|
184
196
|
profile: Profile = Profile.undefined()
|
|
185
197
|
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# Apache License 2.0
|
|
2
|
+
|
|
3
|
+
import numpy as np
|
|
4
|
+
|
|
5
|
+
import pytest
|
|
6
|
+
|
|
7
|
+
from ostk.physics.time import Instant
|
|
8
|
+
from ostk.physics.coordinate import Frame
|
|
9
|
+
from ostk.astrodynamics import GuidanceLaw
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
@pytest.fixture
|
|
13
|
+
def guidance_law() -> GuidanceLaw:
|
|
14
|
+
class MyGuidanceLaw(GuidanceLaw):
|
|
15
|
+
|
|
16
|
+
def __init__(
|
|
17
|
+
self,
|
|
18
|
+
name: str,
|
|
19
|
+
):
|
|
20
|
+
super().__init__(name)
|
|
21
|
+
|
|
22
|
+
def calculate_thrust_acceleration_at(
|
|
23
|
+
self,
|
|
24
|
+
instant: Instant,
|
|
25
|
+
position_coordinates: np.array,
|
|
26
|
+
velocity_coordinates: np.array,
|
|
27
|
+
thrust_acceleration: float,
|
|
28
|
+
output_frame: Frame,
|
|
29
|
+
) -> np.array:
|
|
30
|
+
return np.array([0.0, 0.0, 0.0])
|
|
31
|
+
|
|
32
|
+
return MyGuidanceLaw("My Guidance Law")
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
class TestGuidanceLaw:
|
|
36
|
+
def test_subclass(
|
|
37
|
+
self,
|
|
38
|
+
guidance_law: GuidanceLaw,
|
|
39
|
+
):
|
|
40
|
+
assert isinstance(guidance_law, GuidanceLaw)
|
|
41
|
+
|
|
42
|
+
def test_get_name(
|
|
43
|
+
self,
|
|
44
|
+
guidance_law: GuidanceLaw,
|
|
45
|
+
):
|
|
46
|
+
assert guidance_law.get_name() == "My Guidance Law"
|
|
47
|
+
|
|
48
|
+
def test_calculate_thrust_acceleration_at(
|
|
49
|
+
self,
|
|
50
|
+
guidance_law: GuidanceLaw,
|
|
51
|
+
):
|
|
52
|
+
thrust_acceleration: np.array = guidance_law.calculate_thrust_acceleration_at(
|
|
53
|
+
instant=Instant.J2000(),
|
|
54
|
+
position_coordinates=np.array([0.0, 0.0, 0.0]),
|
|
55
|
+
velocity_coordinates=np.array([0.0, 0.0, 0.0]),
|
|
56
|
+
thrust_acceleration=1.0,
|
|
57
|
+
output_frame=Frame.GCRF(),
|
|
58
|
+
)
|
|
59
|
+
|
|
60
|
+
assert np.array_equal(thrust_acceleration, np.array([0.0, 0.0, 0.0]))
|
|
File without changes
|
|
File without changes
|
|
File without changes
|