← Back to team overview

dolfin team mailing list archive

Re: error estimation

 

On Tue, Feb 03, 2009 at 10:18:56AM +0100, Johan Hake wrote:
> On Tuesday 03 February 2009 10:06:22 Anders Logg wrote:
> > On Tue, Feb 03, 2009 at 12:40:16AM -0700, Bartosz Sawicki wrote:
> > > Hi all,
> > >
> > > Have any of you, some experience with posteriori error estimation in
> > > Dolfin? I'm playing with adaptive refinement techniques, where proper
> > > error estimation is essential.
> > > I try to use form language with discontinous Lagrange elements to
> > > describe error, but the results are somehow strange.
> > > I found that in Unicorn there are some error estimation code, but I
> > > can't find any application of it or any example? Is this code working?
> > >
> > > regrd.
> > > BArtek
> >
> > What is currently missing is the ability to evaluate integrands over
> > cells and facets and not adding the results. 
> 
> I might be saying something totally uncorrelated here but...
> 
> couldn't you just assemble them one by one, using a matrix with the same 
> sparsitypattern? Then you could substract or do what ever you like with the 
> matrices.
> 
> Johan

Do you mean having one mesh for each cell? Yes, that would work, but
it's much more complicated than having a simple test to see whether we
should add the results (assemble) or just evaluate the element tensor
on each cell.

Note that the element tensor will in these cases just be a scalar
value, so the result is a std::vector of values, one for each cell.

We already have the following code in assemble_cells:

  // Add entries to global tensor
  if (values && ufc.form.rank() == 0)
    (*values)[cell->index()] = ufc.A[0];
  else
    A.add(ufc.A, ufc.local_dimensions, ufc.dofs);

-- 
Anders

Attachment: signature.asc
Description: Digital signature


References