open-space-toolkit-astrodynamics 17.2.0__py312-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.
Files changed (151) hide show
  1. open_space_toolkit_astrodynamics-17.2.0.dist-info/METADATA +30 -0
  2. open_space_toolkit_astrodynamics-17.2.0.dist-info/RECORD +151 -0
  3. open_space_toolkit_astrodynamics-17.2.0.dist-info/WHEEL +5 -0
  4. open_space_toolkit_astrodynamics-17.2.0.dist-info/top_level.txt +1 -0
  5. open_space_toolkit_astrodynamics-17.2.0.dist-info/zip-safe +1 -0
  6. ostk/__init__.py +1 -0
  7. ostk/astrodynamics/OpenSpaceToolkitAstrodynamicsPy.cpython-312-x86_64-linux-gnu.so +0 -0
  8. ostk/astrodynamics/__init__.py +11 -0
  9. ostk/astrodynamics/__init__.pyi +720 -0
  10. ostk/astrodynamics/access.pyi +577 -0
  11. ostk/astrodynamics/conjunction/__init__.pyi +121 -0
  12. ostk/astrodynamics/conjunction/close_approach.pyi +89 -0
  13. ostk/astrodynamics/conjunction/message/__init__.pyi +3 -0
  14. ostk/astrodynamics/conjunction/message/ccsds.pyi +705 -0
  15. ostk/astrodynamics/converters.py +130 -0
  16. ostk/astrodynamics/converters.pyi +58 -0
  17. ostk/astrodynamics/data/__init__.pyi +3 -0
  18. ostk/astrodynamics/data/provider.pyi +22 -0
  19. ostk/astrodynamics/dataframe.py +597 -0
  20. ostk/astrodynamics/display.py +281 -0
  21. ostk/astrodynamics/dynamics.pyi +311 -0
  22. ostk/astrodynamics/eclipse.pyi +70 -0
  23. ostk/astrodynamics/estimator.pyi +268 -0
  24. ostk/astrodynamics/event_condition.pyi +910 -0
  25. ostk/astrodynamics/flight/__init__.pyi +626 -0
  26. ostk/astrodynamics/flight/profile/__init__.pyi +99 -0
  27. ostk/astrodynamics/flight/profile/model.pyi +179 -0
  28. ostk/astrodynamics/flight/system.pyi +268 -0
  29. ostk/astrodynamics/guidance_law.pyi +416 -0
  30. ostk/astrodynamics/libopen-space-toolkit-astrodynamics.so.17 +0 -0
  31. ostk/astrodynamics/pytrajectory/__init__.py +1 -0
  32. ostk/astrodynamics/pytrajectory/__init__.pyi +3 -0
  33. ostk/astrodynamics/pytrajectory/pystate.py +263 -0
  34. ostk/astrodynamics/pytrajectory/pystate.pyi +66 -0
  35. ostk/astrodynamics/solver.pyi +432 -0
  36. ostk/astrodynamics/test/__init__.py +1 -0
  37. ostk/astrodynamics/test/access/__init__.py +1 -0
  38. ostk/astrodynamics/test/access/test_generator.py +319 -0
  39. ostk/astrodynamics/test/access/test_visibility_criterion.py +201 -0
  40. ostk/astrodynamics/test/conftest.py +119 -0
  41. ostk/astrodynamics/test/conjunction/close_approach/__init__.py +0 -0
  42. ostk/astrodynamics/test/conjunction/close_approach/test_generator.py +228 -0
  43. ostk/astrodynamics/test/conjunction/message/ccsds/__init__.py +1 -0
  44. ostk/astrodynamics/test/conjunction/message/ccsds/conftest.py +325 -0
  45. ostk/astrodynamics/test/conjunction/message/ccsds/data/cdm.json +303 -0
  46. ostk/astrodynamics/test/conjunction/message/ccsds/test_cdm.py +416 -0
  47. ostk/astrodynamics/test/conjunction/test_close_approach.py +244 -0
  48. ostk/astrodynamics/test/data/provider/test_off_nadir.py +58 -0
  49. ostk/astrodynamics/test/dynamics/__init__.py +1 -0
  50. ostk/astrodynamics/test/dynamics/data/Tabulated_Earth_Gravity.csv +565 -0
  51. ostk/astrodynamics/test/dynamics/data/Tabulated_Earth_Gravity_Truth.csv +100 -0
  52. ostk/astrodynamics/test/dynamics/test_atmospheric_drag.py +128 -0
  53. ostk/astrodynamics/test/dynamics/test_central_body_gravity.py +58 -0
  54. ostk/astrodynamics/test/dynamics/test_dynamics.py +50 -0
  55. ostk/astrodynamics/test/dynamics/test_position_derivative.py +51 -0
  56. ostk/astrodynamics/test/dynamics/test_tabulated.py +138 -0
  57. ostk/astrodynamics/test/dynamics/test_third_body_gravity.py +67 -0
  58. ostk/astrodynamics/test/dynamics/test_thruster.py +157 -0
  59. ostk/astrodynamics/test/eclipse/__init__.py +1 -0
  60. ostk/astrodynamics/test/eclipse/test_generator.py +138 -0
  61. ostk/astrodynamics/test/estimator/test_orbit_determination_solver.py +261 -0
  62. ostk/astrodynamics/test/estimator/test_tle_solver.py +216 -0
  63. ostk/astrodynamics/test/event_condition/test_angular_condition.py +113 -0
  64. ostk/astrodynamics/test/event_condition/test_boolean_condition.py +55 -0
  65. ostk/astrodynamics/test/event_condition/test_brouwer_lyddane_mean_long_condition.py +135 -0
  66. ostk/astrodynamics/test/event_condition/test_coe_condition.py +135 -0
  67. ostk/astrodynamics/test/event_condition/test_instant_condition.py +48 -0
  68. ostk/astrodynamics/test/event_condition/test_logical_condition.py +120 -0
  69. ostk/astrodynamics/test/event_condition/test_real_condition.py +50 -0
  70. ostk/astrodynamics/test/flight/__init__.py +1 -0
  71. ostk/astrodynamics/test/flight/profile/model/test_tabulated_profile.py +115 -0
  72. ostk/astrodynamics/test/flight/system/__init__.py +1 -0
  73. ostk/astrodynamics/test/flight/system/test_propulsion_system.py +64 -0
  74. ostk/astrodynamics/test/flight/system/test_satellite_system.py +83 -0
  75. ostk/astrodynamics/test/flight/system/test_satellite_system_builder.py +71 -0
  76. ostk/astrodynamics/test/flight/test_maneuver.py +231 -0
  77. ostk/astrodynamics/test/flight/test_profile.py +293 -0
  78. ostk/astrodynamics/test/flight/test_system.py +45 -0
  79. ostk/astrodynamics/test/guidance_law/test_constant_thrust.py +177 -0
  80. ostk/astrodynamics/test/guidance_law/test_guidance_law.py +60 -0
  81. ostk/astrodynamics/test/guidance_law/test_heterogeneous_guidance_law.py +164 -0
  82. ostk/astrodynamics/test/guidance_law/test_qlaw.py +209 -0
  83. ostk/astrodynamics/test/solvers/__init__.py +1 -0
  84. ostk/astrodynamics/test/solvers/test_finite_difference_solver.py +196 -0
  85. ostk/astrodynamics/test/solvers/test_least_squares_solver.py +334 -0
  86. ostk/astrodynamics/test/solvers/test_temporal_condition_solver.py +161 -0
  87. ostk/astrodynamics/test/test_access.py +128 -0
  88. ostk/astrodynamics/test/test_converters.py +290 -0
  89. ostk/astrodynamics/test/test_dataframe.py +1355 -0
  90. ostk/astrodynamics/test/test_display.py +184 -0
  91. ostk/astrodynamics/test/test_event_condition.py +80 -0
  92. ostk/astrodynamics/test/test_import.py +26 -0
  93. ostk/astrodynamics/test/test_root_solver.py +70 -0
  94. ostk/astrodynamics/test/test_trajectory.py +126 -0
  95. ostk/astrodynamics/test/test_utilities.py +338 -0
  96. ostk/astrodynamics/test/test_viewer.py +318 -0
  97. ostk/astrodynamics/test/trajectory/__init__.py +1 -0
  98. ostk/astrodynamics/test/trajectory/model/test_nadir_trajectory.py +87 -0
  99. ostk/astrodynamics/test/trajectory/model/test_tabulated_trajectory.py +303 -0
  100. ostk/astrodynamics/test/trajectory/model/test_target_scan_trajectory.py +126 -0
  101. ostk/astrodynamics/test/trajectory/orbit/__init__.py +1 -0
  102. ostk/astrodynamics/test/trajectory/orbit/message/__init__.py +1 -0
  103. ostk/astrodynamics/test/trajectory/orbit/message/spacex/__init__.py +1 -0
  104. ostk/astrodynamics/test/trajectory/orbit/message/spacex/conftest.py +18 -0
  105. ostk/astrodynamics/test/trajectory/orbit/message/spacex/data/opm_1.yaml +44 -0
  106. ostk/astrodynamics/test/trajectory/orbit/message/spacex/test_opm.py +108 -0
  107. ostk/astrodynamics/test/trajectory/orbit/models/__init__.py +1 -0
  108. ostk/astrodynamics/test/trajectory/orbit/models/kepler/__init__.py +1 -0
  109. ostk/astrodynamics/test/trajectory/orbit/models/kepler/test_brouwer_lyddane_mean.py +65 -0
  110. ostk/astrodynamics/test/trajectory/orbit/models/kepler/test_brouwer_lyddane_mean_long.py +102 -0
  111. ostk/astrodynamics/test/trajectory/orbit/models/kepler/test_brouwer_lyddane_mean_short.py +102 -0
  112. ostk/astrodynamics/test/trajectory/orbit/models/kepler/test_coe.py +305 -0
  113. ostk/astrodynamics/test/trajectory/orbit/models/sgp4/__init__.py +1 -0
  114. ostk/astrodynamics/test/trajectory/orbit/models/sgp4/test_tle.py +337 -0
  115. ostk/astrodynamics/test/trajectory/orbit/models/test_kepler.py +130 -0
  116. ostk/astrodynamics/test/trajectory/orbit/models/test_modified_equinoctial.py +142 -0
  117. ostk/astrodynamics/test/trajectory/orbit/models/test_propagated.py +234 -0
  118. ostk/astrodynamics/test/trajectory/orbit/models/test_sgp4.py +1 -0
  119. ostk/astrodynamics/test/trajectory/orbit/models/test_tabulated.py +380 -0
  120. ostk/astrodynamics/test/trajectory/orbit/test_model.py +1 -0
  121. ostk/astrodynamics/test/trajectory/orbit/test_pass.py +75 -0
  122. ostk/astrodynamics/test/trajectory/state/coordinate_subset/test_angular_velocity.py +30 -0
  123. ostk/astrodynamics/test/trajectory/state/coordinate_subset/test_attitude_quaternion.py +18 -0
  124. ostk/astrodynamics/test/trajectory/state/coordinate_subset/test_cartesian_acceleration.py +136 -0
  125. ostk/astrodynamics/test/trajectory/state/coordinate_subset/test_cartesian_position.py +107 -0
  126. ostk/astrodynamics/test/trajectory/state/coordinate_subset/test_cartesian_velocity.py +115 -0
  127. ostk/astrodynamics/test/trajectory/state/test_coordinate_broker.py +84 -0
  128. ostk/astrodynamics/test/trajectory/state/test_coordinate_subset.py +58 -0
  129. ostk/astrodynamics/test/trajectory/state/test_numerical_solver.py +316 -0
  130. ostk/astrodynamics/test/trajectory/test_local_orbital_frame_direction.py +81 -0
  131. ostk/astrodynamics/test/trajectory/test_local_orbital_frame_factory.py +119 -0
  132. ostk/astrodynamics/test/trajectory/test_model.py +1 -0
  133. ostk/astrodynamics/test/trajectory/test_orbit.py +212 -0
  134. ostk/astrodynamics/test/trajectory/test_propagator.py +452 -0
  135. ostk/astrodynamics/test/trajectory/test_segment.py +694 -0
  136. ostk/astrodynamics/test/trajectory/test_sequence.py +550 -0
  137. ostk/astrodynamics/test/trajectory/test_state.py +629 -0
  138. ostk/astrodynamics/test/trajectory/test_state_builder.py +172 -0
  139. ostk/astrodynamics/trajectory/__init__.pyi +1982 -0
  140. ostk/astrodynamics/trajectory/model.pyi +259 -0
  141. ostk/astrodynamics/trajectory/orbit/__init__.pyi +349 -0
  142. ostk/astrodynamics/trajectory/orbit/message/__init__.pyi +3 -0
  143. ostk/astrodynamics/trajectory/orbit/message/spacex.pyi +264 -0
  144. ostk/astrodynamics/trajectory/orbit/model/__init__.pyi +648 -0
  145. ostk/astrodynamics/trajectory/orbit/model/brouwerLyddaneMean.pyi +121 -0
  146. ostk/astrodynamics/trajectory/orbit/model/kepler.pyi +709 -0
  147. ostk/astrodynamics/trajectory/orbit/model/sgp4.pyi +330 -0
  148. ostk/astrodynamics/trajectory/state/__init__.pyi +402 -0
  149. ostk/astrodynamics/trajectory/state/coordinate_subset.pyi +208 -0
  150. ostk/astrodynamics/utilities.py +396 -0
  151. ostk/astrodynamics/viewer.py +851 -0
@@ -0,0 +1,264 @@
1
+ from __future__ import annotations
2
+ import ostk.astrodynamics.trajectory
3
+ import ostk.core.container
4
+ import ostk.core.filesystem
5
+ import ostk.core.type
6
+ import ostk.physics.coordinate
7
+ import ostk.physics.time
8
+ import ostk.physics.unit
9
+ __all__ = ['OPM']
10
+ class OPM:
11
+ """
12
+
13
+ The SpaceX OPM message.
14
+
15
+ See Also:
16
+ `SpaceX OPM <https://public.ccsds.org/Pubs/502x0b3e1.pdf>`_.
17
+
18
+
19
+ """
20
+ class Deployment:
21
+ """
22
+
23
+ The deployment of the SpaceX OPM message.
24
+
25
+
26
+ """
27
+ def __init__(self, name: ostk.core.type.String, sequence_number: ostk.core.type.Integer, mission_time: ostk.physics.time.Duration, date: ostk.physics.time.Instant, position: ostk.physics.coordinate.Position, velocity: ostk.physics.coordinate.Velocity, mean_perigee_altitude: ostk.physics.unit.Length, mean_apogee_altitude: ostk.physics.unit.Length, mean_inclination: ostk.physics.unit.Angle, mean_argument_of_perigee: ostk.physics.unit.Angle, mean_longitude_ascending_node: ostk.physics.unit.Angle, mean_mean_anomaly: ostk.physics.unit.Angle, ballistic_coefficient: ostk.core.type.Real) -> None:
28
+ """
29
+ Constructor.
30
+
31
+ Args:
32
+ name (str): The name of the deployment.
33
+ sequence_number (int): The sequence number of the deployment.
34
+ mission_time (Duration): The mission time of the deployment.
35
+ date (Instant): The date of the deployment.
36
+ position (Position): The position of the deployment.
37
+ velocity (Velocity): The velocity of the deployment.
38
+ mean_perigee_altitude (Length): The mean perigee altitude of the deployment.
39
+ mean_apogee_altitude (Length): The mean apogee altitude of the deployment.
40
+ mean_inclination (Angle): The mean inclination of the deployment.
41
+ mean_argument_of_perigee (Angle): The mean argument of perigee of the deployment.
42
+ mean_longitude_ascending_node (Angle): The mean longitude of the ascending node of the deployment.
43
+ mean_mean_anomaly (Angle): The mean mean anomaly of the deployment.
44
+ ballistic_coefficient (float): The ballistic coefficient of the deployment.
45
+ """
46
+ def to_state(self) -> ostk.astrodynamics.trajectory.State:
47
+ """
48
+ Convert the deployment to a state.
49
+
50
+ Returns:
51
+ state (State): The state of the deployment.
52
+ """
53
+ @property
54
+ def ballistic_coefficient(self) -> ostk.core.type.Real:
55
+ """
56
+ Get the ballistic coefficient of the deployment.
57
+
58
+ :type: float
59
+ """
60
+ @property
61
+ def date(self) -> ostk.physics.time.Instant:
62
+ """
63
+ Get the date of the deployment.
64
+
65
+ :type: Instant
66
+ """
67
+ @property
68
+ def mean_apogee_altitude(self) -> ostk.physics.unit.Length:
69
+ """
70
+ Get the mean apogee altitude of the deployment.
71
+
72
+ :type: Length
73
+ """
74
+ @property
75
+ def mean_argument_of_perigee(self) -> ostk.physics.unit.Angle:
76
+ """
77
+ Get the mean argument of perigee of the deployment.
78
+
79
+ :type: Angle
80
+ """
81
+ @property
82
+ def mean_inclination(self) -> ostk.physics.unit.Angle:
83
+ """
84
+ Get the mean inclination of the deployment.
85
+
86
+ :type: Angle
87
+ """
88
+ @property
89
+ def mean_longitude_ascending_node(self) -> ostk.physics.unit.Angle:
90
+ """
91
+ Get the mean longitude of the ascending node of the deployment.
92
+
93
+ :type: Angle
94
+ """
95
+ @property
96
+ def mean_mean_anomaly(self) -> ostk.physics.unit.Angle:
97
+ """
98
+ Get the mean mean anomaly of the deployment.
99
+
100
+ :type: Angle
101
+ """
102
+ @property
103
+ def mean_perigee_altitude(self) -> ostk.physics.unit.Length:
104
+ """
105
+ Get the mean perigee altitude of the deployment.
106
+
107
+ :type: Length
108
+ """
109
+ @property
110
+ def mission_time(self) -> ostk.physics.time.Duration:
111
+ """
112
+ Get the mission time of the deployment.
113
+
114
+ :type: Duration
115
+ """
116
+ @property
117
+ def name(self) -> ostk.core.type.String:
118
+ """
119
+ Get the name of the deployment.
120
+
121
+ :type: str
122
+ """
123
+ @property
124
+ def position(self) -> ostk.physics.coordinate.Position:
125
+ """
126
+ Get the position of the deployment.
127
+
128
+ :type: Position
129
+ """
130
+ @property
131
+ def sequence_number(self) -> ostk.core.type.Integer:
132
+ """
133
+ Get the sequence number of the deployment.
134
+
135
+ :type: int
136
+ """
137
+ @property
138
+ def velocity(self) -> ostk.physics.coordinate.Velocity:
139
+ """
140
+ Get the velocity of the deployment.
141
+
142
+ :type: Velocity
143
+ """
144
+ class Header:
145
+ """
146
+
147
+ The header of the SpaceX OPM message.
148
+
149
+
150
+ """
151
+ def __init__(self, generation_date: ostk.physics.time.Instant, launch_date: ostk.physics.time.Instant) -> None:
152
+ """
153
+ Constructor.
154
+
155
+ Args:
156
+ generation_date (Instant): The date at which the OPM message was generated.
157
+ launch_date (Instant): The date at which the spacecraft was launched.
158
+ """
159
+ @property
160
+ def generation_date(self) -> ostk.physics.time.Instant:
161
+ """
162
+ Get the date at which the OPM message was generated.
163
+
164
+ Returns:
165
+ instant (Instant): The date at which the OPM message was generated.
166
+ """
167
+ @property
168
+ def launch_date(self) -> ostk.physics.time.Instant:
169
+ """
170
+ Get the date at which the spacecraft was launched.
171
+
172
+ Returns:
173
+ instant (Instant): The date at which the spacecraft was launched.
174
+ """
175
+ @staticmethod
176
+ def dictionary(dictionary: ostk.core.container.Dictionary) -> OPM:
177
+ """
178
+ Build an OPM message from a dictionary.
179
+
180
+ Args:
181
+ dictionary (dict): The dictionary containing the OPM message information.
182
+
183
+ Returns:
184
+ opm (OPM): The OPM message.
185
+ """
186
+ @staticmethod
187
+ def load(file: ostk.core.filesystem.File) -> OPM:
188
+ """
189
+ Load an OPM message from a file.
190
+
191
+ Args:
192
+ file (str): The path to the file containing the OPM message.
193
+
194
+ Returns:
195
+ opm (OPM): The OPM message.
196
+ """
197
+ @staticmethod
198
+ def parse(string: ostk.core.type.String) -> OPM:
199
+ """
200
+ Parse an OPM message from a string.
201
+
202
+ Args:
203
+ string (str): The string containing the OPM message.
204
+
205
+ Returns:
206
+ opm (OPM): The OPM message.
207
+ """
208
+ @staticmethod
209
+ def undefined() -> OPM:
210
+ """
211
+ Return an undefined OPM message.
212
+
213
+ Returns:
214
+ opm (OPM): An undefined OPM message.
215
+ """
216
+ def __init__(self, header: typing.Any, deployments: list[...]) -> None:
217
+ """
218
+ Constructor.
219
+
220
+ Args:
221
+ header (Header): The header of the OPM message.
222
+ deployments (list[Deployment]): The deployments of the OPM message.
223
+ """
224
+ def get_deployment_at(self, index: int) -> ...:
225
+ """
226
+ Get the deployment at a given index.
227
+
228
+ Args:
229
+ index (int): The index of the deployment.
230
+
231
+ Returns:
232
+ deployment (Deployment): The deployment at the given index.
233
+ """
234
+ def get_deployment_with_name(self, name: ostk.core.type.String) -> ...:
235
+ """
236
+ Get the deployment with a given name.
237
+
238
+ Args:
239
+ name (str): The name of the deployment.
240
+
241
+ Returns:
242
+ deployment (Deployment): The deployment with the given name.
243
+ """
244
+ def get_deployments(self) -> list[...]:
245
+ """
246
+ Get the deployments of the OPM message.
247
+
248
+ Returns:
249
+ deployments (list[Deployment]): The deployments of the OPM message.
250
+ """
251
+ def get_header(self) -> ...:
252
+ """
253
+ Get the header of the OPM message.
254
+
255
+ Returns:
256
+ header (Header): The header of the OPM message.
257
+ """
258
+ def is_defined(self) -> bool:
259
+ """
260
+ Check if the OPM message is defined.
261
+
262
+ Returns:
263
+ is_defined (bool): True if the OPM message is defined, False otherwise.
264
+ """