Bending moment in Euler-Bernoulli finite Element

I'm trying to calculate the bending moment distribution on a fixed-fixed Euler-Bernoulli beam. It is known that interelement nodes show different values for the bending moment. What is customary to do with this discrepancy?

Im doing the following:

$$M_z =\begin{bmatrix}-6/L^2 + 12x/L^3 \\-4/L + 6x/L^2 \\ 6/L^2 - 12x/L^3 \\-2/L + 6x /L^2 \end{bmatrix}^T\begin{bmatrix} w_1 \\ \theta_1 \\w_2 \\ \theta_2\end{bmatrix}$$

This returns the moment distribution along the element, where the 1st vector is the second derivative of the shape functions and the 2nd one is the computed displacements.

• I'm not sure what your question is. The interelement nodes should show different values! Model a simple cantilever beam with say three beam elements and compare with the standard beam theory solution. They should be exactly the same. The bending moment should be zero at the free end and increase linearly along the beam, of course. – alephzero Mar 11 '20 at 17:45
• Yes the displacement solution is the same, but when recovering bending moments each element has a different values for equal nodes. – Ben Romarowski Mar 12 '20 at 11:49

I found the solution: just evaluate at x = $$L_{element}/2$$ and the exact solution comes out. These points are called super convergent.
If you have a fixed-fixed beam then you always get zero internal force and displacement because of zero nodal displacement. If displacement vector is zero then bending moment is also zero, because of approximate nature of finite element. I know two ways to fix this discrepancy: - split element into two and add node in middle - consider the distributed load effect in internal force using double integration method etc.. (for example code look at method GetLoadInternalForceAt() at this file: EulerBernoulliBeamHelper.cs