Sigma layers fail in parallel on sphere

Bug #1099943 reported by Jon Hill
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Fluidity
Fix Released
Medium
Jon Hill

Bug Description

On a global modern tidal simulation, using sigma layer (2) works fine in serial, but in parallel crashes with the message below. Only two processors were used. FLML and mesh available on request (the mesh is quite large, but does run on Rubik on a single core, just very, very slowly).

jhill1@rubik:~/Data/projects/Ancient_seas/fluidity_runs/modern_tests/convergence_test/gebco/v_low_2layers$ mpiexec -n 2 ~/Data/fluidity/tidy_tidal_harmonics/bin/fluidity tides_global.flml
spacing 0.0500069 0.0500139
spacing 0.0500069 0.0500139
 For node with coordinate -247320.98435109542 -4786023.4145446382 -4197910.5762426723
 no top surface node was found.
*** FLUIDITY ERROR ***
Source location: (Vertical_Extrapolation.F90, 426)
Error message: Something wrong with the geometry.
Backtrace will follow if it is available:
/home/jhill1/Data/fluidity/tidy_tidal_harmonics/bin/fluidity(fprint_backtrace_+0x1f) [0x511ea8]
/home/jhill1/Data/fluidity/tidy_tidal_harmonics/bin/fluidity(__fldebug_MOD_flabort_pinpoint+0x210) [0x50af60]
/home/jhill1/Data/fluidity/tidy_tidal_harmonics/bin/fluidity(__vertical_extrapolation_module_MOD_horizontal_picker+0xdde) [0x809bae]
/home/jhill1/Data/fluidity/tidy_tidal_harmonics/bin/fluidity(__vertical_extrapolation_module_MOD_verticalextrapolationmultiple+0x2e9) [0x80b169]
/home/jhill1/Data/fluidity/tidy_tidal_harmonics/bin/fluidity(__vertical_extrapolation_module_MOD_verticalextrapolationscalar+0x1b8) [0x80bf68]
/home/jhill1/Data/fluidity/tidy_tidal_harmonics/bin/fluidity(__vertical_extrapolation_module_MOD_updatedistancefield+0xd1) [0x80c2d1]
/home/jhill1/Data/fluidity/tidy_tidal_harmonics/bin/fluidity(__vertical_extrapolation_module_MOD_calculatetopbottomdistance+0x1fa) [0x80c53a]
/home/jhill1/Data/fluidity/tidy_tidal_harmonics/bin/fluidity(__fluids_module_MOD_fluids+0x4af5) [0x511bb5]
/home/jhill1/Data/fluidity/tidy_tidal_harmonics/bin/fluidity(mainfl+0xd3) [0x508fb3]
/home/jhill1/Data/fluidity/tidy_tidal_harmonics/bin/fluidity(main+0x177) [0x4ff95b]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xed) [0x7f7cf0b1876d]
/home/jhill1/Data/fluidity/tidy_tidal_harmonics/bin/fluidity() [0x4ff731]
Use addr2line -e <binary> <address> to decipher.
Error is terminal.

Related branches

Revision history for this message
Jon Hill (jon-hill) wrote :

Tidy_tidal_harmonics was updated to trunk today, but the FLML has options that are only available in that branch

Revision history for this message
Jon Hill (jon-hill) wrote :

With debugging the problem fails in serial too with an assertion failure.

Think I've found the issue. In combine_r_meshes (Combine_meshes.F90) there's an if clause for when sigma_layers are used:
        if (sigma_layers) then
          ! If we have sigma layers we will first use one chain to chain to create a dummy
          ! 'mesh' that has the correct topological properties. We will later over write the
          ! vector field with the correct one. We always have chain '1', so we'll use that now.
          call append_to_structures_radial(column, r_meshes(1), out_mesh, last_seen)
        else
          call append_to_structures_radial(column, r_meshes(column), out_mesh, last_seen)
        end if

As far as I can tell this "chaining" is completely incorrect on the sphere, though removing the clause might not result in true sigma layers. Anyone confirm this or have an opinion?

Revision history for this message
Adam Candy (asc) wrote :

I can confirm sigma layers are broken in the trunk.

Revision history for this message
Adam Candy (asc) wrote :

The extrude code requires updating in many regards including the 'chaining' that Jon highlights, that does not function properly on the sphere. It's also not good to have the majority of the code duplicated in Extrude.F90 and Extrude_radially.F90. I have a development branch to update the runtime 3d mesh generation which includes a fix to sigma layers and the merge of the extrude modules. It's not yet in the trunk and under testing, but so far looks to work robustly.

Revision history for this message
Jon Hill (jon-hill) wrote :

Fixed in r4157.

Changed in fluidity:
assignee: nobody → Jon Hill (jon-hill)
importance: Undecided → Medium
status: New → Confirmed
status: Confirmed → Fix Committed
Changed in fluidity:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.