← Back to team overview

dolfin team mailing list archive

Re: Boundary terms in Dolfin

 

> Maybe there should be another applyBC() in FEM that takes a Boundary as
argument instead of a Mesh, and the version of applyBC() taking a Mesh as
an argument just creates the default boundary and calls
> applyBC() with this boundary? That way we can have one implementation
but people can call it differently depending on their needs.

Yes, this sounds like a way to do it.

> Then Garth can create his own boundary and call applyBC() with this
boundary. Would that work?

I think so.

> I imagine something like
>
>     class BoundarySpecification() // Better suggestion for name? { public:
>
>         // Return -1 if not on boundary, otherwise boundary ID
>         int operator() (const Point& point) const;
>
>     };
>
> Then one can create a boundary using
>
>     MyBoundarySpecification bs;
>     Boundary boundary(mesh, bs);
>

This should work. Maybe there should be a more general name than boundary,
since it may in fact does not have to be part of the physical boundary? On
the other hand we do not want the name to connect to the dimension of the
object either (such as "surface" for example); "subdomain", "subset", or
"manifold" might work?

> Note that this creates an object boundary which represents a part of the
mesh (does not have to be part of the physical boundary), and that the
entities contained in this boundary can be assigned to different parts of
the boundary depending on the boundary ID returned by the
BoundarySpecification.

Sounds good. But again, doesn't the different boundary ID's involve a
check when assembling?

/Johan







Follow ups

References