PReVIOuS


This is a logbook about our attempts to run the PReVIOuS comparison tools.

UKMO Documentation

https://code.metoffice.gov.uk/doc/previous/latest/introduction.html

Our Rose

u-ao817

Status

in jinja2}}, one can set the variable {{ENSEMBLE_SIZE to decide how many versions should be run.

PART WORKS ISSUES
reconf yes
perturb yes
atmos yes not all output fields present

Output Fields

stream requested present reason STASH code
pa U component of wind after timestep U COMPNT OF WIND AFTER TIMESTEP (0, 2)
pa V component of wind after timestep V COMPNT OF WIND AFTER TIMESTEP (0, 3)
pa Theta after timestep THETA AFTER TIMESTEP (0, 4)
pa QFC after timestep QFC AFTER TIMESTEP (0, 12)
pa Advected U component of wind after timestep not available in this model (0, 256)
pa Advected V component of wind after timestep not available in this model (0, 257)
pa Advected W component of wind after timestep not available in this model (0, 258)
pa Exner pressure at theta levels EXNER PRESSURE AT THETA LEVELS (0, 406)
pa Pressure at Rho levels after timestep PRESSURE AT RHO LEVELS AFTER TS (0, 407)
pa Pressure at Theta levels after timestep PRESSURE AT THETA LEVELS AFTER TS (0, 408)
pa SPECIFIC HUMIDITY AFTER TIMESTEP (0, 10)
pb Surface temperature after timestep (0, 24)
pb Surface pressure after timestep (0, 409)
pb Surface sensible heat flux (3, 217)
pb Surface total moisture flux (3, 223)
pb Surface latent heat flux (3, 234)
pb Deep soil temperature after Boundary Layer (3, 238)
pb Surface net Shoet Wave Radiation on tiles (3,382)
pb Surface up Long Wave Radiation on tiles (3, 383)
pb Surface down Long Wave Radiation on tiles (3, 384)
pb Meridional Momentum flux (30, 316)

The STASHexport_GA7_AMIP.ini}} file from the PReVIOuS utils directory declares a File Output Stream with the ending Template:.pb as {{[namelist:nlstcall_pp(1)] but never references it. We have re-enabled the following usage profile:

[namelist:use(upb_d50be24f)]
file_id='pp1'
locn=3
!!macrotag=0
use_name='UPB'

which is now pointing to the output stream.

This allows us to re-enable the entry for (0, 409) SURFACE PRESSURE AFTER TIMESTEP

Update 14/08/2017

I have disabled all old STASH requests, as well as all Domain, Time, and Use profiles.

Then I added the fields as described above, as well as the UPUKCA}} fields from the downloaded {{.ini file (and only those profiles that were mentioned in at least one STASH request).

This has worked well, except for the three 'advected' fields described above, which have the STASHMaster_A flag n29 = 2, which according to the documentation [[1]] means "Excluded if Endgame grid-staggering is being used."

The actual comparison

PReVIOuS

I've checked out Martin Dix's u-ao414 version, as it claimed to be the "NCI version". Though svn logs suggests that the changes he made so far are minimal.

I've added site/nci_raijin.rc}} and enabled that as an option in the {{Machine Options.

Build Resources

The job fmc_make}} fails to run on Template:Raijin as it wants to check out data from the MetOffice's repository, but that would require Template:Mosrs-auth. I've disabled the inheritance of Template:RHOST for {{fcm_make, so it now runs on accessdev. It's practically an svn checkout only.

I then manually copied all files to raijin

Martin's Version

When I contacted Martin, he noticed that he had made a few changes to his version of PReVIOuS, and checked them in, but not before I had checked out the original version.

So I've updated my version, and looked at his changes.

keyword.cfg

I needed to copy his ~mrd599/.metomi/fcm/keyword.cfg to my directory.

Metadata

Martin hadn't bothered to allow for nci_raijin to be an admissable Machine Option, so I kept the changes there.

Other configurations

I changed the experiment and control runs both to u-ao817, meaning it should compare the data to itself.

Running

I'm running the system, but it fails in kstest}} (both Template:Pa and {{pb).

More careful analysis reveals that the pickle files are annoyingly small (157 bytes) and probably contain nothing of value, so the real culprit is probably the load_data.py.

It seems that the loaddata.py}} script was looking for the data in Template:/short/w35/hxw599/previous/ao-817/ -- which didn't exist. So I've created a link from {{/short/w35/hxw599/cylc-run/u-ao817/share/data/History_Data to see what happens then.

The script was falling over the seeddata}} directory, so instead I'm linking only the {{ensemble_* subdirectories.

This works for pa}}, but now load data fails for {{pb.

The error seems to lie with the Meridional Momentum flux, which doesn't have a longitude dimension (or, more precisely, has one with length 1).

For now I've used

$ mule-select <infile> <outfile> --exclude lbuser4=30316

to remove that field from the pb}} streams. I've also disabled the STASH request in {{u-ao817.

Publish

The publish.py}} script either requires a Template:WEBDIR variable set (which at the moment it isn't, or at least one of two directories Template:~/public html or {{~/Public to place the data in.

Results from Comparison

We've run rose u-ao817 on both raijin and the UKMO (10 ensembles each), and the results are not that encouraging:

* 1 day run: [[2]]
* 2h45 run: [[3]]

To test whether it's an issue with PReVIOuS or the job itself, we split our own run into ensembles 0-4 and 5-9, and compared these results: [[4]]

This suggests that the PReVIOuS tool works fine, it's an issue with the run.

The most likely explanation is that we are not using the same ancillary files as the UKMO is, so we're getting a list of all ancillary files, create md5 hashes, and compare those to the md5 hashes that João uses.

Found these files:

file md5(raijin) md5(UMKO)
/g/data1/w35/saw562/HighResMIP/data/d05/hadom/ancil/atmos/n216e_highresmip/orca025/seaice/hadisst2_025/1948-2015/v1/qrclim.seaice
/g/data1/w35/saw562/HighResMIP/data/d05/hadom/ancil/atmos/n216e_highresmip/orca025/sst/hadisst2_025/1948-2015/v1/qrclim.sst
/g/data1/w35/saw562/HighResMIP/data/d05/hadom/ancil/atmos/n216e_highresmip/ozone/1850-2014/v1/qrclim.ozone_L85_O85
/g/data1/w35/saw562/HighResMIP/data/d05/hadom/ancil_creation/soil_moisture/soil_moisture_ac035_to_ab680_usetemplate.anc
/g/data1/w35/saw562/HighResMIP/data/d05/hadom/startdumps/era20c_1950010100.grib
/projects/access/umdir/ancil/atmos/n216e/orca025/general_sea/GlobColour/v1/qrclim.sea
/projects/access/umdir/ancil/atmos/n216e/orca025/hydrol_lsh/hydrosheds/v1/qrparm.hydtop
/projects/access/umdir/ancil/atmos/n216e/orca025/land_sea_mask/etop01/v2/qrparm.landfrac
/projects/access/umdir/ancil/atmos/n216e/orca025/land_sea_mask/etop01/v2/qrparm.mask
/projects/access/umdir/ancil/atmos/n216e/orca025/orography/globe30/v7/qrparm.orog
/projects/access/umdir/ancil/atmos/n216e/orca025/rivers_trip/sequence/etopo5/v4/qrparm.rivseq
/projects/access/umdir/ancil/atmos/n216e/orca025/rivers_trip/storage/fekete/v3/qrclim.rivstor
/projects/access/umdir/ancil/atmos/n216e/orca025/soil_parameters/hwsd_vg/v4/qrparm.soil
/projects/access/umdir/ancil/atmos/n216e/orca025/vegetation/fractions_igbp/v4/qrparm.veg.frac
/projects/access/umdir/ancil/atmos/n216e/orca025/vegetation/func_type_modis/v4/qrparm.veg.func