pycontrails 0.52.1__tar.gz → 0.52.2__tar.gz
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-0.52.1 → pycontrails-0.52.2}/.github/workflows/scorecard.yaml +1 -1
- {pycontrails-0.52.1 → pycontrails-0.52.2}/CHANGELOG.md +28 -2
- {pycontrails-0.52.1/pycontrails.egg-info → pycontrails-0.52.2}/PKG-INFO +4 -4
- {pycontrails-0.52.1 → pycontrails-0.52.2}/README.md +1 -1
- pycontrails-0.52.2/docs/notebooks/AircraftPerformance.ipynb +256 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/_version.py +2 -2
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/core/aircraft_performance.py +115 -19
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/core/fleet.py +11 -10
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/core/flight.py +98 -57
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/core/models.py +25 -16
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/core/rgi_cython.c +155 -155
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/core/vector.py +25 -28
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/cocip/cocip.py +20 -26
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/cocip/output_formats.py +11 -4
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/emissions/static/edb-gaseous-v29b-engines.csv +1 -1
- {pycontrails-0.52.1 → pycontrails-0.52.2/pycontrails.egg-info}/PKG-INFO +4 -4
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails.egg-info/requires.txt +2 -2
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pyproject.toml +3 -3
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_airports.py +4 -4
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_fleet.py +7 -1
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_flight.py +156 -1
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_leo.py +16 -10
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_models.py +13 -12
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_ps_model.py +45 -1
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_vector.py +2 -2
- pycontrails-0.52.1/docs/notebooks/AircraftPerformance.ipynb +0 -281
- {pycontrails-0.52.1 → pycontrails-0.52.2}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/.github/dependabot.yaml +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/.github/pull_request_template.md +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/.github/workflows/docs.yaml +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/.github/workflows/doctest.yaml +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/.github/workflows/release.yaml +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/.github/workflows/test.yaml +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/.gitignore +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/.pre-commit-config.yaml +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/.zenodo.json +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/CONTRIBUTING.md +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/LICENSE +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/Makefile +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/NOTICE +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/RELEASE.md +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/_static/css/style.css +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/_static/img/colab.png +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/_static/img/favicon.png +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/_static/img/logo-dark.png +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/_static/img/logo.png +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/_static/pycontrails.bib +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/api.rst +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/changelog.rst +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/conf.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/contributing.rst +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/develop.rst +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/flight.rst +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/index.rst +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/install.rst +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/integrations/ACCF.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/integrations/APCEMM.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/literature.rst +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/meteorology.rst +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/models.rst +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/ARCO-ERA5.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/Cache.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/CoCiP.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/ECMWF.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/Flight.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/GFS.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/GOES.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/ISSR.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/Landsat.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/Meteorology.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/SAC.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/Sentinel.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/advection.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/airports.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/data/.gitignore +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/data/flight-ap.csv +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/data/flight-cocip.csv +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/data/flight-fdr.csv +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/data/flight-noisy.csv +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/data/flight.csv +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/data/iagos-flight-landsat.csv +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/data/iagos-flight-sentinel.csv +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/flightplan.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/model-levels.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/run-cocip-on-flight.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/run-cocip-with-fdr.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks/specific-humidity-interpolation.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/notebooks.rst +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/observations.rst +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/tutorials.rst +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/docs/utilities.rst +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/__init__.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/core/__init__.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/core/airports.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/core/cache.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/core/coordinates.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/core/flightplan.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/core/fuel.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/core/interpolation.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/core/met.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/core/met_var.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/core/polygon.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/core/rgi_cython.pyx +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/__init__.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/_leo_utils/search.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/_leo_utils/static/bq_roi_query.sql +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/_leo_utils/vis.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/_met_utils/metsource.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/ecmwf/__init__.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/ecmwf/arco_era5.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/ecmwf/common.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/ecmwf/era5.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/ecmwf/era5_model_level.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/ecmwf/hres.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/ecmwf/hres_model_level.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/ecmwf/ifs.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/ecmwf/model_levels.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/ecmwf/static/model_level_dataframe_v20240418.csv +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/ecmwf/variables.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/gfs/__init__.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/gfs/gfs.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/gfs/variables.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/goes.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/landsat.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/sentinel.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/datalib/spire.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/ext/bada.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/ext/cirium.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/ext/empirical_grid.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/ext/synthetic_flight.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/__init__.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/accf.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/apcemm/__init__.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/apcemm/apcemm.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/apcemm/inputs.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/apcemm/static/apcemm_yaml_template.yaml +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/apcemm/utils.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/cocip/__init__.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/cocip/cocip_params.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/cocip/cocip_uncertainty.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/cocip/contrail_properties.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/cocip/radiative_forcing.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/cocip/radiative_heating.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/cocip/unterstrasser_wake_vortex.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/cocip/wake_vortex.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/cocip/wind_shear.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/cocipgrid/__init__.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/cocipgrid/cocip_grid.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/cocipgrid/cocip_grid_params.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/dry_advection.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/emissions/__init__.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/emissions/black_carbon.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/emissions/emissions.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/emissions/ffm2.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/emissions/static/default-engine-uids.csv +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/emissions/static/edb-nvpm-v29b-engines.csv +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/humidity_scaling/__init__.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/humidity_scaling/humidity_scaling.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/humidity_scaling/quantiles/era5-model-level-quantiles.pq +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/humidity_scaling/quantiles/era5-pressure-level-quantiles.pq +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/issr.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/pcc.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/pcr.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/ps_model/__init__.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/ps_model/ps_aircraft_params.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/ps_model/ps_grid.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/ps_model/ps_model.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/ps_model/ps_operational_limits.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/ps_model/static/ps-aircraft-params-20240524.csv +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/ps_model/static/ps-synonym-list-20240524.csv +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/sac.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/models/tau_cirrus.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/physics/__init__.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/physics/constants.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/physics/geo.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/physics/jet.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/physics/thermo.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/physics/units.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/py.typed +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/utils/__init__.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/utils/dependencies.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/utils/iteration.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/utils/json.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/utils/temp.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails/utils/types.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails.egg-info/SOURCES.txt +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails.egg-info/dependency_links.txt +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/pycontrails.egg-info/top_level.txt +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/setup.cfg +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/setup.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/__init__.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/_deprecated.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/benchmark/cocip/Makefile +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/benchmark/cocip/README.md +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/benchmark/cocip/benchmark.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/benchmark/cocip/compare.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/benchmark/cocip/data.md +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/benchmark/cocip/output.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/benchmark/cocip/review.ipynb +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/benchmark/cocip-fortran/README.md +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/benchmark/north-atlantic-study/.gcloudignore +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/benchmark/north-atlantic-study/README.md +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/benchmark/north-atlantic-study/support.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/benchmark/north-atlantic-study/validate.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/fixtures/cocip-met.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/fixtures/cocip-met2.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/fixtures/ecmwf-met.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/fixtures/gfs-met.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/__init__.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/conftest.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/NOAA_Solar_Calculations_day.csv +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/cocip-contrail-output.json +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/cocip-contrail-output2.json +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/cocip-flight-output.json +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/cocip-flight-output2.json +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/cocip-output-contrail-edges.json +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/cocip-output-flts-20190101-eu.pq +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/flight-cocip2.csv +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/flight-meridian.csv +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/flight-metadata.json +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/flight-spire-data-cleaning.pq +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/flight.csv +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/flt-wypts-20190101-eu.pq +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/met-20190101-eu.nc +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/met-accf-pl.nc +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/met-accf-sl.nc +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/met-ecmwf-pl.nc +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/met-ecmwf-sl.nc +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/met-era5-cocip1.nc +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/met-era5-cocip2.nc +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/met-gfs.nc +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/polygon-bug.nc +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/rad-20190101-eu.nc +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/rad-era5-cocip1.nc +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/rad-era5-cocip2.nc +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/static/rad-gfs.nc +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_accf.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_apcemm.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_cache.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_cocip.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_cocip_grid.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_cocip_grid_parity.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_cocip_radiative_forcing.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_cocip_uncertainty.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_coordinates.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_datalib_metsource.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_dry_advection.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_dtypes.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_ecmwf.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_emissions.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_flightplan.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_fuel.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_geo.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_gfs.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_goes.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_grid_to_netcdf.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_humidity_scaling.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_init.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_interpolation.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_met.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_met_cache.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_pcc.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_polygons.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_sac_issr.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_spire.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_tau_cirrus.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_thermo_sac.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_units.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_unterstrasser_wake_vortex.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_utils.py +0 -0
- {pycontrails-0.52.1 → pycontrails-0.52.2}/tests/unit/test_zarr.py +0 -0
|
@@ -1,5 +1,31 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## v0.52.2
|
|
4
|
+
|
|
5
|
+
### Breaking changes
|
|
6
|
+
|
|
7
|
+
- Flight antimeridian crossings are now detected based on individual flight segments rather than minimum and maximum longitude values. This allows for correct detection of antimeridian crossings for flights that span more than 180 degrees longitude, and may change the output of `Flight.resample_and_fill` for such flights.
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
- Add experimental `fill_low_alt_with_isa_temperature` parameter on the `AircraftPerformance` base class. When set to `True`, aircraft performance models with `Flight` sources will fill points below the lowest altitude in the ``met["air_temperature]`` data with the ISA temperature. This is useful when the met data does not extend to the surface. In this case, we can still estimate fuel flow and other performance metrics through the entire climb phase. By default, this parameter is set to `False`.
|
|
12
|
+
- Add experimental `fill_low_altitude_with_zero_wind` parameter on the `AircraftPerformance` base class. When set to `True`, aircraft performance models will estimate the true airspeed at low altitudes by assuming the wind speed is zero.
|
|
13
|
+
- Add convenience `Flight.plot_profile` method.
|
|
14
|
+
|
|
15
|
+
### Fixes
|
|
16
|
+
|
|
17
|
+
- Fix missing `Fuel Flow Idle (kg/sec)` value in the `1ZM001` engine in the `edb-gaseous-v29b-engines.csv`.
|
|
18
|
+
- Fix the `step_threshold` in `Flight._altitude_interpolation`. This correction is only relevant when passing in a non-default value for `freq` in `Flight.resample_and_fill`.
|
|
19
|
+
- Fix the `VectorDataset.__eq__` method to check for the same keys. Previously, if the other dataset had a superset of the instance keys, the method may still return `True`.
|
|
20
|
+
- Fix minor bug in `cocip.output_formats.radiation_time_slice_statistics` in which the function previously threw an error if `t_end` did not directly align with the time index in the `rad` dataset.
|
|
21
|
+
- Remove the residual constraint in `cocip.output_formats.contrails_to_hi_res_grid` used during debugging.
|
|
22
|
+
- Improve detection of antimeridian crossings for flights that span more than 180 degrees longitude.
|
|
23
|
+
|
|
24
|
+
### Internals
|
|
25
|
+
|
|
26
|
+
- Improve the runtime performance of `Fleet.to_flight_list`. For a large `Fleet`, this method is now 5x faster.
|
|
27
|
+
- Improve the runtime performance and memory footprint of `Cocip._bundle_results`. When running `Cocip` with a large `Fleet` source, `Cocip.eval` is now slightly faster and uses much less memory.
|
|
28
|
+
|
|
3
29
|
## v0.52.1
|
|
4
30
|
|
|
5
31
|
### Breaking changes
|
|
@@ -157,7 +183,7 @@ The Unterstrasser (2016) parameterization can be used in CoCiP by setting a new
|
|
|
157
183
|
- Update flight resampling logic to align with expected behavior for very short flights, which is now detailed in the `Flight.resample_and_fill` docstring.
|
|
158
184
|
|
|
159
185
|
### Internals
|
|
160
|
-
|
|
186
|
+
|
|
161
187
|
- Adds a parameter to `CoCipParams`, `unterstrasser_ice_survival_fraction`, that activates the Unterstrasser (2016) survival parameterization when set to `True`. This is disabled by default, and only implemented for `CoCiP`. `CoCiPGrid` will produce an error if run with `unterstrasser_ice_surival_fraction=True`.
|
|
162
188
|
- Modifies `CoCiPGrid` so that setting `compute_atr_20` (defined in `CoCipParams`) to `True` adds `global_yearly_mean_rf` and `atr20` to CoCiP-grid output.
|
|
163
189
|
- Replaces `pycontrails.datalib.GOES` ash convention label "MIT" with "SEVIRI"
|
|
@@ -188,7 +214,7 @@ The Unterstrasser (2016) parameterization can be used in CoCiP by setting a new
|
|
|
188
214
|
- Add new `MetDataSource.is_single_level` property.
|
|
189
215
|
- Add `ecmwf.Divergence` (a subclass of `MetVariable`) for accessing ERA5 divergence data.
|
|
190
216
|
- Update the [specific humidity interpolation notebook](https://py.contrails.org/notebooks/specific-humidity-interpolation.html) to use the new `ARCOERA5` interface.
|
|
191
|
-
- Adds two parameters to `CoCipParams`, `compute_atr20` and `global_rf_to_atr20_factor`. Setting the former to `True` will add both `global_yearly_mean_rf` and `atr20` to the CoCiP output.
|
|
217
|
+
- Adds two parameters to `CoCipParams`, `compute_atr20` and `global_rf_to_atr20_factor`. Setting the former to `True` will add both `global_yearly_mean_rf` and `atr20` to the CoCiP output.
|
|
192
218
|
- Bump minimum pytest version to 8.1 to avoid failures in release workflow.
|
|
193
219
|
|
|
194
220
|
## v0.49.5
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: pycontrails
|
|
3
|
-
Version: 0.52.
|
|
3
|
+
Version: 0.52.2
|
|
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
|
|
@@ -36,7 +36,7 @@ Requires-Dist: xarray>=2022.3
|
|
|
36
36
|
Provides-Extra: complete
|
|
37
37
|
Requires-Dist: pycontrails[ecmwf,gcp,gfs,jupyter,pyproj,sat,vis,zarr]; extra == "complete"
|
|
38
38
|
Provides-Extra: dev
|
|
39
|
-
Requires-Dist: black[jupyter]==24.4.
|
|
39
|
+
Requires-Dist: black[jupyter]==24.4.2; 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"
|
|
@@ -50,7 +50,7 @@ Requires-Dist: pyarrow>=5.0; extra == "dev"
|
|
|
50
50
|
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
|
-
Requires-Dist: ruff==0.
|
|
53
|
+
Requires-Dist: ruff==0.5.3; extra == "dev"
|
|
54
54
|
Requires-Dist: setuptools; extra == "dev"
|
|
55
55
|
Provides-Extra: docs
|
|
56
56
|
Requires-Dist: doc8>=1.1; extra == "docs"
|
|
@@ -122,7 +122,7 @@ Requires-Dist: zarr>=2.12; extra == "zarr"
|
|
|
122
122
|
|---------------|-------------------------------------------------------------------|
|
|
123
123
|
| **Version** | [](https://pypi.python.org/pypi/pycontrails) [](https://anaconda.org/conda-forge/pycontrails) [](https://pypi.python.org/pypi/pycontrails) |
|
|
124
124
|
| **Citation** | [](https://zenodo.org/badge/latestdoi/617248930) |
|
|
125
|
-
| **Tests** | [](https://github.com/contrailcirrus/pycontrails/actions/workflows/test.yaml) [](https://github.com/contrailcirrus/pycontrails/actions/workflows/docs.yaml) [](https://github.com/contrailcirrus/pycontrails/actions/workflows/release.yaml) [](https://securityscorecards.dev/viewer?uri=github.com/contrailcirrus/pycontrails)|
|
|
125
|
+
| **Tests** | [](https://github.com/contrailcirrus/pycontrails/actions/workflows/test.yaml) [](https://github.com/contrailcirrus/pycontrails/actions/workflows/docs.yaml) [](https://github.com/contrailcirrus/pycontrails/actions/workflows/release.yaml) [](https://securityscorecards.dev/viewer?uri=github.com/contrailcirrus/pycontrails)|
|
|
126
126
|
| **License** | [](https://github.com/contrailcirrus/pycontrails/blob/main/LICENSE) |
|
|
127
127
|
| **Community** | [](https://github.com/contrailcirrus/pycontrails/discussions) [](https://github.com/contrailcirrus/pycontrails/issues) [](https://github.com/contrailcirrus/pycontrails/pulls) |
|
|
128
128
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|---------------|-------------------------------------------------------------------|
|
|
7
7
|
| **Version** | [](https://pypi.python.org/pypi/pycontrails) [](https://anaconda.org/conda-forge/pycontrails) [](https://pypi.python.org/pypi/pycontrails) |
|
|
8
8
|
| **Citation** | [](https://zenodo.org/badge/latestdoi/617248930) |
|
|
9
|
-
| **Tests** | [](https://github.com/contrailcirrus/pycontrails/actions/workflows/test.yaml) [](https://github.com/contrailcirrus/pycontrails/actions/workflows/docs.yaml) [](https://github.com/contrailcirrus/pycontrails/actions/workflows/release.yaml) [](https://securityscorecards.dev/viewer?uri=github.com/contrailcirrus/pycontrails)|
|
|
9
|
+
| **Tests** | [](https://github.com/contrailcirrus/pycontrails/actions/workflows/test.yaml) [](https://github.com/contrailcirrus/pycontrails/actions/workflows/docs.yaml) [](https://github.com/contrailcirrus/pycontrails/actions/workflows/release.yaml) [](https://securityscorecards.dev/viewer?uri=github.com/contrailcirrus/pycontrails)|
|
|
10
10
|
| **License** | [](https://github.com/contrailcirrus/pycontrails/blob/main/LICENSE) |
|
|
11
11
|
| **Community** | [](https://github.com/contrailcirrus/pycontrails/discussions) [](https://github.com/contrailcirrus/pycontrails/issues) [](https://github.com/contrailcirrus/pycontrails/pulls) |
|
|
12
12
|
|