keplemon 1.1.2__cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl → 1.2.0__cp311-cp311-manylinux_2_17_aarch64.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.
Potentially problematic release.
This version of keplemon might be problematic. Click here for more details.
- keplemon/_keplemon.cpython-311-aarch64-linux-gnu.so +0 -0
- keplemon/bodies.pyi +30 -3
- keplemon/events.pyi +6 -2
- keplemon/saal/astro_func_interface.py +6 -0
- keplemon/saal/astro_func_interface.pyi +41 -1
- {keplemon-1.1.2.dist-info → keplemon-1.2.0.dist-info}/METADATA +1 -1
- {keplemon-1.1.2.dist-info → keplemon-1.2.0.dist-info}/RECORD +9 -9
- {keplemon-1.1.2.dist-info → keplemon-1.2.0.dist-info}/WHEEL +0 -0
- {keplemon-1.1.2.dist-info → keplemon-1.2.0.dist-info}/entry_points.txt +0 -0
|
Binary file
|
keplemon/bodies.pyi
CHANGED
|
@@ -12,6 +12,7 @@ from keplemon.catalogs import TLECatalog
|
|
|
12
12
|
from keplemon.time import Epoch, TimeSpan
|
|
13
13
|
from keplemon.events import CloseApproach, CloseApproachReport, HorizonAccessReport, FieldOfViewReport
|
|
14
14
|
from keplemon.propagation import ForceProperties
|
|
15
|
+
from keplemon.enums import ReferenceFrame
|
|
15
16
|
|
|
16
17
|
class Earth:
|
|
17
18
|
@staticmethod
|
|
@@ -270,6 +271,17 @@ class Observatory:
|
|
|
270
271
|
"""
|
|
271
272
|
...
|
|
272
273
|
|
|
274
|
+
@classmethod
|
|
275
|
+
def from_cartesian_state(cls, state: CartesianState) -> Observatory:
|
|
276
|
+
"""
|
|
277
|
+
Create an observatory from a Cartesian state.
|
|
278
|
+
|
|
279
|
+
Args:
|
|
280
|
+
state: Cartesian state of the observatory
|
|
281
|
+
|
|
282
|
+
"""
|
|
283
|
+
...
|
|
284
|
+
|
|
273
285
|
def get_horizon_access_report(
|
|
274
286
|
self,
|
|
275
287
|
satellite: Satellite,
|
|
@@ -299,16 +311,31 @@ class Observatory:
|
|
|
299
311
|
sensor_direction: TopocentricElements,
|
|
300
312
|
angular_threshold: float,
|
|
301
313
|
sats: Constellation,
|
|
314
|
+
reference_frame: ReferenceFrame,
|
|
302
315
|
) -> FieldOfViewReport:
|
|
303
316
|
"""
|
|
304
|
-
Calculate field of view
|
|
317
|
+
Calculate satellites in the field of view from a given time and direction.
|
|
305
318
|
|
|
306
319
|
Args:
|
|
307
320
|
epoch: UTC epoch of the report
|
|
308
321
|
sensor_direction: Topocentric direction the sensor is pointing
|
|
309
322
|
angular_threshold: Angular threshold in **_degrees_**
|
|
310
323
|
sats: Constellation of satellites to check for being in the field of view
|
|
311
|
-
|
|
312
|
-
|
|
324
|
+
reference_frame: Reference frame of the output direction elements
|
|
325
|
+
"""
|
|
326
|
+
...
|
|
327
|
+
|
|
328
|
+
def get_topocentric_to_satellite(
|
|
329
|
+
self,
|
|
330
|
+
epoch: Epoch,
|
|
331
|
+
sat: Satellite,
|
|
332
|
+
reference_frame: ReferenceFrame,
|
|
333
|
+
) -> TopocentricElements:
|
|
334
|
+
"""
|
|
335
|
+
Get the topocentric elements of a satellite as seen from the observatory.
|
|
336
|
+
Args:
|
|
337
|
+
epoch: UTC epoch of the observation
|
|
338
|
+
sat: Satellite to observe
|
|
339
|
+
reference_frame: Reference frame of the output direction elements
|
|
313
340
|
"""
|
|
314
341
|
...
|
keplemon/events.pyi
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
# flake8: noqa
|
|
2
2
|
from keplemon.time import Epoch, TimeSpan
|
|
3
3
|
from keplemon.elements import HorizonState, CartesianVector, TopocentricElements
|
|
4
|
+
from keplemon.enums import ReferenceFrame
|
|
4
5
|
|
|
5
6
|
class FieldOfViewCandidate:
|
|
6
7
|
satellite_id: str
|
|
@@ -25,14 +26,17 @@ class FieldOfViewReport:
|
|
|
25
26
|
candidates: list[FieldOfViewCandidate]
|
|
26
27
|
"""List of candidate satellites within the field of view"""
|
|
27
28
|
|
|
29
|
+
reference_frame: ReferenceFrame
|
|
30
|
+
"""Reference frame of the output direction elements"""
|
|
31
|
+
|
|
28
32
|
class CloseApproach:
|
|
29
33
|
epoch: Epoch
|
|
30
34
|
"""UTC epoch of the close approach"""
|
|
31
35
|
|
|
32
|
-
primary_id:
|
|
36
|
+
primary_id: str
|
|
33
37
|
"""Satellite ID of the primary body in the close approach"""
|
|
34
38
|
|
|
35
|
-
secondary_id:
|
|
39
|
+
secondary_id: str
|
|
36
40
|
"""Satellite ID of the secondary body in the close approach"""
|
|
37
41
|
|
|
38
42
|
distance: float
|
|
@@ -4,6 +4,9 @@ from keplemon._keplemon.saal.astro_func_interface import ( # type: ignore
|
|
|
4
4
|
ra_dec_to_az_el,
|
|
5
5
|
mean_motion_to_sma,
|
|
6
6
|
topo_date_to_equinox,
|
|
7
|
+
topo_equinox_to_date,
|
|
8
|
+
theta_teme_to_lla,
|
|
9
|
+
time_teme_to_lla,
|
|
7
10
|
XA_TOPO_RA,
|
|
8
11
|
XA_TOPO_DEC,
|
|
9
12
|
XA_TOPO_AZ,
|
|
@@ -23,6 +26,8 @@ __all__ = [
|
|
|
23
26
|
"teme_to_topo",
|
|
24
27
|
"ra_dec_to_az_el_time",
|
|
25
28
|
"ra_dec_to_az_el",
|
|
29
|
+
"theta_teme_to_lla",
|
|
30
|
+
"time_teme_to_lla",
|
|
26
31
|
"XA_TOPO_RA",
|
|
27
32
|
"XA_TOPO_DEC",
|
|
28
33
|
"XA_TOPO_AZ",
|
|
@@ -38,4 +43,5 @@ __all__ = [
|
|
|
38
43
|
"topo_date_to_equinox",
|
|
39
44
|
"YROFEQNX_2000",
|
|
40
45
|
"YROFEQNX_CURR",
|
|
46
|
+
"topo_equinox_to_date",
|
|
41
47
|
]
|
|
@@ -83,7 +83,7 @@ def topo_date_to_equinox(yr_of_equinox: int, ds50utc: float, ra: float, dec: flo
|
|
|
83
83
|
Convert topocentric right ascension and declination to equinox coordinates for a given year of equinox.
|
|
84
84
|
|
|
85
85
|
Args:
|
|
86
|
-
yr_of_equinox: Year of the equinox (
|
|
86
|
+
yr_of_equinox: Year of the equinox (using YROFEQNX_ constants).
|
|
87
87
|
ds50utc: Epoch in DS50 UTC format.
|
|
88
88
|
ra: Topocentric right ascension in degrees.
|
|
89
89
|
dec: Topocentric declination in degrees.
|
|
@@ -93,6 +93,46 @@ def topo_date_to_equinox(yr_of_equinox: int, ds50utc: float, ra: float, dec: flo
|
|
|
93
93
|
"""
|
|
94
94
|
...
|
|
95
95
|
|
|
96
|
+
def topo_equinox_to_date(yr_of_equinox: int, ds50utc: float, ra: float, dec: float) -> tuple[float, float]:
|
|
97
|
+
"""
|
|
98
|
+
Convert equinox right ascension and declination to topocentric coordinates for a given year of equinox.
|
|
99
|
+
|
|
100
|
+
Args:
|
|
101
|
+
yr_of_equinox: Year of the equinox (using YROFEQNX_ constants).
|
|
102
|
+
ds50utc: Epoch in DS50 UTC format.
|
|
103
|
+
ra: Equinox right ascension in degrees.
|
|
104
|
+
dec: Equinox declination in degrees.
|
|
105
|
+
|
|
106
|
+
Returns:
|
|
107
|
+
A tuple containing the topocentric right ascension and declination in degrees.
|
|
108
|
+
"""
|
|
109
|
+
...
|
|
110
|
+
|
|
111
|
+
def theta_teme_to_lla(theta: float, lat: float, long: float, ra: float, dec: float) -> tuple[float, float]:
|
|
112
|
+
"""
|
|
113
|
+
Convert TEME coordinates to latitude, longitude, and altitude.
|
|
114
|
+
|
|
115
|
+
Args:
|
|
116
|
+
theta: Greenwich angle in radians.
|
|
117
|
+
lat: Sensor latitude in degrees.
|
|
118
|
+
long: Sensor longitude in degrees.
|
|
119
|
+
ra: TEME right ascension in degrees.
|
|
120
|
+
dec: TEME declination in degrees.
|
|
121
|
+
"""
|
|
122
|
+
...
|
|
123
|
+
|
|
124
|
+
def time_teme_to_lla(ds50_utc: float, lat: float, long: float, ra: float, dec: float) -> tuple[float, float]:
|
|
125
|
+
"""
|
|
126
|
+
Convert TEME coordinates to latitude, longitude, and altitude.
|
|
127
|
+
|
|
128
|
+
Args:
|
|
129
|
+
ds50_utc: Epoch in DS50 UTC format.
|
|
130
|
+
lat: Sensor latitude in degrees.
|
|
131
|
+
long: Sensor longitude in degrees.
|
|
132
|
+
ra: TEME right ascension in degrees.
|
|
133
|
+
dec: TEME declination in degrees.
|
|
134
|
+
"""
|
|
135
|
+
|
|
96
136
|
XA_TOPO_AZ: int
|
|
97
137
|
"""Index for topocentric azimuth in degrees."""
|
|
98
138
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
keplemon-1.
|
|
2
|
-
keplemon-1.
|
|
3
|
-
keplemon-1.
|
|
1
|
+
keplemon-1.2.0.dist-info/METADATA,sha256=U0X9nUGwhoMBoT7kXFTgQ0dlhEvBysgJyZOCUwcE2b8,863
|
|
2
|
+
keplemon-1.2.0.dist-info/WHEEL,sha256=L4tc8P0dEMfgwDIpLfQnhFzDSIIOv9emxQEbtjoAqis,131
|
|
3
|
+
keplemon-1.2.0.dist-info/entry_points.txt,sha256=eYbCkvQvWfRDQ0LzaCELov1xeLAxQEHlfdgNq-LXyb0,49
|
|
4
4
|
keplemon.libs/libastrofunc-d5d29f1a.so,sha256=e5roPhiI5MEQZvQ6o8SY2c2WhSThxXGHLE5HdJzP_1Y,468593
|
|
5
5
|
keplemon.libs/libdllmain-83b073db.so,sha256=YD97bgzxLVt6Yip-fNxEKSOj3iYCtBmaip0d2RpBQgs,331977
|
|
6
6
|
keplemon.libs/libelops-d6961cbd.so,sha256=4XTr3Ip2PWvjLVBAGe53r77_M6t5R9_L3go4KS-BKfI,331017
|
|
@@ -19,7 +19,7 @@ keplemon.libs/libvcm-460d66c8.so,sha256=yDcaK-v2FOOiFf-doyTvPcGPvRK_vuNMMEomKNac
|
|
|
19
19
|
keplemon/__init__.py,sha256=M9q5lNYh_BE6l4xCGJ5IH5PQH9aNm4q_r67ljsNkKvM,832
|
|
20
20
|
keplemon/__init__.pyi,sha256=uE60ln_KJgcfvKburVmbcKT0h_wLPgjBWuyNLgI8ETI,1295
|
|
21
21
|
keplemon/__main__.py,sha256=-3GVkDOA0lV0MIqU9gPb4zbVimg2lA8HMkvdPDw1O28,669
|
|
22
|
-
keplemon/_keplemon.cpython-311-aarch64-linux-gnu.so,sha256=
|
|
22
|
+
keplemon/_keplemon.cpython-311-aarch64-linux-gnu.so,sha256=hYlk5X_OnEnBYU2mBjigKh6MoCagpyssnlikMGH1Trg,2560729
|
|
23
23
|
keplemon/assets/EGM-2008.GEO,sha256=K2nG8HGLATIHZYMfw3GSClYOTCuZ7rq4RdCeUNgCw5A,148770
|
|
24
24
|
keplemon/assets/EGM-96.GEO,sha256=VBkILuvEMwAPuWmUHy2PeyEfULOwJ4PEJLNf5hr84mU,148770
|
|
25
25
|
keplemon/assets/GEM_5-22.GEO,sha256=stemYLn1ChXa-VdLGHYfa15AXZa_xxGZQ65p4c3gffI,6852
|
|
@@ -32,7 +32,7 @@ keplemon/assets/SGP4_Open_License.txt,sha256=0WofOXQb5YJqnYhXWXnBdCajiTJQAT60UAk
|
|
|
32
32
|
keplemon/assets/WGS84-70.GEO,sha256=ARjEC_5s2SVd0Kh9udbTy1ztBwTeuBYPOhUVJgIqit8,148510
|
|
33
33
|
keplemon/assets/time_constants.dat,sha256=qDpJ2UrQvIDfxsBc4P2AdLS-b2lyR7RCzjqmeG4Ypl8,1226736
|
|
34
34
|
keplemon/bodies.py,sha256=XnaY6XTuj8CHM3XOwOSY3E8nSo0RWwCcAY0FGxAVWa8,208
|
|
35
|
-
keplemon/bodies.pyi,sha256=
|
|
35
|
+
keplemon/bodies.pyi,sha256=kr0tR6fei2Uq4aGBX30L_bXVS3uogB0ijnG0asAxwW0,10039
|
|
36
36
|
keplemon/catalogs.py,sha256=lw71NiXlVtb-z3pQR03afxtkLca4HJcnpZ6kDCcR-Lk,102
|
|
37
37
|
keplemon/catalogs.pyi,sha256=NU_6Mc_JY8xTYAKXOqubtPnt91YA9ZHd1hMqMFf6onc,589
|
|
38
38
|
keplemon/elements.py,sha256=P4tlpQpCUG5jkgAT_yIeL2V14AhXtekMYxRBOsPlOgc,609
|
|
@@ -42,7 +42,7 @@ keplemon/enums.pyi,sha256=s9uqkm3Zrx6HLV4dQBScRiUy0CT4QoQwFjaCLOEMW1c,2330
|
|
|
42
42
|
keplemon/estimation.py,sha256=2K87pFhOfaFohbAtBXv2SA6m_oIN-56toJOftu350fY,228
|
|
43
43
|
keplemon/estimation.pyi,sha256=zb_llx8pCx9Iv95mXXpGnXPZeJsg9Oh5GRWDLyXrMFI,5521
|
|
44
44
|
keplemon/events.py,sha256=PGp-xE-eyjYSMWpugplA7bPlrYjkR1NKSHRurFMnBcE,359
|
|
45
|
-
keplemon/events.pyi,sha256=
|
|
45
|
+
keplemon/events.pyi,sha256=4wKWpQIVkCrE0jbRUk6KpmtXtzkksnEKJUAYY8Duw58,3043
|
|
46
46
|
keplemon/exceptions.py,sha256=gTKSkN4yJ2VwR3_anpWqnIO9kQcJCO41_818NjgItiM,102
|
|
47
47
|
keplemon/libastrofunc.so,sha256=1dKfGkf2KN6WSKUA25EEo7Phrik0Ey1GTy5KeHYzkuw,274897
|
|
48
48
|
keplemon/libdllmain.so,sha256=g7Bz27qWLn77QgcRiSYe2eL-947wMr1S7oiQWkfWSTY,136849
|
|
@@ -66,8 +66,8 @@ keplemon/propagation.pyi,sha256=qJOCbtgYma4MOg3-aw9_r1IvBDnknwsJlMwlgaJiEZk,688
|
|
|
66
66
|
keplemon/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
67
67
|
keplemon/saal/__init__.py,sha256=aoTB13q7IvXuQ80jgGCnwXA29yjpOqLiTdrtyjyRqLE,123
|
|
68
68
|
keplemon/saal/__init__.pyi,sha256=GPB5f0dcK7srvSDq2i5wvHMyi-OYZakMvlrstKdDwkk,143
|
|
69
|
-
keplemon/saal/astro_func_interface.py,sha256=
|
|
70
|
-
keplemon/saal/astro_func_interface.pyi,sha256=
|
|
69
|
+
keplemon/saal/astro_func_interface.py,sha256=Z3UEbviqkGCU4OcpvgShvMoT5_WeenYZkec6A5hyDgs,984
|
|
70
|
+
keplemon/saal/astro_func_interface.pyi,sha256=it0olsVygZtIY4ekh_Hbu1_q_o87IvE7Ezslzr0_hZo,4782
|
|
71
71
|
keplemon/saal/obs_interface.py,sha256=EtsaPKixjMWfCUpMd79SvhCs3f9sRcBaal6-ickj3Vs,248
|
|
72
72
|
keplemon/saal/obs_interface.pyi,sha256=eIXbFnZSF3cX3MyXaCYLUAp0wUAbJiQ4rosqpXdf2I0,228
|
|
73
73
|
keplemon/saal/sgp4_prop_interface.py,sha256=BBKlIvXdUypcZspC8GJ2rPqfFoDKy0RM7w5qsqvobrE,127
|
|
@@ -76,4 +76,4 @@ keplemon/saal/time_func_interface.py,sha256=cshqJ15p_gcenMdmVuXTIoLeij1gsgVi0tuj
|
|
|
76
76
|
keplemon/saal/time_func_interface.pyi,sha256=GCj_EOmOceJorYQLGQQj1fE2cHxPvNrYml1DLvsaMy4,1508
|
|
77
77
|
keplemon/time.py,sha256=vvHcwWQ1JXPaQSvdBfXYZrk2_-ukDw0RnXDeN5wy3nU,2792
|
|
78
78
|
keplemon/time.pyi,sha256=S2Ul8fpuWnor9wKNFBxLwAiwrGrVN_LJH_xy6WSocv4,6260
|
|
79
|
-
keplemon-1.
|
|
79
|
+
keplemon-1.2.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|