I'm interested in solving the biharmonic equation
$$\Delta^{2}u=0 \quad\text{on}\quad\Omega$$
with the boundary conditions
$$u=0 \quad\text{on}\quad\partial\Omega$$
$$\frac{\partial u}{\partial n}=0 \quad\text{on}\quad\partial\Omega$$
where $n$ is the outward unit normal to the boundary. I have a finite difference solver implemented for this but am interested in obtaining an FEM solution with fenics for validation purposes and to see if fenics is something I might use for future problems. Being new to fenics, and admittedly being a bit rusty on FEM methods, I was hoping to adapt the biharmonic demo code to these boundary conditions (for now I have left the source as is in the demo). In a comment to this question here, nate references a paper by Georgoulis and Houston which goes through a derivation and analysis of an interior penalty method for the more general boundary conditions
$$u=g_{D} \quad\text{on}\quad\partial\Omega$$
$$\frac{\partial u}{\partial n}=g_{N} \quad\text{on}\quad\partial\Omega$$.
Having skimmed through this I have changed the bilinear form in the demo code to
alpha = Constant(8.0)
beta = Constant(8.0)
a = inner(div(grad(u)), div(grad(v)))*dx \
- inner(avg(div(grad(u))), jump(grad(v), n))*dS \
- inner(jump(grad(u), n), avg(div(grad(v))))*dS \
+ beta*inner(jump(grad(u),n), jump(grad(v),n))*dS \
+ inner(avg(dot(grad(div(grad(u))),n)), jump(v))*dS \
+ inner(jump(u), avg(dot(grad(div(grad(v))),n)))*dS \
+ alpha*inner(jump(u), jump(v))*dS
but the Neumann boundary condition doesn't appear to be enforced correctly. Actually it seems the boundary condition from the demo
$$\Delta u=0 \quad\text{on}\quad\partial\Omega$$
is still being enforced. I feel like I am probably missing something that would be fairly obvious to an experienced FEM/fenics user. Anything pointing me in the right direction would be appreciated.