← Back to team overview

dolfin team mailing list archive

Re: projections onto different meshes

 

Alessio Quaglino wrote:

[...]
Was this projection between different meshes implemented? I can't find
anything about it inside the documentation.

Alessio
I'm trying to think about how to implement this in the case of two
meshes,
one being the refined version of the other. Let us call u and U the
function we want to project on the coarse (N dof) and fine (M dof) mesh
respectively, defined as:

u = \sum_i u_i phi_i
U = \sum_i U_i psi_i

where phi_i and psi_i are the test functions on the coarser and finer
mesh
respectively. We want thus to satisfy the following:

\int (u - U) phi = 0

which becomes:

\sum_i (u_i phi_i phi_j) = \sum_i (U_i psi_i phi_j) for j = 1:N
Yes, the key difficulty is integrating a product of two functions
defined on different meshes.

What about two meshes where one is the refined version of the other, i.e.
they share the same hierarchy? It might be easy to "colour" patches of
triangles in the finer mesh corresponding to one triangle of the coarser.
I'm not aware of the internal algorithms of dolfin though, and hence I
don't know where to start in doing this.

Alessio

we now want to compute those sums onto the coarser mesh. However, in
order
to do this, we have to evaluate phi (basis function of the coarser mesh)
on the finer mesh since the sum goes i=1:M with M>N. Can FEniCS do that
automatically?
No, not yet. There was some work done on this a while ago (at KTH) but
I don't know what happened to it.

/Anders
Hi,

Sorry for being slow to respond. This was implemented for 0.6.4, see this mail for notes on the algorithm:

http://www.fenics.org/pipermail/dolfin-dev/2007-February/004355.html

In the general case the algorithm computes an approximation (using quadrature) of the projection. However, in the case of refinement the algorithm reduces to the exact projection.

I'll be working the next few days on synchronizing the work we're doing in Unicorn with DOLFIN 0.7.1 (to prepare for release). I can update the old projection implementation to the DOLFIN tip then too.

Johan