Daresbury Laboratory Earth-System Modelling Infrastructure library.
A small library to aid the creation of earth-system models. Currently supports two-dimensional, finite-difference models in Fortran.
The first version of this library was developed to support 2D finite- difference shallow-water models in the GOcean Project.
The finite_difference directory contains a Makefile which picks up
the compiler and associated flags from environment variables, e.g.:
export F90=mpif90 export F90FLAGS=-O2 export AR=ar
The compiler_setup directory contains gnu.sh which may be used
to set-up these environment variables in order to use the Gnu compiler:
. compiler_setup/gnu.sh
The fd_lib target builds the serial version of the library and the
dm_fd_lib target builds the distributed-memory (MPI) version. For
the latter you will of course need MPI installed.
The finite_difference/example directory contains a very simple example
of how to construct a model grid and associate fields with it.
The documentation is in the top-level doc directory and can be built
using Sphinx. Therefore, if you wish to build it you will need a
working Python installation with sphinx and sphinxfortran installed:
pip install sphinx sphinx-fortran
make latexpdf will build the PDF version of the documentation
(using latex and pdflatex) while make html builds the html
version.
TBD
dl_esm_inf incorporates the FortCL library (github.com/stfc/FortCL) as
a git sub-module. Obtaining the source of this submodule requires that
you either supply the --recursive flag to git clone or that
you subsequently do git submodule init and git submodule update. By default a stub version of this library is compiled so
that there are no dependencies on an OpenCL installation. The
addition of full OpenCL support to the dl_esm_inf library is the
subject of Issue #10 (github.com/stfc/issues/10) and is
currently a work in progress.