← Back to team overview

dolfin team mailing list archive

Re: simple support BCs

 

On Thu, Jun 21, 2007 at 07:08:21PM +0200, Kristian Oelgaard wrote:
> Quoting Jake Ostien <tostien@xxxxxxxxx>:
> 
> > OK, nevermind...I figured out subsystems do work.
> > 
> > For example...
> > 
> > SubSystem x(0);
> > SusSystem y(1);
> > 
> > BoundaryCondition(zero,mesh,left,x);
> > 
> > applies the BC only for the x dof.
> 
> I was also playing around with this, can you make it work at points also?
> So one could create a simply supported beam. I failed at applying fixed bc in
> both directions at x=y=0 and fixed in y direction at x=1, y=0.
> 
> Kristian

Right now, we can only do boundary conditions on facets. So you can't
set boundary conditions at a single point (but you can set them on a
single facet).

It's definitely possible to fix this. What happens now is that the
domain for a bc is specified by a MeshFunction<uint> on facets. If a
user specifies a SubDomain, then a MeshFunction<uint> is created from
the SubDomain. We could instead let the user specify the domain by a
MeshFunction<uint> on entities of any dimension, like for example
vertices.

It would need to be sort of a hack since the UFC specification only
tabulates the dofs on cell facets (not the dofs at vertices) but we
could use tabulate_coordinates.

/Anders


References