On Thu, Oct 6, 2011 at 1:58 PM, Paul T. Bauman <ptbauman@...> wrote:
> On Thu, Oct 6, 2011 at 2:23 PM, Paul T. Bauman <ptbauman@...> wrote:
>> Ah crap. The problem is that the mesh dimension doesn't appear to get set
>> until the very end, in particular following the sideset read that trips up
>> the 1D read. I'm looking into a workaround. Go ahead and remove the error
>> check for now - sorry.
> I believe the attached patch should be a quick fix. The check to set the
> mesh dimension was at the end, but it looks to me as though it didn't need
> to be - everything needed is known after the first block read. Thus, I moved
> the mesh dimension set there, which is before the sideset read, and then
> test the mesh dimension there. Note that checking get_num_dim() from
> exio_helper is not enough because it sets the spatial dimension, not the
> mesh dimension.
> The longer term workaround (that I hope to get to later today) is to just
> set the boundary ids manually for 1D meshes and bypass the ExodusII read for
> that part.
> Sorry for the trouble. Let me know if this still breaks for you (it breaks
> as expected on my ex0 test).
I think this patch should be OK, we are running our tests here and
will check-in if everything passes.
Note: libmesh *could* actually be forced to write exodus files with
the correct dimension... right now we write everything with dim=3,
hence needing to determine the actual dimension after reading the