access_RegionalClimateModelBoundaryConditions - ACCESS-NRI/accessdev-Trac-archive GitHub Wiki

Using makebc to generate boundary conditions for the regional climate model

The UM can save lateral boundary conditions for specified regions. However in the past CSIRO has saved global fields so that downscaled models can be later run over any region required. Richard Jones confirmed that this is also the practice for regional climate modelling at the Met Office.

Wilfran Moufouma-Okia of the Met Office sent basis files for a sample RegCM experiment and for a global model run to generate boundary conditions.

The makebc program is documented in UMDP 54, e.g. https://nf.nci.org.au/facilities/software/UM/7.8/umdoc_system/UM_docs/papers/pdf/p0f54.pdf. This says that the BCs can be generated from dump files or fields files. The dump files hold everything so it wouldn't be reasonable to save these 6 hourly. The STASH section of the UMUI has a set of package switches (Set Package Switches in the Diagnostics Menu of the STASH panel). In Wilfran's job this includes Switch E with the description "Standard prognostics for LBC creation (optional but very expensive)!"

Note that the package switches are a property of the job rather than the UMUI itself.

Variables included in this package are

STASH ID Name
2 U COMPNT OF WIND AFTER TIMESTEP
3 V COMPNT OF WIND AFTER TIMESTEP
4 THETA AFTER TIMESTEP
10 SPECIFIC HUMIDITY AFTER TIMESTEP
12 QCF AFTER TIMESTEP
150 W COMPNT OF WIND AFTER TIMESTEP
253 DENSITYRR AFTER TIMESTEP
254 QCL AFTER TIMESTEP
255 EXNER PRESSURE (RHO) AFTER TIMESTEP
256 ADVECTED U CMPT OF WIND AFTER TS
257 ADVECTED V CMPT OF WIND AFTER TS
258 ADVECTED W CMPT OF WIND AFTER TS

It's also necessary to save the orography (33 OROGRAPHY (/STRAT LOWER BC)), though this is only required at the first archive time. This is set in my job xakba. These fields are saved every 6 hours with time profile T6H and usage profile UPH.

For the first test I specified no packing and a one day N96 38L file took about 530 MB (written as file xakba.pp7). With standard climate packing (option 5) it was 270 MB and with operational packing (option 1) 87 MB. Operational packing saves u, v and theta with a precision of 0.125 which may not be sufficient? See UMDataFiles for a description of the packing. It's possible to set the precision of fields individually. Packing options are set per file in UMUI window Sub-Model Independent -> Post Processing -> Initialization and processing of mean and standard PP files.

makebc is part of the standard model source code repository. If you extract the model code, it's in src/UM/utility/makebc, or visible in the browser at https://access-svn.nci.org.au/trac/um/browser/trunk/src/utility/makebc. It's been built for several models versions on vayu. It's worth using the most recent available because there have been some optimisations (the makebc version doesn't need to be the same as the model version) so try /projects/access/umdir/vn8.2/linux/utils/makebc.

makebc requires a namelist file, described in https://nf.nci.org.au/facilities/software/UM/7.8/umdoc_system/UM_docs/papers/pdf/p0f54.pdf.

My namelist to generate LBCs for the Australian region grid was

&DUMP2BOUND
 N_DUMPS = 1,NHOURS=6,UM_VERSN=603,no_lams=1,sub_hr_int=0,lcal360=.true.
 &END
 &INTFCNSTA
 LBC_STREAM_A=1,
 LBC_ND=         1,
 INTF_PACK=1,
 A_INTF_START_HR=0,
 A_INTF_END_HR=  24,
 A_INTF_FREQ_HR= 6,
 A_INTF_FREQ_MN= 0,
 A_INTF_FREQ_SC= 0,
 INTF_EWSPACE=   0.375000,
 INTF_NSSPACE=   0.375000,
 INTF_FIRSTLAT=     -65.0,
 INTF_FIRSTLONG=     65.0,
 INTF_POLELAT=       90.0,
 INTF_POLELONG=     180.0,
 INTF_ROW_LENGTH=320,
 INTF_P_ROWS=    220,
 INTF_P_LEVELS=  38,
 INTF_Q_LEVELS=  38,
 INTF_TR_LEVELS= 0,
 INTFWIDTHA=     8,
 INTF_EXTHALO_EW=5,
 INTF_EXTHALO_NS=5,
 INTF_VERTLEVS=  '/cs/datastore/csdar/access/umdir/vn6.3/ctldata/vert/vertlevs_G3', 
 LBC_Q_MIN=2.500e-06,
 &END

Note that the lcal360 switch must be set to lcal360=.true. for climate runs using the 360 day calendar.

Usage is

% $UMDIR/vn8.2/normal/utils/makebc -n makebc.nml -i xakba.pp7 -ow aust.lbc

The resulting file aust.lbc looks plausible when plotted with xconv.