Good morning,

I would like to use the gp grid cell area in OpenIFS, mostly to check conservative remapping schemes, maybe also for online oasis areas.nc calculation. I have not found any variable containing what I'm looking for. Before I start transferring Joakims python scripts into fortran I'd like to ask here, if such a variable is calculated somewhere already. After all the source code is large, I might not have looked for the right name.

Cheers,

Jan

6 Comments

  1. Unknown User (joakimkjellsson@gmail.com)

    Hey Jan

    I remember asking once, and Glenn was kind enough to supply me with code from cy43, which I back-ported. 

    It worked, but had the limitation that it only works if you run OpenIFS on 1 CPU, which is crazy slow for T511 and beyond. 

    I'm attaching my version of cplng_data_mod.F90. I don't fully trust the results of the routine. For one thing it does not care about the lakes, which need to be removed for the atmo→ocean remapping. 

    So that's why I went with the python script. 

    Maybe Glenn or Kristian has some better routines we could backport to cy40? 

    cplng_data_mod.F90

  2. Hi, I had a vague memory I'd answered this before.  It was Kristian who helped me locate the required code. I've attached the code I sent here for completeness.

    I don't understand the comment about lakes, OpeniFS 40r1 doesn't have the lake model?

    Glenn

    oasis3_cy43r3.tgz


  3. Unknown User (joakimkjellsson@gmail.com)

    Hi guys

    Yes, I think that was my problem. When OASIS remaps P-E from OIFS to NEMO, you only want remapping to happen over ocean points and not over lakes (e.g. Aral or Great Lakes), but cy40 treats lakes as ocean. So I ended up taking the land-sea masks and lake masks and combining them to get a land-sea mask in my python script. It also allowed me to easily make plots of everything to make sure I was doing it right. 
    If it's done in OpenIFS cy40, the lake mask is not available, so you'll end up with a land-sea mask that does not match NEMO. In cy43, I guess you would add the land sea mask and lake mask so that OASIS sees a land sea masks without any lakes? 

    Maybe I was completely wrong. If there is a way to let OpenIFS generate these masks by itself, that would be great. 

    Cheers
    Joakim 

    1. Hey Joakim, could you point me to where I might find a lake mask that I can read into python?

      1. Unknown User (joakimkjellsson@gmail.com)

        Hi Jan

        I got all the files from Glenn at some point, and I've got them all on Mistral. For N80, check out:
        /work/bb0519/generate_openifs_cy40r1_grids/OpenIFS_input/ifsdata_cy40/40r1/climate/159l_2/clake
        and then similarly for N128, N256 and N640.

        Enjoy!
        Cheers
        Joakim

  4. Thanks for both of your inputs,

    seems that this is what I was looking for. More good cy43 features! I guess you need a land-sea mask that matches the ocean area exactly, which can change anyway depending on ocean model and resolution and if you have Caspian sea or not etc. Since lsm in cy40 treats lakes as ocean I'd have to read in the mask that was created with Joakims python scripts and they I can calculate the areas and net fluxes before remapping. And that can help me check if oasis conservative remapping works correctly. Maybe I can do it by hemisphere later like it's done in other models at AWI.

    Cheers, Jan