Opened 2 years ago

Closed 2 years ago

#2856 closed help (fixed)

Yet more vegetation ancillary fraction problems

Reported by: charlie Owned by: um_support
Component: UM Model Keywords:
Cc: Platform: NEXCS
UM Version: 10.7



Really sorry about this, but yet again I'm having more problems with getting my suite to run with newly created vegetation fraction/soil parameters ancillaries. This closely relates to ticket #2558 and #2735, which Simon solved, but I have gone through the same steps exactly, and something is still going wrong. Please could either Simon and/or Jeff look at this, because I believe the problem might be to do with xancil?

I have narrowed the problem down (by iteratively submitting my suite with all other ancillaries and older versions) and I am certain that the problem is either to do with the vegetation fraction or the soil parameters/dust, or a combination of the 2. All my other ancillaries work fine.

In the following, I'm going to use this terminology:

  • Round 1 modified ancils - previous lot of ancillaries (using a slightly different mask), which all work and with which I ran the suite for 10 years. These are in /home/d05/cwilliams/gc31/new_ancils
  • Round 2 original ancils - new lot of ancillaries (using new mask), spat out of my Rose ancillary suite. These are in /home/d05/cwilliams/cylc-run/u-ar826/share/data/n96e_orca1_go6
  • Round 2 modified ancils - same as above, but modified by me e.g. global means applied. These are in /home/d05/cwilliams/gc31/final_ancils

I have proved that my new suite (u-bh301) runs perfectly well with all of the Round 2 original ancils - in other words the error must be due to something I have done and, as I said, is something to do with either vegetation and/or soil.

What I don't understand, now, is why it's not working. I have used exactly the same code to create my Round 2 modified ancils that I used to create the Round 1 modified ancils. I have compared these, and they look nearly identical - as indeed they should, because the only difference between Round 1 and Round 2 is a tiny modification to the mask. They are all the same way up (both data and latitudes) with the same data, and I have made sure that there are soil parameter values over Antarctica to match the vegetation values (which was the problem in ticket #2735). So why is it not working this time? Have I missed something obvious?

The only slight anomaly I have noticed is that there appears to be a difference between the .nc format of my files and the UM format version of my files. Compare, for example, the Dust parent soil clay fraction, from Round 2 modified ancils (in /home/d05/cwilliams/gc31/final_ancils/soil_dust/hwsd/ and the UM format version of this (in /home/d05/cwilliams/gc31/final_ancils/soil_dust/hwsd/qrparm.soil.dust). The input to xancil (i.e. the .nc file I have created, containing global means) looks correct i.e. matches my new mask. The most obvious point way to tell this is the bridge between Greenland and North America, which SHOULD be all the way across i.e. the gateway should be closed. In my .nc file, it is. I then feed this into xancil, and in the resulting file the bridge is NOT all the way across i.e. the gateway is open. In other words xancil is converting missing data to actual data.

This, in my mind, would indeed cause a blowup, because it is expecting (from the land sea mask) missing data at this point, but is instead getting data. But why is xancil doing this? I have double and triple checked my input files, and they are correct.

Unless this is completely a red herring, and there's something else wrong with one of these files. But I can't see what, because as I said the code to make them is identical to the code I used before, to make the previous version. Absolutely nothing has changed, other than the input files to the code (which I have double and triple checked, and I am not using an older input by mistake).


Change History (4)

comment:1 Changed 2 years ago by charlie

Okay, further to this… I am now certain that it is xancil, somehow changing the mask ever so slightly. It is only doing this for the 2 soil fields (parameters and dust) - the 2 .nc files contain a solid land bridge from Greenland to North America (i.e. a closed gateway) whereas the UM version does not (i.e. an open gateway). There is also another difference, in Mexico, where the channel is slightly more open. In the UM version, it is closed. These are only tiny differences, but would be enough to cause the model to blow up, because it doesn't match the land-sea mask (which has a closed gateway between Greenland & North America, and a slightly more open channel in Mexico). This is correct, and how it should be. So whatever I am doing to create my .nc is correct, it's at the xancil stage that something is going wrong.

I have double- and triple-checked the input file I am using for xancil, and it is correct and the most up-to-date version (i.e with the correct mask).

Interestingly, this above problem DOESN'T happen for vegetation fraction or function. In other words, although I am still using xancil to convert my .nc file to UM format, this time the mask doesn't change i.e. they are the same, and the resulting UM format file is correct.

Even more interestingly, the above problem DOES happen for hydrology (in ~/gc31/final_ancils/hydrol_lsh/hydrosheds/). In other words, just like soil, I am still using xancil to convert my .nc file to UM format, but this time the mask again changes slightly, to be incorrect. But, for bizarre reasons, the model DOESN'T fail when I use this file!

Ah… I have just noticed something interesting, and am wondering if this might explain things. When I created my vegetation files (which are correct) I did it from a fresh xancil i.e. started from scratch. However, when I created my hydrology and indeed soil files, I used a previous xancil job (i.e. I loaded in a job from my previous run). Is it possible that, even though I deleted the old input .nc file and replaced it with a new input .nc file (of the same name), that somehow the job has a "memory" and is still linking back to a old version of the file (even though it has been deleted). This seems weird to me, but might it be possible?


comment:2 Changed 2 years ago by charlie

OMG, that’s it!

If you load a xancil job, It will obviously contain the previous pathname i.e. it will point to the old input file. However, even if you change this pathname to the most up-to-date version, it reverts back when you press Create! If I start xancil from scratch, which is obviously a bit more time consuming because the fields needs to be highlighted individually, it works and recreates the correct mask. Lesson to be learnt: be very careful when loading previous jobs!

Now to recreate the soil fields and see if the model will run… If it does, I will close this ticket.

comment:3 Changed 2 years ago by charlie

Yes, it now appears to be running. I will close this ticket. Many thanks anyway.

comment:4 Changed 2 years ago by charlie

  • Resolution set to fixed
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.