Setting up Regional-MOM6 on non-NCI system #117
Replies: 39 comments
-
Okay, downgrading to motu-client v1.8.0... The warning is self-explanatory and not an issue for now but might be something to keep in mind for future revision. Then an SSL 1006 error crops up before download can start. Trying to dig into that it looks like the motuclient call tries to access a service called GLOBAL_MULTIYEAR_PHY_001_030-TDS (bolded in code snippet below, user account and password deleted from snippet but present in file): But manually opening https://my.cmems-du.eu/motu-web/Motu doesn't show such a service as being available: -Chris |
Beta Was this translation helpful? Give feedback.
-
Getting the same error/outcome when using the API request motu-client code snippet on https://data.marine.copernicus.eu/product/GLOBAL_MULTIYEAR_PHY_001_030/download?dataset=cmems_mod_glo_phy_my_0.083_P1D-m_202112, and downloading data manually seems to also not be working... So, I suspect that's a problem at CMEMS's end... |
Beta Was this translation helpful? Give feedback.
-
Okay, contacted CMEMS and their advice that access via MOTU is no longer stable they would encourage a move to their new Copernicus Marine Client:
|
Beta Was this translation helpful? Give feedback.
-
cc @ashjbarnes |
Beta Was this translation helpful? Give feedback.
-
Hi @croachutas so sorry for the late reply! I'd messed up my Github notification settings so didn't see until Navid tagged me.
I'll make this a priority, since I agree it's really important to be able to onboard new users with an easy example, even if the downloading of data does sit a bit outside of the scope of the package. (since we expect end users to BYO whatever ocean forcing data they want once they've learned how to use the package) If I can help further we can continue the conversation here, or have a zoom call to speed things along :) |
Beta Was this translation helpful? Give feedback.
-
In PR #83 I've removed references to NCI and replaced the Motu client with instructions on how to use the GUI to reproduce the same results. This will be annoying as you'll need to download locally then upload them to your HPC but will have to do for now until we implement their new data API |
Beta Was this translation helpful? Give feedback.
-
Hey, Edit: Below is based upon grabbing an updated version fo the jupyter notebook but without pulling down the full declutter_notebook branch. I've finally got back onto this. Downloaded the updated notebook, copied ERA5 from NCI to my workstation and pulled down two months of GLORYS. So, status at the moment is things run up to step 6 (running FRE tools) where I get the following error:
So, what in the scheme of things looks like a fairly minor problem: Combining a string with a PosixPath should use / rather than + when adding commandline buhmp to the tool path before running a subprocess. So, question is, is that something that needs to be changed in regional_mom6.py, or in line with the older version of the notebook do I need to define the various paths as strings rather than PosixPaths? (Or is it something that's already been fixed but I'll need to update my build of regional-mom6?) Edit: Switching to strings in place of PosixPaths worked fine. |
Beta Was this translation helpful? Give feedback.
-
And witha bit of copy pasting from the older version of the notebook got the full setup done. Now to run a first test... |
Beta Was this translation helpful? Give feedback.
-
Okay, moved over fully to the declutter_notebook branch. Forcing prep runs properly, had to edit MOM_input to specify correct number of layers (NK, was defaulting to 100, reduced it to 30) and diag_table to insert experiment name and start date. Had some initial problems with running via mpirun, but that looks to have been a bugger up on my behalf (running within a conda environment, so just deactivated conda...) but that's resolved. Issues with errors to do with "Invalid variable type in NetCDF file, turns otu i needed to remove the time variable from the initial condition files (Done). Now having issues finding /INPUT/forcing/tu_001.nc etc. which appears to be related to tides.... Commented them out of the OBC_SEGMENT_00[1-4]_DATA file paths specified in MOM_input and set tides to false everywhere I could finda reference to tides, and now having problems with errors like "FATAL from PE 1: Values needed for OBC segment" |
Beta Was this translation helpful? Give feedback.
-
Ohh thanks yeah I'd accidentally left tides in from the run I was using to troubleshoot. If you set
and remove the tidal files from the obc segment files so they all look like:
that will hopefully do it |
Beta Was this translation helpful? Give feedback.
-
For reference here's a MOM_input file for a no tide run |
Beta Was this translation helpful? Give feedback.
-
Thanks, that gets me past that issue but now I'm getting errors about "MOM_diag_remap, initialize_regridding: Specified file not found: Looking for 'INPUT/diag_rho2.nc' (FILE:diag_rho2.nc,interfaces=rho2)" It looks like either diag_rho2.nc isn't being generated when the forcing fields are created or needs to be provided "pre-baked". |
Beta Was this translation helpful? Give feedback.
-
Switched to using DIAG_COORD_DEF_RHO2 = "WOA09" in MOM6_input, might not be ideal but moves me onward for now. Now getting an error about " Unable to find variable DAYMAX in any input files." Edit: Adding DAYMAX following other MOM6 examples sees the model start running but immediately crash because it looks for forcing from outside the time-period provided (defaults to date of 0001-01-01 vs date range on forcing data of 2013-01-01 to 2013-01-10). Comments in MOM6_input in examples suggest it should be possible to set end date via "ocean_solo_nml in input.nml" but I can't seem to find examples that actually do this. Edit 2: As far as I understand this should be read from &coupler_nml in input,nml but isn't for some reason. Edit 3: I built MOM6 following the instructions at https://github.com/mom-ocean/MOM6/blob/main/ac/README.md which seem to be for an ocean only installation... Looks like the setup shown here is instead built with coupling but then uses the coupling code to just feed in surface properties. Will try rebuilding MOM6 following the instructions for allowing coupling at https://github.com/NOAA-GFDL/MOM6-examples/wiki/Getting-started#compiling-the-models |
Beta Was this translation helpful? Give feedback.
-
Oh yeah this would be the problem! Ocean only has no atmospheric forcing and so there's no coupler. The To be able to use the provided input configurations from the demos you'll need an ocean-sis executable. You can use my executable that's ready to go on gadi for testing purposes if you like. It's found at:
|
Beta Was this translation helpful? Give feedback.
-
Thanks good feedback - this probably shouldn't be included actually as it's a diagnostic I've been using for my research. I'll remove it from the demos |
Beta Was this translation helpful? Give feedback.
-
Thanks! Will test later today. |
Beta Was this translation helpful? Give feedback.
-
Okay... Usual minor issues (lack of start date and experiment name in diag_table; need to turn off tides) which can be fixed with a few seconds in relevant config files. Link to input director INPUT no created (just the links names inputdir which always breaks), but that's another easy fix. And the bigger issue, I'm getting a crash with an error "FATAL from PE 1: fms_io_mod(field_size): file INPUT/forcing/tu_001.nc and corresponding distributed file are not found" |
Beta Was this translation helpful? Give feedback.
-
Then missing diag_rho2.nc, in the past replaced that with WOA09 keyword in MOM_input... Done. Would suggest either providing this file for the examples or changing this in the default MOM_input. Now, error because it wants the various forcing files to not have the .nc suffix... Another easy fix at my end, either need to rename the files or change entry in data_table file. Again, something that probably should be changed for the default setup. |
Beta Was this translation helpful? Give feedback.
-
And running now... Three days done and yet to explode, but does seem slower than before you added the surface fluxes (not stupidly slow but may mean I tell the students to do a 5 day run rather than a 10 day run) |
Beta Was this translation helpful? Give feedback.
-
Hmm are you sure you're on the latest version? The diag table and tide issues were fixed. At least if you look at the MOM_input file in the premade run directory the diag table and tides have been removed. The data table in the current version also expects the |
Beta Was this translation helpful? Give feedback.
-
Okay, I see the problem: When installing MOM6_regional to a conda environment I used pip git+https://github.com/COSIMA/regional-mom6.git... Which set up the package in the wrong place, forcing me to manually create the demos folder and subfolders which did not update when I updated the package... Will uninstall and try rebuild using conda-build. |
Beta Was this translation helpful? Give feedback.
-
ok good to know... @angus-g might be able to help. Perhaps the original build instructions need updating with the new demos? Oh and regarding the creation of the It's a good point that we should handle this for non-payu users. Perhaps using the |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
Thanks Ash, that seems to have mostly solved the cooling on the seafloor but doesn't look to have helped the cooling of coastal SST as much. |
Beta Was this translation helpful? Give feedback.
-
Yeah that's really strange! I haven't noticed it in my runs which use ERA5, SIS/MOM6 at latest source and Glorys at the boundary. Is your executable fairly up to date? There were some updates to the coupler that helped ERA5 perform more sensibly |
Beta Was this translation helpful? Give feedback.
-
Nope, I'm still using mostly the defaults from the mom6-examples build... Looks like that points to a rather old version of the coupler (coupler @ 14578f0, circa 6 years old). I'm afraid if I try upgrading the coupler it'll break the build scripts as happened when I tried installing more recent versions of FMS. |
Beta Was this translation helpful? Give feedback.
-
(Might need to see if I can get the build using ninja to work... Any idea if that codebase works outside NCI?) |
Beta Was this translation helpful? Give feedback.
-
There's nothing really NCI-specific in it, but you might have to tweak paths. As long as you have working Fortran and C compilers, an MPI implementation and the NetCDF libraries (for C and Fortran), you should be able to get it working. |
Beta Was this translation helpful? Give feedback.
-
Question: should we convert this into a Discussion? If it's not related with a bug/issue in the code I think it fits better into the Discussion section. |
Beta Was this translation helpful? Give feedback.
-
Hi,
I'm in the process of setting up Regional-MOM6 on my workstation and working through the reanalysis forcing example as a bit of an exercise to get up to speed on it before using it as a teaching aid for one of the IMAS-OUC 2+2 programme units.
Anyway, I've thus far encountered a few issues:
motu-client isn't listed as a dependency, easy to fix at my end (just pip...) but you probably should add it to the project.toml so this doesn't catch people out in future.
toolpath points to MOM5 tools directory (FRE tools?) instead of tools available with MOM6 or independently:
toolpath = "/home/157/ahg157/repos/mom5/src/tools/"
Again, this is something I can work around (download and build MOM5... Edit: Unclear how to build FRE tools from MOM5 quickstart guide... EDIT AGAIN: Found FRE tools github page, installed apparently successfully), but I think this dependency on MOM5 needs to be clearly stated. Ideally either alternative tools available with MOM6 should be used or the necessary tools should be provided with Regional-MOM6.
Running the code to download GLORY boundary forcing and initial states successfully creates get_oceanfiles.sh but when the code tries to run the shell script I get warnings to the effect of:
/home/croach/anaconda3/envs/MOM6_tools/bin/python: No module named motuclient.__main__; 'motuclient' is a package and cannot be directly executed
and no data is downloaded. Looking at https://github.com/clstoulouse/motu-client-python/tree/master#Usage and comparing that to the contents of get_oceanfiles.sh I suspect that rm.motu_requests is written for motu-client v1.8.0 instead of motu-client v3.x. I can probably downgrade to motu-client v1.8.0 easily enough.Anyway, I'll have a crack at installing the MOM5 tools and downgrading motu-client and keep you updated on if that fixes my current problems.
-Chris Roach
Beta Was this translation helpful? Give feedback.
All reactions