open-space-toolkit-astrodynamics 13.1.0__py313-none-manylinux2014_aarch64.whl → 14.0.0__py313-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.
- {open_space_toolkit_astrodynamics-13.1.0.dist-info → open_space_toolkit_astrodynamics-14.0.0.dist-info}/METADATA +3 -3
- {open_space_toolkit_astrodynamics-13.1.0.dist-info → open_space_toolkit_astrodynamics-14.0.0.dist-info}/RECORD +52 -20
- {open_space_toolkit_astrodynamics-13.1.0.dist-info → open_space_toolkit_astrodynamics-14.0.0.dist-info}/WHEEL +1 -1
- ostk/astrodynamics/OpenSpaceToolkitAstrodynamicsPy.cpython-313-aarch64-linux-gnu.so +0 -0
- ostk/astrodynamics/__init__.pyi +785 -0
- ostk/astrodynamics/access.pyi +588 -0
- ostk/astrodynamics/conjunction/__init__.pyi +3 -0
- ostk/astrodynamics/conjunction/message/__init__.pyi +3 -0
- ostk/astrodynamics/conjunction/message/ccsds.pyi +723 -0
- ostk/astrodynamics/converters.pyi +54 -0
- ostk/astrodynamics/data/__init__.pyi +3 -0
- ostk/astrodynamics/data/provider.pyi +22 -0
- ostk/astrodynamics/dynamics.pyi +329 -0
- ostk/astrodynamics/event_condition.pyi +580 -0
- ostk/astrodynamics/flight/__init__.pyi +547 -0
- ostk/astrodynamics/flight/profile/__init__.pyi +102 -0
- ostk/astrodynamics/flight/profile/model.pyi +176 -0
- ostk/astrodynamics/flight/system.pyi +277 -0
- ostk/astrodynamics/guidance_law.pyi +282 -0
- ostk/astrodynamics/libopen-space-toolkit-astrodynamics.so.14 +0 -0
- ostk/astrodynamics/py.typed +0 -0
- ostk/astrodynamics/pytrajectory/__init__.pyi +3 -0
- ostk/astrodynamics/pytrajectory/pystate.py +2 -4
- ostk/astrodynamics/pytrajectory/pystate.pyi +63 -0
- ostk/astrodynamics/solver.pyi +232 -0
- ostk/astrodynamics/test/access/test_generator.py +130 -59
- ostk/astrodynamics/test/access/test_visibility_criterion.py +198 -0
- ostk/astrodynamics/test/data/provider/test_off_nadir.py +58 -0
- ostk/astrodynamics/test/flight/test_maneuver.py +49 -64
- ostk/astrodynamics/test/flight/test_profile.py +4 -2
- ostk/astrodynamics/test/solvers/test_finite_difference_solver.py +24 -11
- ostk/astrodynamics/test/solvers/test_temporal_condition_solver.py +9 -1
- ostk/astrodynamics/test/test_display.py +11 -5
- ostk/astrodynamics/test/test_viewer.py +70 -1
- ostk/astrodynamics/test/trajectory/state/coordinate_subset/test_cartesian_acceleration.py +136 -0
- ostk/astrodynamics/test/trajectory/state/test_coordinate_subset.py +9 -0
- ostk/astrodynamics/test/trajectory/test_local_orbital_frame_factory.py +21 -13
- ostk/astrodynamics/test/trajectory/test_propagator.py +21 -27
- ostk/astrodynamics/test/trajectory/test_segment.py +0 -1
- ostk/astrodynamics/trajectory/__init__.pyi +1794 -0
- ostk/astrodynamics/trajectory/orbit/__init__.pyi +361 -0
- ostk/astrodynamics/trajectory/orbit/message/__init__.pyi +3 -0
- ostk/astrodynamics/trajectory/orbit/message/spacex.pyi +273 -0
- ostk/astrodynamics/trajectory/orbit/model/__init__.pyi +517 -0
- ostk/astrodynamics/trajectory/orbit/model/brouwerLyddaneMean.pyi +127 -0
- ostk/astrodynamics/trajectory/orbit/model/kepler.pyi +581 -0
- ostk/astrodynamics/trajectory/orbit/model/sgp4.pyi +333 -0
- ostk/astrodynamics/trajectory/state/__init__.pyi +406 -0
- ostk/astrodynamics/trajectory/state/coordinate_subset.pyi +223 -0
- ostk/astrodynamics/viewer.py +32 -0
- ostk/astrodynamics/libopen-space-toolkit-astrodynamics.so.13 +0 -0
- {open_space_toolkit_astrodynamics-13.1.0.dist-info → open_space_toolkit_astrodynamics-14.0.0.dist-info}/top_level.txt +0 -0
- {open_space_toolkit_astrodynamics-13.1.0.dist-info → open_space_toolkit_astrodynamics-14.0.0.dist-info}/zip-safe +0 -0
@@ -0,0 +1,580 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
import ostk.astrodynamics
|
3
|
+
import ostk.astrodynamics.trajectory
|
4
|
+
import ostk.core.type
|
5
|
+
import ostk.physics.coordinate
|
6
|
+
import ostk.physics.time
|
7
|
+
import ostk.physics.unit
|
8
|
+
import typing
|
9
|
+
__all__ = ['AngularCondition', 'BooleanCondition', 'COECondition', 'InstantCondition', 'LogicalCondition', 'RealCondition']
|
10
|
+
class AngularCondition(ostk.astrodynamics.EventCondition):
|
11
|
+
"""
|
12
|
+
|
13
|
+
An Angular Event Condition.
|
14
|
+
|
15
|
+
|
16
|
+
"""
|
17
|
+
class Criterion:
|
18
|
+
"""
|
19
|
+
|
20
|
+
Angular condition criterion.
|
21
|
+
|
22
|
+
|
23
|
+
|
24
|
+
Members:
|
25
|
+
|
26
|
+
PositiveCrossing
|
27
|
+
|
28
|
+
NegativeCrossing
|
29
|
+
|
30
|
+
AnyCrossing
|
31
|
+
|
32
|
+
WithinRange
|
33
|
+
"""
|
34
|
+
AnyCrossing: typing.ClassVar[AngularCondition.Criterion] # value = <Criterion.AnyCrossing: 0>
|
35
|
+
NegativeCrossing: typing.ClassVar[AngularCondition.Criterion] # value = <Criterion.NegativeCrossing: 2>
|
36
|
+
PositiveCrossing: typing.ClassVar[AngularCondition.Criterion] # value = <Criterion.PositiveCrossing: 1>
|
37
|
+
WithinRange: typing.ClassVar[AngularCondition.Criterion] # value = <Criterion.WithinRange: 3>
|
38
|
+
__members__: typing.ClassVar[dict[str, AngularCondition.Criterion]] # value = {'PositiveCrossing': <Criterion.PositiveCrossing: 1>, 'NegativeCrossing': <Criterion.NegativeCrossing: 2>, 'AnyCrossing': <Criterion.AnyCrossing: 0>, 'WithinRange': <Criterion.WithinRange: 3>}
|
39
|
+
@staticmethod
|
40
|
+
def _pybind11_conduit_v1_(*args, **kwargs):
|
41
|
+
...
|
42
|
+
def __eq__(self, other: typing.Any) -> bool:
|
43
|
+
...
|
44
|
+
def __getstate__(self) -> int:
|
45
|
+
...
|
46
|
+
def __hash__(self) -> int:
|
47
|
+
...
|
48
|
+
def __index__(self) -> int:
|
49
|
+
...
|
50
|
+
def __init__(self, value: int) -> None:
|
51
|
+
...
|
52
|
+
def __int__(self) -> int:
|
53
|
+
...
|
54
|
+
def __ne__(self, other: typing.Any) -> bool:
|
55
|
+
...
|
56
|
+
def __repr__(self) -> str:
|
57
|
+
...
|
58
|
+
def __setstate__(self, state: int) -> None:
|
59
|
+
...
|
60
|
+
def __str__(self) -> str:
|
61
|
+
...
|
62
|
+
@property
|
63
|
+
def name(self) -> str:
|
64
|
+
...
|
65
|
+
@property
|
66
|
+
def value(self) -> int:
|
67
|
+
...
|
68
|
+
@staticmethod
|
69
|
+
def _pybind11_conduit_v1_(*args, **kwargs):
|
70
|
+
...
|
71
|
+
@staticmethod
|
72
|
+
def string_from_criterion(criterion: AngularCondition.Criterion) -> ostk.core.type.String:
|
73
|
+
"""
|
74
|
+
Get the string representation of a criterion.
|
75
|
+
|
76
|
+
Args:
|
77
|
+
criterion (ostk.astrodynamics.event_condition.AngularCondition.Criterion): The criterion.
|
78
|
+
|
79
|
+
Returns:
|
80
|
+
str: The string representation of the criterion.
|
81
|
+
"""
|
82
|
+
@staticmethod
|
83
|
+
def within_range(name: ostk.core.type.String, evaluator: typing.Callable[[ostk.astrodynamics.trajectory.State], ostk.core.type.Real], target_range: tuple[ostk.physics.unit.Angle, ostk.physics.unit.Angle]) -> AngularCondition:
|
84
|
+
"""
|
85
|
+
Create an angular condition that is satisfied when the angle is within a range.
|
86
|
+
|
87
|
+
Args:
|
88
|
+
name (str): The name of the condition.
|
89
|
+
evaluator (function): The evaluator of the condition.
|
90
|
+
target_range (tuple): The target range of the condition.
|
91
|
+
|
92
|
+
Returns:
|
93
|
+
AngularCondition: The angular condition.
|
94
|
+
"""
|
95
|
+
@typing.overload
|
96
|
+
def __init__(self, name: ostk.core.type.String, criterion: AngularCondition.Criterion, evaluator: typing.Callable[[ostk.astrodynamics.trajectory.State], ostk.core.type.Real], target_angle: ostk.physics.unit.Angle) -> None:
|
97
|
+
"""
|
98
|
+
Constructor.
|
99
|
+
|
100
|
+
Args:
|
101
|
+
name (str): The name of the condition.
|
102
|
+
criterion (ostk.astrodynamics.event_condition.AngularCondition.Criterion): The criterion of the condition.
|
103
|
+
evaluator (function): The evaluator of the condition.
|
104
|
+
target_angle (Angle): The target angle of the condition.
|
105
|
+
"""
|
106
|
+
@typing.overload
|
107
|
+
def __init__(self, name: ostk.core.type.String, criterion: AngularCondition.Criterion, evaluator: typing.Callable[[ostk.astrodynamics.trajectory.State], ostk.core.type.Real], target: ostk.astrodynamics.EventCondition.Target) -> None:
|
108
|
+
"""
|
109
|
+
Constructor.
|
110
|
+
|
111
|
+
Args:
|
112
|
+
name (str): The name of the condition.
|
113
|
+
criterion (ostk.astrodynamics.event_condition.AngularCondition.Criterion): The criterion of the condition.
|
114
|
+
evaluator (function): The evaluator of the condition.
|
115
|
+
target (EventConditionTarget): The target of the condition.
|
116
|
+
"""
|
117
|
+
def __repr__(self) -> str:
|
118
|
+
...
|
119
|
+
def __str__(self) -> str:
|
120
|
+
...
|
121
|
+
def get_criterion(self) -> AngularCondition.Criterion:
|
122
|
+
"""
|
123
|
+
Get the criterion of the condition.
|
124
|
+
|
125
|
+
Returns:
|
126
|
+
ostk.astrodynamics.event_condition.AngularCondition.Criterion: The criterion of the condition.
|
127
|
+
"""
|
128
|
+
def get_target_angle(self) -> ostk.physics.unit.Angle:
|
129
|
+
"""
|
130
|
+
Get the target angle of the condition.
|
131
|
+
|
132
|
+
Returns:
|
133
|
+
Angle: The target angle of the condition.
|
134
|
+
"""
|
135
|
+
def get_target_range(self) -> tuple[ostk.physics.unit.Angle, ostk.physics.unit.Angle]:
|
136
|
+
"""
|
137
|
+
Get the target range of the condition.
|
138
|
+
|
139
|
+
Returns:
|
140
|
+
tuple: The target range of the condition.
|
141
|
+
"""
|
142
|
+
def is_satisfied(self, current_state: ostk.astrodynamics.trajectory.State, previous_state: ostk.astrodynamics.trajectory.State) -> bool:
|
143
|
+
"""
|
144
|
+
Check if the condition is satisfied.
|
145
|
+
|
146
|
+
Args:
|
147
|
+
current_state (State): The current state.
|
148
|
+
previous_state (State): The previous state.
|
149
|
+
|
150
|
+
Returns:
|
151
|
+
bool: True if the condition is satisfied, False otherwise.
|
152
|
+
"""
|
153
|
+
class BooleanCondition(RealCondition):
|
154
|
+
"""
|
155
|
+
|
156
|
+
A Boolean Event Condition.
|
157
|
+
|
158
|
+
|
159
|
+
"""
|
160
|
+
@staticmethod
|
161
|
+
def _pybind11_conduit_v1_(*args, **kwargs):
|
162
|
+
...
|
163
|
+
def __init__(self, name: ostk.core.type.String, criterion: RealCondition.Criterion, evaluator: typing.Callable[[ostk.astrodynamics.trajectory.State], bool], is_inverse: bool) -> None:
|
164
|
+
"""
|
165
|
+
Constructor.
|
166
|
+
|
167
|
+
Args:
|
168
|
+
name (str): The name of the condition.
|
169
|
+
criterion (Criterion): The criterion of the condition.
|
170
|
+
evaluator (function): The evaluator of the condition.
|
171
|
+
is_inverse (bool): Whether the condition is inverse.
|
172
|
+
"""
|
173
|
+
def __repr__(self) -> str:
|
174
|
+
...
|
175
|
+
def __str__(self) -> str:
|
176
|
+
...
|
177
|
+
def evaluate(self, state: ostk.astrodynamics.trajectory.State) -> ostk.core.type.Real:
|
178
|
+
"""
|
179
|
+
Evaluate the condition.
|
180
|
+
|
181
|
+
Args:
|
182
|
+
state (State): The state.
|
183
|
+
|
184
|
+
Returns:
|
185
|
+
bool: True if the condition is satisfied, False otherwise.
|
186
|
+
"""
|
187
|
+
def is_inversed(self) -> bool:
|
188
|
+
"""
|
189
|
+
Check if the condition is inverse.
|
190
|
+
|
191
|
+
Returns:
|
192
|
+
bool: True if the condition is inverse, False otherwise.
|
193
|
+
"""
|
194
|
+
def is_satisfied(self, current_state: ostk.astrodynamics.trajectory.State, previous_state: ostk.astrodynamics.trajectory.State) -> bool:
|
195
|
+
"""
|
196
|
+
Check if the condition is satisfied.
|
197
|
+
|
198
|
+
Args:
|
199
|
+
current_state (State): The current state.
|
200
|
+
previous_state (State): The previous state.
|
201
|
+
|
202
|
+
Returns:
|
203
|
+
bool: True if the condition is satisfied, False otherwise.
|
204
|
+
"""
|
205
|
+
class COECondition:
|
206
|
+
"""
|
207
|
+
|
208
|
+
A COE Event Condition.
|
209
|
+
|
210
|
+
|
211
|
+
"""
|
212
|
+
@staticmethod
|
213
|
+
def _pybind11_conduit_v1_(*args, **kwargs):
|
214
|
+
...
|
215
|
+
@staticmethod
|
216
|
+
def aop(criterion: AngularCondition.Criterion, frame: ostk.physics.coordinate.Frame, aop: ostk.astrodynamics.EventCondition.Target, gravitational_parameter: ostk.physics.unit.Derived) -> AngularCondition:
|
217
|
+
"""
|
218
|
+
Create a COE condition based on the argument of perigee.
|
219
|
+
|
220
|
+
Args:
|
221
|
+
criterion (Criterion): The criterion.
|
222
|
+
frame (Frame): The reference frame.
|
223
|
+
aop (EventConditionTarget): The argument of perigee.
|
224
|
+
gravitational_parameter (float): The gravitational parameter.
|
225
|
+
|
226
|
+
Returns:
|
227
|
+
COECondition: The COE condition.
|
228
|
+
"""
|
229
|
+
@staticmethod
|
230
|
+
def eccentric_anomaly(criterion: AngularCondition.Criterion, frame: ostk.physics.coordinate.Frame, eccentric_anomaly: ostk.astrodynamics.EventCondition.Target, gravitational_parameter: ostk.physics.unit.Derived) -> AngularCondition:
|
231
|
+
"""
|
232
|
+
Create a COE condition based on the eccentric anomaly.
|
233
|
+
|
234
|
+
Args:
|
235
|
+
criterion (Criterion): The criterion.
|
236
|
+
frame (Frame): The reference frame.
|
237
|
+
eccentric_anomaly (EventConditionTarget): The eccentric anomaly.
|
238
|
+
gravitational_parameter (float): The gravitational parameter.
|
239
|
+
|
240
|
+
Returns:
|
241
|
+
COECondition: The COE condition.
|
242
|
+
"""
|
243
|
+
@staticmethod
|
244
|
+
def eccentricity(criterion: RealCondition.Criterion, frame: ostk.physics.coordinate.Frame, eccentricity: ostk.astrodynamics.EventCondition.Target, gravitational_parameter: ostk.physics.unit.Derived) -> RealCondition:
|
245
|
+
"""
|
246
|
+
Create a COE condition based on the eccentricity.
|
247
|
+
|
248
|
+
Args:
|
249
|
+
criterion (Criterion): The criterion.
|
250
|
+
frame (Frame): The reference frame.
|
251
|
+
eccentricity (EventConditionTarget): The eccentricity.
|
252
|
+
gravitational_parameter (float): The gravitational parameter.
|
253
|
+
|
254
|
+
Returns:
|
255
|
+
COECondition: The COE condition.
|
256
|
+
"""
|
257
|
+
@staticmethod
|
258
|
+
def inclination(criterion: AngularCondition.Criterion, frame: ostk.physics.coordinate.Frame, inclination: ostk.astrodynamics.EventCondition.Target, gravitational_parameter: ostk.physics.unit.Derived) -> AngularCondition:
|
259
|
+
"""
|
260
|
+
Create a COE condition based on the inclination.
|
261
|
+
|
262
|
+
Args:
|
263
|
+
criterion (Criterion): The criterion.
|
264
|
+
frame (Frame): The reference frame.
|
265
|
+
inclination (EventConditionTarget): The inclination.
|
266
|
+
gravitational_parameter (float): The gravitational parameter.
|
267
|
+
|
268
|
+
Returns:
|
269
|
+
COECondition: The COE condition.
|
270
|
+
"""
|
271
|
+
@staticmethod
|
272
|
+
def mean_anomaly(criterion: AngularCondition.Criterion, frame: ostk.physics.coordinate.Frame, mean_anomaly: ostk.astrodynamics.EventCondition.Target, gravitational_parameter: ostk.physics.unit.Derived) -> AngularCondition:
|
273
|
+
"""
|
274
|
+
Create a COE condition based on the mean anomaly.
|
275
|
+
|
276
|
+
Args:
|
277
|
+
criterion (Criterion): The criterion.
|
278
|
+
frame (Frame): The reference frame.
|
279
|
+
mean_anomaly (EventConditionTarget): The mean anomaly.
|
280
|
+
gravitational_parameter (float): The gravitational parameter.
|
281
|
+
|
282
|
+
Returns:
|
283
|
+
COECondition: The COE condition.
|
284
|
+
"""
|
285
|
+
@staticmethod
|
286
|
+
def raan(criterion: AngularCondition.Criterion, frame: ostk.physics.coordinate.Frame, raan: ostk.astrodynamics.EventCondition.Target, gravitational_parameter: ostk.physics.unit.Derived) -> AngularCondition:
|
287
|
+
"""
|
288
|
+
Create a COE condition based on the right ascension of the ascending node.
|
289
|
+
|
290
|
+
Args:
|
291
|
+
criterion (Criterion): The criterion.
|
292
|
+
frame (Frame): The reference frame.
|
293
|
+
raan (EventConditionTarget): The right ascension of the ascending node.
|
294
|
+
gravitational_parameter (float): The gravitational parameter.
|
295
|
+
|
296
|
+
Returns:
|
297
|
+
COECondition: The COE condition.
|
298
|
+
"""
|
299
|
+
@staticmethod
|
300
|
+
def semi_major_axis(criterion: RealCondition.Criterion, frame: ostk.physics.coordinate.Frame, semi_major_axis: ostk.astrodynamics.EventCondition.Target, gravitational_parameter: ostk.physics.unit.Derived) -> RealCondition:
|
301
|
+
"""
|
302
|
+
Create a COE condition based on the semi-major axis.
|
303
|
+
|
304
|
+
Args:
|
305
|
+
criterion (Criterion): The criterion.
|
306
|
+
frame (Frame): The reference frame.
|
307
|
+
semi_major_axis (EventConditionTarget): The semi-major axis.
|
308
|
+
gravitational_parameter (float): The gravitational parameter.
|
309
|
+
|
310
|
+
Returns:
|
311
|
+
COECondition: The COE condition.
|
312
|
+
"""
|
313
|
+
@staticmethod
|
314
|
+
def true_anomaly(criterion: AngularCondition.Criterion, frame: ostk.physics.coordinate.Frame, true_anomaly: ostk.astrodynamics.EventCondition.Target, gravitational_parameter: ostk.physics.unit.Derived) -> AngularCondition:
|
315
|
+
"""
|
316
|
+
Create a COE condition based on the true anomaly.
|
317
|
+
|
318
|
+
Args:
|
319
|
+
criterion (Criterion): The criterion.
|
320
|
+
frame (Frame): The reference frame.
|
321
|
+
true_anomaly (EventConditionTarget): The true anomaly.
|
322
|
+
gravitational_parameter (float): The gravitational parameter.
|
323
|
+
|
324
|
+
Returns:
|
325
|
+
COECondition: The COE condition.
|
326
|
+
"""
|
327
|
+
class InstantCondition(RealCondition):
|
328
|
+
"""
|
329
|
+
|
330
|
+
An Instant Event Condition.
|
331
|
+
|
332
|
+
|
333
|
+
"""
|
334
|
+
@staticmethod
|
335
|
+
def _pybind11_conduit_v1_(*args, **kwargs):
|
336
|
+
...
|
337
|
+
def __init__(self, criterion: RealCondition.Criterion, instant: ostk.physics.time.Instant) -> None:
|
338
|
+
"""
|
339
|
+
Constructor.
|
340
|
+
|
341
|
+
Args:
|
342
|
+
criterion (Criterion): The criterion.
|
343
|
+
instant (Instant): The instant.
|
344
|
+
"""
|
345
|
+
def get_instant(self) -> ostk.physics.time.Instant:
|
346
|
+
"""
|
347
|
+
Get the instant.
|
348
|
+
|
349
|
+
Returns:
|
350
|
+
Instant: The instant.
|
351
|
+
"""
|
352
|
+
class LogicalCondition(ostk.astrodynamics.EventCondition):
|
353
|
+
"""
|
354
|
+
|
355
|
+
A Logical Event Condition. This class is used to combine multiple event conditions into a single set.
|
356
|
+
|
357
|
+
|
358
|
+
"""
|
359
|
+
class Type:
|
360
|
+
"""
|
361
|
+
|
362
|
+
Logical Condition Type.
|
363
|
+
- Disjunctive (Or)
|
364
|
+
- Conjucntive (And)
|
365
|
+
|
366
|
+
|
367
|
+
Members:
|
368
|
+
|
369
|
+
And : And
|
370
|
+
|
371
|
+
Or : Or
|
372
|
+
"""
|
373
|
+
And: typing.ClassVar[LogicalCondition.Type] # value = <Type.And: 0>
|
374
|
+
Or: typing.ClassVar[LogicalCondition.Type] # value = <Type.Or: 1>
|
375
|
+
__members__: typing.ClassVar[dict[str, LogicalCondition.Type]] # value = {'And': <Type.And: 0>, 'Or': <Type.Or: 1>}
|
376
|
+
@staticmethod
|
377
|
+
def _pybind11_conduit_v1_(*args, **kwargs):
|
378
|
+
...
|
379
|
+
def __eq__(self, other: typing.Any) -> bool:
|
380
|
+
...
|
381
|
+
def __getstate__(self) -> int:
|
382
|
+
...
|
383
|
+
def __hash__(self) -> int:
|
384
|
+
...
|
385
|
+
def __index__(self) -> int:
|
386
|
+
...
|
387
|
+
def __init__(self, value: int) -> None:
|
388
|
+
...
|
389
|
+
def __int__(self) -> int:
|
390
|
+
...
|
391
|
+
def __ne__(self, other: typing.Any) -> bool:
|
392
|
+
...
|
393
|
+
def __repr__(self) -> str:
|
394
|
+
...
|
395
|
+
def __setstate__(self, state: int) -> None:
|
396
|
+
...
|
397
|
+
def __str__(self) -> str:
|
398
|
+
...
|
399
|
+
@property
|
400
|
+
def name(self) -> str:
|
401
|
+
...
|
402
|
+
@property
|
403
|
+
def value(self) -> int:
|
404
|
+
...
|
405
|
+
@staticmethod
|
406
|
+
def _pybind11_conduit_v1_(*args, **kwargs):
|
407
|
+
...
|
408
|
+
def __init__(self, name: ostk.core.type.String, type: LogicalCondition.Type, event_conditions: list[ostk.astrodynamics.EventCondition]) -> None:
|
409
|
+
"""
|
410
|
+
Constructor.
|
411
|
+
|
412
|
+
Args:
|
413
|
+
name (str): The name of the condition.
|
414
|
+
type (Type): The type of the logical condition.
|
415
|
+
event_conditions (list[EventCondition]): The list of event conditions.
|
416
|
+
"""
|
417
|
+
def get_event_conditions(self) -> list[ostk.astrodynamics.EventCondition]:
|
418
|
+
"""
|
419
|
+
Get the list of event conditions.
|
420
|
+
|
421
|
+
Returns:
|
422
|
+
list[EventCondition]: The list of event conditions.
|
423
|
+
"""
|
424
|
+
def get_type(self) -> LogicalCondition.Type:
|
425
|
+
"""
|
426
|
+
Get the type of the logical condition.
|
427
|
+
|
428
|
+
Returns:
|
429
|
+
Type: The type of the logical condition.
|
430
|
+
"""
|
431
|
+
class RealCondition(ostk.astrodynamics.EventCondition):
|
432
|
+
"""
|
433
|
+
|
434
|
+
A Real Event Condition.
|
435
|
+
|
436
|
+
|
437
|
+
"""
|
438
|
+
class Criterion:
|
439
|
+
"""
|
440
|
+
|
441
|
+
The Criterion that defines how the condition is satisfied.
|
442
|
+
|
443
|
+
|
444
|
+
Members:
|
445
|
+
|
446
|
+
PositiveCrossing : The positive crossing criterion
|
447
|
+
|
448
|
+
NegativeCrossing : The negative crossing criterion
|
449
|
+
|
450
|
+
AnyCrossing : The any crossing criterion
|
451
|
+
|
452
|
+
StrictlyPositive : The strictly positive criterion
|
453
|
+
|
454
|
+
StrictlyNegative : The strictly negative criterion
|
455
|
+
"""
|
456
|
+
AnyCrossing: typing.ClassVar[RealCondition.Criterion] # value = <Criterion.AnyCrossing: 2>
|
457
|
+
NegativeCrossing: typing.ClassVar[RealCondition.Criterion] # value = <Criterion.NegativeCrossing: 1>
|
458
|
+
PositiveCrossing: typing.ClassVar[RealCondition.Criterion] # value = <Criterion.PositiveCrossing: 0>
|
459
|
+
StrictlyNegative: typing.ClassVar[RealCondition.Criterion] # value = <Criterion.StrictlyNegative: 4>
|
460
|
+
StrictlyPositive: typing.ClassVar[RealCondition.Criterion] # value = <Criterion.StrictlyPositive: 3>
|
461
|
+
__members__: typing.ClassVar[dict[str, RealCondition.Criterion]] # value = {'PositiveCrossing': <Criterion.PositiveCrossing: 0>, 'NegativeCrossing': <Criterion.NegativeCrossing: 1>, 'AnyCrossing': <Criterion.AnyCrossing: 2>, 'StrictlyPositive': <Criterion.StrictlyPositive: 3>, 'StrictlyNegative': <Criterion.StrictlyNegative: 4>}
|
462
|
+
@staticmethod
|
463
|
+
def _pybind11_conduit_v1_(*args, **kwargs):
|
464
|
+
...
|
465
|
+
def __eq__(self, other: typing.Any) -> bool:
|
466
|
+
...
|
467
|
+
def __getstate__(self) -> int:
|
468
|
+
...
|
469
|
+
def __hash__(self) -> int:
|
470
|
+
...
|
471
|
+
def __index__(self) -> int:
|
472
|
+
...
|
473
|
+
def __init__(self, value: int) -> None:
|
474
|
+
...
|
475
|
+
def __int__(self) -> int:
|
476
|
+
...
|
477
|
+
def __ne__(self, other: typing.Any) -> bool:
|
478
|
+
...
|
479
|
+
def __repr__(self) -> str:
|
480
|
+
...
|
481
|
+
def __setstate__(self, state: int) -> None:
|
482
|
+
...
|
483
|
+
def __str__(self) -> str:
|
484
|
+
...
|
485
|
+
@property
|
486
|
+
def name(self) -> str:
|
487
|
+
...
|
488
|
+
@property
|
489
|
+
def value(self) -> int:
|
490
|
+
...
|
491
|
+
@staticmethod
|
492
|
+
def _pybind11_conduit_v1_(*args, **kwargs):
|
493
|
+
...
|
494
|
+
@staticmethod
|
495
|
+
def duration_condition(criterion: RealCondition.Criterion, duration: ostk.physics.time.Duration) -> RealCondition:
|
496
|
+
"""
|
497
|
+
Generate a duration condition.
|
498
|
+
|
499
|
+
Args:
|
500
|
+
criterion (Criterion): The criterion of the condition.
|
501
|
+
duration (Duration): Duration target.
|
502
|
+
|
503
|
+
Returns:
|
504
|
+
RealCondition: The duration condition.
|
505
|
+
"""
|
506
|
+
@staticmethod
|
507
|
+
def string_from_criterion(criterion: RealCondition.Criterion) -> ostk.core.type.String:
|
508
|
+
"""
|
509
|
+
Get the string representation of a criterion.
|
510
|
+
|
511
|
+
Args:
|
512
|
+
criterion (Criterion): The criterion.
|
513
|
+
|
514
|
+
Returns:
|
515
|
+
str: The string representation.
|
516
|
+
"""
|
517
|
+
@typing.overload
|
518
|
+
def __init__(self, name: ostk.core.type.String, criterion: RealCondition.Criterion, evaluator: typing.Callable[[ostk.astrodynamics.trajectory.State], ostk.core.type.Real], target_value: ostk.core.type.Real = 0.0) -> None:
|
519
|
+
"""
|
520
|
+
Constructor.
|
521
|
+
|
522
|
+
Args:
|
523
|
+
name (str): The name of the condition.
|
524
|
+
criterion (Criterion): The criterion of the condition.
|
525
|
+
evaluator (function): The evaluator of the condition.
|
526
|
+
target_value (float): The target value of the condition.
|
527
|
+
"""
|
528
|
+
@typing.overload
|
529
|
+
def __init__(self, name: ostk.core.type.String, criterion: RealCondition.Criterion, evaluator: typing.Callable[[ostk.astrodynamics.trajectory.State], ostk.core.type.Real], target: ostk.astrodynamics.EventCondition.Target) -> None:
|
530
|
+
"""
|
531
|
+
Constructor.
|
532
|
+
|
533
|
+
Args:
|
534
|
+
name (str): The name of the condition.
|
535
|
+
criterion (Criterion): The criterion of the condition.
|
536
|
+
evaluator (function): The evaluator of the condition.
|
537
|
+
target (EventConditionTarget): The target of the condition.
|
538
|
+
"""
|
539
|
+
def __repr__(self) -> str:
|
540
|
+
"""
|
541
|
+
Return a string representation of the real condition.
|
542
|
+
|
543
|
+
Returns:
|
544
|
+
str: The string representation.
|
545
|
+
"""
|
546
|
+
def __str__(self) -> str:
|
547
|
+
"""
|
548
|
+
Return a string representation of the real condition.
|
549
|
+
|
550
|
+
Returns:
|
551
|
+
str: The string representation.
|
552
|
+
"""
|
553
|
+
def evaluate(self, state: ostk.astrodynamics.trajectory.State) -> ostk.core.type.Real:
|
554
|
+
"""
|
555
|
+
Evaluate the condition.
|
556
|
+
|
557
|
+
Args:
|
558
|
+
state (State): The state.
|
559
|
+
|
560
|
+
Returns:
|
561
|
+
bool: True if the condition is satisfied, False otherwise.
|
562
|
+
"""
|
563
|
+
def get_criterion(self) -> RealCondition.Criterion:
|
564
|
+
"""
|
565
|
+
Get the criterion of the condition.
|
566
|
+
|
567
|
+
Returns:
|
568
|
+
Criterion: The criterion.
|
569
|
+
"""
|
570
|
+
def is_satisfied(self, current_state: ostk.astrodynamics.trajectory.State, previous_state: ostk.astrodynamics.trajectory.State) -> bool:
|
571
|
+
"""
|
572
|
+
Check if the condition is satisfied.
|
573
|
+
|
574
|
+
Args:
|
575
|
+
current_state (State): The current state.
|
576
|
+
previous_state (State): The previous state.
|
577
|
+
|
578
|
+
Returns:
|
579
|
+
bool: True if the condition is satisfied, False otherwise.
|
580
|
+
"""
|