Ok - one more thing on this a question actually:
Why do we need to "contract()" for SerialMesh? Shouldn't it be ok to have
holes in the element / node numbering?
Right now we kind of have weird behavior where nodes will be changing
numbers all the time as we adapt the mesh (even if a node is
Also, on a related note, it looks like in equation_systems.C around line
194 sets "mesh_changed = true"... no matter what.
So calling eq->reinit() will cause a mesh.contract() _no matter what_...
even if you haven't modified the mesh. Meaning that just calling
eq->reinit() you will get your nodes
Around line 1100 in unstructured_mesh.C in UnstructuredMesh::contract() it
calls renumber_nodes_and_elements()
This is a bad idea.
We've initialized our meshes by skipping renumbering... but then calling
eq->reinit() causes all of the nodes / elems to then be renumbered.
Any ideas for what to do
Hi!
I bumped into this problem in UnstructuredMesh: at the end of
copy_nodes_and elements(), we call this->prepare_for_use(false) and we may
end up with different node numbering. Since this is called from
constructors and copy-constructors, the newly created object may have
different node numb