pycontrails 0.54.0__cp312-cp312-macosx_10_13_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 pycontrails might be problematic. Click here for more details.

Files changed (109) hide show
  1. pycontrails/__init__.py +70 -0
  2. pycontrails/_version.py +16 -0
  3. pycontrails/core/__init__.py +30 -0
  4. pycontrails/core/aircraft_performance.py +641 -0
  5. pycontrails/core/airports.py +226 -0
  6. pycontrails/core/cache.py +881 -0
  7. pycontrails/core/coordinates.py +174 -0
  8. pycontrails/core/fleet.py +470 -0
  9. pycontrails/core/flight.py +2314 -0
  10. pycontrails/core/flightplan.py +220 -0
  11. pycontrails/core/fuel.py +140 -0
  12. pycontrails/core/interpolation.py +721 -0
  13. pycontrails/core/met.py +2833 -0
  14. pycontrails/core/met_var.py +307 -0
  15. pycontrails/core/models.py +1181 -0
  16. pycontrails/core/polygon.py +549 -0
  17. pycontrails/core/rgi_cython.cpython-312-darwin.so +0 -0
  18. pycontrails/core/vector.py +2190 -0
  19. pycontrails/datalib/__init__.py +12 -0
  20. pycontrails/datalib/_leo_utils/search.py +250 -0
  21. pycontrails/datalib/_leo_utils/static/bq_roi_query.sql +6 -0
  22. pycontrails/datalib/_leo_utils/vis.py +59 -0
  23. pycontrails/datalib/_met_utils/metsource.py +746 -0
  24. pycontrails/datalib/ecmwf/__init__.py +73 -0
  25. pycontrails/datalib/ecmwf/arco_era5.py +340 -0
  26. pycontrails/datalib/ecmwf/common.py +109 -0
  27. pycontrails/datalib/ecmwf/era5.py +550 -0
  28. pycontrails/datalib/ecmwf/era5_model_level.py +487 -0
  29. pycontrails/datalib/ecmwf/hres.py +782 -0
  30. pycontrails/datalib/ecmwf/hres_model_level.py +459 -0
  31. pycontrails/datalib/ecmwf/ifs.py +284 -0
  32. pycontrails/datalib/ecmwf/model_levels.py +434 -0
  33. pycontrails/datalib/ecmwf/static/model_level_dataframe_v20240418.csv +139 -0
  34. pycontrails/datalib/ecmwf/variables.py +267 -0
  35. pycontrails/datalib/gfs/__init__.py +28 -0
  36. pycontrails/datalib/gfs/gfs.py +646 -0
  37. pycontrails/datalib/gfs/variables.py +100 -0
  38. pycontrails/datalib/goes.py +772 -0
  39. pycontrails/datalib/landsat.py +569 -0
  40. pycontrails/datalib/sentinel.py +511 -0
  41. pycontrails/datalib/spire.py +739 -0
  42. pycontrails/ext/bada.py +41 -0
  43. pycontrails/ext/cirium.py +14 -0
  44. pycontrails/ext/empirical_grid.py +140 -0
  45. pycontrails/ext/synthetic_flight.py +430 -0
  46. pycontrails/models/__init__.py +1 -0
  47. pycontrails/models/accf.py +406 -0
  48. pycontrails/models/apcemm/__init__.py +8 -0
  49. pycontrails/models/apcemm/apcemm.py +982 -0
  50. pycontrails/models/apcemm/inputs.py +226 -0
  51. pycontrails/models/apcemm/static/apcemm_yaml_template.yaml +183 -0
  52. pycontrails/models/apcemm/utils.py +437 -0
  53. pycontrails/models/cocip/__init__.py +29 -0
  54. pycontrails/models/cocip/cocip.py +2616 -0
  55. pycontrails/models/cocip/cocip_params.py +299 -0
  56. pycontrails/models/cocip/cocip_uncertainty.py +285 -0
  57. pycontrails/models/cocip/contrail_properties.py +1517 -0
  58. pycontrails/models/cocip/output_formats.py +2261 -0
  59. pycontrails/models/cocip/radiative_forcing.py +1262 -0
  60. pycontrails/models/cocip/radiative_heating.py +520 -0
  61. pycontrails/models/cocip/unterstrasser_wake_vortex.py +403 -0
  62. pycontrails/models/cocip/wake_vortex.py +396 -0
  63. pycontrails/models/cocip/wind_shear.py +120 -0
  64. pycontrails/models/cocipgrid/__init__.py +9 -0
  65. pycontrails/models/cocipgrid/cocip_grid.py +2573 -0
  66. pycontrails/models/cocipgrid/cocip_grid_params.py +138 -0
  67. pycontrails/models/dry_advection.py +494 -0
  68. pycontrails/models/emissions/__init__.py +21 -0
  69. pycontrails/models/emissions/black_carbon.py +594 -0
  70. pycontrails/models/emissions/emissions.py +1353 -0
  71. pycontrails/models/emissions/ffm2.py +336 -0
  72. pycontrails/models/emissions/static/default-engine-uids.csv +239 -0
  73. pycontrails/models/emissions/static/edb-gaseous-v29b-engines.csv +596 -0
  74. pycontrails/models/emissions/static/edb-nvpm-v29b-engines.csv +215 -0
  75. pycontrails/models/humidity_scaling/__init__.py +37 -0
  76. pycontrails/models/humidity_scaling/humidity_scaling.py +1025 -0
  77. pycontrails/models/humidity_scaling/quantiles/era5-model-level-quantiles.pq +0 -0
  78. pycontrails/models/humidity_scaling/quantiles/era5-pressure-level-quantiles.pq +0 -0
  79. pycontrails/models/issr.py +210 -0
  80. pycontrails/models/pcc.py +327 -0
  81. pycontrails/models/pcr.py +154 -0
  82. pycontrails/models/ps_model/__init__.py +17 -0
  83. pycontrails/models/ps_model/ps_aircraft_params.py +376 -0
  84. pycontrails/models/ps_model/ps_grid.py +505 -0
  85. pycontrails/models/ps_model/ps_model.py +1017 -0
  86. pycontrails/models/ps_model/ps_operational_limits.py +540 -0
  87. pycontrails/models/ps_model/static/ps-aircraft-params-20240524.csv +68 -0
  88. pycontrails/models/ps_model/static/ps-synonym-list-20240524.csv +103 -0
  89. pycontrails/models/sac.py +459 -0
  90. pycontrails/models/tau_cirrus.py +168 -0
  91. pycontrails/physics/__init__.py +1 -0
  92. pycontrails/physics/constants.py +116 -0
  93. pycontrails/physics/geo.py +989 -0
  94. pycontrails/physics/jet.py +837 -0
  95. pycontrails/physics/thermo.py +451 -0
  96. pycontrails/physics/units.py +472 -0
  97. pycontrails/py.typed +0 -0
  98. pycontrails/utils/__init__.py +1 -0
  99. pycontrails/utils/dependencies.py +66 -0
  100. pycontrails/utils/iteration.py +13 -0
  101. pycontrails/utils/json.py +188 -0
  102. pycontrails/utils/temp.py +50 -0
  103. pycontrails/utils/types.py +165 -0
  104. pycontrails-0.54.0.dist-info/LICENSE +178 -0
  105. pycontrails-0.54.0.dist-info/METADATA +179 -0
  106. pycontrails-0.54.0.dist-info/NOTICE +43 -0
  107. pycontrails-0.54.0.dist-info/RECORD +109 -0
  108. pycontrails-0.54.0.dist-info/WHEEL +5 -0
  109. pycontrails-0.54.0.dist-info/top_level.txt +3 -0
@@ -0,0 +1,179 @@
1
+ Metadata-Version: 2.1
2
+ Name: pycontrails
3
+ Version: 0.54.0
4
+ Summary: Python library for modeling aviation climate impacts
5
+ Author-email: Breakthrough Energy <py@contrails.org>
6
+ License: Apache-2.0
7
+ Project-URL: Changelog, https://py.contrails.org/changelog.html
8
+ Project-URL: Documentation, https://py.contrails.org
9
+ Project-URL: Issues, https://github.com/contrailcirrus/pycontrails/issues
10
+ Project-URL: Repository, https://github.com/contrailcirrus/pycontrails
11
+ Keywords: contrails,climate,aviation,geospatial
12
+ Classifier: Development Status :: 4 - Beta
13
+ Classifier: Intended Audience :: Science/Research
14
+ Classifier: License :: OSI Approved :: Apache Software License
15
+ Classifier: Operating System :: OS Independent
16
+ Classifier: Programming Language :: Python :: 3
17
+ Classifier: Programming Language :: Python :: 3.10
18
+ Classifier: Programming Language :: Python :: 3.11
19
+ Classifier: Programming Language :: Python :: 3.12
20
+ Classifier: Programming Language :: Python :: 3.13
21
+ Classifier: Programming Language :: Python :: 3 :: Only
22
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
23
+ Classifier: Topic :: Scientific/Engineering :: Atmospheric Science
24
+ Classifier: Topic :: Scientific/Engineering :: GIS
25
+ Classifier: Typing :: Typed
26
+ Requires-Python: >=3.10
27
+ Description-Content-Type: text/markdown
28
+ License-File: LICENSE
29
+ License-File: NOTICE
30
+ Requires-Dist: dask>=2022.3
31
+ Requires-Dist: numpy>=1.22
32
+ Requires-Dist: overrides>=6.1
33
+ Requires-Dist: pandas>=2.2
34
+ Requires-Dist: scipy>=1.10
35
+ Requires-Dist: xarray>=2022.3
36
+ Provides-Extra: complete
37
+ Requires-Dist: pycontrails[ecmwf,gcp,gfs,jupyter,pyproj,sat,vis,zarr]; extra == "complete"
38
+ Provides-Extra: dev
39
+ Requires-Dist: dep-license; extra == "dev"
40
+ Requires-Dist: fastparquet>=0.8; extra == "dev"
41
+ Requires-Dist: ipdb>=0.13; extra == "dev"
42
+ Requires-Dist: memory-profiler; extra == "dev"
43
+ Requires-Dist: mypy>=1.8; extra == "dev"
44
+ Requires-Dist: mypy-extensions>=1.0; extra == "dev"
45
+ Requires-Dist: platformdirs>=3.0; extra == "dev"
46
+ Requires-Dist: pre-commit>=2.10; extra == "dev"
47
+ Requires-Dist: psutil; extra == "dev"
48
+ Requires-Dist: pyarrow>=5.0; extra == "dev"
49
+ Requires-Dist: pytest>=8.2; extra == "dev"
50
+ Requires-Dist: pytest-cov>=2.11; extra == "dev"
51
+ Requires-Dist: requests>=2.25; extra == "dev"
52
+ Requires-Dist: ruff==0.6.2; extra == "dev"
53
+ Requires-Dist: setuptools; extra == "dev"
54
+ Provides-Extra: docs
55
+ Requires-Dist: doc8>=1.1; extra == "docs"
56
+ Requires-Dist: furo>=2023.3; extra == "docs"
57
+ Requires-Dist: myst-parser>=1.0; extra == "docs"
58
+ Requires-Dist: nb-clean>=3.2; extra == "docs"
59
+ Requires-Dist: nbsphinx>=0.9; extra == "docs"
60
+ Requires-Dist: nbval!=0.10.0,>=0.9.6; extra == "docs"
61
+ Requires-Dist: pytest-check-links>=0.8.0; extra == "docs"
62
+ Requires-Dist: sphinx>=4.2; extra == "docs"
63
+ Requires-Dist: sphinx-autobuild>=0.7; extra == "docs"
64
+ Requires-Dist: sphinxcontrib-bibtex>=2.2; extra == "docs"
65
+ Requires-Dist: sphinx-copybutton>=0.5; extra == "docs"
66
+ Requires-Dist: sphinxext.opengraph>=0.8; extra == "docs"
67
+ Provides-Extra: ecmwf
68
+ Requires-Dist: cdsapi>=0.4; extra == "ecmwf"
69
+ Requires-Dist: cfgrib>=0.9; extra == "ecmwf"
70
+ Requires-Dist: eccodes>=1.4; extra == "ecmwf"
71
+ Requires-Dist: ecmwf-api-client>=1.6; extra == "ecmwf"
72
+ Requires-Dist: netcdf4>=1.6.1; extra == "ecmwf"
73
+ Requires-Dist: platformdirs>=3.0; extra == "ecmwf"
74
+ Requires-Dist: requests>=2.25; extra == "ecmwf"
75
+ Provides-Extra: gcp
76
+ Requires-Dist: google-cloud-storage>=2.1; extra == "gcp"
77
+ Requires-Dist: platformdirs>=3.0; extra == "gcp"
78
+ Requires-Dist: tqdm>=4.61; extra == "gcp"
79
+ Provides-Extra: gfs
80
+ Requires-Dist: boto3>=1.20; extra == "gfs"
81
+ Requires-Dist: cfgrib>=0.9; extra == "gfs"
82
+ Requires-Dist: eccodes>=1.4; extra == "gfs"
83
+ Requires-Dist: platformdirs>=3.0; extra == "gfs"
84
+ Requires-Dist: tqdm>=4.61; extra == "gfs"
85
+ Provides-Extra: jupyter
86
+ Requires-Dist: ipywidgets>=7.6; extra == "jupyter"
87
+ Requires-Dist: jupyterlab>=2.2; extra == "jupyter"
88
+ Provides-Extra: open3d
89
+ Requires-Dist: open3d>=0.14; extra == "open3d"
90
+ Provides-Extra: pyproj
91
+ Requires-Dist: pyproj>=3.5; extra == "pyproj"
92
+ Provides-Extra: sat
93
+ Requires-Dist: cartopy>=0.22; extra == "sat"
94
+ Requires-Dist: db-dtypes>=1.2; extra == "sat"
95
+ Requires-Dist: gcsfs>=2022.3; extra == "sat"
96
+ Requires-Dist: geojson>=3.1; extra == "sat"
97
+ Requires-Dist: google-cloud-bigquery>=3.23; extra == "sat"
98
+ Requires-Dist: google-cloud-bigquery-storage>=2.25; extra == "sat"
99
+ Requires-Dist: pillow>=10.3; extra == "sat"
100
+ Requires-Dist: pyproj>=3.5; extra == "sat"
101
+ Requires-Dist: rasterio>=1.3; extra == "sat"
102
+ Requires-Dist: scikit-image>=0.18; extra == "sat"
103
+ Provides-Extra: vis
104
+ Requires-Dist: matplotlib>=3.3; extra == "vis"
105
+ Requires-Dist: opencv-python-headless>=4.5; extra == "vis"
106
+ Requires-Dist: scikit-learn>=0.23; extra == "vis"
107
+ Requires-Dist: scikit-image>=0.18; extra == "vis"
108
+ Requires-Dist: seaborn>=0.11; extra == "vis"
109
+ Requires-Dist: shapely>=2.0; extra == "vis"
110
+ Provides-Extra: zarr
111
+ Requires-Dist: fsspec>=2022.7.1; extra == "zarr"
112
+ Requires-Dist: gcsfs>=2022.7.1; extra == "zarr"
113
+ Requires-Dist: zarr>=2.12; extra == "zarr"
114
+
115
+ # pycontrails
116
+
117
+ > Python library for modeling aviation climate impacts
118
+
119
+ | | |
120
+ |---------------|-------------------------------------------------------------------|
121
+ | **Version** | [![PyPI version](https://img.shields.io/pypi/v/pycontrails.svg)](https://pypi.python.org/pypi/pycontrails) [![conda-forge version](https://anaconda.org/conda-forge/pycontrails/badges/version.svg)](https://anaconda.org/conda-forge/pycontrails) [![Supported python versions](https://img.shields.io/pypi/pyversions/pycontrails.svg)](https://pypi.python.org/pypi/pycontrails) |
122
+ | **Citation** | [![DOI](https://zenodo.org/badge/617248930.svg)](https://zenodo.org/badge/latestdoi/617248930) |
123
+ | **Tests** | [![Unit test](https://github.com/contrailcirrus/pycontrails/actions/workflows/test.yaml/badge.svg)](https://github.com/contrailcirrus/pycontrails/actions/workflows/test.yaml) [![Docs](https://github.com/contrailcirrus/pycontrails/actions/workflows/docs.yaml/badge.svg?event=push)](https://github.com/contrailcirrus/pycontrails/actions/workflows/docs.yaml) [![Release](https://github.com/contrailcirrus/pycontrails/actions/workflows/release.yaml/badge.svg)](https://github.com/contrailcirrus/pycontrails/actions/workflows/release.yaml) [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/contrailcirrus/pycontrails/badge)](https://securityscorecards.dev/viewer?uri=github.com/contrailcirrus/pycontrails)|
124
+ | **License** | [![Apache License 2.0](https://img.shields.io/pypi/l/pycontrails.svg)](https://github.com/contrailcirrus/pycontrails/blob/main/LICENSE) |
125
+ | **Community** | [![Github Discussions](https://img.shields.io/github/discussions/contrailcirrus/pycontrails)](https://github.com/contrailcirrus/pycontrails/discussions) [![Github Issues](https://img.shields.io/github/issues/contrailcirrus/pycontrails)](https://github.com/contrailcirrus/pycontrails/issues) [![Github PRs](https://img.shields.io/github/issues-pr/contrailcirrus/pycontrails)](https://github.com/contrailcirrus/pycontrails/pulls) |
126
+
127
+ **pycontrails** is an open source project and Python package for modeling aircraft contrails and other
128
+ aviation related climate impacts.
129
+
130
+ `pycontrails` defines common [data structures](https://py.contrails.org/api.html#data) and [interfaces](https://py.contrails.org/api.html#datalib) to efficiently build and run [models](https://py.contrails.org/api.html#models) of aircraft performance, emissions, and radiative forcing.
131
+
132
+ ## Documentation
133
+
134
+ Documentation and examples available at [py.contrails.org](https://py.contrails.org/).
135
+
136
+ <!-- Try out an [interactive Colab Notebook](). -->
137
+
138
+ ## Install
139
+
140
+ ### Install with pip
141
+
142
+ You can install pycontrails from PyPI with `pip` (Python 3.10 or later required):
143
+
144
+ ```bash
145
+ $ pip install pycontrails
146
+
147
+ # install with all optional dependencies
148
+ $ pip install "pycontrails[complete]"
149
+ ```
150
+
151
+ Install the latest development version directly from GitHub:
152
+
153
+ ```bash
154
+ pip install git+https://github.com/contrailcirrus/pycontrails.git
155
+ ```
156
+
157
+ ### Install with conda
158
+
159
+ You can install pycontrails from the [conda-forge](https://conda-forge.org/) channel with `conda` (or other `conda`-like package managers such as `mamba`):
160
+
161
+ ```bash
162
+ conda install -c conda-forge pycontrails
163
+ ```
164
+
165
+ The conda-forge package includes all optional runtime dependencies.
166
+
167
+ See more installation options in the [install documentation](https://py.contrails.org/install).
168
+
169
+ ## Get Involved
170
+
171
+ - Ask questions, discuss models, and present ideas in [GitHub Discussions](https://github.com/contrailcirrus/pycontrails/discussions).
172
+ - Report bugs or suggest changes in [GitHub Issues](https://github.com/contrailcirrus/pycontrails/issues).
173
+ - Review the [contributing guidelines](https://py.contrails.org/contributing.html) and contribute improvements as [Pull Requests](https://github.com/contrailcirrus/pycontrails/pulls).
174
+
175
+ ## License
176
+
177
+ [Apache License 2.0](https://github.com/contrailcirrus/pycontrails/blob/main/LICENSE)
178
+
179
+ Additional attributions in [NOTICE](https://github.com/contrailcirrus/pycontrails/blob/main/NOTICE).
@@ -0,0 +1,43 @@
1
+ Copyright (c) 2021-2023 Breakthrough Energy
2
+
3
+
4
+ Attribution
5
+ ===========
6
+
7
+
8
+ Contrail Cirrus Prediction Tool (CoCiP)
9
+ ----------------------------------------
10
+
11
+ The Contrail Cirrus Prediction Tool (CoCiP) originated at the German Aerospace Center (DLR) Institute of Atmospheric Physics.
12
+ It was developed by Ulrich Schumann, see Schumann, U. 2012. "A Contrail Cirrus Prediction Model."
13
+ Geoscientific Model Development 5 (3): 543–80. https://doi.org/10.5194/gmd-5-543-2012.
14
+ and related publications:
15
+
16
+ Schumann, U., B. Mayer, K. Graf, and H. Mannstein. 2012.
17
+ "A Parametric Radiative Forcing Model for Contrail Cirrus."
18
+ Journal of Applied Meteorology and Climatology 51 (7): 1391–1406.
19
+ https://doi.org/10.1175/JAMC-D-11-0242.1.
20
+
21
+ Schumann, U., J. E. Penner, Yibin Chen, Cheng Zhou, and K. Graf. 2015.
22
+ "Dehydration Effects from Contrails in a Coupled Contrail–Climate Model."
23
+ Atmospheric Chemistry and Physics 15 (19): 11179–99.
24
+ https://doi.org/10.5194/acp-15-11179-2015.
25
+
26
+ Schumann, Ulrich, and Andrew J. Heymsfield. 2017.
27
+ "On the Life Cycle of Individual Contrails and Contrail Cirrus."
28
+ Meteorological Monographs 58 (1): 3.1-3.24.
29
+ https://doi.org/10.1175/AMSMONOGRAPHS-D-16-0005.1.
30
+
31
+ Teoh, Roger, Ulrich Schumann, Arnab Majumdar, and Marc E. J. Stettler. 2020.
32
+ "Mitigating the Climate Forcing of Aircraft Contrails by Small-Scale Diversions and Technology Adoption."
33
+ Environmental Science & Technology 54 (5): 2941–50.
34
+ https://doi.org/10.1021/acs.est.9b05608.
35
+
36
+ Teoh, Roger, Ulrich Schumann, Edward Gryspeerdt, Marc Shapiro, Jarlath Molloy,
37
+ George Koudis, Christiane Voigt, and Marc E. J. Stettler. 2022.
38
+ "Aviation Contrail Climate Effects in the North Atlantic from 2016 to 2021."
39
+ Atmospheric Chemistry and Physics 22 (16): 10919–35.
40
+ https://doi.org/10.5194/acp-22-10919-2022.
41
+
42
+ Further references can be found here:
43
+ https://www.dlr.de/pa/en/PortalData/33/Resources/dokumente/cocip/Literatur_CoCiP_20200520.pdf
@@ -0,0 +1,109 @@
1
+ pycontrails-0.54.0.dist-info/RECORD,,
2
+ pycontrails-0.54.0.dist-info/LICENSE,sha256=gJ-h7SFFD1mCfR6a7HILvEtodDT6Iig8bLXdgqR6ucA,10175
3
+ pycontrails-0.54.0.dist-info/WHEEL,sha256=XKcF31Zaw3JbUhzndjJ5pxA5UZO_hOCCOjGU939S708,111
4
+ pycontrails-0.54.0.dist-info/NOTICE,sha256=gKI8DcN1WhiXB2SFRKDogcjONldGubTvBxiOYdC4CXU,1926
5
+ pycontrails-0.54.0.dist-info/top_level.txt,sha256=Z8J1R_AiBAyCVjNw6jYLdrA68PrQqTg0t3_Yek_IZ0Q,29
6
+ pycontrails-0.54.0.dist-info/METADATA,sha256=ZK_iyLfHqxvbeM92Lbzdhw0hSOqdE1NPpPn4m7IbkTE,9074
7
+ pycontrails/_version.py,sha256=Cy6-7BAUUEvyIJZFLyqb_w3IXvuVEBdc837EO9ql3TM,413
8
+ pycontrails/__init__.py,sha256=O2T9kXCMhcELcMZz7HEnwiBhh4Gfcj-yG1HtrotOKHQ,2001
9
+ pycontrails/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
+ pycontrails/core/vector.py,sha256=Y-YTk_dv_IguaThQFLFeZETNhsNu5lKcbo301cvHYgw,71540
11
+ pycontrails/core/models.py,sha256=mB3fhmBorFxt7uEhBFcuu0PIMWmBRB4KBRsPiFpPcvo,39282
12
+ pycontrails/core/interpolation.py,sha256=yxVLO9lzNcNFeLwDyrQ7yfz4JEHLHTpgIRBrcOezsXg,25617
13
+ pycontrails/core/fleet.py,sha256=wqYY_2xD9X-Og0_oxU8ZPqTHYDau9TOPLQcmEnB1kiQ,16140
14
+ pycontrails/core/flight.py,sha256=s_teDDqnoiX15pqJ_hmchKCjut1WiNtcrL2QXXMBNGc,85173
15
+ pycontrails/core/fuel.py,sha256=kJZ3P1lPm1L6rdPREM55XQ-VfJ_pt35cP4sO2Nnvmjs,4332
16
+ pycontrails/core/polygon.py,sha256=gosyZBX1XBKD2EcHycIZb7uM-xGs8rCfdpiSZlhc2Hc,18028
17
+ pycontrails/core/cache.py,sha256=ly2Prq5CUxxc2pClZUXDeH-E8zkj3zZkLoKpdKUCyGs,27984
18
+ pycontrails/core/__init__.py,sha256=x1z6x8w3sYmEqYcNWyWHuNkS9lPUPbHUoYJZs1K0q98,856
19
+ pycontrails/core/flightplan.py,sha256=UO4vL087d5TZMlU984-FxfotGTxFbqK78w2fLDRiel4,7335
20
+ pycontrails/core/met.py,sha256=0lGZqGu-_EnulU9Df05xo0I-IYX2MRQXvJ7PgCjU6p0,101342
21
+ pycontrails/core/aircraft_performance.py,sha256=4KnLj0zK-mk8Oo3As1CXUkQWBQGMeDdrKi5TeOhOmUA,26107
22
+ pycontrails/core/airports.py,sha256=aeyAXVkioIRomrP79UtNrxindL4f1DJyXFaojZCuBBw,6758
23
+ pycontrails/core/met_var.py,sha256=GC5ijw4oGuIefmFOSz4vmxMEBj_SVs5Z75IMhDP56Cw,9183
24
+ pycontrails/core/rgi_cython.cpython-312-darwin.so,sha256=R89MJE1TVVp9UFeRlu4XaoyxaTW3umZzAq3L2TpSfQk,309272
25
+ pycontrails/core/coordinates.py,sha256=0ySsHtqTon7GMbuwmmxMbI92j3ueMteJZh4xxNm5zto,5391
26
+ pycontrails/datalib/goes.py,sha256=Muh_pqAXSqUlM4ssStUT9QmPxGPEKK21LHFroaqTq7k,26533
27
+ pycontrails/datalib/landsat.py,sha256=wgQrc0sF-OqtCLbMINjes0hRFMUYJRYU0K6aV0gVJvg,19721
28
+ pycontrails/datalib/spire.py,sha256=66SnMdA8KOS69USjKmqrJmTKPK08Ehih9tnlsCt-AJw,25331
29
+ pycontrails/datalib/__init__.py,sha256=hW9NWdFPC3y_2vHMteQ7GgQdop3917MkDaf5ZhU2RBY,369
30
+ pycontrails/datalib/sentinel.py,sha256=pKB92KzKjvNOKnuxolXoz2ZnpXQ50iQ8g-EHDVMsnoA,17221
31
+ pycontrails/datalib/_met_utils/metsource.py,sha256=BGActBGApWb4yI97nBS9ui5j-PzIQotFMUtbMEBkvm8,23966
32
+ pycontrails/datalib/ecmwf/arco_era5.py,sha256=ZBN3ZMgoeUVMkVTdWlSMRpJ6Fpwzx2EtPGJXZqoJiog,12348
33
+ pycontrails/datalib/ecmwf/era5.py,sha256=gWZaDydDq7Z-UzNM_41sY-zgOQbVBzQ9E9CnqVk3OqA,19017
34
+ pycontrails/datalib/ecmwf/era5_model_level.py,sha256=tTE_aY90NtjP8HUl64CtbnUKsAOoPHgeDImDij_mVWM,19343
35
+ pycontrails/datalib/ecmwf/hres.py,sha256=p_l0ytCEEWGam7G7aVynpLmH4H4LQNeVe0Ay7Tw6fp8,28240
36
+ pycontrails/datalib/ecmwf/variables.py,sha256=G6LlGTrlzdn819F-7kjEMXT-Ystp1gc79LOmQTZKrtQ,9865
37
+ pycontrails/datalib/ecmwf/hres_model_level.py,sha256=DiMw1cgbON_pu9ADjC0NC_itHSVa9n9zICLs1_iDq7c,17568
38
+ pycontrails/datalib/ecmwf/__init__.py,sha256=e2LXD2ebsu0tNKZHabI6-SvzYw6zdsci2B3z6cFgBZQ,2021
39
+ pycontrails/datalib/ecmwf/common.py,sha256=PIkEdYEmlmwxQ7v4TenW_BaHX7mslnmdJW3iZYXb7Kg,3904
40
+ pycontrails/datalib/ecmwf/model_levels.py,sha256=Sf11onDST2YOF_1yRxCdlttDJNnR8pv26y2oU3jl9tY,16830
41
+ pycontrails/datalib/ecmwf/ifs.py,sha256=2heema398PoEVCfiTZSBawN25PXAa_CpWm_pGLZ1GuY,10662
42
+ pycontrails/datalib/ecmwf/static/model_level_dataframe_v20240418.csv,sha256=PmvGLRzn6uuCKSwiasSuVcehvvmSaqP7cnLuN6hhCQQ,9788
43
+ pycontrails/datalib/_leo_utils/vis.py,sha256=-fLcm1D5cP6lThVHovV3MJSiadWyTUAvYDMvr4drMU4,1802
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=fmYFf7KOGr91sFFCfThG61A3vauNis8TGIAZItIOsrY,21649
47
+ pycontrails/datalib/gfs/variables.py,sha256=KESzB1sTD3hsU8T-qZFD29oFM3l2ZcEtjAE_H7BHKIE,2861
48
+ pycontrails/datalib/gfs/__init__.py,sha256=tWxgqmlW8Uo07J-3fBTXPrteatzTka9mSXomhWy3NVA,684
49
+ pycontrails/ext/synthetic_flight.py,sha256=0mgS6DuwY2ZTzQBswRqh_CsqkUV8K4vGH1leynoz05U,16757
50
+ pycontrails/ext/cirium.py,sha256=DFPfRwLDwddpucAPRQhyT4bDGh0VvvoViMUd3pidam8,415
51
+ pycontrails/ext/empirical_grid.py,sha256=WSC266aKsQLzCmtrZJCpLdDBykZ9rlFE9xEXmZjbgHo,4362
52
+ pycontrails/ext/bada.py,sha256=j4Tj7oWSV_6UxYYa9_OjC1yTVzJMQdNRDI4aUQam_xM,1063
53
+ pycontrails/utils/iteration.py,sha256=q_vb39VjxRr4hqTyPYko3gK4sboJOJf_Evq6m_2DL-g,319
54
+ pycontrails/utils/__init__.py,sha256=Gt_57sBgfliFSxx9sDpuchykFDxmM11Wg9xAeSqPcnI,32
55
+ pycontrails/utils/types.py,sha256=QeJQwpdyjd3OGU9bz86mIuZvvqgV3WoF0QpAZenD6u8,4769
56
+ pycontrails/utils/temp.py,sha256=lGU0b_R8ze4yKlsOusHIIBaoNFBrmrB3vBjgHRlfcXk,1109
57
+ pycontrails/utils/json.py,sha256=b3JQ6cZ4Uy4-5e-uVAXr8t-KXC_bj_a1qHmXM0Nof58,5914
58
+ pycontrails/utils/dependencies.py,sha256=ATP45xYdUbIyGFzgbOe5SbokMytvB84TcexUEFnEUZE,2559
59
+ pycontrails/models/pcc.py,sha256=7hIlg_4-F6Ce7KVFyuIZBZY6uDr1h4KRMqBDlpGkzHE,11116
60
+ pycontrails/models/tau_cirrus.py,sha256=yNYw4ukT68w2ATGFZr3p8AZxB6A2xufXQq7XP2U51y0,5026
61
+ pycontrails/models/__init__.py,sha256=dQTOLQb7RdUdUwslt5se__5y_ymbInBexQmNrmAeOdE,33
62
+ pycontrails/models/issr.py,sha256=Ts1rFr8XKqvq-hWTLzp285PDEt9J_kIR8V3XGCDqoxY,7340
63
+ pycontrails/models/sac.py,sha256=lV1Or0AaLxuS1Zo5V8h5c1fkSKC-hKEgiFm7bmmusWw,15946
64
+ pycontrails/models/accf.py,sha256=uPu8EB30Zbd3kd-3BuTnJkFNzpFqQ4u0HftFOJOX51s,12568
65
+ pycontrails/models/dry_advection.py,sha256=V3_oEYexGaeBnuOgmuj8a3FaxMVnMRvHIX_AVXXtWTg,16697
66
+ pycontrails/models/pcr.py,sha256=ZzbEuTOuDdUmmL5T3Wk3HL-O8XzX3HMnn98WcPbASaU,5348
67
+ pycontrails/models/emissions/__init__.py,sha256=N_EE768TNRDbdmXaxly2Pwun7UmVBTVPc4k89VBz5ys,478
68
+ pycontrails/models/emissions/ffm2.py,sha256=h_bmB4pxxvC1ptqz5jB_rpf9QgaAv9J7Lu-6QpMiFtk,12032
69
+ pycontrails/models/emissions/emissions.py,sha256=MSyCMHdB-OXf9__CTHtAi85sCflqvifk4HT_1Qp_q4A,47564
70
+ pycontrails/models/emissions/black_carbon.py,sha256=F2SCUiV39zg2mUxbWsct6vvr_JgHdyB59DVWkw40eX0,20234
71
+ pycontrails/models/emissions/static/edb-nvpm-v29b-engines.csv,sha256=NatpVI1D2tTDLK7uVvlanm9DhfFB44nmFA4aocUcXco,77318
72
+ pycontrails/models/emissions/static/edb-gaseous-v29b-engines.csv,sha256=jCjt7cP6sqLdbDp5NUoaqllVkZNE7NJtSnbB3rX_zQI,127523
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=Qo3CdpQ5JULUit7Oi2l2_Mu8JXcW0QOYfQOyaL66ldM,39936
78
+ pycontrails/models/apcemm/static/apcemm_yaml_template.yaml,sha256=uAZkc57OUvDMjgX6F5f6hgDh3Hgg1NbHWRUFSiv0DEI,6745
79
+ pycontrails/models/humidity_scaling/humidity_scaling.py,sha256=9619kSgNIBjkM8vFWcwny7t4mhg00pX0aKabrDGPn7I,36658
80
+ pycontrails/models/humidity_scaling/__init__.py,sha256=nqsab_j9BCwMbTfCn4BjXMdhItlvNKkgUJ9-lb8RyIo,1119
81
+ pycontrails/models/humidity_scaling/quantiles/era5-pressure-level-quantiles.pq,sha256=tfYhbafF9Z-gGCg6VQ1YBlOaK_01e65Dc6s9b-hQ6Zo,286375
82
+ pycontrails/models/humidity_scaling/quantiles/era5-model-level-quantiles.pq,sha256=pShCvNUo0NYtAHhT9IBRuj38X9jejdlKfv-ZoOKmtKI,35943
83
+ pycontrails/models/cocip/radiative_forcing.py,sha256=aA4ZHaVOsg0lro04LwwKaBf3mXljRAzbwQpDLaxk4qU,44873
84
+ pycontrails/models/cocip/wind_shear.py,sha256=p8d3iaNzxPA3MoxFEM1ZDKt0aticoD6U9cv0QmbuBzs,3860
85
+ pycontrails/models/cocip/cocip.py,sha256=G0VwIGxGxC2kAqrJNqoXXogqZoiO3PtOzikTE2IHaTE,100088
86
+ pycontrails/models/cocip/output_formats.py,sha256=7P0j-UX4NNw56Gkd3ZsWDt0ctorJTZ4aPmUiibAh1FM,83641
87
+ pycontrails/models/cocip/__init__.py,sha256=jd-9Tq20s1kwQBlxsYfZLi3hlT5MnWOY2XsPazq1fgE,962
88
+ pycontrails/models/cocip/cocip_params.py,sha256=kKTeF1vVQr361XBR79q4mQHYI7UUQ6C5Ik5Z5pJDtag,12703
89
+ pycontrails/models/cocip/wake_vortex.py,sha256=i_OF193KK5BCMdVCgK0_4Aqn55f6rnL4WDWEac8um-w,14421
90
+ pycontrails/models/cocip/cocip_uncertainty.py,sha256=-3ICEbrhB6eQiYIqpEahzhf12AwV7ge-yvj_NaOqW3g,11891
91
+ pycontrails/models/cocip/radiative_heating.py,sha256=YRpwfXgFnf89iuJiIM96q-jbdcMAwlX8QLsADTKMABE,18848
92
+ pycontrails/models/cocip/contrail_properties.py,sha256=tycCxKf8j9GvVYDQBPxjtp6xLll-r00C0XW-w1jGbMI,55594
93
+ pycontrails/models/cocip/unterstrasser_wake_vortex.py,sha256=kDxFpAIkcqqhGmwXoxv3_cSESj1Ur45GbLJF56IACJs,14573
94
+ pycontrails/models/ps_model/__init__.py,sha256=5L-HympF1gJaZ6xiNkIQJygJhkDxM3-ejS_T2z-83hQ,495
95
+ pycontrails/models/ps_model/ps_model.py,sha256=Cj79eJxHfq6205zNPxrwSs_Cx337MU3qvc7ds8sHAjA,33013
96
+ pycontrails/models/ps_model/ps_aircraft_params.py,sha256=-PfT2JC6RckVi_zTDVTqAMyaS-id6I2klUoXoEXreAc,13077
97
+ pycontrails/models/ps_model/ps_operational_limits.py,sha256=_vFJiPqGuZJRzwuY10-z07-7eEyomnpxPm_Js1Cd5So,16832
98
+ pycontrails/models/ps_model/ps_grid.py,sha256=AqZCEytWhrNbyujlJTufI4cxDonkPchGnrB3IvtRID4,18667
99
+ pycontrails/models/ps_model/static/ps-synonym-list-20240524.csv,sha256=ksrpQTHkxSt1Va_R0rHdenEz6DlIs-Sfk1KFBzHKjhk,1038
100
+ pycontrails/models/ps_model/static/ps-aircraft-params-20240524.csv,sha256=3eNhSwzut0gon04k2EYKKaXRvQSUlau3yBAbHS0EBao,25784
101
+ pycontrails/models/cocipgrid/cocip_grid_params.py,sha256=l4vBPrOKCJDz5Y1uMjmOGVyUcSWgfZtFWbjW968OPz8,5875
102
+ pycontrails/models/cocipgrid/__init__.py,sha256=ar6bF_8Pusbb-myujz_q5ntFylQTNH8yiM8fxP7Zk30,262
103
+ pycontrails/models/cocipgrid/cocip_grid.py,sha256=B1-f3D62fg3OeLp7xnxANAsneg9JRiiRVMqs-REFaII,94347
104
+ pycontrails/physics/geo.py,sha256=9ZWIXyEEgrBNqsoeBBlYLTA-8GUTgyc-jgeVgchxXa8,30288
105
+ pycontrails/physics/units.py,sha256=j-G5AC9eWIvv2MTOq9lUOoOQKFNJJuHzWLanHRji2tE,12272
106
+ pycontrails/physics/constants.py,sha256=pHQQmccMUwuNnY4hFtm3L8G2rnUQcfJnroyQr8HAVeM,3146
107
+ pycontrails/physics/__init__.py,sha256=_1eWbEy6evEWdfJCEkwDiSdpiDNzNWEPVqaPekHyhwU,44
108
+ pycontrails/physics/thermo.py,sha256=sWGpKa12daSpqZYNgyXd8Ii5nfA_1Mm5mMbnM5GsW-E,12787
109
+ pycontrails/physics/jet.py,sha256=JX-o5dDjyITMNUIOcD_7UBt_4ldc9v-5gI6bmwf0wQ4,25624
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (75.1.0)
3
+ Root-Is-Purelib: false
4
+ Tag: cp312-cp312-macosx_10_13_x86_64
5
+
@@ -0,0 +1,3 @@
1
+ build
2
+ pycontrails
3
+ wheelhouse