On 25 November 2016 at 01:41, Justin Chang <jychang48@gmail.com> wrote:For rectangular domains and vector Lagrange elements you just need to constraint one component for the normal. For example
bc1 = DirichletBC(Z.sub(0).sub(0),value,(1,2)) #x component
bc2 = DirichletBC(Z.sub(0).sub(1),value,(3,4)) #y componentDoes this actually work? I know doing setting individual components for VFS inside Mixed is flaky, per https://github.com/firedrakeproject/firedrake/issues/920.
However, the snippet in that bug report sets multiple components one-by-one, which might be what leads to the breakage.
Not sure how you would do this for a more complicated geometry
Justin
On Thu, Nov 24, 2016 at 7:17 PM Francis Poulin <fpoulin@uwaterloo.ca> wrote:
______________________________________________________________________________________________Hello,
Sorry for the bother but I have a simple question to ask.
I am currently developing some code to solve for wind-driven gyres and basin modes using QG and SW. My question is how is it best to impose no-normal flow BCs,
$$\vec u \cdot \hat n = 0$$
for any boundary. I found this in the Navier-Stokes example which says that we should impose zero on particular boundaries. I guess that would work but if one had a more complicated geometry I imagine that would have it's problems.
bcs = [DirichletBC(Z.sub(0), Constant((1, 0)), (4,)), DirichletBC(Z.sub(0), Constant((0, 0)), (1, 2, 3))]
Any suggestions would be greatly appreciated.
Cheers,
Francis
------------------
Francis Poulin
Associate Professor
Department of Applied Mathematics
University of Waterloo
email: fpoulin@uwaterloo.ca
Web: https://uwaterloo.ca/poulin-research-group/
Telephone: +1 519 888 4567 x32637
firedrake mailing list
firedrake@imperial.ac.uk
https://mailman.ic.ac.uk/mailman/listinfo/firedrake
firedrake mailing list
firedrake@imperial.ac.uk
https://mailman.ic.ac.uk/mailman/listinfo/firedrake