pygnss 0.3.0__cp310-cp310-musllinux_1_2_x86_64.whl → 0.4.0__cp310-cp310-musllinux_1_2_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 pygnss might be problematic. Click here for more details.
- pygnss/__init__.py +1 -1
- pygnss/iono/__init__.py +0 -0
- pygnss/iono/gim.py +54 -0
- {pygnss-0.3.0.dist-info → pygnss-0.4.0.dist-info}/METADATA +1 -1
- {pygnss-0.3.0.dist-info → pygnss-0.4.0.dist-info}/RECORD +9 -7
- {pygnss-0.3.0.dist-info → pygnss-0.4.0.dist-info}/WHEEL +0 -0
- {pygnss-0.3.0.dist-info → pygnss-0.4.0.dist-info}/entry_points.txt +0 -0
- {pygnss-0.3.0.dist-info → pygnss-0.4.0.dist-info}/licenses/LICENSE +0 -0
- {pygnss-0.3.0.dist-info → pygnss-0.4.0.dist-info}/top_level.txt +0 -0
pygnss/__init__.py
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
__version__ = "0.
|
|
1
|
+
__version__ = "0.4.0"
|
pygnss/iono/__init__.py
ADDED
|
File without changes
|
pygnss/iono/gim.py
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
from dataclasses import dataclass
|
|
2
|
+
import datetime
|
|
3
|
+
from typing import List
|
|
4
|
+
|
|
5
|
+
import numpy as np
|
|
6
|
+
|
|
7
|
+
@dataclass
|
|
8
|
+
class Gim():
|
|
9
|
+
epoch: datetime.datetime
|
|
10
|
+
longitudes: List[float]
|
|
11
|
+
latitudes: List[float]
|
|
12
|
+
vtec_values: List[List[float]] # Grid of VTEC values n_latitudes (rows) x n_longitudes (columns)
|
|
13
|
+
|
|
14
|
+
def __sub__(self, other: 'Gim') -> 'Gim':
|
|
15
|
+
"""
|
|
16
|
+
Subtract the VTEC values of another Gim from this Gim
|
|
17
|
+
|
|
18
|
+
:param other: The Gim to subtract.
|
|
19
|
+
|
|
20
|
+
:return: A new Gim with the resulting VTEC values.
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
return subtract(self, other)
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
def subtract(lhs: Gim, rhs: Gim) -> Gim:
|
|
27
|
+
"""
|
|
28
|
+
Subtract the VTEC values of two GIMs (lhs - rhs)
|
|
29
|
+
|
|
30
|
+
:param lhs: Left-hand operand
|
|
31
|
+
:param rhs: Right-hand operand
|
|
32
|
+
|
|
33
|
+
:return: A new Gim with the resulting difference of VTEC values.
|
|
34
|
+
|
|
35
|
+
:raises ValueError: If the dimensions of the GIMs do not match.
|
|
36
|
+
"""
|
|
37
|
+
|
|
38
|
+
if lhs.epoch != rhs.epoch:
|
|
39
|
+
raise ValueError(f"Epochs of both GIMs differ: {lhs.epoch} != {rhs.epoch}")
|
|
40
|
+
|
|
41
|
+
if np.array_equal(lhs.latitudes, rhs.latitudes) == False:
|
|
42
|
+
raise ValueError("Latitudes do not match between the two GIMs.")
|
|
43
|
+
|
|
44
|
+
if np.array_equal(lhs.longitudes, rhs.longitudes) == False:
|
|
45
|
+
raise ValueError("Longitude do not match between the two GIMs.")
|
|
46
|
+
|
|
47
|
+
vtec_diff = np.subtract(lhs.vtec_values, rhs.vtec_values)
|
|
48
|
+
|
|
49
|
+
return Gim(
|
|
50
|
+
epoch=lhs.epoch, # Keep the epoch of the first Gim
|
|
51
|
+
longitudes=lhs.longitudes,
|
|
52
|
+
latitudes=lhs.latitudes,
|
|
53
|
+
vtec_values=vtec_diff.tolist(),
|
|
54
|
+
)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
pygnss/__init__.py,sha256=
|
|
1
|
+
pygnss/__init__.py,sha256=42STGor_9nKYXumfeV5tiyD_M8VdcddX7CEexmibPBk,22
|
|
2
2
|
pygnss/_c_ext.cpython-310-x86_64-linux-gnu.so,sha256=XXByBz3R4AHs9EIC0BgrL2_dUOMg-VWc6UyWp8emrko,82952
|
|
3
3
|
pygnss/cl.py,sha256=ISmd2RjikUMmj3nLPN0VSjvQLG5rLizp2X2ajeBkoDE,4509
|
|
4
4
|
pygnss/constants.py,sha256=1hF6K92X6E6Ofo0rAuCBCgrwln9jxio26RV2a6vyURk,133
|
|
@@ -25,13 +25,15 @@ pygnss/gnss/edit.py,sha256=T1r0WbJmt8tLJpG_IIsy4Atej6cy0IStBaSGxw0S5ho,1884
|
|
|
25
25
|
pygnss/gnss/observables.py,sha256=0x0NLkTjxf8cO9F_f_Q1b-1hEeoNjWB2x-53ecUEv0M,1656
|
|
26
26
|
pygnss/gnss/residuals.py,sha256=8qKGNOYkrqxHGOSjIfH21K82PAqEh2068kf78j5usL8,1244
|
|
27
27
|
pygnss/gnss/types.py,sha256=lmL15KRckRiTwVkYvGzF4c1BrojnQlegrYCXSz1hGaI,10377
|
|
28
|
+
pygnss/iono/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
29
|
+
pygnss/iono/gim.py,sha256=5jP-2ceH9lvdycXTALrYaRCImEydG0oq7xdw6mESsBE,1545
|
|
28
30
|
pygnss/orbit/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
29
31
|
pygnss/orbit/kepler.py,sha256=QORTgg5yBtsQXxLWSzoZ1pmh-CwPiZlFdIYqhQhv1a0,1745
|
|
30
32
|
pygnss/orbit/tle.py,sha256=6CIEielPgui3DXNv46XxOGlig31ROIwjH42xLGaeE5M,5905
|
|
31
33
|
pygnss/parsers/rtklib/stats.py,sha256=YV6yadxMeQMQYZvsUCaSf4ZTpK8Bbv3f2xgu0l4PekA,5449
|
|
32
|
-
pygnss-0.
|
|
33
|
-
pygnss-0.
|
|
34
|
-
pygnss-0.
|
|
35
|
-
pygnss-0.
|
|
36
|
-
pygnss-0.
|
|
37
|
-
pygnss-0.
|
|
34
|
+
pygnss-0.4.0.dist-info/METADATA,sha256=BbZDA1kGKZoJqqVPSS21WH7T1ZRvK5DUbt8CKKmaI5M,1659
|
|
35
|
+
pygnss-0.4.0.dist-info/WHEEL,sha256=D_KCbZpOnijVJmbiS6ATWCFiWX9fNkkiTIjcnRKe-z4,112
|
|
36
|
+
pygnss-0.4.0.dist-info/entry_points.txt,sha256=mCuKrljB_wh9ZQVROiId9m68EDbTiY1oef_L1N3IDDA,262
|
|
37
|
+
pygnss-0.4.0.dist-info/top_level.txt,sha256=oZRSR-qOv98VW2PRRMGCVNCJmewcJjyJYmxzxfeimtg,7
|
|
38
|
+
pygnss-0.4.0.dist-info/RECORD,,
|
|
39
|
+
pygnss-0.4.0.dist-info/licenses/LICENSE,sha256=Wwany6RAAZ9vVHjFLA9KBJ0HE77d52s2NOUA1CPAEug,1067
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|