Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Working on release of 0.3.2 to main #18

Merged
merged 23 commits into from
Nov 24, 2021
Merged

Working on release of 0.3.2 to main #18

merged 23 commits into from
Nov 24, 2021

Conversation

jr3cermak
Copy link
Collaborator

  • Resolves regridTopo() leaves halo around grid edge #15 with use of extending grids prior to using regridTopo() and then clipping the grid back to original size.
  • Resolves [Bug]: Grid center latitude does not support southern hemisphere #16 with fixes to stereographic grid generation
  • Moved requirements around for RTD so it continues to create documentation; there is no need for RTD to have a fully functional software stack; just enough to parse the python modules
  • Updates to key netcdf files now update instead of clobber the "history" attribute
  • Implement ice9 algorithm
  • Implement subsetGrid()
  • Rework API arguments used by computeBathymetricRoughness()
  • BUG: fix latitude range for grid center. Latitude can now be -90 to +90 instead of 0 to 90.

…ters

 - Add a southern hemispheric example to `mkGridIterative.ipynb`.
 - BUG in `gridtools.generate_regional_spherical_meters`, the
   INVERSE should use (xx,yy) NOT (yy,xx).  Thanks to the bug
   report from Olga Sergienko.
 - Finish task of creating a roughness field from an extended
   MOM6 grid so we have useful data for the entire grid.
 - Example 07 formatting.
 - `undo_break_array_to_blocks` change argument from
   useSupergrid to useOverlap to better reflect technique
   being used.
 - `undo_break_array_to_blocks` the grid returned is the
   untrimmed grid for useOverlap.
 - `computeBathymetricRoughness` add extendedGrid option
   to tell the routine that an extended grid is being used.
   When this is true, the grid shift is skipped if used
   with useFixByOverlapQHGridShift.
 - `computeBathymetricRoughness` add more user messages
   indicating what it is doing based on specified options.
 - add `findLineFromPoints()` needs to be improved to
   allow specification of additional points on the grid.
 - BUG: app: fix latitude range for grid center.  Range should be
   -90 to +90 instead of 0 to 90.  The 0 to 90 range would be
   important if we chose to stick with two separate hemispheric
   projections.  Dealing with a separate southern hemisphere would
   introduce additional complications.  Resolves #12.
 - Begin work on grid extension for cartesian and lat/lon based
   grids.  Create example 12 to exercise new features.
 - Add a reference for Niki Zadah's grid generation tools.
 - Continue grid extension development.
 - Auto detect method and projection for grid to extend.
 - Example 12 shows mercator, lambert conformal conic and
   stereographic grid extensions.
 - Finished generation of extended grid.  Need to
   finish clipping of grid back to requested size.
 - Added support for extending sterographic grids.
 - Grid extension development.  Keeping routine
   very simple.  Initial implementation was somewhat
   more complex.
 - Extending lat/lon grids works.
 - Found a bug in gridutils.findLineFromPoints(), off
   by one error for computing new points.
 - Spurious breakpoint() in gridutils.readGrid() with
   no documentation.  Seems to be a condition with
   reading ROMS grids.
…rids

 - Fix a few spellings of vertices and note the singular of
   "vertices" is "vertex".
 - Spherical grid fix (rel 0.3.1) for southern hemisphere broke
   the northern hemispheric grids.  Need to further investigate
   creation and extension of various spherical grids.
 - Start marking i vertex lines as yellow in examples to ensure
   proper grid generation.
 - Add option to plotGrid to allow plotting of one or more
   specified grid points.
 - Initial clipping code added to extendGrid function.
 - Software development around subsetting existing grids.
 - Upgrades to computeBathymetricRoughness() to allow it to
   diagnose roughness using serveral grid options.
   Reworking options to useSupergrid, useOverlap and
   useQHGridShift replacing prior options.
 - Add more important documentation links from matplotlib.
 - Noted that original ROMS to MOM6 conversion script uses
   a different default earth radius.
 - Save the global projection attribute only if available.
 - If the global projection attribute is not set, try to
   set it from the projection grid parameters.  Use the
   global projection attribute, if it is available.
 - When computing grid metrics, clamp `angle_dx` to zero
   as is done in the original convertion from ROMS to MOM6
   code.
 - First implementation of ice-9 algorithm derived from
   example software written by Alistair Adcroft and
   Niki Zadeh.  Added as bathyutils.ice9().
 - Added citations for ice-9 algorithm as best we have
   them for now.
 - Adding support for different variable output types for
   FMS/MOM6 grid files.  The FMS coupler will die if the
   integer part of the mosaic tile files contain 64-bit
   integers.  Reducing that size to 32-bit (i4/int32).
 - Finally fixed the "stereographic" grid generation.
   The grids cannot be rotated yet, but patterns for
   doing so are emerging.
 - Developed some examples showing grid generation in
   available projections.   Additional examples should
   be created for other projections.
 - Work on adding or appending to history global variable.
 - Move to generic routine for adding/appending/updating
   global variables.
 - Global `history` values are separated by a `\n` according
   to netCDF kitchen sink tools.
 - Finished initial update to global metadata attributes.
 - Implement showGridPoints keyword attribute for plotGrid().
 - Fix GitHub CI
 - Completed testing on local Ubuntu node with 64GB
 - Python script example 3 and 8 now demonstrates use of
   an extended grid with the function regridTopo() to
   eliminate grid artifacts.
 - Fix grid axis for generation of IBCAO grid in python
   script for Example 5 and 5a.  Show expected answers for
   grid corners.
 - Update API for python script 7 for
   computeBathymetricRoughness(); add informational
   message to say if REusing an existing bathymetry.
 - Begin testing on aarch64 platform
 - Testing on chinook node
 - Update API for Example 3 for computeBathymetricRoughness()
 - Show i vertex in yellow for python script example 5a and 6.
 - Writing release documentation; need to check on RTD.
 - Modify `roms_io.py` to mandate netcdf4 or netcdf3.  Do not fall back to `pyroms`.
 - Remove `cartopy` from requirements.txt; this triggers a lot of dependency checks.
   Include in user installation instructions that a combination of conda, pip and manual
   installation of `cartopy` might be necessary.
 - The RTD installation does not need to be fully functional.  It only needs to be able
   to load the modules by import.  The `gridTools_export-linux-64-RTD.yml` has been pared
   down to a minimal installation to be overlaid by the `requirements.txt` file using pip.
 - RTD with conda performs a two stage install:
   - `conda env create --quiet --name stable --file conda/gridTools_export-linux-64-RTD.yml`
   - `python -m pip install -U -r requirements.txt`
   - Current failure is in the first stage.
 - Try to rebuild with a minimal RTD stack.
 - Current conda configuration has a peak memory footprint of 1489580 kB
 - Just python=3 uses 409452 kB
 - Remove `m2r2` from software stack.
 - Remove pip requirements that snuck into `gridTools_export-linux-64-RTD.yml`.
 - Fixed some formatting in documentation
 - Updated operational pathways graphic
 - Working through release tasks
Begin release of 0.3.2 to main via dev
@jr3cermak jr3cermak merged commit 6764e65 into main Nov 24, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Bug]: Grid center latitude does not support southern hemisphere regridTopo() leaves halo around grid edge
1 participant