Skip to content

Releases: geoschem/gcpy

GCPy 1.0.3

26 Mar 15:58
Compare
Choose a tag to compare

Fixed

  • Automatic benchmark script copying no longer overwrites existing files
  • Color scales for non-global plots are no longer calculated from full global data
  • Regional datasets can now be plotted with cubed-sphere datasets in plot.compare_single_level

GCPy 1.0.2

18 Mar 17:06
Compare
Choose a tag to compare

DOI License: MIT

Added

  • Added GCPy version number and automatic script copying to benchmark scripts
  • Added line clarifying lack of Windows support in ReadTheDocs

Fixed

  • Fixed benchmark month seconds calculation for GCHP in 1-month benchmark script
  • Fixed label typo in benchmark script GCHP vs. GCC emission plots
  • Fixed grid creation for non-global grids in plot.single_panel
  • Fixed issue in get_grid_extents when maxlon was in Western Hemisphere

GCPy 1.0.1

09 Feb 15:54
Compare
Choose a tag to compare

DOI License: MIT

Added

  • Added MSA to Sulfur benchmark category
  • Added weightsdir parameter to single_panel()
  • Added temporary file creation to file_regrid() to decrease memory consumption during cubed-sphere regridding

Changed

  • Removed carbon-based units from benchmark emissions tables
  • Environment files now request xESMF through conda-forge rather than pip

Fixed

  • Fixed Cubed-Sphere to Lat/Lon regridding for 1-level files
  • Fixed single panel zonal mean axis selection

GCPy 1.0.0

05 Jan 17:33
Compare
Choose a tag to compare

Release date: 05 Jan 2021
DOI License: MIT

This if the first official version of GCPy.

Added

  • Added complete documentation to a new ReadTheDocs site
  • Added conda-forge installation support
  • Added file regridder for regridding NetCDF restart and output between GEOS-Chem's horizontal grid types
  • Plotting now supports automatic regridding between lat/lon, cubed-sphere, and stretched-grid formats
  • Added additional 1-year benchmark plotting capabilities for GCHP
  • Added oh_metrics.py, which generates output using the new Metrics collection in GEOS-Chem 13.0.0
  • Extra keyword arguments not defined in plotting functions are now passed to matplotlib.pyplot
  • Added a command line tool for appending grid-box corners to cubed-sphere datasets
  • Added support for arbitrary vertical grids in zonal mean plotting
  • Added regridding functions for arbitrary vertical grids

Changed

  • Some constants in constants.py have been tweaked to match GEOS-Chem definitions
  • docs/environment.yml, setup.py, and requirements.txt now reflect up-to-date GCPy library requirements
  • Most docstrings now use the same format
  • Various code formatting changes have been made to align with PEP8 guidelines

Deprecated

  • mean_oh_from_logs.py is replaced in functionality by oh_metrics.py for GEOS-Chem versions >=13.0.0

Fixed

  • Installation through pip (from the repositoryand conda now works correctly

Removed

  • Removed several functions and files that are no longer used, including budget_aer.py and create_budget_table()

1.0.0-beta.0

13 Nov 18:23
Compare
Choose a tag to compare
1.0.0-beta.0 Pre-release
Pre-release
Tweaked pre-release name scheme

GCPY 0.3.1

21 Aug 22:06
Compare
Choose a tag to compare

Added

  • Added instructions on setting PYTHONPATH to include GCPy directory when installing manually
  • Added cross-dateline regional plotting capability for both lat/lon and cubed-sphere plots
  • Added function to get lev dimension index that matches a requested pressure value
  • Added basic up-to-date map plotting examples
  • Added pip and tabulate dependencies in gcpy environment yaml file
  • Added RRTMG netcdf diagnostics names for converting from bpch to nc
  • Added unit string conversion for RRTMG binary diagnostics to compare easily with netcdf

Changed

  • Temporary PDFs are now generated in the system's temp directory rather than within the working directory
  • environment.yml now includes version numbers to ensure compatability

Fixed

  • Fixed single panel zonal mean plotting for GCHP
  • Fixed existing non-deleted examples code
  • Fixed imports for out-of-scope variables

Removed

  • Removed several code examples that were out-of-date.

GCPy 0.3.0

30 Jul 19:42
Compare
Choose a tag to compare

Added

  • Add new function to compute budgets and create budget table that incorporates new optional features.
  • Require python package tabulate for generating budget tables.
  • Added parallel support for mass and budget table creation in 1-year benchmarks.
  • Added capability of completely disabling parallel plotting when calling make_benchmark_*_plots functions.
  • Added capability of converting concentrations to ug/m3 for benchmark plotting.
  • Added new function to make benchmark wet deposition plots, previously done from function to make concentration plots.

Changed

  • Reorganized functions of GCPy into a more logical and streamlined file structure.
  • Updated species_database.yml and benchmark_categories.yml for GEOS-Chem 12.9.2.
  • Replaced "Plots" with "Results" in benchmark directory structure. This value is customizable in the benchmark scripts.
  • Updated example scripts to use reorganized GCPy functions.
  • Updated all benchmark run scripts for consistency, readability, reduced lines of code, and compatibility with reorganized and new GCPy functions

Fixed

  • Fixed documentation and rearranged argument order for diff-of-diffs plot strings.
  • Fixed accidental regridding to lat/lon in comparison plots where two cubed-sphere datasets share the same resoltuion.

Removed

  • Removed budget_ops.py in deference to new make_benchmark_operations_budget functi

GCPy 0.2.1

07 May 14:01
Compare
Choose a tag to compare
  • Fixed bugs calculating lumped species with some or all missing constituents.
  • Added documentation for newer keyword arguments in benchmark.py

GCPy 0.2.0

06 May 13:52
Compare
Choose a tag to compare

Added

  • Added strat/trop exchange fluxes to 1-year benchmark output (gcpy/ste_flux.py)
  • Added operations budgets to 1-year benchmark output (gcpy/budget_ops.py)
  • Added seasonal mass table output for 1-year FullChemBenchmark.
  • Added mean OH from log files for 1-year FullChemBenchmark (GEOS-Chem Classic only).
  • Added function gcplot in core.py for creating individual (rather than six-panel) plots of GEOS-Chem data.
  • 47-level model output can now be plotted in addition to the standard 72-level output.
  • Added Loader=yaml.FullLoader to the yaml.load command to avoid generating excess warnings.
  • Add benchmark plotting option to write concentration and emissions plots to one file
  • Add gcpy testing mode for all GEOS-Chem benchmark run scripts using test data on gcgrid.
  • Add function to flip and rename GCHP restart files to match GCC names and level convention.
  • Add capability to generate GCHP vs GCC and GCHP vs GCHP mass tables.
  • Add handling in convert_units for datasets without a time dimension.
  • Add initial and final mass to GHCP radionuclide budget tables.

Changed

  • Significant difference files are now written out to the Plots/Sig_Diffs folder for the 1-year benchmarks.
  • Updated file names for Pb/Be budget tables in gcpy/budgets_tt.py.
  • Created separate driver routines for 1-year FullChem and TransportTracers benchmarks
  • Useless warnings when creating benchmark output should now be suppressed
  • Can now create benchmark plots in a single file instead of by category.
  • Can now plot non-global output files from GEOS-Chem Classic.
  • Can now limit plot extents using lat/lon parameters for GEOS-Chem Classic and GCHP.
  • L2L regridder filenames now include the grid extent when the regridder does not span the whole globe.
  • Input GEOS-Chem Classic data can now be any lat/lon resolution rather than only 4x5, 2x2.5, or 1x1.25.
  • Replaced fractional difference plots ((Dev-Ref)/Ref) with ratio plots (Dev/Ref).
  • Moved diff-of-diffs functionality from standalone code in the benchmark scripts to benchmark.py.
  • The bottom row of diff-of-diffs plotting now shows (Dev2/Dev1)-(Ref2/Ref1) values.
  • Paths in example scripts now point to /n/holyscratch01/external_repos/GEOS-CHEM instead of /n/holylfs/EXTERNAL_REPOS/GEOS-CHEM.
  • Cleaned up run_1mo_benchmark.py driver scripts
  • Operations budgets are now printed as Ref, Dev, Dev-Ref, %diff
  • Updated examples/compare_diags.py to point to test benchmark data
  • Updated benchmark_categories.yml, species_database.yml, lumped_species.yml, and emission_inventories.yml for recent changes in GEOS-Chem 12.8.0
  • Update benchmark run scripts to use version strings rather than subtitle strings in tables filenames.

Fixed

  • Latitude ticks again appear in benchmark zonal mean plots.
  • Colorbar tick formatting now never uses offset format, which made colorbar ticks difficult to interpret for small value ranges.
  • The list of non-plotted emissions species now populates properly.
  • Fixed sig diffs file creation for AOD and JValues.
  • Missing values in mass tables are now NaN
  • Fix area normalization issues in benchmark plotting functions when using GCHP data.

Removed

  • Removed runnable docstring content.

GCPy 0.1.1

02 Mar 16:32
Compare
Choose a tag to compare
  • Pb210, Be7, and Be10 species are now added to species_database.yml.
  • gcpy/budget_aer.py and gcpy/budget_tt.py now get molecular weights from species_database.yml.
  • Updated the value of MW_AIR in constants.py to add more precision.
  • gcpy/benchmark.py now writes OH metrics output to the Plots/Tables folder.
  • Updated CHANGELOG.md for 0.1.1.