Migration status

  • Home Page: Activity map.

DELWAQ

DELWAQ is the engine of the D-Water Quality and D-Ecology programmes of the Delft3D suite. It is based on a rich library from which relevant substances and processes can be selected to quickly put water and sediment quality models together.

The processes library covers many aspects of water quality and ecology, from basic tracers, dissolved oxygen, nutrients, organic matter, inorganic suspended matter, heavy metals, bacteria and organic micro-pollutants, to complex algae and macrophyte dynamics. High performance solvers enable the simulation of long periods, often required to capture the full cycles of the processes being modelled.

The finite volume approach underlying DELWAQ allows it to be coupled to both the structured grid hydrodynamics of the current Delft3D-FLOW engine and the upcoming D-Flow Flexible Mesh engine (1D-2D-3D) of the Delft3D Flexible Mesh Suite (or even other models such as TELEMAC).

'DELWAQ in open source' is our invitation to all leading experts to collaborate in further development and research in the field of water quality, ecology and morphology using Delft3D. Feel free to post your DELWAQ related questions or comments in this dedicated forum space. If you are new to DELWAQ, the tutorial (in the user manual) is a good place to start. A list of DELWAQ related publications is available here.

** PLEASE TAG YOUR POST! **

 

 

Sub groups
D-Flow Flexible Mesh
DELWAQ

Cohesive sediments & muddy systems

 


Back

wave.exe; Segmentation fault due to intrinsic "minval" function

DA
Dylan Anderson, modified 1 Year ago.

wave.exe; Segmentation fault due to intrinsic "minval" function

Youngling Posts: 1 Join Date: 11/3/17 Recent Posts
I can successfully run d_hydro.exe and wave.exe separately (ie. example 01_standard and 07_wave run fine) but receive the following error when running 03_flow-wave in an online coupled sense:

Program received signal SIGSEGV: Segmentation fault - invalid memory reference.

Backtrace for this error:
#0 0x7FB256F20467
#1 0x7FB256F20AAE
#2 0x7FB25505A24F
#3 0x45B644 in write_swan_datafile_ at write_swan_datafile.f90:80
#4 0x405C07 in swan_tot_ at swan_tot.f90:235
#5 0x404C18 in MAIN__ at wave.f90:294
run_flow2d3d.sh: line 49: 11113 Segmentation fault (core dumped) $waveexedir/wave.exe $mdwfile 1


I have traced the error back in write_swan_datafile.f90 which has the statements:

if (present(minval)) then
minval_ = minval
else
minval_ = 0.0
endif


It appears the "present" function fails to detect minval as missing in the call from swan_tot.f90 and generates the segment fault when it tries to access the optional variable.

Our compile environment is CentOS7 with gfortran 4.8. The compatibility version is gfortran 4.4. A comment from Adri Mourits in http://oss.deltares.nl/web/delft3d/general/-/message_boards/view_message/96277 says that 4.6.2 is required. Is this still the case? Is this a problem with gfortran 4.8? and is there a work-around?

We tried changing "minval" to "myminval" and it still failed to detect is was missing in the call from swan_tot.f90.

Thanks for any help,

Dylan Anderson
wave fortran compiler fortran runtime error
JH
Josha Humberston, modified 1 Year ago.

RE: wave.exe; Segmentation fault due to intrinsic "minval" function

Youngling Posts: 4 Join Date: 12/23/16 Recent Posts
Hi Dylan

Have you had any success troubleshooting this error?

On 2 separate multi-processor computer systems, I have successfully compiled Delft3d, but also receive a similar segmentation fault when trying to run the wave.exe. The error seems only to occur when trying to run on a good number of processors (more than 20). The error does not occur when running only flow and does not occur (at least immediately) when using less than 20 processors. Even when using 20 processors though, I believe the same or a similar error does occur at some point during the simulation. I have compiled this same version on a seperate 8 processor computer and had no issue running with mpi on the 8 processors. Unlike in your traceback information though, mine does not give info to a specific file. I am definitely keen to be able to scale up and use more computing power but have not been able to get past this issue. Thanks to anyone with any help or ideas!

During model startup, it returns:

...
Part II - Creating intermediate files...
Part III - Initialisation of the Execution module...
Part IV - Reading complete MD-file...
Part V - Initialisation & checking input...
Part VI - Initialisation & checking second part...
Part VII - Initialisation output...
*** MESSAGE: Connected to the following 32 FLOW domain(s):
oiv6-001
oiv6-002
oiv6-003
oiv6-004
oiv6-005
oiv6-006
oiv6-007
oiv6-008
oiv6-009
oiv6-010
oiv6-011
oiv6-012
oiv6-013
oiv6-014
oiv6-015
oiv6-016
oiv6-017
oiv6-018
oiv6-019
oiv6-020
oiv6-021
oiv6-022
oiv6-023
oiv6-024
oiv6-025
@1y1y<1y\1y1y@4y2Up/F.F
`.FN/FAN/Fp/Fo/FH-FX-FN/F
YUo/F1y1yaCN/F02y`.F1y1y
^uX-FH-@1 FF
y p/FupB
FAN/F------------------------------------------------
--------------------------------oiv6.mdw

#### A lot of other path specific error messages exist in here

mpirun noticed that process rank 24 with PID 0 on node delta exited on signal 6 (Aborted).
--------------------------------------------------------------------------
Initialising grids and grid mappings
Part VIII - Start Simulation...

Time to finish 7s, 0.0% completed, time steps left 849600

Program received signal SIGSEGV: Segmentation fault - invalid memory reference.

Backtrace for this error:
#0 0x7f462eefb1aa
#1 0x7f462eefa393
#2 0x7f462e02513f
#3 0x55a01c8d5466
#4 0x55a01c8d4f8f
#5 0x55a01c8d4464
#6 0x55a01c8c6437
#7 0x55a01c8973b8
#8 0x55a01c8923fe
#9 0x55a01c8917fe
#10 0x7f462e00f1c0
#11 0x55a01c891839
#12 0xffffffffffffffff
./run_oiv6.sh: line 103: 14818 Segmentation fault $waveexedir/wave.exe $mdwfile 1
segmentation fault
GS
Gholamreza Shiravani, modified 8 Months ago.

RE: wave.exe; Segmentation fault due to intrinsic "minval" function

Padawan Posts: 53 Join Date: 6/25/16 Recent Posts

Hi Josha, I have also this Problem. Could you tell me how did you solve it?