93 | | which runs the compile and link phases of the build, using 4 processors (-j 4), with verbose output (-vv) based on the configuration file in cfg/oifs.cfg (the -f option) (see the FCM documentation for more options for the fcm make command). |
| 95 | this runs the compile and link phases of the build, using 4 processors (-j 4), with verbose output (-vv) based on the configuration file in cfg/oifs.cfg (the argument of -f option) (see the FCM documentation for more options for the fcm make command). This may take some time. |
| 96 | |
| 97 | The executable, currently called master.exe, will be in make/opt/oifs/bin. |
| 98 | |
| 99 | === Getting data to run the model === |
| 100 | |
| 101 | The source for data is Glenn Carver at ECMWF. Glenn can provide start data for configurations at several resolutions and for various times. We have several jobs available for model testing at t159, t511 and t1279 resolution. Each job comes with data required to start the model, a namelist with a set of model parameters, a PBS script set up for a "standard" run and an example trace output file. We will give a description of the PBS script used to submit jobs to the computer nodes. |
| 102 | |
| 103 | {{{ |
| 104 | #!/bin/bash --login |
| 105 | # |
| 106 | # Jobname |
| 107 | #PBS -N openifs |
| 108 | # Total no. of tasks (MPIxOpenMP) for job |
| 109 | #PBS -l mppwidth=1024 |
| 110 | # No. of tasks per node (1-32) |
| 111 | #PBS -l mppnppn=32 |
| 112 | # Time for the job |
| 113 | #PBS -l walltime=00:25:00 |
| 114 | # Account |
| 115 | #PBS -A n02-cms |
| 116 | # Squash output & error output together |
| 117 | #PBS -j oe |
| 118 | # Mail options |
| 119 | #PBS -M g.m.s.lister@reading.ac.uk |
| 120 | #PBS -m ae |
| 121 | |
| 122 | |
| 123 | # Set environment |
| 124 | source $HOME/oifs.setup |
| 125 | |
| 126 | set -x |
| 127 | |
| 128 | # Make sure any symbolic links are resolved to absolute path |
| 129 | export PBS_O_WORKDIR=$(readlink -f $PBS_O_WORKDIR) |
| 130 | |
| 131 | # Chnage to the directory the job was submitted from |
| 132 | cd $PBS_O_WORKDIR |
| 133 | |
| 134 | # Root directory of OpenIFS |
| 135 | #export OIFS_HOME=$HOME/oifs38r1v01 |
| 136 | # make sure correct branch is active |
| 137 | #export OIFS_HOME=$HOME/git/openifs |
| 138 | export OIFS_HOME=$HOME/oifs_extract/extract/oifs |
| 139 | |
| 140 | # Set the GRIB_SAMPLES_PATH to your installation |
| 141 | # set DEFINITION_PATH so grib_api can find boot.def |
| 142 | # set OIFS_GRIB_API_DIR to point to local installation |
| 143 | export GRIB_SAMPLES_PATH=$GRIB_API_PATH/share/grib_api/ifs_samples/grib1_mlgrib2 |
| 144 | export GRIB_DEFINITION_PATH=$GRIB_API_PATH/share/grib_api/definitions |
| 145 | |
| 146 | # use assign statement to read f77 unformatted files as big-endian |
| 147 | # as model was not compiled with -h byteswapio |
| 148 | export FILENV=$PBS_O_WORKDIR/.myassign |
| 149 | assign -N swap_endian g:su |
| 150 | |
| 151 | # Run model |
| 152 | EXPID=fw13 |
| 153 | NPROC=128 |
| 154 | NTHREADS=8 |
| 155 | RUN=6 |
| 156 | TSTEP=600 |
| 157 | MASTER=$OIFS_HOME/make/opt/oifs/bin/master.exe |
| 158 | NAMELIST=ecmwf/$EXPID.namelistfc |
| 159 | |
| 160 | /work/n02/n02/emgdc/oifs/ifs_run.sh -m $MASTER -r 511 -e $EXPID -s $TSTEP -n $NPROC \ |
| 161 | -t $NTHREADS -f d1 -x $RUN -l $NAMELIST |
| 162 | |
| 163 | exit 0 |
| 164 | }}} |