dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #05010
Re: assembling for subdomains
On Thu, May 24, 2007 at 03:10:57PM +0200, Garth N. Wells wrote:
> How does assembly over subdomains work? It first glance it's rather
> confusing.
:-)
> Does DOLFIN assemble into a matrix just large enough for the
> subdomain, or a matrix for the entire problem?
The entire problem. The integral(s) just happens to be defined on a
sub domain. The typical example is you have an integral over Omega and
then an integral over a subset of the boundary of Omega.
> Can one denote domains in
> the FFC file?
Yes, you can do things like
dx0 = Integral("cell", 0)
dx1 = Integral("cell", 0)
ds0 = Integral("exterior facet", 0)
ds1 = Integral("exterior facet", 1)
ds2 = Integral("exterior facet", 2)
a = v*u*dx0 + f*v*u*dx1 + v*u*ds0 + ...*ds1 + ...*ds2
Then each of these will correspond to a sub domain in DOLFIN.
If you give a single sub domain argument to assemble, then all
integrals (cell, exterior facet, interior facet) will be over this sub
domain, but you can also specify a mesh function for each with an
arbitrary number of sub domains (can be different for different
integral types).
/Anders
References