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

conda package for MPAS tools #248

Merged
merged 27 commits into from
May 9, 2019
Merged

Conversation

xylar
Copy link
Collaborator

@xylar xylar commented Mar 2, 2019

This package is intended to include all the tools needed to run run COMPASS test cases and other typical mesh creation workflows. This includes:

  • the mesh conversion tools (Create a conda recipe for the mesh conversion tools #243)
  • a python interface to the mesh conversion tools
  • the planar hex creation tool (Add python code for computing planar hex meshes #246)
  • a modified version of the mesh translation tool (python 3 compatible and callable as a function as well as a script
  • 4 land-ice mesh tools (updated for python 3)
  • 3 ocean coastal modification scripts (now available as functions and updated for python 3)
  • add a copy of the MPAS-Model license (a license is required for conda-forge packages)
  • a starting point for documentation

@xylar xylar self-assigned this Mar 2, 2019
@xylar xylar requested a review from mark-petersen March 2, 2019 06:04
@xylar xylar force-pushed the mesh_tools_conda_package branch 2 times, most recently from ee604f9 to d4ccb90 Compare March 18, 2019 03:42
@xylar xylar changed the title [wip] conda package for MPAS mesh tools conda package for MPAS tools May 5, 2019
@xylar xylar force-pushed the mesh_tools_conda_package branch from 13f7f57 to fbf0b71 Compare May 5, 2019 15:51
@xylar xylar added the python 3 label May 5, 2019
@xylar xylar force-pushed the mesh_tools_conda_package branch 3 times, most recently from f49a851 to 29987ff Compare May 6, 2019 07:18
@xylar xylar removed the don't merge label May 8, 2019
Copy link
Collaborator

@mark-petersen mark-petersen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested compass_py3.7 package and this PR and successfully on grizzly and badger, compute node and front end node (except mpirun calls). Tested QU240 init, QU240 test, EC60to30 init.

@xylar
Copy link
Collaborator Author

xylar commented May 8, 2019

I'm holding off on merging this one for now because some small changes seem to be required based on recent merges into COMPASS.

xylar added 18 commits May 9, 2019 16:54
This is better than moving them in the repo.
These functions are expected to make it simpler to make use of
these tools within a pythonn workflow such as COMPASS where the
user is working with xarray.Dataset and
geometric_features.FeatureCollection objects instead of file names.
These include python cache directories as well as many, many other
temporary, cache or config files that we might encounter.
Too many scripts are needed from elsewhere in the repo
It's too confusing to have mpas_mesh_tools next to mesh_tools.
Plus, the package is pulling in scripts from throughout the repo,
not just mesh tools.
The functions are in mpas_tools.ocean.coastline_alteration.
The scripts in ocean/coastline_alteration still work the same as
before by calling the functions.
This should prevent mistakes where files from other processes
are accidentally retained (e.g. graph.info vs culled_graph.info)
The default is 'NETCDF3_64BIT' for MPAS compatibility.
This will hopefully avoid confusion with tools outside the
package
Made the looping more efficient.  Currently, still uses NetCDF4
instead of xarray.
@xylar xylar force-pushed the mesh_tools_conda_package branch from 6acfa96 to eb25e77 Compare May 9, 2019 14:56
@xylar xylar merged commit 8948389 into MPAS-Dev:master May 9, 2019
@xylar xylar deleted the mesh_tools_conda_package branch May 9, 2019 14:57
mark-petersen added a commit to MPAS-Dev/MPAS-Model that referenced this pull request May 10, 2019
…s' into ocean/develop

A large number of updates to the COMPASS ocean API including:

- using the geometric_features conda package
  (MPAS-Dev/geometric_features#102)
- using the mpas_tools conda package (MPAS-Dev/MPAS-Tools#248)
- updating the jigsaw_to_MPAS scripts to work as a python package and to
  support python 3
- update global_ocean scripts to python 3 and to use these new packages

NOTE: This merge removes the capability to create the global meshes used
in E3SM version 1, (2017-2018), where the base meshes were created with
Doug Jacobsen’s tool.  The global mesh creation remaining after this
commit only uses the Jigsaw tool.

In order to recreate meshes and initial conditions used in E3SM version
1, use repositories as of
March 1, 2019:
1. MPAS-Model commit:42029f218175d893cf25e19a26d9b43382a44d54
2. MPAS-Tools commit:6d0fa3a24e879a1a5b6149d9fbfe80fa021489dc
3. geometric_features tag:E3SMv3grids 76709be

closes #220
closes #213
closes #132
closes #166
xylar added a commit that referenced this pull request Jun 4, 2019
Add an external script to conda-package planar_hex

In #248, planar_hex was moved into the conda-package for MPAS-Tools. However there is also a need for an external version of the tool. This PR adds a stub script called planar_hex that calls the code in the conda package. (The stub script is copied from a conda environment and is the same approach used to access entry points into python packages used elsewhere.)
ashwathsv pushed a commit to ashwathsv/MPAS-Model that referenced this pull request Jul 21, 2020
…esh_tools' into ocean/develop

A large number of updates to the COMPASS ocean API including:

- using the geometric_features conda package
  (MPAS-Dev/geometric_features#102)
- using the mpas_tools conda package (MPAS-Dev/MPAS-Tools#248)
- updating the jigsaw_to_MPAS scripts to work as a python package and to
  support python 3
- update global_ocean scripts to python 3 and to use these new packages

NOTE: This merge removes the capability to create the global meshes used
in E3SM version 1, (2017-2018), where the base meshes were created with
Doug Jacobsen’s tool.  The global mesh creation remaining after this
commit only uses the Jigsaw tool.

In order to recreate meshes and initial conditions used in E3SM version
1, use repositories as of
March 1, 2019:
1. MPAS-Model commit:42029f218175d893cf25e19a26d9b43382a44d54
2. MPAS-Tools commit:6d0fa3a24e879a1a5b6149d9fbfe80fa021489dc
3. geometric_features tag:E3SMv3grids 76709be

closes MPAS-Dev#220
closes MPAS-Dev#213
closes MPAS-Dev#132
closes MPAS-Dev#166
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants