pycontrails 0.51.1__cp39-cp39-macosx_11_0_arm64.whl → 0.52.0__cp39-cp39-macosx_11_0_arm64.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 pycontrails might be problematic. Click here for more details.
- pycontrails/__init__.py +1 -1
- pycontrails/_version.py +2 -2
- pycontrails/core/__init__.py +1 -1
- pycontrails/core/cache.py +1 -1
- pycontrails/core/flight.py +32 -28
- pycontrails/core/polygon.py +1 -1
- pycontrails/core/rgi_cython.cpython-39-darwin.so +0 -0
- pycontrails/datalib/__init__.py +4 -1
- pycontrails/datalib/_leo_utils/search.py +250 -0
- pycontrails/datalib/_leo_utils/static/bq_roi_query.sql +6 -0
- pycontrails/datalib/_leo_utils/vis.py +60 -0
- pycontrails/{core/datalib.py → datalib/_met_utils/metsource.py} +1 -1
- pycontrails/datalib/ecmwf/arco_era5.py +8 -7
- pycontrails/datalib/ecmwf/common.py +3 -2
- pycontrails/datalib/ecmwf/era5.py +12 -11
- pycontrails/datalib/ecmwf/era5_model_level.py +12 -11
- pycontrails/datalib/ecmwf/hres.py +14 -13
- pycontrails/datalib/ecmwf/hres_model_level.py +15 -14
- pycontrails/datalib/ecmwf/ifs.py +14 -13
- pycontrails/datalib/gfs/gfs.py +15 -14
- pycontrails/datalib/goes.py +2 -2
- pycontrails/datalib/landsat.py +567 -0
- pycontrails/datalib/sentinel.py +512 -0
- pycontrails/models/apcemm/__init__.py +8 -0
- pycontrails/models/apcemm/apcemm.py +983 -0
- pycontrails/models/apcemm/inputs.py +226 -0
- pycontrails/models/apcemm/static/apcemm_yaml_template.yaml +183 -0
- pycontrails/models/apcemm/utils.py +437 -0
- pycontrails/models/cocip/__init__.py +2 -0
- pycontrails/models/cocip/output_formats.py +165 -0
- pycontrails/models/cocipgrid/cocip_grid.py +7 -6
- pycontrails/models/dry_advection.py +14 -5
- {pycontrails-0.51.1.dist-info → pycontrails-0.52.0.dist-info}/METADATA +20 -11
- {pycontrails-0.51.1.dist-info → pycontrails-0.52.0.dist-info}/RECORD +39 -30
- pycontrails/datalib/spire/__init__.py +0 -19
- /pycontrails/datalib/{spire/spire.py → spire.py} +0 -0
- {pycontrails-0.51.1.dist-info → pycontrails-0.52.0.dist-info}/LICENSE +0 -0
- {pycontrails-0.51.1.dist-info → pycontrails-0.52.0.dist-info}/NOTICE +0 -0
- {pycontrails-0.51.1.dist-info → pycontrails-0.52.0.dist-info}/WHEEL +0 -0
- {pycontrails-0.51.1.dist-info → pycontrails-0.52.0.dist-info}/top_level.txt +0 -0
|
@@ -27,6 +27,9 @@ class DryAdvectionParams(models.ModelParams):
|
|
|
27
27
|
#: Max age of plume evolution.
|
|
28
28
|
max_age: np.timedelta64 = np.timedelta64(20, "h")
|
|
29
29
|
|
|
30
|
+
#: Rate of change of pressure due to sedimentation [:math:`Pa/s`]
|
|
31
|
+
sedimentation_rate: float = 0.0
|
|
32
|
+
|
|
30
33
|
#: Difference in altitude between top and bottom layer for stratification calculations,
|
|
31
34
|
#: [:math:`m`]. Used to approximate derivative of "lagrangian_tendency_of_air_pressure"
|
|
32
35
|
#: (upward component of air velocity) with respect to altitude.
|
|
@@ -124,6 +127,7 @@ class DryAdvection(models.Model):
|
|
|
124
127
|
|
|
125
128
|
dt_integration = self.params["dt_integration"]
|
|
126
129
|
max_age = self.params["max_age"]
|
|
130
|
+
sedimentation_rate = self.params["sedimentation_rate"]
|
|
127
131
|
dz_m = self.params["dz_m"]
|
|
128
132
|
max_depth = self.params["max_depth"]
|
|
129
133
|
|
|
@@ -142,6 +146,7 @@ class DryAdvection(models.Model):
|
|
|
142
146
|
self.met,
|
|
143
147
|
vector,
|
|
144
148
|
t,
|
|
149
|
+
sedimentation_rate=sedimentation_rate,
|
|
145
150
|
dz_m=dz_m,
|
|
146
151
|
max_depth=max_depth,
|
|
147
152
|
**interp_kwargs,
|
|
@@ -171,9 +176,11 @@ class DryAdvection(models.Model):
|
|
|
171
176
|
"""
|
|
172
177
|
|
|
173
178
|
self.source.setdefault("level", self.source.level)
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
179
|
+
|
|
180
|
+
columns: tuple[str, ...] = ("longitude", "latitude", "level", "time")
|
|
181
|
+
if "azimuth" in self.source:
|
|
182
|
+
columns += ("azimuth",)
|
|
183
|
+
self.source = GeoVectorDataset(self.source.select(columns, copy=False))
|
|
177
184
|
|
|
178
185
|
# Get waypoint index if not already set
|
|
179
186
|
self.source.setdefault("waypoint", np.arange(self.source.size))
|
|
@@ -212,7 +219,8 @@ class DryAdvection(models.Model):
|
|
|
212
219
|
if val is not None and pointwise_only:
|
|
213
220
|
raise ValueError(f"Cannot specify '{key}' without specifying 'azimuth'.")
|
|
214
221
|
|
|
215
|
-
|
|
222
|
+
if not pointwise_only:
|
|
223
|
+
self.source[key] = np.full_like(self.source["longitude"], val)
|
|
216
224
|
|
|
217
225
|
if pointwise_only:
|
|
218
226
|
return
|
|
@@ -428,6 +436,7 @@ def _evolve_one_step(
|
|
|
428
436
|
vector: GeoVectorDataset,
|
|
429
437
|
t: np.datetime64,
|
|
430
438
|
*,
|
|
439
|
+
sedimentation_rate: float,
|
|
431
440
|
dz_m: float,
|
|
432
441
|
max_depth: float | None,
|
|
433
442
|
**interp_kwargs: Any,
|
|
@@ -437,7 +446,7 @@ def _evolve_one_step(
|
|
|
437
446
|
_perform_interp_for_step(met, vector, dz_m, **interp_kwargs)
|
|
438
447
|
u_wind = vector["u_wind"]
|
|
439
448
|
v_wind = vector["v_wind"]
|
|
440
|
-
vertical_velocity = vector["vertical_velocity"]
|
|
449
|
+
vertical_velocity = vector["vertical_velocity"] + sedimentation_rate
|
|
441
450
|
|
|
442
451
|
latitude = vector["latitude"]
|
|
443
452
|
longitude = vector["longitude"]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: pycontrails
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.52.0
|
|
4
4
|
Summary: Python library for modeling aviation climate impacts
|
|
5
5
|
Author-email: Breakthrough Energy <py@contrails.org>
|
|
6
6
|
License: Apache-2.0
|
|
@@ -28,21 +28,21 @@ Description-Content-Type: text/markdown
|
|
|
28
28
|
License-File: LICENSE
|
|
29
29
|
License-File: NOTICE
|
|
30
30
|
Requires-Dist: dask >=2022.3
|
|
31
|
-
Requires-Dist: numpy
|
|
31
|
+
Requires-Dist: numpy <2.0.0,>=1.22
|
|
32
32
|
Requires-Dist: overrides >=6.1
|
|
33
|
-
Requires-Dist: pandas >=
|
|
33
|
+
Requires-Dist: pandas >=2.2
|
|
34
34
|
Requires-Dist: scipy >=1.10
|
|
35
35
|
Requires-Dist: xarray >=2022.3
|
|
36
36
|
Provides-Extra: complete
|
|
37
|
-
Requires-Dist: pycontrails[ecmwf,gcp,gfs,
|
|
37
|
+
Requires-Dist: pycontrails[ecmwf,gcp,gfs,jupyter,pyproj,sat,vis,zarr] ; extra == 'complete'
|
|
38
38
|
Provides-Extra: dev
|
|
39
39
|
Requires-Dist: black[jupyter] ==24.4.1 ; extra == 'dev'
|
|
40
40
|
Requires-Dist: dep-license ; extra == 'dev'
|
|
41
41
|
Requires-Dist: fastparquet >=0.8 ; extra == 'dev'
|
|
42
42
|
Requires-Dist: ipdb >=0.13 ; extra == 'dev'
|
|
43
43
|
Requires-Dist: memory-profiler ; extra == 'dev'
|
|
44
|
-
Requires-Dist: mypy >=
|
|
45
|
-
Requires-Dist: mypy-extensions >=0
|
|
44
|
+
Requires-Dist: mypy >=1.8 ; extra == 'dev'
|
|
45
|
+
Requires-Dist: mypy-extensions >=1.0 ; extra == 'dev'
|
|
46
46
|
Requires-Dist: platformdirs >=3.0 ; extra == 'dev'
|
|
47
47
|
Requires-Dist: pre-commit >=2.10 ; extra == 'dev'
|
|
48
48
|
Requires-Dist: psutil ; extra == 'dev'
|
|
@@ -51,6 +51,7 @@ Requires-Dist: pytest >=8.2 ; extra == 'dev'
|
|
|
51
51
|
Requires-Dist: pytest-cov >=2.11 ; extra == 'dev'
|
|
52
52
|
Requires-Dist: requests >=2.25 ; extra == 'dev'
|
|
53
53
|
Requires-Dist: ruff ==0.4.1 ; extra == 'dev'
|
|
54
|
+
Requires-Dist: setuptools ; extra == 'dev'
|
|
54
55
|
Provides-Extra: docs
|
|
55
56
|
Requires-Dist: doc8 >=1.1 ; extra == 'docs'
|
|
56
57
|
Requires-Dist: furo >=2023.3 ; extra == 'docs'
|
|
@@ -69,7 +70,7 @@ Requires-Dist: cdsapi >=0.4 ; extra == 'ecmwf'
|
|
|
69
70
|
Requires-Dist: cfgrib >=0.9 ; extra == 'ecmwf'
|
|
70
71
|
Requires-Dist: eccodes >=1.4 ; extra == 'ecmwf'
|
|
71
72
|
Requires-Dist: ecmwf-api-client >=1.6 ; extra == 'ecmwf'
|
|
72
|
-
Requires-Dist: netcdf4
|
|
73
|
+
Requires-Dist: netcdf4 <1.7.0,>=1.6.1 ; extra == 'ecmwf'
|
|
73
74
|
Requires-Dist: platformdirs >=3.0 ; extra == 'ecmwf'
|
|
74
75
|
Requires-Dist: requests >=2.25 ; extra == 'ecmwf'
|
|
75
76
|
Requires-Dist: lxml >=5.1.0 ; extra == 'ecmwf'
|
|
@@ -83,10 +84,6 @@ Requires-Dist: cfgrib >=0.9 ; extra == 'gfs'
|
|
|
83
84
|
Requires-Dist: eccodes >=1.4 ; extra == 'gfs'
|
|
84
85
|
Requires-Dist: platformdirs >=3.0 ; extra == 'gfs'
|
|
85
86
|
Requires-Dist: tqdm >=4.61 ; extra == 'gfs'
|
|
86
|
-
Provides-Extra: goes
|
|
87
|
-
Requires-Dist: cartopy >=0.22 ; extra == 'goes'
|
|
88
|
-
Requires-Dist: gcsfs >=2022.3 ; extra == 'goes'
|
|
89
|
-
Requires-Dist: h5netcdf >=1.2 ; extra == 'goes'
|
|
90
87
|
Provides-Extra: jupyter
|
|
91
88
|
Requires-Dist: ipywidgets >=7.6 ; extra == 'jupyter'
|
|
92
89
|
Requires-Dist: jupyterlab >=2.2 ; extra == 'jupyter'
|
|
@@ -94,6 +91,18 @@ Provides-Extra: open3d
|
|
|
94
91
|
Requires-Dist: open3d >=0.14 ; extra == 'open3d'
|
|
95
92
|
Provides-Extra: pyproj
|
|
96
93
|
Requires-Dist: pyproj >=3.5 ; extra == 'pyproj'
|
|
94
|
+
Provides-Extra: sat
|
|
95
|
+
Requires-Dist: cartopy >=0.22 ; extra == 'sat'
|
|
96
|
+
Requires-Dist: db-dtypes >=1.2 ; extra == 'sat'
|
|
97
|
+
Requires-Dist: gcsfs >=2022.3 ; extra == 'sat'
|
|
98
|
+
Requires-Dist: geojson >=3.1 ; extra == 'sat'
|
|
99
|
+
Requires-Dist: google-cloud-bigquery >=3.23 ; extra == 'sat'
|
|
100
|
+
Requires-Dist: google-cloud-bigquery-storage >=2.25 ; extra == 'sat'
|
|
101
|
+
Requires-Dist: h5netcdf >=1.2 ; extra == 'sat'
|
|
102
|
+
Requires-Dist: pillow >=10.3 ; extra == 'sat'
|
|
103
|
+
Requires-Dist: pyproj >=3.5 ; extra == 'sat'
|
|
104
|
+
Requires-Dist: rasterio >=1.3 ; extra == 'sat'
|
|
105
|
+
Requires-Dist: scikit-image >=0.18 ; extra == 'sat'
|
|
97
106
|
Provides-Extra: vis
|
|
98
107
|
Requires-Dist: matplotlib >=3.3 ; extra == 'vis'
|
|
99
108
|
Requires-Dist: opencv-python-headless >=4.5 ; extra == 'vis'
|
|
@@ -1,47 +1,51 @@
|
|
|
1
|
-
pycontrails-0.
|
|
2
|
-
pycontrails-0.
|
|
3
|
-
pycontrails-0.
|
|
4
|
-
pycontrails-0.
|
|
5
|
-
pycontrails-0.
|
|
6
|
-
pycontrails-0.
|
|
7
|
-
pycontrails/_version.py,sha256=
|
|
8
|
-
pycontrails/__init__.py,sha256=
|
|
1
|
+
pycontrails-0.52.0.dist-info/RECORD,,
|
|
2
|
+
pycontrails-0.52.0.dist-info/LICENSE,sha256=gJ-h7SFFD1mCfR6a7HILvEtodDT6Iig8bLXdgqR6ucA,10175
|
|
3
|
+
pycontrails-0.52.0.dist-info/WHEEL,sha256=t3aNIuHimB-eyeerOmc50nLML0b4_R6yjydcdcJkGHg,108
|
|
4
|
+
pycontrails-0.52.0.dist-info/NOTICE,sha256=gKI8DcN1WhiXB2SFRKDogcjONldGubTvBxiOYdC4CXU,1926
|
|
5
|
+
pycontrails-0.52.0.dist-info/top_level.txt,sha256=Z8J1R_AiBAyCVjNw6jYLdrA68PrQqTg0t3_Yek_IZ0Q,29
|
|
6
|
+
pycontrails-0.52.0.dist-info/METADATA,sha256=q757wdU7ow-WkMWeLtjLZ3Mo8h28yfWfx0F-EtfLfbI,8831
|
|
7
|
+
pycontrails/_version.py,sha256=HchZIBAQcFK44NnsWNeG0x1TGXt4xcgLicOAT4yevSE,413
|
|
8
|
+
pycontrails/__init__.py,sha256=O2T9kXCMhcELcMZz7HEnwiBhh4Gfcj-yG1HtrotOKHQ,2001
|
|
9
9
|
pycontrails/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10
10
|
pycontrails/core/vector.py,sha256=P61Rv1M040A1SRHmdWVR_RfXcWa6faM330n-9499ilI,71722
|
|
11
|
-
pycontrails/core/rgi_cython.cpython-39-darwin.so,sha256=
|
|
11
|
+
pycontrails/core/rgi_cython.cpython-39-darwin.so,sha256=URKsmiVw94y4hg_tfKlEthQVhzxhECiiTqLtfka6OdM,310880
|
|
12
12
|
pycontrails/core/models.py,sha256=sipUAH_r0A1TxQ0yBjaPj8WC33Piw34ABHyrmRePfhg,39003
|
|
13
13
|
pycontrails/core/interpolation.py,sha256=FFYdUnTzGnkjoGs-FKsK3Y3nSK5lQI-mpq5HPALZ-y4,25495
|
|
14
14
|
pycontrails/core/fleet.py,sha256=84oTb8RJ3-bPVvZn3O2ljMEZLwJ9Q-E455ZzQJ4QaQU,16075
|
|
15
|
-
pycontrails/core/flight.py,sha256=
|
|
15
|
+
pycontrails/core/flight.py,sha256=BOnbGZuYNpHO0zJu75u27djoVbttnEPMTtNZjagAd4Q,83599
|
|
16
16
|
pycontrails/core/fuel.py,sha256=kJZ3P1lPm1L6rdPREM55XQ-VfJ_pt35cP4sO2Nnvmjs,4332
|
|
17
|
-
pycontrails/core/polygon.py,sha256=
|
|
18
|
-
pycontrails/core/
|
|
19
|
-
pycontrails/core/
|
|
20
|
-
pycontrails/core/__init__.py,sha256=4ZE7x1gMa_Q7GcgcWpPP9fQ-sTulCXWmMjsCJ0odakY,840
|
|
17
|
+
pycontrails/core/polygon.py,sha256=NhoK91oVE2pse1kw2mkkhxxQpJrvBld8ofTMCwNH_h8,18016
|
|
18
|
+
pycontrails/core/cache.py,sha256=9TaHyLtCpDazgN5zEt0aa4xNgvNcMc4oO_6nEz0XhYE,27971
|
|
19
|
+
pycontrails/core/__init__.py,sha256=x1z6x8w3sYmEqYcNWyWHuNkS9lPUPbHUoYJZs1K0q98,856
|
|
21
20
|
pycontrails/core/flightplan.py,sha256=s7tHbjMFbHAJkSWV6hPkghuW6jDb1n5UhWAo9XbJ9z0,7349
|
|
22
21
|
pycontrails/core/met.py,sha256=HORTWNre9rSyOgNnVnVaW0A6jDjU5W5A5s2L89KIZyM,93602
|
|
23
22
|
pycontrails/core/aircraft_performance.py,sha256=4yNGfArt741HNFjxpWvEu86BTzie9LaPjC4KH3dXYts,21966
|
|
24
23
|
pycontrails/core/airports.py,sha256=aeyAXVkioIRomrP79UtNrxindL4f1DJyXFaojZCuBBw,6758
|
|
25
24
|
pycontrails/core/met_var.py,sha256=EhrLGdrCAp8cKb-3Whd_ttLMZn4_zLMhE-QyFinESqo,9197
|
|
26
25
|
pycontrails/core/coordinates.py,sha256=vVITA90x0Jx-UQG2XMm3JAKKsIrFUcU861xV-L9czTI,5291
|
|
27
|
-
pycontrails/datalib/goes.py,sha256=
|
|
28
|
-
pycontrails/datalib/
|
|
29
|
-
pycontrails/datalib/
|
|
30
|
-
pycontrails/datalib/
|
|
31
|
-
pycontrails/datalib/
|
|
32
|
-
pycontrails/datalib/
|
|
26
|
+
pycontrails/datalib/goes.py,sha256=CDCwNWv35MGm20s0AS5Xxy0hGyiUhtX9S9cc8cI_bKI,26357
|
|
27
|
+
pycontrails/datalib/landsat.py,sha256=jV6E9TMmo3x_EEb-4BnD3L7nB5C3NCLT7FaXoMxXP64,19645
|
|
28
|
+
pycontrails/datalib/spire.py,sha256=66SnMdA8KOS69USjKmqrJmTKPK08Ehih9tnlsCt-AJw,25331
|
|
29
|
+
pycontrails/datalib/__init__.py,sha256=hW9NWdFPC3y_2vHMteQ7GgQdop3917MkDaf5ZhU2RBY,369
|
|
30
|
+
pycontrails/datalib/sentinel.py,sha256=Rzsp5Hv6Rh3XVEfvFeofmClId4Eq2KhdYiEhIqFPE3U,17222
|
|
31
|
+
pycontrails/datalib/_met_utils/metsource.py,sha256=lAMkvbwix1ziqWGZuHvsu69p3etwOjmAtYiriaEz7Hg,23991
|
|
32
|
+
pycontrails/datalib/ecmwf/arco_era5.py,sha256=YuoPmPlP9TpZ6qhUPLbb30y3D3dTNDasTLZqP5MAWtw,18624
|
|
33
|
+
pycontrails/datalib/ecmwf/era5.py,sha256=TMX9bJHvALvSbxFI0BpwI9l3yMoxI1ecc2ROfvPaNIE,18242
|
|
34
|
+
pycontrails/datalib/ecmwf/era5_model_level.py,sha256=0R96ATNVp1UB63M_ER6aEqdY60dfkj_0SNVjyD6a8fE,18945
|
|
35
|
+
pycontrails/datalib/ecmwf/hres.py,sha256=p_l0ytCEEWGam7G7aVynpLmH4H4LQNeVe0Ay7Tw6fp8,28240
|
|
33
36
|
pycontrails/datalib/ecmwf/variables.py,sha256=S5SV_kPrWRhwOpOYcWw3V5VRUB_HOVCTw3Sf7UClJEk,9605
|
|
34
|
-
pycontrails/datalib/ecmwf/hres_model_level.py,sha256=
|
|
37
|
+
pycontrails/datalib/ecmwf/hres_model_level.py,sha256=XomrGw7FdjmXRWLAgYSqvB3Nd00dz9HyZt0fH5ZyA6I,19135
|
|
35
38
|
pycontrails/datalib/ecmwf/__init__.py,sha256=kwgk9P4RYdLgOYcBLXX5rWz1T_yL7aO8nt2Eb1PB-eE,1455
|
|
36
|
-
pycontrails/datalib/ecmwf/common.py,sha256=
|
|
39
|
+
pycontrails/datalib/ecmwf/common.py,sha256=p6zTQcojmTNF2FYGztxhX7cYEg9d29JH6_v2mrKteW0,3878
|
|
37
40
|
pycontrails/datalib/ecmwf/model_levels.py,sha256=x83WJtjC6OnHcUsiNgvYIrVX4lY-pkXR-YlvUo9vYis,2712
|
|
38
|
-
pycontrails/datalib/ecmwf/ifs.py,sha256=
|
|
41
|
+
pycontrails/datalib/ecmwf/ifs.py,sha256=2heema398PoEVCfiTZSBawN25PXAa_CpWm_pGLZ1GuY,10662
|
|
39
42
|
pycontrails/datalib/ecmwf/static/model_level_dataframe_v20240418.csv,sha256=PmvGLRzn6uuCKSwiasSuVcehvvmSaqP7cnLuN6hhCQQ,9788
|
|
40
|
-
pycontrails/datalib/
|
|
43
|
+
pycontrails/datalib/_leo_utils/vis.py,sha256=5DgfRFZGqLm-lm72UlSobWbYk6stJ96o804kRG5S2cI,1759
|
|
44
|
+
pycontrails/datalib/_leo_utils/search.py,sha256=r87T2OV4qH1pYI2YznvsBL042f4RKxD3OA2snd3-kDI,8687
|
|
45
|
+
pycontrails/datalib/_leo_utils/static/bq_roi_query.sql,sha256=xq6-tJyz0-bUwW0KjQymqygjH3WlQBmyBtP7Ci7SBe8,260
|
|
46
|
+
pycontrails/datalib/gfs/gfs.py,sha256=yektP3gDKpjdmh1FnCOw5D8fq4kQDg4Yti4zqM4wYlo,21639
|
|
41
47
|
pycontrails/datalib/gfs/variables.py,sha256=KESzB1sTD3hsU8T-qZFD29oFM3l2ZcEtjAE_H7BHKIE,2861
|
|
42
48
|
pycontrails/datalib/gfs/__init__.py,sha256=tWxgqmlW8Uo07J-3fBTXPrteatzTka9mSXomhWy3NVA,684
|
|
43
|
-
pycontrails/datalib/spire/spire.py,sha256=66SnMdA8KOS69USjKmqrJmTKPK08Ehih9tnlsCt-AJw,25331
|
|
44
|
-
pycontrails/datalib/spire/__init__.py,sha256=4EZPJUmNnF8v2n6QhBvSi_3rYXRBX2zGcPE-WEA-dP8,343
|
|
45
49
|
pycontrails/ext/synthetic_flight.py,sha256=65LxC1ZZNJrd8YcSgg6739ouPNf0VgVCOfEhK4W4YkI,16679
|
|
46
50
|
pycontrails/ext/cirium.py,sha256=DFPfRwLDwddpucAPRQhyT4bDGh0VvvoViMUd3pidam8,415
|
|
47
51
|
pycontrails/ext/empirical_grid.py,sha256=WSC266aKsQLzCmtrZJCpLdDBykZ9rlFE9xEXmZjbgHo,4362
|
|
@@ -58,7 +62,7 @@ pycontrails/models/__init__.py,sha256=dQTOLQb7RdUdUwslt5se__5y_ymbInBexQmNrmAeOd
|
|
|
58
62
|
pycontrails/models/issr.py,sha256=k8yCKCtKLW0ECC0QIs-ID1zbr6vHJfeBm9Shq3oaA3U,7351
|
|
59
63
|
pycontrails/models/sac.py,sha256=B-0acGuYs2ajFYtSMGP4LO328OsAjQ7v2bnQ5HCw4Ak,15961
|
|
60
64
|
pycontrails/models/accf.py,sha256=20XWID_6aoFLDOfanf5ncay_azPbZSA2NoowJSZbM20,12559
|
|
61
|
-
pycontrails/models/dry_advection.py,sha256=
|
|
65
|
+
pycontrails/models/dry_advection.py,sha256=jToOXFwv0V-ZbgpJBvUgTq-AiKP4El_uq1SWS6Oi6YY,16556
|
|
62
66
|
pycontrails/models/pcr.py,sha256=ZzbEuTOuDdUmmL5T3Wk3HL-O8XzX3HMnn98WcPbASaU,5348
|
|
63
67
|
pycontrails/models/emissions/__init__.py,sha256=N_EE768TNRDbdmXaxly2Pwun7UmVBTVPc4k89VBz5ys,478
|
|
64
68
|
pycontrails/models/emissions/ffm2.py,sha256=h_bmB4pxxvC1ptqz5jB_rpf9QgaAv9J7Lu-6QpMiFtk,12032
|
|
@@ -67,6 +71,11 @@ pycontrails/models/emissions/black_carbon.py,sha256=F2SCUiV39zg2mUxbWsct6vvr_JgH
|
|
|
67
71
|
pycontrails/models/emissions/static/edb-nvpm-v29b-engines.csv,sha256=NatpVI1D2tTDLK7uVvlanm9DhfFB44nmFA4aocUcXco,77318
|
|
68
72
|
pycontrails/models/emissions/static/edb-gaseous-v29b-engines.csv,sha256=Oub-FkyR4cPlTEPo9wDPAn4i4CpGpKH2tet30MNitI0,127518
|
|
69
73
|
pycontrails/models/emissions/static/default-engine-uids.csv,sha256=3blb0aqtM8YRsyT1WDo0UYTBtv1h4BwXRIC_Ll9fhnI,6217
|
|
74
|
+
pycontrails/models/apcemm/__init__.py,sha256=M-hrJklbSgBckclm526MiBAhpKPLHgJbB58ArbJuGIk,175
|
|
75
|
+
pycontrails/models/apcemm/inputs.py,sha256=88GylkiaymEW_XZeFxLsICI9wV6kl8wVYsuyTe8zIQ8,6585
|
|
76
|
+
pycontrails/models/apcemm/utils.py,sha256=xlEVe0RKFXrqDr4V77mbb2HxY8IK42EX4K86tN1sLQs,17094
|
|
77
|
+
pycontrails/models/apcemm/apcemm.py,sha256=E6Ov1akN7SCa_Y2Atgw85eaoV9uML6tRZ5cKHztphqs,39894
|
|
78
|
+
pycontrails/models/apcemm/static/apcemm_yaml_template.yaml,sha256=uAZkc57OUvDMjgX6F5f6hgDh3Hgg1NbHWRUFSiv0DEI,6745
|
|
70
79
|
pycontrails/models/humidity_scaling/humidity_scaling.py,sha256=9619kSgNIBjkM8vFWcwny7t4mhg00pX0aKabrDGPn7I,36658
|
|
71
80
|
pycontrails/models/humidity_scaling/__init__.py,sha256=nqsab_j9BCwMbTfCn4BjXMdhItlvNKkgUJ9-lb8RyIo,1119
|
|
72
81
|
pycontrails/models/humidity_scaling/quantiles/era5-pressure-level-quantiles.pq,sha256=tfYhbafF9Z-gGCg6VQ1YBlOaK_01e65Dc6s9b-hQ6Zo,286375
|
|
@@ -74,8 +83,8 @@ pycontrails/models/humidity_scaling/quantiles/era5-model-level-quantiles.pq,sha2
|
|
|
74
83
|
pycontrails/models/cocip/radiative_forcing.py,sha256=ERuFcYMo0_1iiOricnZ8D4ext23bMnTCeZwg9vd6Vzs,44944
|
|
75
84
|
pycontrails/models/cocip/wind_shear.py,sha256=p8d3iaNzxPA3MoxFEM1ZDKt0aticoD6U9cv0QmbuBzs,3860
|
|
76
85
|
pycontrails/models/cocip/cocip.py,sha256=0ILMcjbgsM00rCXAeo9UkSnUsmvq1XvORhNPI-ReNcM,97591
|
|
77
|
-
pycontrails/models/cocip/output_formats.py,sha256=
|
|
78
|
-
pycontrails/models/cocip/__init__.py,sha256=
|
|
86
|
+
pycontrails/models/cocip/output_formats.py,sha256=e3K-23EvEE2z9PuHNr2OQhwvN8_PYmNmR7Li-dsYZq8,83229
|
|
87
|
+
pycontrails/models/cocip/__init__.py,sha256=jd-9Tq20s1kwQBlxsYfZLi3hlT5MnWOY2XsPazq1fgE,962
|
|
79
88
|
pycontrails/models/cocip/cocip_params.py,sha256=R4bewge3xLgWYbBbGwd8e8r0NlaFx2IaQPZEfiqJZRI,11392
|
|
80
89
|
pycontrails/models/cocip/wake_vortex.py,sha256=i_OF193KK5BCMdVCgK0_4Aqn55f6rnL4WDWEac8um-w,14421
|
|
81
90
|
pycontrails/models/cocip/cocip_uncertainty.py,sha256=4JtlCVFpLBnPRlvyEp9QFpRfHFK9joSTnxe0NJdONG4,11784
|
|
@@ -91,7 +100,7 @@ pycontrails/models/ps_model/static/ps-synonym-list-20240524.csv,sha256=ksrpQTHkx
|
|
|
91
100
|
pycontrails/models/ps_model/static/ps-aircraft-params-20240524.csv,sha256=3eNhSwzut0gon04k2EYKKaXRvQSUlau3yBAbHS0EBao,25784
|
|
92
101
|
pycontrails/models/cocipgrid/cocip_grid_params.py,sha256=l4vBPrOKCJDz5Y1uMjmOGVyUcSWgfZtFWbjW968OPz8,5875
|
|
93
102
|
pycontrails/models/cocipgrid/__init__.py,sha256=ar6bF_8Pusbb-myujz_q5ntFylQTNH8yiM8fxP7Zk30,262
|
|
94
|
-
pycontrails/models/cocipgrid/cocip_grid.py,sha256=
|
|
103
|
+
pycontrails/models/cocipgrid/cocip_grid.py,sha256=MLsh3rZb-6Q7vnad6YYTfZs83-kSJEbhjfWTS9oooXI,94333
|
|
95
104
|
pycontrails/physics/geo.py,sha256=lqEpTLhex2r-o-6EHSSEiPC8xqZ-NlwwCBob9-cJA_w,30240
|
|
96
105
|
pycontrails/physics/units.py,sha256=j-G5AC9eWIvv2MTOq9lUOoOQKFNJJuHzWLanHRji2tE,12272
|
|
97
106
|
pycontrails/physics/constants.py,sha256=pHQQmccMUwuNnY4hFtm3L8G2rnUQcfJnroyQr8HAVeM,3146
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"""ECMWF Data Access."""
|
|
2
|
-
|
|
3
|
-
from __future__ import annotations
|
|
4
|
-
|
|
5
|
-
from pycontrails.datalib.spire.spire import (
|
|
6
|
-
clean,
|
|
7
|
-
generate_flight_id,
|
|
8
|
-
identify_flights,
|
|
9
|
-
is_valid_trajectory,
|
|
10
|
-
validate_flights,
|
|
11
|
-
)
|
|
12
|
-
|
|
13
|
-
__all__ = [
|
|
14
|
-
"clean",
|
|
15
|
-
"generate_flight_id",
|
|
16
|
-
"identify_flights",
|
|
17
|
-
"is_valid_trajectory",
|
|
18
|
-
"validate_flights",
|
|
19
|
-
]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|