WRFV3
Published:
Notes: this are all installed in the system in system opensuse 42.2
Install libraries:
libibverbs and librdmacm
sudo zypper install libibverbs-devel sudo zypper install librdmacm-devel
NETCDF
please see NETCDF4
Compile WRFV3.6.1 nmm
Configure
export WRF_NMM_CORE=1
export WRF_NMM_NEST=1
./configure
WRFV3 configure : choose PGI PGCC dmpar 54.
Actually PGI GCC dmpar will be also successful.
For using GCC, unset C_INCLUDE_PATH if it includes /usr/include which pgcc needs to set to find some .h files. However, it will conflict with the path that gcc finds .h files
revise or check “configure.wrf”
DM_CC =mpicc -DMPI2_SUPPORT
FCOPTIM = -O2 -fastsse -Mvect=noaltcode -Msmartalloc -Mprefetch=distance:8 -Mfprelaxed # -Minfo=all =Mneginfo=all
FCDEBUG = -g $(FCNOOPT) -C -Ktrap=fp -traceback
Remark: suggest “-O2 -fastsse” is most important for pgi16.10 to run wrf.exe after compiling successful. This is for nmm only, the new version ARW 3.8.1 is ok with FCOPTIM = -O3
- In configuring wrf, the default lib path of hdf5 is hdf5/lib, so we revise the lib path of hdf5 to /hdf5/lib64 if the later one is the correct path.
Compile
./compile nmm_real >& compile_nmm.log &
tail -f compile_nmm.log
Remark: if compile with errors, use the following to clean all . Then configure and compile again.
./clean -a
Install WRF3.8.1 ARW
export WRF_EM_CORE=1 export WRF_EM_NEST=1 export MP_STACK_SIZE=64000000 ./compile em_real >& compile_em.log & tail -f compile_em.log
Remark: some notices are same to WRF3.6.1 nmm, please see the above section.
Install WPS
Configure
./configure
- revise “configure.wps”
DM_CC =mpicc -DMPI2_SUPPORT
Compile
./compile >& compile_wps.log &
tail -f compile_wps.log
Errors
1). caddts_ undeclared : sys/types.h will declare caddts_, and it is located at /usr/local/sys/types.h
Sol: set environment:
export C_INCLUDE_PATH=/usr/include:$C_INCLUDE_PATH