dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #05217
Re: simple support BCs
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
> -Jake
>
> Jake Ostien wrote:
> > Hi,
> >
> > This seems like it should be easy, so I am sorry I have to ask.
> >
> > How do I set a simple support (i.e. fixed dof in x, free dof in y) in a
> > 2D elasticity problem. I have figured out how to do it if I am weakly
> > enforcing Dirichlet BC's in a DG formulation, but I can't figure out how
> > to do it for the classical formulation using BoundaryConditions.
> >
> > Here is what I have tried (among other things) using pieces of code from
> > the elasticity demo, but for 2D...
> >
> > ..
> > ..
> > ..
> > Clamp c(mesh);
> > Function cx = c[0];
> > Left left;
> > BoundaryCondition bcl(cx, mesh, left);
> > ..
> > ..
> > ..
> >
> > But I get an error that says
> >
> > terminate called after throwing an instance of 'std::runtime_error'
> > what(): *** Error: Sub functions can only be extracted from discrete
> > functions.
> > Aborted
> >
> >
> > After nosing around a bit, its not clear if I need to create a SubSystem
> > or not, but I think I would run into the same problem as above.
> > Any suggestions will be appreciated.
> >
> > -Jake
> > _______________________________________________
> > DOLFIN-dev mailing list
> > DOLFIN-dev@xxxxxxxxxx
> > http://www.fenics.org/mailman/listinfo/dolfin-dev
> >
> >
> >
>
> _______________________________________________
> DOLFIN-dev mailing list
> DOLFIN-dev@xxxxxxxxxx
> http://www.fenics.org/mailman/listinfo/dolfin-dev
>
Follow ups
References