From scratch

JULES From Scratch is an alternative how-to for those who don't work on a system where Cylc, Rose and FCM have already been installed and/or can't use the Met Office Virtual Machine (e.g. for security reasons). I'm also assuming little or no familiarity with any recent version of JULES.


In order to follow this tutorial and get JULES running, you will need quite a few things in place on your system. Please check through this list of necessities.

If you have all those necessities in place, we need to install a few programs on your Linux/UNIX system. Keep this window open, and then open the slides and/or the video below:


Click here for slides: PDF icon 20210716_JULES From Scratch.pdf

Click here for a video version (n.b. with subtitles if you click on the "CC" button).


Install Cylc, Rose and FCM and cache your MOSRS password

You need to have three programs installed on your system: Cylc, Rose and FCM. All three of these are necessary for running JULES and I've done a page about installing each with all the steps required (linked here below).

Ideally, these three will be installed globally by your system administrator, but if that isn't possible (or you are the system administrator) then you will need to go through some/all of these steps for a local installation. First check what is on your system by putting these commands into a UNIX shell:

cd ~
echo $SHELL
     #You need to be in a bash shell, so if this returns anything except "/bin/bash" ask your system administrator how you can get into bash
xmessage -center hello!
     #You need to have X11 forwarding activated. If this opens a little window to say Hello then you are OK, but if it says "Can't open display" then check (i) you did use "-X" in the options to log in on your ssh command and (ii) your terminal program (e.g. MobaXTerm, XQuartz) has been set up to accept X11 Forwarding.
cat ~/.bashrc
     #Check your .bashrc file and make sure that it has been set up correctly. For example, on JASMIN you need to have a PATH= command in there (described here) to get Cylc, Rose and FCM working.
cylc check-software
     #If Cylc is installed, this will give you a message saying "Core requirements: OK" (you don't need "Full-functionality": partial functionality is fine (e.g. you might be missing the PyGraphviz, Sphinx or PyGTK libraries, but this is OK); it'll also warn you if you are missing Python itself (you need vn>=2.6))
rose --version
     #Just check you don't get "command not found"
fcm --version
     #Just check you don't get "command not found" (it's OK if the locale is not set properly, e.g. "Setting locale failed")

EVEN IF ALL SEEM TO BE INSTALLED OK, your personal profile settings may not be correct for using JULES so please do anyway go through the installation links below to make sure your environment setup is OK and your MOSRS password has been correctly cached.

  • Install Cylc from GitHub following these steps
  • Install Rose from GitHub following these steps (inc. what goes in your ~/.metomi/rose.conf file, which each user needs to set up separately)
  • Install FCM from GitHub following these steps (includes caching your MOSRS password *** which is compulsory for all users before using JULES *** and what goes in your ~/.subversion/servers and ~/.metomi/fcm/keyword.cfg files, which each user needs to set up separately)
  • Install JULES itself following these steps (this includes the download command for getting hold of a particular version of JULES).


Once you have all of that installed, you're ready to actually use the model (!). Most likely you will wish to run JULES for a particular site or region. As explained here, this will involve assembling control files, driving data and ancillary data, which collectively are called a configuration for the run. Finally, take a note of the following Rose suite codes for the particular version of JULES you want to use (see here for code release details).


 Point run Loobos on JASMIN

Global run at 0.5° resolution (WFDEI data in 1D land-axis format) on the UKCEH linux box platform wllf00x

n.b. these suites require this dump file to run

Global run at 0.25° resolution (eartH2Observe data on 2D grid) on JASMIN
JULESvn5.1 u-bp696 
JULESvn5.2 u-am539 
JULESvn5.3 u-bf460 
JULESvn5.4 u-bp697 
JULESvn5.5 u-bp698 


(n.b. up to vn5.6 there was a bug in JULES: selecting output frac_fplain_lp with overbank inundation OFF caused a seg fault)



n.b. Loobos is an EXAMPLE, not a RECOMMENDED set of parameters for a JULES point run (see Example configurations here): for a best point run for a particular location, you need to modify the soil and other ancillary data appropriately.


** Apologies: this doesn't quite work yet (July 2021) **


** needs to run with Toby's branch vn6.0_hj and requires access to the LSPCEH workspace on JASMIN **

  • Now return to the PDF linked above for the next steps.