keplemon 1.0.5__cp312-cp312-win_amd64.whl → 1.0.6__cp312-cp312-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
@@ -1,5 +1,5 @@
1
1
  # flake8: noqa
2
- from keplemon.elements import TLE, CartesianState, Ephemeris, KeplerianState
2
+ from keplemon.elements import TLE, CartesianState, Ephemeris, KeplerianState, GeodeticPosition, OrbitPlotData
3
3
  from keplemon.catalogs import TLECatalog
4
4
  from keplemon.time import Epoch, TimeSpan
5
5
  from keplemon.events import CloseApproach, CloseApproachReport, HorizonAccessReport
@@ -35,6 +35,9 @@ class Satellite:
35
35
  keplerian_state: KeplerianState | None
36
36
  """Keplerian state of the satellite at the epoch of the TLE, if available"""
37
37
 
38
+ geodetic_position: GeodeticPosition | None
39
+ """Geodetic position of the satellite at the epoch of the TLE, if available"""
40
+
38
41
  def __init__(self) -> None: ...
39
42
  @classmethod
40
43
  def from_tle(cls, tle: TLE) -> Satellite:
@@ -68,6 +71,8 @@ class Satellite:
68
71
  """
69
72
  ...
70
73
 
74
+ def get_plot_data(self, start: Epoch, end: Epoch, step: TimeSpan) -> OrbitPlotData | None: ...
75
+
71
76
  class Constellation:
72
77
 
73
78
  count: int
@@ -77,6 +82,7 @@ class Constellation:
77
82
  """Human-readable name of the constellation"""
78
83
 
79
84
  def __init__(self) -> None: ...
85
+ def get_plot_data(self, start: Epoch, end: Epoch, step: TimeSpan) -> dict[str, OrbitPlotData]: ...
80
86
  @classmethod
81
87
  def from_tle_catalog(cls, tle_catalog: TLECatalog) -> Constellation:
82
88
  """
keplemon/catalogs.pyi CHANGED
@@ -1,5 +1,5 @@
1
1
  # flake8: noqa
2
- from keplemon.elements import TLE
2
+ from keplemon.elements import TLE, OrbitPlotData
3
3
 
4
4
  class TLECatalog:
5
5
  count: int
@@ -14,3 +14,4 @@ class TLECatalog:
14
14
  def get_count(self) -> int: ...
15
15
  def clear(self) -> None: ...
16
16
  def __getitem__(self, satellite_id: str) -> TLE: ...
17
+ def get_plot_data(self) -> OrbitPlotData: ...
keplemon/elements.py CHANGED
@@ -9,6 +9,9 @@ from keplemon._keplemon.elements import ( # type: ignore
9
9
  TopocentricElements,
10
10
  HorizonState,
11
11
  HorizonElements,
12
+ GeodeticPosition,
13
+ OrbitPlotData,
14
+ OrbitPlotState,
12
15
  )
13
16
 
14
17
  __all__ = [
@@ -22,4 +25,7 @@ __all__ = [
22
25
  "TopocentricElements",
23
26
  "HorizonState",
24
27
  "HorizonElements",
28
+ "GeodeticPosition",
29
+ "OrbitPlotData",
30
+ "OrbitPlotState",
25
31
  ]
keplemon/elements.pyi CHANGED
@@ -4,6 +4,39 @@ from keplemon.time import Epoch
4
4
  from keplemon.enums import Classification, KeplerianType, ReferenceFrame
5
5
  from keplemon.events import CloseApproach
6
6
 
7
+ class OrbitPlotData:
8
+ satellite_id: str
9
+ epochs: list[str]
10
+ semi_major_axes: list[float]
11
+ eccentricities: list[float]
12
+ inclinations: list[float]
13
+ raans: list[float]
14
+ radii: list[float]
15
+ apogee_radii: list[float]
16
+ perigee_radii: list[float]
17
+ latitudes: list[float]
18
+ longitudes: list[float]
19
+ altitudes: list[float]
20
+
21
+ class GeodeticPosition:
22
+ """
23
+ Args:
24
+ latitude: Latitude in **_degrees_**
25
+ longitude: Longitude in **_degrees_**
26
+ altitude: Altitude in **_kilometers_**
27
+ """
28
+
29
+ latitude: float
30
+ """Latitude in **_degrees_**"""
31
+
32
+ longitude: float
33
+ """Longitude in **_degrees_**"""
34
+
35
+ altitude: float
36
+ """Altitude in **_kilometers_**"""
37
+
38
+ def __init__(self, latitude: float, longitude: float, altitude: float) -> None: ...
39
+
7
40
  class HorizonElements:
8
41
  """
9
42
  Args:
@@ -0,0 +1,7 @@
1
+ from keplemon._keplemon.saal.sgp4_prop_interface import ( # type: ignore
2
+ reepoch_tle,
3
+ )
4
+
5
+ __all__ = [
6
+ "reepoch_tle",
7
+ ]
@@ -0,0 +1,9 @@
1
+ def reepoch_tle(tle_key: int, new_ds50_epoch: float) -> None:
2
+ """
3
+ Re-epoch a TLE in the SGP4 propagator.
4
+
5
+ Args:
6
+ tle_key: Key of the TLE to re-epoch.
7
+ new_ds50_epoch: New epoch in DS50 format.
8
+ """
9
+ ...
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: keplemon
3
- Version: 1.0.5
3
+ Version: 1.0.6
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.0.5.dist-info/METADATA,sha256=l0b2cTyJbCUpNiCbm8PHD1dSWuq1kEpseFXtf80GMIw,863
2
- keplemon-1.0.5.dist-info/WHEEL,sha256=HF3aUMilrtO42xS_fBzOVaPE8OtiNjP_RotLatII7HM,96
3
- keplemon-1.0.5.dist-info/entry_points.txt,sha256=eYbCkvQvWfRDQ0LzaCELov1xeLAxQEHlfdgNq-LXyb0,49
1
+ keplemon-1.0.6.dist-info/METADATA,sha256=N2FoAuRlTq2QklipfVMJvGTMfbVhn_N91oIbe8WaLpg,863
2
+ keplemon-1.0.6.dist-info/WHEEL,sha256=4hYCffp0RsSVQAuv2PMtXQ9QS7YSHeZi4PrSg-wi2q0,96
3
+ keplemon-1.0.6.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.cp312-win_amd64.pyd,sha256=o2NNrPxAw6VGWDUZGWYp0q4jSwW01LHn3yORxy_doPk,1514496
33
+ keplemon/_keplemon.cp312-win_amd64.pyd,sha256=5jIMRr0rfWbHRjgtjdAPueq2G373WNz18YyF_3Ikc7U,1618432
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,11 +43,11 @@ 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=Cw-Bs_UG96VN-8TZOqmr9QoB-gwfA9q6NBvLeLJiawA,7526
46
+ keplemon/bodies.pyi,sha256=fnwSde5vqtiTSZDyRVEg8YQjF_uTHPkLtcTABw9NcBM,7899
47
47
  keplemon/catalogs.py,sha256=AKONH7zWBOnUZI0ty0lYiYZtrdILfKivoUgk1nU3PZ8,107
48
- keplemon/catalogs.pyi,sha256=0xKUNjmioF_cd5atqiGbRxaZuTUIBr2hbEJ0J0A4c-s,540
49
- keplemon/elements.py,sha256=AzE0xyBNDynGtBcIkpQaV7qHW-xNdA9bFkIcr5CC1oY,506
50
- keplemon/elements.pyi,sha256=qbUm5uQ9FNjQP5b99K8NxeaC6xnDSSaaY8NnofoAJIg,9811
48
+ keplemon/catalogs.pyi,sha256=UxwRVMfuySXNYOQ7KuCXtwHcu3zL3Fgo1sBP77qUKaU,606
49
+ keplemon/elements.py,sha256=Z0zzwjbOnqi4lXO4Iw5Nio2eZcdrlObzAJ2oLRDzyJY,640
50
+ keplemon/elements.pyi,sha256=EQEqEduwsMqhKjLPbbVS3eyGxNRQitLfzM8KhuxPDLs,10647
51
51
  keplemon/enums.py,sha256=5MejXeSwXPtfpIYeNuFQH3LSIRf4aTFZTK2Q1AYyaEg,325
52
52
  keplemon/enums.pyi,sha256=OSS71WesYTgzWGUSjpxaYtzj6XmoyLBXq_Zd13IBwyQ,2418
53
53
  keplemon/estimation.py,sha256=Of0rHiapW4s1wRipBCZrp4oOiIzs794w1nhqM7AVrGs,236
@@ -67,8 +67,10 @@ keplemon/saal/astro_func_interface.py,sha256=6Y26Qtpg-vf4K5pya2DRzPyv4_4vnp9vmnr
67
67
  keplemon/saal/astro_func_interface.pyi,sha256=b0QKQhoeBWZ1ouuux9ZoojHpNNnHlNz_bi8kalBgSA0,2808
68
68
  keplemon/saal/obs_interface.py,sha256=ax8T4Y61pWh3VnQ4K2bCDNdrK-H6WKWr14pEDAY8WxE,257
69
69
  keplemon/saal/obs_interface.pyi,sha256=Y9PE1t2Kdz1Sne1t_M-ctOp9G4hWGKgMMkuES6v1U6Q,235
70
+ keplemon/saal/sgp4_prop_interface.py,sha256=biuhXWIsauR4BO8chsWILfb8-E8OdRNWT5cSL3OYsVQ,134
71
+ keplemon/saal/sgp4_prop_interface.pyi,sha256=9NpOUhf03VQYVEyq1Kutqp6J6bZ3x0NCFSBlVY-Nb9s,244
70
72
  keplemon/saal/time_func_interface.py,sha256=C18Q_PIMUFBcB0pHN6wlVj35Vrt83VQNKOEmHDHvZSA,438
71
73
  keplemon/saal/time_func_interface.pyi,sha256=3QKtsuxMoTgG--bDvbVNcJyD8vfcAUlw2n69g1m0kNM,1578
72
74
  keplemon/time.py,sha256=fa6AKPPU18lX44emrAy5ZZ5TRam-Vhm8ecsauvQ_wdg,2888
73
75
  keplemon/time.pyi,sha256=bS5UrY2loeT2mzONRFl2LTG5ZLaC3EnCXKB8fZRks4Q,6529
74
- keplemon-1.0.5.dist-info/RECORD,,
76
+ keplemon-1.0.6.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: maturin (1.9.3)
2
+ Generator: maturin (1.9.4)
3
3
  Root-Is-Purelib: false
4
4
  Tag: cp312-cp312-win_amd64