Install your own WPS

Updated: 18 October 2023

A variant of WRF must be compiled prior to WPS.
(WPS of the same major version as WRF is recommended.)


1. Load required modules and set environment variables

Paste the below lines into your terminal. Don’t forget to specify the path to your local WRF directory, i.e., WRF_DIR.

module purge module load cpeIntel/23.09 module load cray-hdf5-parallel/1.12.2.7 module load cray-netcdf-hdf5parallel/4.9.0.7 module load cray-parallel-netcdf/1.12.3.7 module load libpng/1.6.39-cpeIntel-23.09 module load JasPer/1.900.1-cpeIntel-23.09 export WRF_DIR=../WRF # Path to WRF directory *** {USER EDIT} *** export NETCDF=${CRAY_NETCDF_HDF5PARALLEL_PREFIX} export NETCDFPAR=${CRAY_NETCDF_HDF5PARALLEL_PREFIX} export PNETCDF=${CRAY_PARALLEL_NETCDF_PREFIX} export HDF5=${CRAY_HDF5_PARALLEL_PREFIX} export JASPERINC=${EBROOTJASPER}/include # (Optional) export JASPERLIB=${EBROOTJASPER}/lib # (Optional) ### Common mistake :: insert spaces before or after =

2. Download WPS source code

wget https://github.com/wrf-model/WPS/archive/refs/tags/v4.5.tar.gz tar xzf v4.5.tar.gz mv WPS-4.5 WPS

For older version, check the WPS stable branches and releases on the GitHub repository and its official website.

3. Run ./configure

cd WPS ./configure # Type 39, then press Enter <-- Cray XC CLE/Linux x86_64, Intel compiler (dmpar)

4. Edit configure.wps

  • Open ./configure.wps using a text editor such as vi

    • Add -L$(EBROOTLIBPNG)/lib between -ljasper and -lpng

    • Append -Wno-implicit-function-declaration -Wno-implicit-int to cc.

If WRF was compiled with sm+dm option, also append -qopenmp to WRF_LIB.

5. Compile WPS

6. Check

7. Example Job submission script


Contact Us
ThaiSC support service : thaisc-support@nstda.or.th