Off the top of my head, the only the I can see is it would be nice to be able to sum the error vector to get the total error estimate. But maybe there's other things already there to do that?

On Thu, Oct 11, 2012 at 11:45 AM, Roy Stogner <> wrote:

Vikram and I are waffling on this question, so I thought I'd throw it
out for everybody's feedback:

For signed error estimates, e.g. estimates of Quantity-of-Interest
error where Q - Q_h ~= sum_E ( \eta_E ), what should the
estimate_error() method put in our ErrorVector?  The signed eta_E,
or the unsigned abs(eta_E)?

On the one hand: if error vectors can contain signed values, then
every MeshRefinement heuristic is going to have to be modified to do
abs() calls itself, 99% of the time this is going to be a complete
waste, and (given that the ErrorEstimator subclass also calculates a
global "Q - Q_h" estimate that can be accessed without that
summation) it's hard to come up with usage cases for the signed local

On the other hand: since abs() doesn't require any more cache misses
or use any more memory bandwidth, doing it redundantly in
MeshRefinement local variables may not actually waste time on modern
processors.  And if someone ever *does* want to use signed local
values for something (cancellation-aware refinement heuristics??) then
it would be good if we didn't destroy that sign information before
giving local values to them.

Opinions, or factors I've missed?

Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!
Libmesh-users mailing list