dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #07841
Re: assembly on sub domains
On Thu, May 08, 2008 at 11:33:49AM +0100, Nuno David Lopes wrote:
> But then what is the difference between
> a MeshFunction for interior and exterior face_domains?
> Shouldn't they be the same only with different markers for the boundary and
> for the interior?
>
> MeshFunction<unsigned int> facets_subdomains(mesh, mesh.topology().dim() - 1);
> (it has the information for all the facets, doesn't it?)
Yes it does.
> Is the problem in the order of the markers:
> 0...n-1 in the exterior
> 0...n-1 in the interior
>
> If we dont need the interior could we use the same MeshFunction, knowing that
> the interior is marked with 0?
Are you talking about the facets in the interior? Those are not
included when integrating *ds terms anyway.
For the cells in the interior, you need to have a MeshFunction defined
on the cells, so something like
MeshFunction<unsigned int> cell_domains(mesh, mesh.topology().dim());
--
Anders
> Thanks again.
>
>
> On Wednesday 07 May 2008, Anders Logg wrote:
> > On Wed, May 07, 2008 at 05:33:50PM +0100, Nuno David Lopes wrote:
> > > Ok i've got it, i think this shoud be the way:
> > >
> > > void dolfin::assemble(GenericTensor& A, Form& form, Mesh& mesh,
> > > const MeshFunction<dolfin::uint>& cell_domains,
> > > const MeshFunction<dolfin::uint>&exterior_facet_domains,
> > > const MeshFunction<dolfin::uint>& interior_facet_domains)
> > > ?
> > >
> > > But still, I have to pass 3 MeshFunction's ? even if we only need one,
> > > (but that isn't a problem).
> >
> > Yes, that's unfortunate but I don't what the interface should look
> > for specifying just one of them.
>
>
>
Follow ups
References