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: 
/web/delft3dfm/forum

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

=======================================================

** PLEASE TAG YOUR POST! **

 

 

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

 


Message Boards

Compile issue on CentOS 5.4

RP
Rafael Pimentel, modified 8 Years ago.

Compile issue on CentOS 5.4

Youngling Posts: 8 Join Date: 10/20/11 Recent Posts
Hello,

I'm trying to compile Delft3d on Linux (CentOS 5.4 64 bits), but it prompts the following error message (with both methods: autogen.sh and build.sh):

Fatal Error: Reading module globaldata at line 15 column 37: Expected integer
make[6]: *** [initdfparall.lo] Error 1
make[6]: Leaving directory `/home/user/delft3d/delft3d_5.00.10/src/engines_gpl/flow2d3d/packages/data/src/parallel_mpi'
make[5]: *** [install-recursive] Error 1

Previously, I had to tweak one file in order to compile: "utils_lgpl/delftonline/src/dolcli/Makefile.am". I got the following error: "automake does not support AM_YFLAGS being defined conditionally", so I moved the "end if" before the line starting with INCLUDES.

My environment is the following:

CentOS 5.4 64 bits
Delft3D 5.00.10 tag
GNU Autoconf 2.59
GNU Automake 1.9.6
GNU Libtool 2.2.6b (no newer version available for CentOS)
GNU gcc (GCC) 4.1.2 (I've also tried gcc 4.4.4 with no luck)
GNU Fortran (GCC) 4.4.4
mpich2 1.4
Yacc 29.2.2
Lex 2.5.4
expat-devel 1.95.8
readline-devel 5.1
OpenSSL 0.9.8e (no newer version available for CentOS 5)
ruby 1.8.5

I would be very grateful if anyone could help me. Thanks in advance.

Regards.
Adri Mourits, modified 8 Years ago.

RE: Compile issue on CentOS 5.4

Yoda Posts: 1221 Join Date: 1/3/11 Recent Posts
Hi Rafael,

Do you use the latest tagged version of Delft3D?
Can you post the full autogen, configure, make logging? Hopefully that will contain the clue for this problem.
We use automake 1.11.1. May be that explains your error on dolcli. Anyway, dolcli is not important. Skipping it's compilation will not harm.

Regards,

Adri
RP
Rafael Pimentel, modified 8 Years ago.

RE: Compile issue on CentOS 5.4

Youngling Posts: 8 Join Date: 10/20/11 Recent Posts
Hello Adri,

Thanks for your reply. I think I use the latest tag in the repository: 5.00.10

I attach the logs. I hope they can help you to find the issue.

Please, let me know if you need something more.

Regards,
Rafael

Attachments:

Adri Mourits, modified 8 Years ago.

RE: Compile issue on CentOS 5.4

Yoda Posts: 1221 Join Date: 1/3/11 Recent Posts
Hi Rafael,

The Gnu tools you use need to be updated. See http://oss.deltares.nl/web/delft3d/source-code#prerequisites for the exact versions.

Regards,

Adri
RP
Rafael Pimentel, modified 8 Years ago.

RE: Compile issue on CentOS 5.4

Youngling Posts: 8 Join Date: 10/20/11 Recent Posts
Do you mean GNU Libtool?

As far as I know, I have the newest versions available in my platform (and I think that CentOS 5 is a supported OS).
Adri Mourits, modified 8 Years ago.

RE: Compile issue on CentOS 5.4

Yoda Posts: 1221 Join Date: 1/3/11 Recent Posts
Hi Rafael,

Please check Automake, autoconf and libtool.

Looking at your log files:
During configuration, autoconf decided that the flag -cpp is needed for preprocessing fortran:
checking for Fortran flag needed to preprocess source... -cpp

During compilation, gfortran does not recognize the flag -cpp:
gfortran: unrecognized option '-cpp'


Regards,

Adri
RP
Rafael Pimentel, modified 8 Years ago.

RE: Compile issue on CentOS 5.4

Youngling Posts: 8 Join Date: 10/20/11 Recent Posts
I'm sorry to hear that, because there are no newer versions for those tools available in CentOS. That was the first I checked.

Do you know if I could compile some old Delft3D version with my tools?
Fedor Baart, modified 8 Years ago.

RE: Compile issue on CentOS 5.4 (Answer)

Padawan Posts: 44 Join Date: 3/2/11 Recent Posts
Rafael Pimentel:
there are no newer versions for those tools available in CentOS.


Hi Rafael,

You should be able to install the latest versions of automake/autoconf/libtool from source in centos.

http://www.gnu.org/software/automake/
http://www.gnu.org/software/libtool/
http://www.gnu.org/software/autoconf/

An alternative would be to make a distribution on another system that does have newer autotools.
That is done by the commands:


# On a system with up to date autotools
./autogen.sh
make dist
# This should generate a delft3d.tar.gz file with sources and a configure script



# back to centos
tar -xzf ./delft3d.tar.gz
# configure script made on another system
./configure
make


You only need the autotools to make a new source distribution and when you add files or change the configure.ac or .am files.
Note that the source distributions are not made regular, so there can be some issues with files not being distributed in the .tar.gz.

HTH,

Cheers,

Fedor
RP
Rafael Pimentel, modified 8 Years ago.

RE: Compile issue on CentOS 5.4

Youngling Posts: 8 Join Date: 10/20/11 Recent Posts
Fedor Baart:

You should be able to install the latest versions of automake/autoconf/libtool from source in centos.


The cluster administrator wouldn't like that option. So I'm going to try the other way and I'll let you know.

Thanks!
Adri Mourits, modified 8 Years ago.

RE: Compile issue on CentOS 5.4 (Answer)

Yoda Posts: 1221 Join Date: 1/3/11 Recent Posts
Hi Rafael,

Another option is installing newer versions of the GNU stuff locally and pointing to it when compiling. That's where the build.sh script is used for.
If you are going to try this, check the paths inside build.sh and adapt them for your system.

Regards, Adri
Fedor Baart, modified 8 Years ago.

RE: Compile issue on CentOS 5.4 (Answer)

Padawan Posts: 44 Join Date: 3/2/11 Recent Posts
Hi,

You can install most software from source into your home directory like this:


# I usually use a directory called local in my home directory where I keep hand made software
mkdir ~/local
# Use this directory as a prefix during configuration time
# assuming you're in the untarred source
./configure --prefix=$(cd ~/local;pwd)
make
# and then, without sudo or having to bother the system administrator
make install


You also have to add the ~/local/bin and ~/local/lib to your PATH and LD_LIBRARY_PATH and perhaps the ~/local/share/pkgconfig to PKG_CONFIG_PATH. I believe the most appropriate place to set those variables would be in the ~/.bash_profile.

Cheers,

Fedor
RP
Rafael Pimentel, modified 8 Years ago.

RE: Compile issue on CentOS 5.4

Youngling Posts: 8 Join Date: 10/20/11 Recent Posts
Hi Adri and Fedor,

Thank you so much for your suggestions. I'll try them in the next days, and I'll let you know how it went.

Regards.
RP
Rafael Pimentel, modified 8 Years ago.

RE: Compile issue on CentOS 5.4

Youngling Posts: 8 Join Date: 10/20/11 Recent Posts
Hello Adri and Fedor,

I finally could try your suggestions. I think that I am much luckier this time. Previously I've installed locally without issues as you recommend:

autoconf 2.69
automake 1.13
libtool 2.4.2
mpich2 1.4.1

and delft3d trunk

Now, when I execute "make ds-install", the only errors I get at the end are the following:

oss-install...
Target directory: ../bin
Source : all engines
installing all open source projects . . .
installing d_hydro . . .
Gathering libraries for d_hydro...
installing flow2d3d . . .
cp: cannot stat `lib/libflow2d3d_sp.so': No such file or directory
can't copy "lib/libflow2d3d_sp.so" to "../bin/lnx/flow2d3d/bin"
Gathering libraries for flow2d3d...
installing flow2d3d_openda . . .
cp: cannot stat `lib/libflow2d3d_openda_sp.so': No such file or directory
can't copy "lib/libflow2d3d_openda_sp.so" to "../bin/lnx/flow2d3d/bin"
Gathering libraries for flow2d3d_openda...
installing wave . . .
Gathering libraries for wave...
Gathering libraries for swan...
cp: missing destination file operand after `../bin/lnx/swan/lib'
Try `cp --help' for more information.
installing plugin_culvert . . .
Gathering libraries for plugin_culvert...
installing plugin_delftflow_traform . . .
Gathering libraries for plugin_delftflow_traform...
installing datsel . . .
Gathering libraries for datsel...
installing kubint . . .
Gathering libraries for kubint...
installing lint . . .
Gathering libraries for lint...
installing mormerge . . .
Gathering libraries for mormerge...
installing vs . . .
Gathering libraries for vs...


I think that issues are related with single precision executables, and I don't know if they are important. I've tried to run the first three examples, and they are working great.

Nevertheless, I'm worried about parallel execution. If I try the first example in parallel mode, I've got the following output:

$ ./run_flow2d3d_parallel.sh
Contents of machinefile:
cat: /home/user/delft3d/examples/01_standard/machinefile: No such file or directory
----------------------------------------------------------------------
./run_flow2d3d_parallel.sh: line 80: mpd: command not found
./run_flow2d3d_parallel.sh: line 81: mpdboot: command not found


Do you know how can I solve them?

Thanks in advance.
Adri Mourits, modified 8 Years ago.

RE: Compile issue on CentOS 5.4 (Answer)

Yoda Posts: 1221 Join Date: 1/3/11 Recent Posts
Hi Rafael,

You are right: the problems are indeed related to single precision. Don't bother about them. The script used to install everything in ../bin/lnx is very simple. It copies both the single precision and the double precision binaries, knowing that only one of them is actually build.

About running parallel:
"run_flow2d3d_parallel.sh" is an example run script that you have to adapt for your situation. Please open it and read the comments:

The run script needs information about the machines it is supposed to start a calculation on. The correct way to gather this information depends on your machine or cluster configuration.
You have to create a machinefile yourself. Without a machinefile, all partitions will run on the local machine.

Your output says that the commands mpd and mpdboot can not be found. These are mpich binaries. The directory containing them, must be in your environment parameter PATH. The script "run_flow2d3d_parallel.sh" contains the following line to take of this:
export PATH="/opt/mpich2/bin:${PATH}"
It seems that your mpich2 is installed in another directory. You have to change this line in the script to fit to your environment.

Regards,

Adri
RP
Rafael Pimentel, modified 8 Years ago.

RE: Compile issue on CentOS 5.4

Youngling Posts: 8 Join Date: 10/20/11 Recent Posts
Hello Adri,

Thank you so much for your great support. Everything seems to work fine now.

Regards.