Hi Everyone,
I would like to use embedded boundaries, and started experimenting with the "karman.c" example. Keeping all else the same, I removed the cylinder and the tracer, and changed the lines:
u.n[embed] = fabs(y) > 0.25 ? neumann(0.) : dirichlet(0.);
u.t[embed] = fabs(y) > 0.25 ? neumann(0.) : dirichlet(0.);
to
u.n[embed] = neumann(0.);
u.t[embed] = neumann(0.);
which correspond to a channel in -0.5 < y < 0.5 with free-slip wall. The expected flow is a uniform velocity in the channel -0.5 < y < 0.5, and that is what I get (see the attached image "neumann.png"). Next, I changed
u.n[embed] = neumann(0.);
u.t[embed] = neumann(0.);
to
u.n[embed] = dirichlet(0.);
u.t[embed] = dirichlet(0.);
In this case all the walls are no-slip. After some development length beyond the inlet, a plane Poiseuille flow is expected in the channel. The computed result is shown in the attached image "dirichlet.png", and surprisingly is the same as in "neumann.png".
I think I might be missing something, why does it seem the dirichlet condition is not enforced with the embedded boundary?
Any advice would be much appreciated.
Thanks very much,
Louis