ACCESS single column model

The UM has the ability to run as a single column model. This can be useful for investigating physics options and for debugging code.

Met Office documentation is

An old (6.3) version is described by Greg Roff et al in

Charmaine Franklin et al used the UM vn7.1 SCM to investigate the effect of the PC2 cloud scheme in simulations of the TWP-ICE case,


For access 1.3, SCM, the build job on is vagzs. This is identical to the version on (saads). This job can be located by searching/filtering jxs599. The SCM model is run via an executable script (discussed below).

This SCM uses the ACCESS 1.3 configuration, including PC2 and CABLE. The UMUI build job is saads. This uses the branch This contains a few changes to make the SCM work with the standard 1.3 code branch (e.g. removing need for the OASIS library).

It also uses hand-edit ~access/umui_jobs/hand_edits/coupled/access_scm.ed to set the ACCESS preprocessor directive.


The SCM uses the full model namelists CNTLALL, CNTLATM, INITHIS, SIZES as well as its own namelist.scm that contains SCM specific options and the forcing data. The model ones need to be modified slightly because the SCM doesn’t include the aerosol scheme. Otherwise these have the same physics options as in our ACCESS1-3 runs.

INITHIS should only set VERT_LEV. SIZE should have only the NLSIZES namelist

The SCM specific file is a bit more of a problem. I’m not actually sure where the atmospheric forcing data in the version I’m using came from (it didn’t matter for my purposes). Possibly it was the GABLS Tumbarumba case. You should be able to find a more standard one somewhere and adapt it to CABLE (6 soil levels, 17 tiles). In this version I had to comment out a few namelist variables, so presumably it came from an earlier model version. In my file the soil temperatures and moisture are probably nowhere near being in balance.

All the data files and the executable are in raijin:~access/AccessModelExperimentLibrary/scm_access13.

Note that the SCM prepends the path in the dir_name file to 'namelist.scm' to get the location of the input namelist. Using '.' works if the file is in the current directory.

At vn7.3 the SCM produces text output files (direct netCDF came in vn7.5). These can be converted to netCDF using


(just run it to get a list of the options). The source code for this is in the access_tools repository,

runscm is a batch job that will run the model. However it can equally well be run interactively with a 10 day run taking only about 15s. When running interactively you must still set the UNIT80 and UNIT57 environment variables as in the runscm script. Run produces file cable_test.dat.

scm2nc cable_test.dat

As an example, this graph shows the 1.5m, surface and top soil temperatures from the test simulation (iris code for plot)


To validate your run, the output from your run can be compared to the output from a standard run using the cdo utility. In the following we assume you have converted your output to (as described above), and are in that directory.

module load cdo
cdo diff ~access/data/AccessModelExperimentLibrary/scm_access13/

If the outputs are the same, you will see similar output to the following:

cdo diff: Processed 4649280 values from 560 variables over 960 timesteps ( 11.37s )

Note however that small differences in the output files can arise due to differences in library versions. A simple check of their significance can be made by inspecting your data in ncview (and this is recommended anyway).

module load ncview

Look in particular at the ranges and patterns.

GA4.0 (vn8.2)

Job uahgs on accesscollab (owned by mrd599) builds a version of the SCM on raijin using the GA4.0 physics options. Note that the aerosols and river routing scheme must be turned off for the model to run correctly.

This case uses a TOGA namelist supplied by Ricky Wong from the Met Office (via Greg Roff). The model is reduced to 70 levels to match the forcing data. Input files and a prebuilt executable are in raijin:~access/AccessModelExperimentLibrary/scm8.2.

In this version, the UMUI can set some SCM parameters (name of input namelist and output file) from a panel in the model resolution and domain section. This gets written to the SCM_SET file. Files required from the processed job are CNTLALL, CNTLATM, SCM_SET, SHARED and SIZES. Note that these do not have to be modified at all (unlike earlier versions).

The run length is set with the namelist ndayin variable.

For direct netCDF output, in the &DIAGS section of the SCM namelist, set

   strm_format(1) = 4,

This example job uses an extra code branch that improves the efficiency of writing netCDF and adds a proper time variable, It is also possible to use text output (strm_format = 3) and scm2nc as with the older SCM. The resulting netCDF files use the same variable names but the model adds extra length 1 dimensions.

From scm2nc

        float tstar(time, single_level) ;
                tstar:long_name = "Surface temperature" ;
                tstar:units = "K" ;

From model

        float tstar(time, single_level_k, single_level_j, single_level_i) ;
                tstar:units = "K" ;
                tstar:long_name = "Surface temperature" ;

To run the model

A 10 day run takes about 20 s CPU time with direct netCDF output and 40 s with text output.

Area cloud fraction from the example simulation, (example code)

Standalone SCM

The standard SCM builds from the UMUI using FCM. It is also possible to set up a stand-alone version that builds from a regular makefile. This may be useful for running on a machine that doesn't have all the ACCESS infrastructure (e.g. the SCM builds/runs fine on any Linux system with a recent gfortran).

For ACCESS1.3, a standalone build is packaged in raijin:~access/AccessModelExperimentLibrary/scm_access13/scm_access13_standalone.tgz.

To build this on raijin, extract the file then

cd scm_access13_standalone
module load intel-fc
module load intel-cc
module load netcdf
make -f Makefile.scm

This creates an executable scm.exe. It should be simple to adapt this to other compilers (gfortran has been tested in the past).

For details on this contact Martin Dix.

If you would like to use land surface model CABLE version 2.0 or above in ACCESS1.3-SCM, the instruction is as follows:


        You need to be a member of group access and need to be given permission to access the Unified Model repository

 	module load netcdf/
        Intel compiler should have been loaded by default when you login
(Part A)  build the static library libcable: 	

        (1) svn co CABLE-2.0.1
        (2) cd CABLE-2.0.1/UM	

        (3) run: ./build.ksh  It will generate static library file libcable.a in ~/CABLE-AUX/UM 	
(Part B) compile ACCESS1.3-SCM:

        (2) cd ACCESS1.3-SCM-CABLE2-STANDALONE/lib

        (3) ln -s ~/CABLE-AUX/UM/libcable.a . 
        (4) cd ..

        (5) make -f Makefile.scm 	 	    

        (6) if step (5) progresses successfully, it should be able to generate scm.exe. Then cd test_run 	

        (7) ln -s ../scm.exe . 	

        (8) ./runscm

        Note that the veg parameter file will be picked up from cable.nml. 

If you have any corrections or comments for ACCESS1.3-SCM-CABLE2.0+, please contact climate_help@…

Last modified 4 years ago Last modified on Feb 3, 2015 4:34:33 PM

Attachments (2)

Download all attachments as: .zip