intro story D-Flow FM


D-Flow Flexible Mesh

D-Flow Flexible Mesh (D-Flow FM) is the new software engine for hydrodynamical simulations on unstructured grids in 1D-2D-3D. Together with the familiar curvilinear meshes from Delft3D 4, the unstructured grid can consist of triangles, pentagons (etc.) and 1D channel networks, all in one single mesh. It combines proven technology from the hydrodynamic engines of Delft3D 4 and SOBEK 2 and adds flexible administration, resulting in:

  • Easier 1D-2D-3D model coupling, intuitive setup of boundary conditions and meteorological forcings (amongst others).
  • More flexible 2D gridding in delta regions, river junctions, harbours, intertidal flats and more.
  • High performance by smart use of multicore architectures, and grid computing clusters.
An overview of the current developments can be found here.
The D-Flow FM - team would be delighted if you would participate in discussions on the generation of meshes, the specification of boundary conditions, the running of computations, and all kinds of other relevant topics. Feel free to share your smart questions and/or brilliant solutions! 


We have launched a new website (still under construction so expect continuous improvements) and a new forum dedicated to Delft3D Flexible Mesh.

Please follow this link to the new forum: 

Post your questions, issues, suggestions, difficulties related to our Delft3D Flexible Mesh Suite on the new forum.





Sub groups
D-Flow Flexible Mesh
Cohesive sediments & muddy systems


Message Boards


Anders Finn, modified 3 Years ago.


Youngling Posts: 6 Join Date: 10/28/16 Recent Posts
Devian Jessie here. I have been finding flags for all the module locations but I can't seem to resolve this error during make.

: Entering directory '/home/anders/delft3d/src/utils_lgpl/hyd_to_waq_part_lib'
Making install in packages
make[3]: Entering directory '/home/anders/delft3d/src/utils_lgpl/hyd_to_waq_part_lib/packages'
Making install in hyd_to_waq_part_lib
make[4]: Entering directory '/home/anders/delft3d/src/utils_lgpl/hyd_to_waq_part_lib/packages/hyd_to_waq_part_lib'
Making install in src
make[5]: Entering directory '/home/anders/delft3d/src/utils_lgpl/hyd_to_waq_part_lib/packages/hyd_to_waq_part_lib/src'
/bin/bash ../../../../../libtool  --tag=FC   --mode=compile mpif90  -I../../../../../utils_lgpl/deltares_common/packages/deltares_common/src -I../../../../../utils_lgpl/io_netcdf/packages/io_netcdf/src -I -DWITH_DELFTONLINE   -g -O2 -ffree-line-length-none -cpp -c -o wrwaqgeomcl.lo  wrwaqgeomcl.f90
libtool: compile:  mpif90 -I../../../../../utils_lgpl/deltares_common/packages/deltares_common/src -I../../../../../utils_lgpl/io_netcdf/packages/io_netcdf/src -I -DWITH_DELFTONLINE -g -O2 -ffree-line-length-none -cpp -c wrwaqgeomcl.f90  -fPIC -o .libs/wrwaqgeomcl.o
Warning: Nonexistent include directory "-DWITH_DELFTONLINE"

    use netcdf
Fatal Error: Can't open module file 'netcdf.mod' for reading at (1): No such file or directory

Now, I see two issues there. One with the issue that io_netcdf is missing a includes directory and that it can't find netcdf.mod
Adri Mourits, modified 3 Years ago.

RE: netcdf.mod

Yoda Posts: 1224 Join Date: 1/3/11 Recent Posts
Hi Anders,

You have to prepare a fitting NetCDF library yourself, see the prerequisites. Be sure that it is compiled with exactly the same compilers as you use for compiling the Delft3D code. The related .mod-files must be available too.

After preparing that: be sure that Delft3D can find the related libraries/module files. If they are not on the default locations (/usr/lib64 etc), you have to define the correct environment parameters pointing to them. Check, as an example, the script "src/" (search for netcdf).

This should resolve the error.


Anders Finn, modified 3 Years ago.

RE: netcdf.mod

Youngling Posts: 6 Join Date: 10/28/16 Recent Posts
ok, makes sense I need the exact netcdf. now here's my next hitch, to compile that netcdf I need HDF5 1.8.1. . That configures just fine but I get the error
zip_perf.c:593:36: warning: to be safe all intermediate pointers in cast from ‘char **’ to ‘const char **’ must be ‘const’ qualified [-Wcast-qual]
In file included from /usr/include/fcntl.h:252:0,
                 from zip_perf.c:29:
In function ‘open’,
    inlined from ‘main’ at zip_perf.c:548:22:
/usr/include/x86_64-linux-gnu/bits/fcntl2.h:51:24: error: call to ‘__open_missing_mode’ declared with attribute error: open with O_CREAT in second argument needs 3 arguments
make[2]: *** [zip_perf.o] Error 1
make[2]: Leaving directory `/home/anders/netcdf-4.1.3/hdf5-1.8.1/perform'
make[1]: *** [all-local] Error 2
make[1]: Leaving directory `/home/anders/netcdf-4.1.3/hdf5-1.8.1'
make: *** [all-recursive] Error 1

This is my config line and the config results. To me it looks fine and maybe I have another problem with the version of whatever fcntl2.h is from??

$ ./configure --enable-shared --enable-fortran --enable-gxx --enable-static --enable-static-exec


General Information:
           HDF5 Version: 1.8.1
          Configured on: Sat Nov  5 13:37:09 PDT 2016
          Configured by: anders@flow
         Configure mode: production
            Host system: x86_64-unknown-linux-gnu
          Uname information: Linux flow 3.13.0-32-generic #57~precise1-Ubuntu SMP Tue Jul 15 03:51:20 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
               Byte sex: little-endian
           Parallel support: no
         Installation point: /home/anders/netcdf-4.1.3/hdf5-1.8.1/hdf5
               Compiler: /usr/bin/gcc (gcc-4.6.3)
        Extra libraries:   -lz -lm
               Archiver: ar
             Ranlib: ranlib
          Debugged Packages:
            API Tracing: no

Compiling Options:
               Compilation Mode: production
                     C Compiler: /usr/bin/gcc (gcc-4.6.3)
           CFLAGS/H5_CFLAGS: /  -ansi -pedantic -Wall -W -Wundef -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wcast-align -Wwrite-strings -Wconversion -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Wnested-externs -Winline -O3 -fomit-frame-pointer -finline-functions
                     Debug Mode:
               Shared Libraries: yes
               Static Libraries: yes
  Statically Linked Executables: yes
Default Public Symbols Version: v18
With Deprecated Public Symbols: yes
                        Tracing: no
Clear file buffers before write: yes
           Using memory checker: no
   Optimization Instrumentation: no

                        Fortran: yes
              Fortran Compiler:  /usr/bin/gfortran -I.
                            C++: yes
                  C++ Compiler:  g++

                        dmalloc: no
         Function Stack Tracing: no
                           GPFS: no
      Strict File Format Checks: no
            Default API Mapping: v18
         I/O filters (external): deflate(zlib)
         I/O filters (internal): shuffle,fletcher32,nbit,scaleoffset
Linux Large File Support (LFS): yes
                            MPE: no
                  Parallel HDF5: no
                     Direct VFD: no
                   Threadsafety: no
             High Level library: yes
Adri Mourits, modified 3 Years ago.

RE: netcdf.mod

Yoda Posts: 1224 Join Date: 1/3/11 Recent Posts
Hi Anders,

I did not build NetCDF4 myself on Linux. But a colleague of me did. I added his findings to a branch. May be this document will help:

Alternatively: Up to now, you can also compile Delft3D with NetCDF3. That might simplify life.