Difference between revisions of "Delft3D Configuration"

From UFRC
Jump to navigation Jump to search
Line 21: Line 21:
 
this is the safest way cmake find the dependencies)
 
this is the safest way cmake find the dependencies)
  
  export PKG_CONFIG_PATH="/apps/intel/2021.0.166/openmpi/4.1.5/netcdf-f/4.6.1/lib/pkgconfig:/apps/intel/2020.0.166/open
+
  export PKG_CONFIG_PATH="/apps/intel/2021.0.166/openmpi/4.1.5/netcdf-f/4.6.1/lib/pkgconfig:
mpi/4.1.5/netcdf-c/4.9.2/lib/pkgconfig:/apps/intel/2020.0.166/openmpi/4.1.5/petsc/3.19.4/lib/pkgconfig:
+
/apps/intel/2020.0.166/openmpi/4.1.5/netcdf-c/4.9.2/lib/pkgconfig:
  /apps/intel/2020.0.166/proj/9.4.0/lib64/pkgconfig:/apps/intel/2020.0.166/sqlite3/3.45.3/lib/pkgconfig:/apps/gcc/12.2.
+
/apps/intel/2020.0.166/openmpi/4.1.5/petsc/3.19.4/lib/pkgconfig:
0/gdal/3.9.0/lib64/pkgconfig:/apps/intel/2020.0.166/metis/5.2.1/lib/pkgconfig
+
  /apps/intel/2020.0.166/proj/9.4.0/lib64/pkgconfig:
 +
/apps/intel/2020.0.166/sqlite3/3.45.3/lib/pkgconfig:
 +
/apps/gcc/12.2.0/gdal/3.9.0/lib64/pkgconfig:
 +
/apps/intel/2020.0.166/metis/5.2.1/lib/pkgconfig
 +
 
 +
cd  delft3d-main
 +
./build.sh  delft3d4
 +
(use ../build.sh -h for available options).
  
cd  delft3d-main
 
./build.sh  delft3d4
 
(use ../build.sh -h for available options).
 
 
This suppose compile and install the software in delft3d4/install {bin,lib,share)
 
This suppose compile and install the software in delft3d4/install {bin,lib,share)
 
But this does not quite work. When it fails,
 
But this does not quite work. When it fails,
Line 42: Line 46:
 
the current installation. After running the python scripts
 
the current installation. After running the python scripts
  
cd build_delft3d4
+
cd build_delft3d4
make
+
make
 
+
make install
After make is complete
 
type "make install"
 
  
All of these step are scripted in Build_delft.sh and  delft_compile.sh (courtesy of Stefano Biondi "Biondi, Stefano"
+
All of these steps are scripted in Build_delft.sh and  delft_compile.sh (courtesy of Stefano Biondi "Biondi, Stefano"
 
<stefano.biondi@ufl.edu>)
 
<stefano.biondi@ufl.edu>)
  
 
If successful, bin, lib, and share directories will be installed in your installation prefix.  
 
If successful, bin, lib, and share directories will be installed in your installation prefix.  
 
Setup the local module environment as described in https://help.rc.ufl.edu/doc/Modules
 
Setup the local module environment as described in https://help.rc.ufl.edu/doc/Modules

Revision as of 14:59, 17 June 2024

If you are interested in installing Delft3D locally to accommodate custom changes to the Delft3D base source, you may use the following procedure.

Currently, Delft3D can be successfully installed only with the Intel suite of compilers. GCC installation requires extensive changes to source code to make it adhere to F90 standard (GCC compiler suite expects strict adherence to the standard).

The outline given below is tested on HPG. However, please refer to https://oss.deltares.nl/web/delft3d/get-started for details.

Clone the repository: svn checkout https://svn.oss.deltares.nl/repos/delft3d/tags/delft3d4/142586 delft3d_repository (The number 142586 is the commit. The current version of delft3D is 4.06.01 (svn checkout https://svn.oss.deltares.nl/repos/delft3d/tags/delft3d4/142586 delft3d_repository) Note: svn is accessible on HPG by module load ubuntu

Set up the installation environment (as of 04/17/2004)

Load the following Modules:

 1) ufrc               4) metis/5.2.1      7) petsc/3.19.4   10) apptainer/1.3.1
 2) intel/2020.0.166   5) netcdf-c/4.9.2   8) openssl/3.3.0  11) ubuntu/22.04
 3) openmpi/4.1.5      6) netcdf-f/4.6.1   9) proj/9.4.0     12) cmake/3.26.4

Set the PKG_CONFIG_PATH to (there are no module files for a few of the dependencies and this is the safest way cmake find the dependencies)

export PKG_CONFIG_PATH="/apps/intel/2021.0.166/openmpi/4.1.5/netcdf-f/4.6.1/lib/pkgconfig:
/apps/intel/2020.0.166/openmpi/4.1.5/netcdf-c/4.9.2/lib/pkgconfig:
/apps/intel/2020.0.166/openmpi/4.1.5/petsc/3.19.4/lib/pkgconfig:
/apps/intel/2020.0.166/proj/9.4.0/lib64/pkgconfig:
/apps/intel/2020.0.166/sqlite3/3.45.3/lib/pkgconfig:
/apps/gcc/12.2.0/gdal/3.9.0/lib64/pkgconfig:
/apps/intel/2020.0.166/metis/5.2.1/lib/pkgconfig
cd  delft3d-main
./build.sh  delft3d4
(use ../build.sh -h for available options).

This suppose compile and install the software in delft3d4/install {bin,lib,share) But this does not quite work. When it fails,

copy the two python files

    1. query_add.py
    2. query_replace.py

from /dist/apps/delft3d

Before running the scripts change the base_dir variable in each script to point to the current installation. After running the python scripts

cd build_delft3d4
make
make install

All of these steps are scripted in Build_delft.sh and delft_compile.sh (courtesy of Stefano Biondi "Biondi, Stefano" <stefano.biondi@ufl.edu>)

If successful, bin, lib, and share directories will be installed in your installation prefix. Setup the local module environment as described in https://help.rc.ufl.edu/doc/Modules