keplemon 1.1.1__cp39-cp39-win_amd64.whl → 1.1.3__cp39-cp39-win_amd64.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.

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: int
32
+ primary_id: str
33
33
  """Satellite ID of the primary body in the close approach"""
34
34
 
35
- secondary_id: int
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 (e.g., 2000 for J2000).
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
1
  Metadata-Version: 2.4
2
2
  Name: keplemon
3
- Version: 1.1.1
3
+ Version: 1.1.3
4
4
  Requires-Dist: requests
5
5
  Requires-Dist: click
6
6
  Requires-Dist: maturin>=1.0,<2.0 ; extra == 'dev'
@@ -1,6 +1,6 @@
1
- keplemon-1.1.1.dist-info/METADATA,sha256=uYVoCOkt9AffNNbAJkp3WIkgNd76kEWsoNyvT-Dvkcs,863
2
- keplemon-1.1.1.dist-info/WHEEL,sha256=rQd_y6gcm7pgk-tB3PYKKmZ-yczul0DudeUy5Xwdg8Q,94
3
- keplemon-1.1.1.dist-info/entry_points.txt,sha256=eYbCkvQvWfRDQ0LzaCELov1xeLAxQEHlfdgNq-LXyb0,49
1
+ keplemon-1.1.3.dist-info/METADATA,sha256=nIV1B6nVcgMIMYk8CBPRexx82ZXOJ1IK9DkT9fsoo4Q,863
2
+ keplemon-1.1.3.dist-info/WHEEL,sha256=W6WIdFr622-ULMOF24xhHMFUik89lyVEABV17NfNcas,94
3
+ keplemon-1.1.3.dist-info/entry_points.txt,sha256=eYbCkvQvWfRDQ0LzaCELov1xeLAxQEHlfdgNq-LXyb0,49
4
4
  keplemon/AstroFunc.dll,sha256=RwDLeYGuSd3MxQ3O_Ljb0maS5KoDL8HZLpAvcQhDmnQ,357376
5
5
  keplemon/AstroFunc.lib,sha256=q0Ob5NGUgbywJg6XqH48QLNmFv8T5p8NVLSx2kKkL4A,56480
6
6
  keplemon/DllMain.dll,sha256=vYgOfGAUHn2z1MrVu9wV-k_LRdtuF8RuWrbuu2xk7jk,121344
@@ -30,7 +30,7 @@ keplemon/Vcm.lib,sha256=q2FPbH_DJXjIzNIzli2f1uV2faHHBjLbffZrL3Nagpw,19404
30
30
  keplemon/__init__.py,sha256=JymfGXbJ9UJDdwRW0CXS7j5j_LPk1_P_ViKbjoTdCFU,861
31
31
  keplemon/__init__.pyi,sha256=PgtL8CNupZCJibx07RLmFf56gMkCFx7voUIxBpeADO8,1349
32
32
  keplemon/__main__.py,sha256=Bbbzny3eE3NOikVCEVFAGJiSRGooAkLzPwoSz-rpaxc,689
33
- keplemon/_keplemon.cp39-win_amd64.pyd,sha256=RW1eC3neLmC-ePE2bht6ELuL_64w5I3wtrOzZfgC3X4,1622016
33
+ keplemon/_keplemon.cp39-win_amd64.pyd,sha256=lfNCc6aM_1sH3esDMjQIb8mmGXUh6Vzh9VwnnPQwZRs,1678848
34
34
  keplemon/assets/EGM-2008.GEO,sha256=K2nG8HGLATIHZYMfw3GSClYOTCuZ7rq4RdCeUNgCw5A,148770
35
35
  keplemon/assets/EGM-96.GEO,sha256=VBkILuvEMwAPuWmUHy2PeyEfULOwJ4PEJLNf5hr84mU,148770
36
36
  keplemon/assets/GEM_5-22.GEO,sha256=stemYLn1ChXa-VdLGHYfa15AXZa_xxGZQ65p4c3gffI,6852
@@ -43,7 +43,7 @@ keplemon/assets/SGP4_Open_License.txt,sha256=ThQ87DpbbXt-9K0-0U13tcZqsndte_UkaG3
43
43
  keplemon/assets/WGS84-70.GEO,sha256=ARjEC_5s2SVd0Kh9udbTy1ztBwTeuBYPOhUVJgIqit8,148510
44
44
  keplemon/assets/time_constants.dat,sha256=3nsYjFgq0QnTUHPxuQPdtMG-AqxShVbvmG2zPcZfdcA,1246208
45
45
  keplemon/bodies.py,sha256=MjdAGL25eF5pA3KHo5ipjz0DDql5EEEbBqR735M254g,217
46
- keplemon/bodies.pyi,sha256=ANgociClcS9hhzvA-g57HHDQfExED3z0QvOxBWWWCiM,8733
46
+ keplemon/bodies.pyi,sha256=hDzYm2WGr4Q075I8cjpV61By8h9iUeqpwQCJYj55ra4,9857
47
47
  keplemon/catalogs.py,sha256=AKONH7zWBOnUZI0ty0lYiYZtrdILfKivoUgk1nU3PZ8,107
48
48
  keplemon/catalogs.pyi,sha256=UxwRVMfuySXNYOQ7KuCXtwHcu3zL3Fgo1sBP77qUKaU,606
49
49
  keplemon/elements.py,sha256=Z0zzwjbOnqi4lXO4Iw5Nio2eZcdrlObzAJ2oLRDzyJY,640
@@ -53,7 +53,7 @@ keplemon/enums.pyi,sha256=OSS71WesYTgzWGUSjpxaYtzj6XmoyLBXq_Zd13IBwyQ,2418
53
53
  keplemon/estimation.py,sha256=Of0rHiapW4s1wRipBCZrp4oOiIzs794w1nhqM7AVrGs,236
54
54
  keplemon/estimation.pyi,sha256=kH-erT5qhxKVpHm9NehHsZbHbe96FP3aDX6GgwdntAs,5693
55
55
  keplemon/events.py,sha256=gl2eqYWkTtMxLPstZziIbNbeVHJzEiMPyhrFaC-gcmA,376
56
- keplemon/events.pyi,sha256=o24TRnO4pZ2gh0aeJvxFsLj_SrBV3s3SvPrAdx0TmxU,2909
56
+ keplemon/events.pyi,sha256=8ynzXST5suvr3VGi_Wx7UHaQpuHZjk-ikKOdNGujiyo,3004
57
57
  keplemon/exceptions.py,sha256=kdFwToNBHfbpzj311wHfTDztdgwRg2-OM3sHYhmd3AI,107
58
58
  keplemon/libifcoremd.dll,sha256=x8iFLCgtUCJjWdfdmQycUx9BlXcNCW-Q3MeGpcIN12k,1885224
59
59
  keplemon/libiomp5md.dll,sha256=C2O3Lj2yJYPGTyH0Z1c4FSrflnSzxHARp6y0dE3H2ZI,2030632
@@ -63,8 +63,8 @@ keplemon/propagation.pyi,sha256=BjBIlp_8fdEb5gii5OsvLtXfIzV_Mo2pLlX75bZ1SDo,715
63
63
  keplemon/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
64
64
  keplemon/saal/__init__.py,sha256=JS-tjVFqN1B3ZjIG2g7v1GrmUPi9eIv0_Le1reYuQ2o,126
65
65
  keplemon/saal/__init__.pyi,sha256=7wosTC1KhEJis-zp2LlZmW7hlr8BzFO4gx0TJ9c3J80,148
66
- keplemon/saal/astro_func_interface.py,sha256=ZiGQm-ysZbH0ocLFzYHgLVGWuNabO5obLMVuv6nSTPQ,877
67
- keplemon/saal/astro_func_interface.pyi,sha256=cwsPQlowxLr3tj8EKP1wJhd_qOLpk4yRef-PyGCnAxU,3504
66
+ keplemon/saal/astro_func_interface.py,sha256=i0b1a7y2Y1IJWcBbm6WdFhGUBMrSxwvWpgra-QepXF0,1031
67
+ keplemon/saal/astro_func_interface.pyi,sha256=soshmSZ7k1v_1WgVfE93pM-h7RNF17e5-xmdBPGu7vo,4955
68
68
  keplemon/saal/obs_interface.py,sha256=ax8T4Y61pWh3VnQ4K2bCDNdrK-H6WKWr14pEDAY8WxE,257
69
69
  keplemon/saal/obs_interface.pyi,sha256=Y9PE1t2Kdz1Sne1t_M-ctOp9G4hWGKgMMkuES6v1U6Q,235
70
70
  keplemon/saal/sgp4_prop_interface.py,sha256=biuhXWIsauR4BO8chsWILfb8-E8OdRNWT5cSL3OYsVQ,134
@@ -73,4 +73,4 @@ keplemon/saal/time_func_interface.py,sha256=C18Q_PIMUFBcB0pHN6wlVj35Vrt83VQNKOEm
73
73
  keplemon/saal/time_func_interface.pyi,sha256=3QKtsuxMoTgG--bDvbVNcJyD8vfcAUlw2n69g1m0kNM,1578
74
74
  keplemon/time.py,sha256=fa6AKPPU18lX44emrAy5ZZ5TRam-Vhm8ecsauvQ_wdg,2888
75
75
  keplemon/time.pyi,sha256=bS5UrY2loeT2mzONRFl2LTG5ZLaC3EnCXKB8fZRks4Q,6529
76
- keplemon-1.1.1.dist-info/RECORD,,
76
+ keplemon-1.1.3.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: maturin (1.9.5)
2
+ Generator: maturin (1.9.6)
3
3
  Root-Is-Purelib: false
4
4
  Tag: cp39-cp39-win_amd64