From: David K. <dav...@ak...> - 2016-10-22 02:46:30
|
On Fri, Oct 21, 2016 at 5:22 PM, John Peterson <jwp...@gm...> wrote: > > > On Fri, Oct 21, 2016 at 2:57 PM, David Knezevic < > dav...@ak...> wrote: > >> It seems that ExodusII_IO::write_discontinuous_exodusII doesn't handle >> NodeElems correctly. NodeElems get plotted as ExodusII SPHERE elements, and >> this works fine with continuous plotting, but seems to be wrong in the >> discontinuous plotting case. >> >> I've attached a modified version of systems_of_equations_ex6 that >> illustrates this (change write_discontinuous_exodusII to >> write_equation_systems in the example to see the correct locations). >> Paraview plots the SPHERE elements as dots, so that is useful for checking >> the result. >> >> John, I thought you may have an idea of where to look to fix this? My >> first guess is that it might be related to the "FIXME" comment >> in ExodusII_IO_Helper::write_elements? >> > > You're talking about the FIXME on line 1449? That should only be a > problem if the mapping between your Mesh's node numbering and Exodus's node > numbering, as stored in the libmesh_node_num_to_exodus, is something > other than the trivial off-by-one map. > > I don't know if the presence of NodeElems, which are treated as Elems (?), > would have an effect on this, but I suppose it's possible. What is the > error message you're getting? > I think I found the issue, see the PR I just made (#1128). Looks like the code previously assumed num_nodes_per_elem was the same for the entire mesh, so that didn't work properly for meshes (like my test case) with different element types. David |