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

Ordering of netCDF File Reads #47

Open
bilgetutak opened this issue Apr 18, 2023 · 6 comments
Open

Ordering of netCDF File Reads #47

bilgetutak opened this issue Apr 18, 2023 · 6 comments

Comments

@bilgetutak
Copy link

Hi,

I am currently trying to setup a ROMS-CICE simulation through metroms code.
I believe (hope) I have successfully compiled the model.
However, I am getting
ice_therm_mushy solver failure
at the first time step.

I am currently using ECMWF/ERA-5 data. I have regridded the data on to the CICE grid (at least that is my understanding for the atmospheric forcing data requirement of CICE Model). I had problems with weird looking atmospheric data.

Then, I was checking the diagnostics, and I have reached to the point where the atmospheric forcing files are read through ice_read_write.F90 file. In the below part of the code,

Again if I am understanding this correctly, the order of the CICE Atmospheric Forcing dimensions are (x,y,t) or (lon, lat, time), which was counterintuitive for me (as most of the standart netCDF files have them in the reverse order - (t, y, x) or (time, lat, lon) ).

If this is the case, I am guessing that comes from legacy CICE atmospheric forcing data requirements.

In any case, is there any accessible tool/script for the correct formatting of the atmospheric forcing data in to the CICE model.

Thank you,
Bilge.

@joeailvyou
Copy link

Hi, I am new to METROMS. I have compiled it. But now I should prepare input initial, boundary, forcing and climatology file for METROMS.
Have you solved it ? Have you get a suit of scripts to make forcing file and run METROMS successfully ?
What is more, how did you run it ? I mean, You use the python scripts or mpirun -np xx ./oceanM directly ? I am confused: If use python, is there conflicts between the MPI in python and MPI in Linux. (I installed a new MPI in Python as I don't know how to tell Python where I have installed mpich in my Linux ). Should I tell Python where my MPI is and how to do it ? Could please help me ?

@bilgetutak
Copy link
Author

Hi joeailvyou,
Unfortunately I am in the same situation, as you are. I am still trying to run the model.

I use the python scripts to run the model. You have to create a script for your own case, and set the parameters (in /common/python/Params.py) for your case, so that it creates the ice_in and roms.in files correctly from the templates.
Other than that, I think you can still run the model with mpirun. There won't be much difference.

@joeailvyou
Copy link

Dear bilgetutak,
Have you ever encountered an error "ice: error reading namelist". I found the modified code cice/source/ice_init.F90 copied from /metroms/apps/common/modified_src/cice5.1.2/source/ice_init.F90 while compiling (by MET in , not by me) contained a namelist
namelist /da_nml/ & da_ice, da_sic, da_sit, da_sno, da_method, da_data_dir, Tobs, & da_insert, corr_bias
METROMS try to read it's value from ice_in. But the ice_in contained no such a namelist. It seemed it was used to achieve data assimilation. How should I edit ice_in (eg, value for da_ice, da_sic, etc ) to close data assimilation or how to prepare data for assimilation. I prefer to close data assimilation.

@bilgetutak
Copy link
Author

I am sorry I have no idea how the assimilation is opened/closed. Maybe it is a CPP option within the ROMS header file. I haven't seen any option indicating those namelists. Maybe start from one of the cases of the metroms like arctic-4km or arctic-20km.

@joeailvyou
Copy link

I am sorry I have no idea how the assimilation is opened/closed. Maybe it is a CPP option within the ROMS header file. I haven't seen any option indicating those namelists. Maybe start from one of the cases of the metroms like arctic-4km or arctic-20km.

As for the atmospheric forcing, Have you used the metroms/tools/create_time_index.py to create ascii-files, whose location were later indicated by atm_data_dir = 'atmcice/' in the ice_in file. I tried the create_time_index.py scripts and it generates a ascii-file as following :
12 lines 15.00 1 ./roms_blk.nc 45.00 2 ./roms_blk.nc 75.00 3 ./roms_blk.nc 105.00 4 ./roms_blk.nc 135.00 5 ./roms_blk.nc 165.00 6 ./roms_blk.nc 195.00 7 ./roms_blk.nc 225.00 8 ./roms_blk.nc 255.00 9 ./roms_blk.nc 285.00 10 ./roms_blk.nc 315.00 11 ./roms_blk.nc 345.00 12 ./roms_blk.nc
Is my output ascii-files right?
I use this python script because as nilsmkMET replied "you should make files for ROMS in "a traditional way". For CICE, you need to run a script to create ascii-files that contains details on the atmospheric forcing: https://github.com/metno/metroms/blob/master/tools/create_time_index.py". In my understanding, as long as I have prepared forcing file for ROMS, the only thing I need to do for CICE forcing is to run this python script and generate ascii-files, right ? Have you ever tried this ?

@bilgetutak
Copy link
Author

No I have always tried to use the ecmwf data file options, and never tried to use that script.

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

No branches or pull requests

2 participants