I worry my question has mostly to do with my poor understanding of the underlying theory and I might be really dense here, but here you go.
The weak form used in the Poisson demo is, after integration by parts,
a = inner(grad(u), grad(v))*dx
I was wondering, should not the weak form without integration by parts
a = inner(div(grad(u)), v)*dx
still be a legitimate choice (after all, finite elements procedure are not limited to symmetric forms, or are they?) I have changed the degree of the finite element space to second order
V = FunctionSpace(mesh, “Lagrange”, 2)
so the second derivative should be different from null.
But it is not working, the code runs, nothing happens and the Jupyter notebook crashes…
Note that a second order lagrange function-space consist of piecewise continuous second order polynomials.
Thus if you take the gradient of a second order lagrange Finite element function, you get a first order discontinuous vector field.
Remember that the function you are starting with is in H^1, not H^2.
See for instance: https://www.researchgate.net/post/Why_is_it_important_to_have_a_Weak_Formulation_for_FEM
Thanks for your reply, which of course makes perfect sense.
But then, what interpolation scheme available in FEniCS could be used?
If I wanted to approximate the solution of the ODE
d^3 y / dx^3 = f
whatever integration by parts I performed, I will have a second order derivative either in the trial or test function.