Hi,
I am curious if SerialMesh with AMR uses the RemoteElem. In the
following function (from elem.C), I have marked the lines of interest with
“****”.
This method gets called by line 2180 of nemesis_io_helper.C, which wants
to find active elements with a common side, but also on the local processor.
But, the method in elem.C does not seem to make a distinction about elements
that may have a different pid assigned, but may not be remote elems.
Elem::is_remote() is false by default.
Eventually, error on line 2211 of nemesis_io_helper.C is thrown.
Maybe it would make sense to add a check for (processor_id !=
this->processor_id) in Elem::is_remote()? Any thoughts?
Thanks,
Manav
void Elem::active_family_tree_by_side (std::vector<const Elem*>& family,
const unsigned int s,
const bool reset) const
{
// The "family tree" doesn't include subactive elements
libmesh_assert(!this->subactive());
// Clear the vector if the flag reset tells us to.
if (reset)
family.clear();
libmesh_assert_less (s, this->n_sides());
// Add an active element to the family tree.
if (this->active())
family.push_back(this);
// Or recurse into an ancestor element's children.
// Do not clear the vector any more.
else
for (unsigned int c=0; c<this->n_children(); c++)
**** if (!this->child(c)->is_remote() && this->is_child_on_side(c, s)) *****
this->child(c)->active_family_tree_by_side (family, s, false);
}
------------------------------------------------------------------------------
Is your legacy SCM system holding you back? Join Perforce May 7 to find out:
• 3 signs your SCM is hindering your productivity
• Requirements for releasing software faster
• Expert tips and advice for migrating your SCM now
http://p.sf.net/sfu/perforce
_______________________________________________
Libmesh-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-users