Coupling Environment Variables

Introduction

Environment variables are set and used in a variety of places

For most variables it's important to ensure that the junior UM doesn't use the same settings at the senior UM, so most variables need duplicates - where the second version is used by the junior UM.

This page should list most of the enviroment variables used, while how the ancillary files are setup is discussed in ancillary setup files.

Listing the environment variables

I began by changing individual environment variables where I found that two environment variables environment variables were required (one for the senior UM and one for the junior UM). However, most of the environment variables require changing, so I've decided it's best to change almost all of them except the directories and the flags. The environment variables which haven't been changed are

Variable Comments
AUTOMATIC_PP (seems to generally be false)
DATAM Run directory (not sure was difference is to DATAW)
DATAW Run directory (not sure was difference is to DATAM)
E_ABORT CURRENTLY HERE, NOT SURE WHERE IT SHOULD BE
LONGOUTPUT Flag to indicate if extra output should be shown (I think)
NAMCOUP_HOME Directory with the namcouple file
NAMCOUP_STUB Start of the namcouple filename
OPERATIONAL
PRINT_STATUS Switch for printing files
PURGEHIST Flag to delete old history files
RCF_DEL_MPP_OUTPUT Flag to indicate if reconfiguration output for each PE in pe_output directory should be deleted
RCMASTER Return code, zero if it's all still working
RMP_HOME Directory with the grid remapping
RUN_ATMOS Determine if main run or reconfiguration should be run. For coupled job, we only have one main run
RUNTIME One I've added, for the run time to enter into namcouple file
SAVECORE True to save any core file produced
TOTAL_PE_REQ The total PEs required for coupled job
UM_DATAM Run directory (not sure was difference is to DATAM/W)
UM_DEL_MPP_OUTPUT Flag to indicate if output from main run for each PE in pe_output directory should be deleted
UM_START_MAIL In UMScr_TopLevel_cpl indicates job has started
UM_TMPDIR The scratch directory
USE_GRIDS_DIRECT True if linking to input netcdf files containing our grid, mask and area definitions

The environment variables with two versions are

Variable 2nd version Comments
AINITIAL AINITIAL2
AIRCREMS AIRCREMS2
ALABCIN1 & ALABCIN2 ALABCIN1_2 & ALABCIN2_2
ALABCOU<number> ALABCOU<number>_2
ANCILMSTR ANCILMSTR2
APSTMP1 APSTMP1_2 Alternate partial sum (period 1)
APSUM1 APSUM1_2 Partial sum (period 1 atmos)
ARCLBIOG ARCLBIOG2
ARCLBIOM ARCLBIOM2
ARCLBLCK ARCLBLCK2
ARCLDLTA ARCLDLTA2
ARCLDUST ARCLDUST2
ARCLOCFF ARCLOCFF2
ARCLSSLT ARCLSSLT2
ARCLSULP ARCLSULP2
ASTART ASTART2
ASWAP ASWAP Temp file for coupled model swaps (A)
ATM_CPL_TYPE ATM_CPL_TYPE2
ATMANL ATMANL2
ATMOS_RESUB_FILE ATMOS_RESUB_FILE2 Name of file holding auto-resubmission flag
ATRACER ATRACER2
BAS_IND BAS_IND2 Ocean basin indices file
BIOMASS BIOMASS2
CACHE1, CACHE2 & CACHED CACHE1_2, CACHE2_2 & CACHED2 Temporary files for memory cache
CARIOLO3 CARIOLO3_2
CHEMOXID CHEMOXID2
CNTLALL CNTLALL2 Location of *.cntlall file in /scratch
CNTLATM CNTLATM2 Location of *.cntlatm file in /scratch
CNTLGEN CNTLGEN2 Location of *.cntlgen file in /scratch
CO2EMIS CO2EMIS2
COREDUMP COREDUMP2 Filename that core file is saved to (full path)
CURNTOUT CURNTOUT2
CURNTIN CURNTIN2
CXBKGERR CXBKGERR2
DISTURB DISTURB2
DMSCONC DMSCONC2
DSOILTMP DSOILTMP2
DUSTSOIL DUSTSOIL2
EXITSTAT EXISTSTAT2 Location of *.exstat file in /scratch
FLUME_IOS_NPROC FLUME_IOS_NPROC2 Set the number of PEs for IO servers
ERRFLAG ERRFLAG2 File containing progress information of code (I think)
EXTRAEMS EXTRAEMS2
FAILPROC FAILPROC2 Failed server requests file *.failure
FILEENV FILEENV2 Location of *.fileenv file in /scratch
FLXCROUT FLXCROUT2
FOAMOUT1 & FOAMOUT2 FOAMOUT1_2 & FOAMOUT2_2
FRACINIT FRACINIT2
GENLAND GENLAND2
GENSEA GENSEA2
HKFILE HKFILE2 Location of *.hkfile file
ICECALVE ICECALVE2
ICEFOUT ICEFOUT2
IDEALISE IDEALISE2
INITHIS INITHIS2 Location of *.inithis file in /scratch
IOSCNTL IOSCNTL2 Location of *.ioscntl file in /scratch
JOBSCRIPT JOBSCRIPT2 Job to level script, *.job
LANDFRAC LANDFRAC2
LISTFILE LISTFILE2 *.list file
LOADMODULE LOADMODULE2 The atmosphere executables
LOADRECON LOADRECON2 The reconfiguration executables
LOCKFILE LOCKFILE2
LWSPECTD LWSPECTD2
MASK MASK2
MOSOUT MOSOUT2
MURKFILE MURKFILE2
NAMELIST NAMELIST2 Location of *.namelists file in /scratch
OCNANL OCNANL2
OCFFEMIS OCFFEMIS2
OROG OROG2
OUTPUT OUTPUT_2 Main output file when running code
OUTPUT2 OUTPUT2_2 Secondary output file when running code
OZONE OZONE2
PP<number> PP<number>_2
PPCNTL PPCNTL2 Location of *.ppcntl file in /scratch
PPMBC PPMBC2
PPSCREEN PPSCREEN2
PPSMC PPSMC2
PPVAR PPVAR2
PPXREFU PPXREFU2 Root for user STASHmaster files
RCF_ATMOS RCF_ATMOS2 Determine if either reconfiguration should be run
RCF_MPP_OUTPUT RCF_MPP_OUTPUT2
RCF_NPES RCF_NPES Number of PE in reconfiguration
RCF_NPROCX RCF_NPROCX2 PEs in east-west direction
RCF_NPROCY RCF_NPROCY2 PEs in north-south direction
RCF_STDOUT_FILE RCF_STDOUT_FILE2 Output file for each PE to pe_output directory
RECONA RECONA2 Location of *.recona file in /scratch
RECONTMP RECONTMP2
RESUB_FILE RESUB_FILE2 File holding job for resubmit (*.resub)
RFMOUT RFMOUT2
RIVCHAN RIVCHAN2
RIVER2A RIVER2A2
RIVSTOR RIVSTOR2
RPSEED RPSEED2
RUNID RUNID2 Also a third version RUNID3, which is ${RUNID}_${RUNID2}
SHARED SHARED2 Location of *.shared file in /scratch
SHARED_NLIST SHARED_NLIST2 Location of *.shared file in /scratch
SICEIN SICEIN2
SICEOUT SICEOUT2
SIZES SIZES2 Location of *.sizes file in /scratch
SMCSNOWD SMCSNOWD2
SO2NATEM SO2NATEM2
SOILTYPE SOILTYPE2
SOOTEMIS SOOTEMIS2
SSTIN SSTIN2
SSTOUT SSTOUT2
SSU SSU2
STASH STASH2 Location of *.stashc file in /scratch
STARTDUMPS STARTDUMPS2
STASHMSTR STASHMSTR2
STASHMSTR_IN STASHMSTR_IN2
STRATEMS STRATEMS2
SULPEMIS SULPEMIS2
SURFEMIS SURFEMIS2
SURGEOU1 SURGEOU1_2
SURGEOUT SURGEOUT2
SWSPECTD SWSPECTD2
TOPMEAN TOPMEAN2
TOPSTDEV TOPSTDEV2
TRANSP TRANSP2
THIST THIST2 Copy of the $HIST history file (temporary file)
UANCLMSTR UANCLMSTR2 Root for User ANCILmaster files
UARSOUT1 & UARSOUT2 UARSOUT1_2 & UARSOUT2_2
UKCA_EMISS UKCA_EMISS2
UKCAACLW UKCAACLW2
UKCAACSW UKCAACSW2
UKCACRLW UKCACRLW2
UKCAANSW UKCAANSW2
UKCAANLW UKCAANLW2
UKCACRSW UKCACRSW2
UKCAPREC UKCAPREC2
UM_COMMS_FILE UM_COMMS_FILE2 File for communication with qsserver
UM_ATMOS UM_ATMOS2 Is true/false and determines whether atmosphere code (reconfiguration or main) is run at all
UM_MPP_OUTPUT UM_MPP_OUTPUT2
UM_NPES UM_NPES2 Number of PEs for atmosphere
UM_STDOUT_FILE UM_STDOUT_FILE2 Output file for each PE to pe_output directory
UM_THREAD_LEVEL UM_THREAD_LEVEL2 Determine UM threads are MULTIPLE or something else
UMRUN_OUTPUT UMRUN_OUTPUT2
UMUINAMELISTS UMUINAMELISTS2 Namelist contents from UMUI (*.umui.nl)
UNIT<unit number> UNIT<unit number>_2
USRANCIL USRANCIL2
USRMULTI USRMULTI2
USTSHMSTR USTSHMSTR2 User STASHmaster (Recon)
VEGINIT VEGINIT2
VERT_LEV VERT_LEV2
WFOUT WFOUT2
WLABCOU<number> WLABCOU<number>_2
XHIST XHIST2 Location of *.xhist history file in /scratch