[MOAB-dev] exchange tags over interface entities

Jed Brown jedbrown at mcs.anl.gov
Thu Mar 8 07:55:06 CST 2012


On Thu, Mar 8, 2012 at 07:36, Lorenzo Alessio Botti <ihabiamx at yahoo.it>wrote:

> My strategy is different.
> Since I know that I have to evaluate QX at each non-linear iteration
> instead of communicating QX
> I communicate the shape function evaluations on partition interfaces, say
> SX, once and for all (as soon as the mesh doesn't change).
>

As a matrix? That is a lot of data to store, it's usually faster to
recompute. But it's just on subdomain interfaces, so whatever is simpler to
code...


> So at each iteration I just have to communicate the dofs for each ghost
> element and I'm able to compute
> QX. I do the same for derivatives, I communicate once and for all SDX and
> evaluate QDX using the dofs.
> I assemble both the matrix and the rhs, possibly at the same time to avoid
> redundant flux evaluations.
>

I just meant evaluating interface fluxes on both processors that see the
interface. That redundant evaluation is not a big deal. Also for ghost
cells, the mesh data structure is slightly heavier if you need a full level
of ghosting. The communication volume for ghost cells versus face traces
(QX and QDX) is comparable (depending on element order, dimension, and
whether you need QDX).

As for computing the matrix and residual together, the residual is usually
much less expensive than the matrix and there are good methods that
evaluate residuals more frequently (e.g. Rosenbrock integrators,
quasi-Newton accelerated lagging, line searches), so I always write them
separately.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/moab-dev/attachments/20120308/79f6135a/attachment.htm>


More information about the moab-dev mailing list