keplemon 1.1.1__cp311-cp311-macosx_10_12_x86_64.whl → 1.1.3__cp311-cp311-macosx_10_12_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.
Potentially problematic release.
This version of keplemon might be problematic. Click here for more details.
- keplemon/_keplemon.cpython-311-darwin.so +0 -0
- keplemon/bodies.pyi +34 -0
- keplemon/events.pyi +5 -2
- keplemon/saal/astro_func_interface.py +6 -0
- keplemon/saal/astro_func_interface.pyi +41 -1
- {keplemon-1.1.1.dist-info → keplemon-1.1.3.dist-info}/METADATA +1 -1
- {keplemon-1.1.1.dist-info → keplemon-1.1.3.dist-info}/RECORD +9 -9
- {keplemon-1.1.1.dist-info → keplemon-1.1.3.dist-info}/WHEEL +1 -1
- {keplemon-1.1.1.dist-info → keplemon-1.1.3.dist-info}/entry_points.txt +0 -0
|
Binary file
|
keplemon/bodies.pyi
CHANGED
|
@@ -80,6 +80,29 @@ class Satellite:
|
|
|
80
80
|
...
|
|
81
81
|
|
|
82
82
|
def get_plot_data(self, start: Epoch, end: Epoch, step: TimeSpan) -> OrbitPlotData | None: ...
|
|
83
|
+
def get_observatory_access_report(
|
|
84
|
+
self,
|
|
85
|
+
observatories: list[Observatory],
|
|
86
|
+
start: Epoch,
|
|
87
|
+
end: Epoch,
|
|
88
|
+
min_el: float,
|
|
89
|
+
min_duration: TimeSpan,
|
|
90
|
+
) -> HorizonAccessReport | None:
|
|
91
|
+
"""
|
|
92
|
+
Calculate horizon access from multiple observatories to this satellite.
|
|
93
|
+
|
|
94
|
+
Args:
|
|
95
|
+
observatories: List of observatories to check for horizon access
|
|
96
|
+
start: UTC epoch of the start of the report
|
|
97
|
+
end: UTC epoch of the end of the report
|
|
98
|
+
min_el: Minimum elevation angle in **_degrees_**
|
|
99
|
+
min_duration: Minimum duration of access
|
|
100
|
+
|
|
101
|
+
Returns:
|
|
102
|
+
Horizon access report containing accesses from all observatories to the satellite,
|
|
103
|
+
or None if the satellite ephemeris cannot be generated
|
|
104
|
+
"""
|
|
105
|
+
...
|
|
83
106
|
|
|
84
107
|
class Constellation:
|
|
85
108
|
|
|
@@ -247,6 +270,17 @@ class Observatory:
|
|
|
247
270
|
"""
|
|
248
271
|
...
|
|
249
272
|
|
|
273
|
+
@classmethod
|
|
274
|
+
def from_cartesian_state(cls, state: CartesianState) -> Observatory:
|
|
275
|
+
"""
|
|
276
|
+
Create an observatory from a Cartesian state.
|
|
277
|
+
|
|
278
|
+
Args:
|
|
279
|
+
state: Cartesian state of the observatory
|
|
280
|
+
|
|
281
|
+
"""
|
|
282
|
+
...
|
|
283
|
+
|
|
250
284
|
def get_horizon_access_report(
|
|
251
285
|
self,
|
|
252
286
|
satellite: Satellite,
|
keplemon/events.pyi
CHANGED
|
@@ -29,10 +29,10 @@ class CloseApproach:
|
|
|
29
29
|
epoch: Epoch
|
|
30
30
|
"""UTC epoch of the close approach"""
|
|
31
31
|
|
|
32
|
-
primary_id:
|
|
32
|
+
primary_id: str
|
|
33
33
|
"""Satellite ID of the primary body in the close approach"""
|
|
34
34
|
|
|
35
|
-
secondary_id:
|
|
35
|
+
secondary_id: str
|
|
36
36
|
"""Satellite ID of the secondary body in the close approach"""
|
|
37
37
|
|
|
38
38
|
distance: float
|
|
@@ -57,6 +57,9 @@ class HorizonAccess:
|
|
|
57
57
|
satellite_id: str
|
|
58
58
|
"""ID of the satellite for which the access is calculated"""
|
|
59
59
|
|
|
60
|
+
observatory_id: str
|
|
61
|
+
"""ID of the observatory for which the access is calculated"""
|
|
62
|
+
|
|
60
63
|
start: HorizonState
|
|
61
64
|
"""State of the satellite at the start of the access period"""
|
|
62
65
|
|
|
@@ -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,10 +1,10 @@
|
|
|
1
|
-
keplemon-1.1.
|
|
2
|
-
keplemon-1.1.
|
|
3
|
-
keplemon-1.1.
|
|
1
|
+
keplemon-1.1.3.dist-info/METADATA,sha256=nIV1B6nVcgMIMYk8CBPRexx82ZXOJ1IK9DkT9fsoo4Q,863
|
|
2
|
+
keplemon-1.1.3.dist-info/WHEEL,sha256=p_Yquq5Pk0aa0if4rX4yfMDTA_PSQbCXzFftM7T46yU,106
|
|
3
|
+
keplemon-1.1.3.dist-info/entry_points.txt,sha256=eYbCkvQvWfRDQ0LzaCELov1xeLAxQEHlfdgNq-LXyb0,49
|
|
4
4
|
keplemon/__init__.py,sha256=M9q5lNYh_BE6l4xCGJ5IH5PQH9aNm4q_r67ljsNkKvM,832
|
|
5
5
|
keplemon/__init__.pyi,sha256=uE60ln_KJgcfvKburVmbcKT0h_wLPgjBWuyNLgI8ETI,1295
|
|
6
6
|
keplemon/__main__.py,sha256=-3GVkDOA0lV0MIqU9gPb4zbVimg2lA8HMkvdPDw1O28,669
|
|
7
|
-
keplemon/_keplemon.cpython-311-darwin.so,sha256=
|
|
7
|
+
keplemon/_keplemon.cpython-311-darwin.so,sha256=wv5oIYNiJfC7t0xY4gILF5QmKX1OCi45zNjdhrKi7Vw,2216692
|
|
8
8
|
keplemon/assets/EGM-2008.GEO,sha256=K2nG8HGLATIHZYMfw3GSClYOTCuZ7rq4RdCeUNgCw5A,148770
|
|
9
9
|
keplemon/assets/EGM-96.GEO,sha256=VBkILuvEMwAPuWmUHy2PeyEfULOwJ4PEJLNf5hr84mU,148770
|
|
10
10
|
keplemon/assets/GEM_5-22.GEO,sha256=stemYLn1ChXa-VdLGHYfa15AXZa_xxGZQ65p4c3gffI,6852
|
|
@@ -17,7 +17,7 @@ keplemon/assets/SGP4_Open_License.txt,sha256=0WofOXQb5YJqnYhXWXnBdCajiTJQAT60UAk
|
|
|
17
17
|
keplemon/assets/WGS84-70.GEO,sha256=ARjEC_5s2SVd0Kh9udbTy1ztBwTeuBYPOhUVJgIqit8,148510
|
|
18
18
|
keplemon/assets/time_constants.dat,sha256=qDpJ2UrQvIDfxsBc4P2AdLS-b2lyR7RCzjqmeG4Ypl8,1226736
|
|
19
19
|
keplemon/bodies.py,sha256=XnaY6XTuj8CHM3XOwOSY3E8nSo0RWwCcAY0FGxAVWa8,208
|
|
20
|
-
keplemon/bodies.pyi,sha256=
|
|
20
|
+
keplemon/bodies.pyi,sha256=AU8veUqXkgA3CnYO3XycMUlOwnep-YoUvJZA2cXieYs,9532
|
|
21
21
|
keplemon/catalogs.py,sha256=lw71NiXlVtb-z3pQR03afxtkLca4HJcnpZ6kDCcR-Lk,102
|
|
22
22
|
keplemon/catalogs.pyi,sha256=NU_6Mc_JY8xTYAKXOqubtPnt91YA9ZHd1hMqMFf6onc,589
|
|
23
23
|
keplemon/elements.py,sha256=P4tlpQpCUG5jkgAT_yIeL2V14AhXtekMYxRBOsPlOgc,609
|
|
@@ -27,7 +27,7 @@ keplemon/enums.pyi,sha256=s9uqkm3Zrx6HLV4dQBScRiUy0CT4QoQwFjaCLOEMW1c,2330
|
|
|
27
27
|
keplemon/estimation.py,sha256=2K87pFhOfaFohbAtBXv2SA6m_oIN-56toJOftu350fY,228
|
|
28
28
|
keplemon/estimation.pyi,sha256=zb_llx8pCx9Iv95mXXpGnXPZeJsg9Oh5GRWDLyXrMFI,5521
|
|
29
29
|
keplemon/events.py,sha256=PGp-xE-eyjYSMWpugplA7bPlrYjkR1NKSHRurFMnBcE,359
|
|
30
|
-
keplemon/events.pyi,sha256=
|
|
30
|
+
keplemon/events.pyi,sha256=8ydd7aWJ6upPRs6oHQL1-Mpp8iv_dOHxRnNyto1FbwA,2905
|
|
31
31
|
keplemon/exceptions.py,sha256=gTKSkN4yJ2VwR3_anpWqnIO9kQcJCO41_818NjgItiM,102
|
|
32
32
|
keplemon/libastrofunc.dylib,sha256=gxdCt5hXXE3kKj1SawDDATv1h3SfMq8T3jh_SXCCJNA,283104
|
|
33
33
|
keplemon/libdllmain.dylib,sha256=fAVsGh33yYOp-4AoF5kE6d5DlNRmDV1G-tM6-2ENaBY,87376
|
|
@@ -51,8 +51,8 @@ keplemon/propagation.pyi,sha256=qJOCbtgYma4MOg3-aw9_r1IvBDnknwsJlMwlgaJiEZk,688
|
|
|
51
51
|
keplemon/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
52
52
|
keplemon/saal/__init__.py,sha256=aoTB13q7IvXuQ80jgGCnwXA29yjpOqLiTdrtyjyRqLE,123
|
|
53
53
|
keplemon/saal/__init__.pyi,sha256=GPB5f0dcK7srvSDq2i5wvHMyi-OYZakMvlrstKdDwkk,143
|
|
54
|
-
keplemon/saal/astro_func_interface.py,sha256=
|
|
55
|
-
keplemon/saal/astro_func_interface.pyi,sha256=
|
|
54
|
+
keplemon/saal/astro_func_interface.py,sha256=Z3UEbviqkGCU4OcpvgShvMoT5_WeenYZkec6A5hyDgs,984
|
|
55
|
+
keplemon/saal/astro_func_interface.pyi,sha256=it0olsVygZtIY4ekh_Hbu1_q_o87IvE7Ezslzr0_hZo,4782
|
|
56
56
|
keplemon/saal/obs_interface.py,sha256=EtsaPKixjMWfCUpMd79SvhCs3f9sRcBaal6-ickj3Vs,248
|
|
57
57
|
keplemon/saal/obs_interface.pyi,sha256=eIXbFnZSF3cX3MyXaCYLUAp0wUAbJiQ4rosqpXdf2I0,228
|
|
58
58
|
keplemon/saal/sgp4_prop_interface.py,sha256=BBKlIvXdUypcZspC8GJ2rPqfFoDKy0RM7w5qsqvobrE,127
|
|
@@ -61,4 +61,4 @@ keplemon/saal/time_func_interface.py,sha256=cshqJ15p_gcenMdmVuXTIoLeij1gsgVi0tuj
|
|
|
61
61
|
keplemon/saal/time_func_interface.pyi,sha256=GCj_EOmOceJorYQLGQQj1fE2cHxPvNrYml1DLvsaMy4,1508
|
|
62
62
|
keplemon/time.py,sha256=vvHcwWQ1JXPaQSvdBfXYZrk2_-ukDw0RnXDeN5wy3nU,2792
|
|
63
63
|
keplemon/time.pyi,sha256=S2Ul8fpuWnor9wKNFBxLwAiwrGrVN_LJH_xy6WSocv4,6260
|
|
64
|
-
keplemon-1.1.
|
|
64
|
+
keplemon-1.1.3.dist-info/RECORD,,
|
|
File without changes
|