Local Stiffness Matrix for Combined Beam and Spar Element With Axial and Lateral Linear Resistance

Our objective is to develop an element with the following characteristics:

Two-dimensional, two node element

Euler-Bernoulli beam theory

Axial stiffness (“spar” type element)

“Beam on elastic foundation” characteristic

Axial elastic resistance

Although it is doubtless possible to start with a single weak-form equation and develop the stiffness matrix, it is more convenient to develop the axial and bending local stiffness matrices separately and then to put them together with superposition.

Both spar and beam elements generally use two nodes, one at each end. For this derivation all of the constants (beam elastic modulus, moment of inertia, cross-sectional area and spring constants) will be assumed to be uniform the full length of the element. If one desires to model non-uniform beams, one can either develop an element with the desired non-uniformity or use more elements, and we see both in finite element analysis.

Let us start with the bending portion. The weak form of the equation for the fourth-order Euler-Bernoulli beam element is

where is the Young’s modulus of the material and is the moment of inertia of the beam. The variable represents the continuous spring constant along the length of the beam relative to the displacement of that beam, the “beam on elastic foundation.” The variable is a uniform load along the beam. The equations were derived using Maple with the idea of the results used on FORTRAN 77, thus the naming convention of some of the variables. An explanation of the weak form, its derivation and the significance of and can be found in a finite element text such as this.

At this point we need to select appropriate weighting functions for the equation. For beam elements we choose weighting functions to satisfy the Hermite interplation of the two primary variables at local nodes 1 and 2, to wit

where are the “displacements” for nodes
1 and 2 and are the first derivative slopes
at these nodes.

This can be expressed in matrix form as follows:

Inverting the matrix, we have

Multiplying the result, we have for the coefficients

The weighting function in its complete form is thus

This breaks down in to weighting functions for each independent variable as follows:

additionally assuming that

If we substitute these weighting functions into the weak form of the governing equations, perform the appropriate substitution, differentiation, integration and algebra, the first term results in the following stiffness matrix:

The second term (for the “elastic foundation”) yields the following stiffness matrix:

Now let us turn to the spar element part of the stiffness matrix. The weak form equation for this is

Here is the cross-sectional area of the beam, is a distributed axial spring constant along the spar, and is a distributed axial force along the element. To integrate from to is no different than doing so from to , only the coordinates change.

In this case we select linear weighting functions, to wit

If as before we do the substitutions and integrations, we end up with a local stiffness matrix for the spar element only as follows:

As long as all of the elements line up along the x-axis, we are done. But we know that this cannot always be the case. So we need to effect a rotation of the local stiffness matrix. Since each element can be either oriented differently, of different length or both, we need
to rotate the local stiffness matrix before inserting it into the global one. The rotation matrix is

where and are the angles of the elements from the x-axis. To effect a rotation, we need to first premultiply the matrix $K$ by the inverse of and then postmultiply the result by . That process is somewhat simplified by the fact that is orthogonal; thus, its inverse and transpose are identical. Going through that process, the rotated local stiffness matrix is (in code only; we have overwhelmed WordPress’ LaTex conversion capability):

The use of “sine” and “cosine” for the trigonometric functions makes it possible to compute these once for each matrix, thus speeding up computations.

One possible application of such a element is with driven piles or deep foundations in soil; the element can be used for both axial and flexural loads. The biggest problem is that the soil response is never linear, so they cannot be used in a “straightforward” fashion, but iteratively.