Subject: Re: [UFC-dev] [DOLFIN-dev] DG

From: Anders Logg <[email-masked]>
Date: Fri, 19 Jan 2007 09:24:04 +0100

On Fri, Jan 19, 2007 at 09:17:08AM +0100, Johan Hoffman wrote:

> > Yes, you should be able to assembly over a subset of a mesh, but you
> > still need two forms. One form that you assembly on some subset of the
> > mesh and another form that you assemble over another subset.
> 
> Yes, I see how I can do that; assembling two different forms on different
> subsets of the mesh, and then patch them together afterwards in some way.
> Although I think it would be more elegant to avoid the patching and
> instead be able to specify integration over subdomains in one form (with
> dx/ds), as you would do it with pen and paper.

Yes I agree it would be more elegant. It's just not covered by the UFC
specification. But when I think of it, it could be with a simple fix.

I'm sending this to the ufc-dev list with a new suggestion: How about
modifying the create_*_integral() functions in ufc::form to something
like

    /// Create a new cell integral on sub domain i
    virtual cell_integral* create_cell_integral(unsigned int i) const = 0;

?

We then also need something like

    virtual unsigned int num_sub_domains() const;

/Anders

> Another variant is to use special meshes; with for example two verticies
> at the same position along the inner surface, with no couplings over the
> surface. That way one could assemble one form with no coupling over the
> interface. And then after assembling that form, one could add some
> coupling of the dofs over of interface, for example by a surface integral
> over the surface. This coupling could then be added by some map of the
> dofs on (each side of the) the surface to the dofs of the assembled form.
> But of course, again it would be more elegant to be able to add this
> integral within the first form.
> 
> /Johan
> 
> 
> 
> >
> > /Anders
> > _______________________________________________
> > DOLFIN-dev mailing list
> > [email-masked]
> > http://www.fenics.org/mailman/listinfo/dolfin-dev
> >
> 
> 
> _______________________________________________
> DOLFIN-dev mailing list
> [email-masked]
> http://www.fenics.org/mailman/listinfo/dolfin-dev