Opened 4 years ago

Closed 3 years ago

#2287 closed help (fixed)

Problems with postproc app

Reported by: jmo210 Owned by: ros
Component: UM Model Keywords: post processing app
Cc: Platform: ARCHER
UM Version: 10.5



I am currently trying to run a set of AMIP experiments with different SST patterns. I have written SST and SIC ancils and successfully run for 6 months. The suite is u-am819 and is adapted from u-ae523, the development GA7.0 N96 UM10.5 suite.

I am having problem with some postprocessing at the moment. My aims are twofold:

1) to archive data to the RDF

2) cut down on the amount of written data by deleting superseded dumps

I have made an attempt at this by going through the ARCHER post processing app documentation (, although running again for 6 months I seem to have failed on both of the above objectives. Following the steps in the documentation has led to a number of errors being flagged in the postproc app, which might be the problem. Alternatively I might be misunderstanding some of the switches on the "postproc → Atmosphere" panel.

A few pointers would be much appreciated.

Many thanks,

Change History (13)

comment:1 Changed 4 years ago by ros

  • Owner changed from um_support to ros
  • Status changed from new to accepted
  • UM Version changed from <select version> to 10.5

Hi Joe,

Did you run the rose app-upgrade commands, from what I can see these haven't been run properly as the command is telling me the apps are still at revision HEAD. If it had run successfully the warning triangles wouldn't be there.

You can probably fix things by going into each panel with a red triangle and click on the blue plus signs and "add to configuration".

In panel suite conf → Build and Run you haven't switched on post-processing…

You are running from the beginning again aren't you or were you just hoping to do the post-processing from where you restart?


comment:2 Changed 4 years ago by jmo210

Hi Ros,

Yes, I ran the commands as detailed in the documentation. I followed the instruction to change the postproc meta to /home/ros/meta/postproc_2.0_pp_with_rose_bunch/r1859/rose-meta/archive_and_meaning/postproc/HEAD. Setting HEAD to postproc_2.0 doesn't give me an archer value on the archive_command option on the "Post Processing - common settings" panel.

I have got rid of the warnings.

Apologies for not switching on post-processing in the Build and Run! I'm assuming this was the main culprit?!

I ran from the beginning again.


comment:3 Changed 4 years ago by jmo210

Hi Ros,

I'm still having some difficulty getting the postproc app to work. I get the warning:

/usr/bin/env: python2.7: No such file or directory

So the script then fails to run. I'm not entirely sure where to point to the PYTHONPATH. Following instructions ( to set a pre-script under postproc? in suite.rc also didn't work.

Any pointers would be much appreciated.


comment:4 Changed 4 years ago by ros

Hi Joe,

In your ~roses/u-am819/suite.rc you need to add the line pre-script line in the position below:

        inherit = POSTPROC_RESOURCE
        pre-script = "module load nco/4.6.8; module load anaconda; export PYTHONPATH=$PYTHONPATH:$UMDIR/lib/python2.7; module list; ulimit -s unlimited"
            CYCLEPERIOD = $(rose date $CYLC_TASK_CYCLE_POINT $CYLC_TASK_CYCLE_POINT --calendar={{CALENDAR}} --offset2 -{{RESUB}} --print-format='y,m,d,h,M,s')
            ROSE_APP_OPT_CONF_KEYS = $(if [[ $CYLC_TASK_CYCLE_POINT == $CYLC_SUITE_FINAL_CYCLE_POINT ]]; then echo "finalcycle"; else echo ""; fi )

Please try this again. Then if it fails again, I can look at the output with this line in.

Last edited 4 years ago by ros (previous) (diff)

comment:5 Changed 4 years ago by jmo210

It fails, being unable to find the PPTRANSFER key in the os.environ dictionary:

Traceback (most recent call last):
  File "/work/n02/n02/jmo210/cylc-run/u-am819/share/fcm_make_pp/build/bin/", line 89, in <module>
  File "/work/n02/n02/jmo210/cylc-run/u-am819/share/fcm_make_pp/build/bin/", line 72, in main
    model = mclass(nlfile)
  File "/fs2/n02/n02/jmo210/cylc-run/u-am819/share/fcm_make_pp/build/bin/", line 64, in __init__
    self.suite = suite.SuiteEnvironment(self.share, input_nl)
  File "/fs2/n02/n02/jmo210/cylc-run/u-am819/share/fcm_make_pp/build/bin/", line 81, in __init__
    self.manifest = archer.rdf_setup(self.nl_arch, model, self.envars)
  File "/fs2/n02/n02/jmo210/cylc-run/u-am819/share/fcm_make_pp/build/bin/", line 43, in rdf_setup
    if os.environ['PPTRANSFER'] == 'True':
  File "/home/y07/y07/cse/anaconda/python2/lib/python2.7/", line 40, in __getitem__
    raise KeyError(key)
[FAIL] atmos # return-code=1
Received signal ERR
cylc (scheduler - 2017-10-03T15:55:38Z): CRITICAL Task job script received signal ERR at 2017-10-03T15:55:38Z
cylc (scheduler - 2017-10-03T15:55:38Z): CRITICAL failed at 2017-10-03T15:55:38Z

I am not attempting to transfer data to JASMIN at present. I'm assuming I need to define this key and set the value to 'False'? How and where do I do that?


comment:6 Changed 4 years ago by ros

Hi Joe,

In the suite.rc file under [[postproc]] add PPTRANSFER to the environment section:

        inherit = ...
            PPTRANSFER = false


comment:7 Changed 4 years ago by jmo210

Hi Ros,

This seems to be working in terms of archiving to data to the RDF.

I hope you don't mind if I ask a couple of other questions. First some back on the experimental design. I am attempting to run experiments with annually repeating monthly SSTs and sea ice. I have attempted to replicate the ancils as they appear in the development suite, with the exception that I have written them at monthly resolution (rather than the daily resolution of the Reynolds SST dataset) but kept the interval between ancillary updates at 1 day. Presumably some kind of interpolation is performed on the monthly data? I have written ancils with a time dimension size of 376 to conform the (376*12) size of the default ancils.

1) Given that there are only 12 unique time values at any given grid point do I actually need to write such a large ancillary file and can I just replicate the other updating ancils like ozone?

2) If I wanted to extend the run to a length of, say, 50 years, rather than the current ~20 years do I just change the model basis time and the total run length? Presumably the SST and sea ice ancils would need to reflect this and be of suitable length? If I did change to a 12 month long ancils as in 1) what would I want to set the data (days) to in the ancil files?

My main focus is on producing longer runs and the easiest way to tweak the suite to achieve this.

Finally and slightly unrelated:

3) I noticed that the 'SURFACE TEMPERATURE AFTER TIMESTEP' that I output is slightly different to the 'SURFACE TEMPERATURE AFTER TIMESTEP' provided by the SST ancil for the same timestep. Is this a consequence of some sort of interpolation happening to update the ancil daily or just a precision thing, or maybe a combination of both.

Apologies for the barrage of questions. I just want to ensure that I have everything in order before submitting long runs.


comment:8 Changed 3 years ago by jmo210

Hi Ros,

I think I have answered most of these questions. I used the 'data periodic in time' option in xancil to write climatology SST and sea ice ancils of time dimension size 12.

Obviously using these ancils gives me the flexibility to extend the length of the run by changing the model basis time and the total run length. But this seems to be limited to 1970 to 2010, seemingly due to the UKCA sub-mode, which requires various netcdf emissions that cover 1970-2010. So I'm assuming I would need to remove UKCA to extend the model run outside of this range?


comment:9 Changed 3 years ago by ros

Hi Joe,

Sorry I didn't get around to answering your other questions. In terms of UKCA, yes you would either need to turn of UKCA or get hold of further emissions files to cover the extended date range. Assuming that the suite is setup correctly, it should be ok to just flick the switch to turn off UKCA, but I can't guarantee that it will work. Luke would be able to comment further on this.


comment:10 Changed 3 years ago by luke

Hi Joe,

It is also possible to run UKCA with climatological emissions, where the same 12-monthly values are used every year. These should be available within UMDIR. It is also possible to turn UKCA off entirely and use climatological aerosols ('aeroclim' option). I'm not sure if this available easily at vn10.5, but it was at vn10.6.1.


comment:11 Changed 3 years ago by jmo210

Hi Ros and Luke,

I was able to run my suite with UKCA and climatological emissions. I changed the install_ancil source to a new file which I wrote which changed the paths to the few time-varying emissions to equivalent climatological emissions. I tried to turn UKCA off entirely and use climatological aerosols but I couldn't find an aeroclim option. I tried to play around with this by adding aerosol ancillaries but had no luck. I think I'll leave this for now and run with UKCA and climatological emissions.

Ros, finally, would it be possible to increase my PUMA quota to 3GB?

I think you can then close this ticket. Thanks both for you help.


comment:12 Changed 3 years ago by jmo210

Hi Ros,

Would it be possible to increase my PUMA quota please? I've just been allocated some additional ARCHER resources and would like to submit some runs.


comment:13 Changed 3 years ago by jmo210

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