ESCOMP / SimpleLand

Simple Land Model for CESM --- *** IN DEVELOPMENT *** --- please contact for more info. See supplemental information of https://journals.ametsoc.org/doi/abs/10.1175/JCLI-D-18-0812.1 for a description of SLIM physics. Implementation of SLIM into the main CESM trunk is ongoing. SLIM currently works with the CESM2.1 release, but must be downloaded from this repository until we finish implementing it properly into the main CESM code.
Other
12 stars 7 forks source link

Test slim at lower resolution(s) #65

Closed slevis-lmwg closed 1 year ago

slevis-lmwg commented 1 year ago

Testing this far has used the f19 resolution. Generate slim_fsurdat file(s) at lower resolution(s) and test.

slevis-lmwg commented 1 year ago

@marysa I wonder whether you have a simple tool for generating slim_fsurdat files and whether I could use that to work on this issue.

@ekluzek I think I should try one of our existing resolutions, e.g. 10x10, using the existing domain file (with mct) or mesh file (with nuopc) rather than generating new domain or mesh files. If you think that we will repeat this testing with nuopc, then I propose that this issue should wait and the testing be done once.

ekluzek commented 1 year ago

@slevisconsulting yes try fv10x15 and fv4x5. The domain files (or eventually mesh files for NUOPC) are part of the CESM system, so you won't need to worry about that part. The only part you'll need to do is to create mml_surdat files and see if it works. When you setup a case the proper domain files will be pointed to in the case. You can check for them with "./xmlquery -p DOMAIN".

slevis-lmwg commented 1 year ago

I have written a matlab script to generate dummy mml_surdat files, e.g. slim_unrealistic4x5.nc and slim_unrealistic10x15.nc. I will try running simulations pointing to these files. If they work, then I could use the same matlab script to address #36.

slevis-lmwg commented 1 year ago

ERP_D_Ld60.f45_g37.I1850Slim50RsGs.cheyenne_intel.clm-realistic_fromCLM5_1850Monthly used mml_surdat = '/glade/work/slevis/git_slim/SLIM_files/generated_by_slevis/slim_unrealistic4x5.nc' and passed. ./create_test ERP_D_Ld60.f10_f10_mg37.I1850Slim50RsGs.cheyenne_intel.clm-realistic_fromCLM5_1850Monthly used mml_surdat = '/glade/work/slevis/git_slim/SLIM_files/generated_by_slevis/slim_unrealistic10x15.nc' and passed.

@ekluzek if you agree, I will close this issue as complete.

ekluzek commented 1 year ago

This is great news!

Can you easily also try a f4x5 case? It also would be really good to put these files into inputdata and add tests for them in the test list. These low resolution tests are going to be really cheap and fast, so it would benefit our testing to have some low resolution tests that are done. It actually might be good to shift a lot of the testing over to low resolutions like we do with CTSM because it's so much cheaper.

marysa commented 1 year ago

Hi @slevisconsulting - sounds like you already have a script. Sorry for the delay on my end - I was out sick most of last week. Let me know if you still need/want what I've got - I had something not elegant in python but it can have issues with coastal cells; if the ocean had a nan rather than a reasonable value, that can end up in the regridded land files.

slevis-lmwg commented 1 year ago

Can you easily also try a f4x5 case? It also would be really good to put these files into inputdata and add tests for them in the test list. These low resolution tests are going to be really cheap and fast, so it would benefit our testing to have some low resolution tests that are done. It actually might be good to shift a lot of the testing over to low resolutions like we do with CTSM because it's so much cheaper.

@ekluzek I ran this f45 test and it passed: ERP_D_Ld60.f45_g37.I1850Slim50RsGs.cheyenne_intel.clm-realistic_fromCLM5_1850Monthly using mml_surdat = '/glade/work/slevis/git_slim/SLIM_files/generated_by_slevis/slim_unrealistic4x5.nc'

slevis-lmwg commented 1 year ago

...actually, I do not have write permission in /glade/p/cesmdata/cseg/inputdata/lnd/slim/surdat

ekluzek commented 1 year ago

OK, I just gave you permissions on cheyenne and izumi to add to the lnd/slim directory and subdirectories. And yes we should add these files to the build-namelist namelist_defaults and in with rimport.

For now I'd just add a few new tests for both f45 and f10. That could take up several tests if you do several compilers and both cheyenne and izumi. We can't run SOM for these resolutions, but I think you could do both F compsets and I compsets for this. And technically you could do a few different configuration types. But, we shouldn't add too many more, just a few as the next step will be to switch a lot of the higher resolution tests for lower resolutions.

I think it would be good for us to collaborate together and talk through changing the test list to have more lower resolution tests. Thats one of the things where it's good to work on it together.

ekluzek commented 1 year ago

I looked at the CTSM test list and the other low resolution we use there is T31. T31 used to be "the Paleo" resolution, but I don't think it is anymore.

There are some other unstructured grids that I don't think make sense for SLIM. But, I do wonder if regional or single point would be useful for SLIM though?

I also like the idea of just trying different resolutions to see if we can break SLIM. It's just good to try crazy stuff out to see if you can break it. If you find something that breaks it -- well then you know about limitations; And if you don't break it you know it's robust in that fashion. So possibly we should try some of these unstructured grids just so we know if they'll work or not.

slevis-lmwg commented 1 year ago

I copied the two new mml_surdat files to /glade/p/cesmdata/cseg/inputdata/lnd/slim/surdat. First line of business is our naming convention. For now I named them:

slim_unrealistic_f10_20230131_from_realistic_f19_20190110.nc
slim_unrealistic_f45_20230131_from_realistic_f19_20190110.nc

Our fsurdat naming approach is not entirely relevant to SLIM but here's an example: surfdata_10x15_hist_78pfts_CMIP6_1850_c230127.nc

slevis-lmwg commented 1 year ago

Preferred names of the new files: slim_realistic_f19_20190110_cutout_to_f10_c20230131.nc slim_realistic_f19_20190110_cutout_to_f45_c20230131.nc

Put in the same PR as short restarts (#68) and add new short restart tests at the low resolutions (several compilers, izumi and cheyenne).

slevis-lmwg commented 1 year ago

I ran the next two commands to put the new files on the repository: ./rimport -file lnd/slim/surdat/slim_realistic_f19_20190110_cutout_to_f10_c20230131.nc ./rimport -file lnd/slim/surdat/slim_realistic_f19_20190110_cutout_to_f45_c20230131.nc