← Back to team overview

dolfin team mailing list archive

Re: DG

 

On Thu, Jan 18, 2007 at 11:20:16AM +0100, Johan Hoffman wrote:
> Ok. I understand.
> 
> So it is assumed that a discontinuous element is discontinuous along all
> cell faces.

Yes.

> Ideally you would like to be able to integrate over subdomains of the
> mesh; typically defined by the dx/ds-operators.
> 
> Maybe something like:
> 
> Mesh mesh("mesh.xml");
> 
> Array<Face> surf_faces_1;
> surf_faces_1 = ...
> 
> Array<Face> surf_faces_2;
> surf_faces_2 = ...
> 
> mesh.defineSurface(surf_faces_1);
> mesh.defineSurface(surf_faces_2);
> 
> [in form-file]
> 
> ...
> 
> a = (u,v)*ds1 + (u,v)*ds2

Yes, that would be great, but there is no such support in the UFC
specification. It is always assumed that you integrate over the whole
mesh.

So you need to define different forms for different meshes, but that
should be ok?

/Anders



> /Johan
> 
> 
> > What we have implemented for DG is the ability to define integrals
> > over interior facets that have contributions from both sides of the
> > facet, so you can write
> >
> >     v('+')*v('-')*avg(v)*jump(u, n)...
> >
> > It's a little different from what you have in that the integral is
> > over all interior facets in the mesh, not just along some given
> > surface.
> >
> > Perhaps you could extract all the cells in the mesh that border to the
> > common surface, so instead of having some interior surface, you have
> > an interior mesh that contains the surface and each interior facet in
> > that mesh connects to exactly two cells, one on each side.
> >
> > /Anders
> >
> >
> > On Thu, Jan 18, 2007 at 09:24:01AM +0100, Johan Hoffman wrote:
> >> Garth and Anders,
> >>
> >> I am interested in solving a problem where I a priori specifies an inner
> >> surface (aligned with cell faces) where the solution is discontinuous.
> >> The
> >> coupling of the solution over the discontinuity is taken cared of by a
> >> surface integral over that inner surface (like a penalty term).
> >>
> >> For this I expect to need:
> >>
> >> (1) a data structure with "double nodes" at a predefined surface (=
> >> collection of nodes/faces).
> >>
> >> (2) for the nodes on the surface; the ability to assemble only
> >> contribution from either side of the surface for the "double nodes"
> >> respectively (where the two sides of the surface may be represented by a
> >> MeshFunction for example).
> >>
> >> (3) a surface integral defined over an inner surface.
> >>
> >> I suspect that some parts of (1)-(3) is already in place, as part of the
> >> DG work? What remains to be done to handle this problem?
> >>
> >> /Johan
> >>
> >>
> >> _______________________________________________
> >> DOLFIN-dev mailing list
> >> DOLFIN-dev@xxxxxxxxxx
> >> http://www.fenics.org/mailman/listinfo/dolfin-dev
> > _______________________________________________
> > DOLFIN-dev mailing list
> > DOLFIN-dev@xxxxxxxxxx
> > http://www.fenics.org/mailman/listinfo/dolfin-dev
> >
> 
> 
> _______________________________________________
> DOLFIN-dev mailing list
> DOLFIN-dev@xxxxxxxxxx
> http://www.fenics.org/mailman/listinfo/dolfin-dev


Follow ups

References