Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Register
  • Sign in
  • ParaView ParaView
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 2,008
    • Issues 2,008
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 89
    • Merge requests 89
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • ParaViewParaView
  • ParaViewParaView
  • Issues
  • #18522
Closed
Open
Issue created Oct 05, 2018 by Jozsef Bakosi@jbakosi

Parallel read of ExodusII side sets not a union of the parts

Hi folks,

When I use the ExodusII reader to read a data set (mesh + side sets + field data) from partitioned files, I don't get a correct union of the side sets. Perhaps I'm not using this correctly and someone can help me out.

Example: An ExodusII mesh file has 6 side sets each with its own 16 triangle faces (relevant output obtained using ncdump):

 num_side_ss1 = 16 ;
 num_side_ss2 = 16 ;
 num_side_ss3 = 16 ;
 num_side_ss4 = 16 ;
 num_side_ss5 = 16 ;
 num_side_ss6 = 16 ;
 ss_prop1 = 1, 2, 3, 4, 5, 6 ;

If this is saved in two ExodusII files (after running on 2 PEs and having the mesh partitioned into two parts), out.0 and out.1 may contain partial side set information:

out.0:

 num_side_ss1 = 16 ;
 num_side_ss2 = 7 ;
 num_side_ss3 = 7 ;
 num_side_ss4 = 7 ;
 num_side_ss5 = 8 ;
 ss_prop1 = 2, 3, 4, 5, 6 ;

out.1:

 num_side_ss1 = 16 ;
 num_side_ss2 = 9 ;
 num_side_ss3 = 9 ;
 num_side_ss4 = 9 ;
 num_side_ss5 = 8 ;
 ss_prop1 = 1, 3, 4, 5, 6 ;

I.e., side set 1 is only in out.1, side set 2 is only in out.0, while the rest of the side sets have a partial list of faces in each file. Note that the number of faces in each correctly sum to 16 on each side set, thus the union is what I'd like to see in Paraview. However, Paraview's Exodus reader fails to correctly load the union of all side sets when stitching the two files together, and only lists side sets 1,3,4,5,6. (In which all faces show up but some are assigned to incorrect side set ids, e.g., faces that were in 1 and 2 in the original mesh now are all in set 1.)

For reproduction, I attach the input mesh (unitcube_135ss.exo) and the mesh partitioned into to two files (out.0 and out.1).

I tried this with Paraview 5.4.1 and 5.5.2 and both behaves the same.unitcube_135ss.exoout.0out.1

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking