EarthVM is a lightweight parallel framework for running and coupling weather, ocean, and wave models.
Set these environment variables before building ESMF:
export ESMF_OS=Linux
export ESMF_DIR=$(pwd)/esmf-8.0.0
export ESMF_COMPILER=gfortran # change to other compiler if needed
export ESMF_ABI=64
export ESMF_BOPT=O
export ESMF_COMM=openmpi # change to other MPI library if needed
export ESMF_PTHREADS=OFF
export ESMF_OPENMP=OFF
This will download esmf-8.0.0 and print the information about build parameters:
make download_esmf
cd esmf
make info
make
make check
cd wrf-4.2-1
./configure
./compile em_real
make download_umwm
make umwm
make hycom
make
make test
- Building with Intel compilers requires ESMF <= v8.0.0 due to unsupported C++ features.
- Building WRF on ppc64 with at-12.0 (IBM Advanced Toolchain)
requires passing
-Uvector
to cpp. - To build ESMF shared libraries with XL on IBM Power9, the following
must be added to
build_config/Linux.xlf.default/build_rules.mk
:
ESMF_SL_LIBS_TO_MAKE = libesmf
ESMF_SL_SUFFIX = so
ESMF_SL_LIBLINKER = mpicxx
ESMF_SL_LIBOPTS = -qpic -shared
ESMF_SL_LIBLIBS =
You can download a sample output of a high-resolution EarthVM simulation of Hurricane Dorian (2019) from this Zenodo repository.
EarthVM development was supported by the National Science Foundation awards 1745384 and 2006295.