Section 22.2 of Chapter 22: Large displacements cantilever beam

3D cantilever beam with large displacements. Finite difference method

A simple numerical method to study a 3D cantilever with large displacements, utilising finite differences, is shown in this section. It is similar to that presented in Chapter 4 for the 2D case.

GeometryStraight slender beam, constant cross-section
StrainSmall
MaterialLinear
DisplacementLarge
Initially straight cantilever and deformed beam with applied end forces and moments
Figure 1. Initially straight cantilever and deformed beam with applied end forces and moments.

Initially, a straight beam lies on the xx-axis of the global reference frame; it is clamped at one end and loaded at the free end.

Euler–Bernoulli beam model (i.e. the effect of the shear force is neglected) for an initially curved beam:

D(κκ0)=M(*) \boldsymbol{D}(\boldsymbol{\kappa}-\boldsymbol{\kappa}_0) = \overline{\boldsymbol{M}} \tag{*}

or:

{GIt(κxˉκ0xˉ)=Mxˉ,EIyˉ(κyˉκ0yˉ)=Myˉ,EIzˉ(κzˉκ0zˉ)=Mzˉ. \left\{ \begin{array}{l} GI_t(\kappa_{\bar x}-\kappa_{0\bar x})=M_{\bar x},\\[2mm] EI_{\bar y}(\kappa_{\bar y}-\kappa_{0\bar y})=M_{\bar y},\\[2mm] EI_{\bar z}(\kappa_{\bar z}-\kappa_{0\bar z})=M_{\bar z}. \end{array} \right.
EE is Young’s modulus; It,Iyˉ,IzˉI_t,I_{\bar y},I_{\bar z} are the geometric property for torsion and the geometrical moments of inertia of the cross-section; Mxˉ,Myˉ,MzˉM_{\bar x},M_{\bar y},M_{\bar z} are the torsion and bending moment components used in the local numerical formulation.

The above equations are written in the local reference frame (xˉ,yˉ,zˉ)(\bar x,\bar y,\bar z), composed of the xˉ\bar x-axis, tangent to the deformed beam, and the two principal centroidal axes yˉ,zˉ\bar y,\bar z of the beam cross-section.

D=[GIt000EIyˉ000EIzˉ],κ={κxˉκyˉκzˉ}, \boldsymbol{D}= \begin{bmatrix} GI_t&0&0\\ 0&EI_{\bar y}&0\\ 0&0&EI_{\bar z} \end{bmatrix}, \qquad \boldsymbol{\kappa}= \left\{ \begin{array}{c} \kappa_{\bar x}\\ \kappa_{\bar y}\\ \kappa_{\bar z} \end{array} \right\},
κ0={κ0xˉκ0yˉκ0zˉ},M={MxˉMyˉMzˉ}. \boldsymbol{\kappa}_0= \left\{ \begin{array}{c} \kappa_{0\bar x}\\ \kappa_{0\bar y}\\ \kappa_{0\bar z} \end{array} \right\}, \qquad \overline{\boldsymbol{M}}= \left\{ \begin{array}{c} M_{\bar x}\\ M_{\bar y}\\ M_{\bar z} \end{array} \right\}.

To preserve both the geometrical definition of the curvature vector and the moment sign convention adopted in the Nomenclature, we introduce the sign matrix:

S=[100010001]. \boldsymbol{S}= \begin{bmatrix} 1&0&0\\ 0&-1&0\\ 0&0&1 \end{bmatrix}.

The local moment vector according to the Nomenclature, distinguished by the superscript NN, is therefore

MN=SM, \overline{\boldsymbol{M}}^{\,N}=\boldsymbol{S}\,\overline{\boldsymbol{M}},

or explicitly,

Mxˉ=GIt(κxˉκ0xˉ),MyˉN=EIyˉ(κyˉκ0yˉ),Mzˉ=EIzˉ(κzˉκ0zˉ). M_{\bar x}=GI_t(\kappa_{\bar x}-\kappa_{0\bar x}),\qquad M_{\bar y}^{N}=-EI_{\bar y}(\kappa_{\bar y}-\kappa_{0\bar y}),\qquad M_{\bar z}=EI_{\bar z}(\kappa_{\bar z}-\kappa_{0\bar z}).

The position of a beam arc dsds, on the xˉ\bar x-axis, is defined by the Tait–Bryan angles, see Section 21.2.

Tait–Bryan angles defining the beam arc
Figure 2. Tait–Bryan angles defining the beam arc.

We assume that the local reference frame is obtained as follows: initially the local frame coincides with the global one and we apply three consecutive rotations in this order, called zyxzy'x'':

  • a rotation of angle ψ\psi around the global zz-axis;
  • a rotation of angle θ\theta around the new yy-axis, denoted yy';
  • finally, a rotation of angle φ\varphi around the newest xx-axis, denoted xx''.

The rotation matrix is, see Section 21.2:

R=[cosψcosθsinψcosθsinθsinψcosφ+cosψsinθsinφcosψcosφ+sinψsinθsinφcosθsinφsinψsinφ+cosψsinθcosφcosψsinφ+sinψsinθcosφcosθcosφ]. \boldsymbol{R}= \begin{bmatrix} \cos\psi\cos\theta& \sin\psi\cos\theta& -\sin\theta\\ -\sin\psi\cos\varphi+\cos\psi\sin\theta\sin\varphi& \cos\psi\cos\varphi+\sin\psi\sin\theta\sin\varphi& \cos\theta\sin\varphi\\ \sin\psi\sin\varphi+\cos\psi\sin\theta\cos\varphi& -\cos\psi\sin\varphi+\sin\psi\sin\theta\cos\varphi& \cos\theta\cos\varphi \end{bmatrix}.

As in Section 22.1, R\boldsymbol{R} is the passive transformation matrix from the global reference frame to the local reference frame:

v=Rv,v=RTv. \overline{\boldsymbol{v}}=\boldsymbol{R}\,\boldsymbol{v}, \qquad \boldsymbol{v}=\boldsymbol{R}^T\overline{\boldsymbol{v}}.

According to Section 22.1, the curvature tensor is defined by [1]:

κ~=dRdxˉRT, \widetilde{\boldsymbol{\kappa}} = \frac{d\boldsymbol{R}}{d\bar x}\boldsymbol{R}^T,

where

κ~=[0κzˉκyˉκzˉ0κxˉκyˉκxˉ0]. \widetilde{\boldsymbol{\kappa}} = \begin{bmatrix} 0&-\kappa_{\bar z}&\kappa_{\bar y}\\ \kappa_{\bar z}&0&-\kappa_{\bar x}\\ -\kappa_{\bar y}&\kappa_{\bar x}&0 \end{bmatrix}.

Using the Tait–Bryan parametrization, the curvature vector results [2]:

{κxˉκyˉκzˉ}=[sinθ01cosθsinφcosφ0cosθcosφsinφ0]{ψθφ}, \left\{ \begin{array}{c} \kappa_{\bar x}\\ \kappa_{\bar y}\\ \kappa_{\bar z} \end{array} \right\} = \begin{bmatrix} -\sin\theta&0&1\\ \cos\theta\sin\varphi&\cos\varphi&0\\ \cos\theta\cos\varphi&-\sin\varphi&0 \end{bmatrix} \left\{ \begin{array}{c} \psi'\\ \theta'\\ \varphi' \end{array} \right\},

or

κ=Aα, \boldsymbol{\kappa} = \boldsymbol{A}\,\boldsymbol{\alpha}',

where

A=[sinθ01cosθsinφcosφ0cosθcosφsinφ0], \boldsymbol{A}= \begin{bmatrix} -\sin\theta&0&1\\ \cos\theta\sin\varphi&\cos\varphi&0\\ \cos\theta\cos\varphi&-\sin\varphi&0 \end{bmatrix},
α={ψθφ},ψ=dψds,θ=dθds,φ=dφds. \boldsymbol{\alpha}'= \left\{ \begin{array}{c} \psi'\\ \theta'\\ \varphi' \end{array} \right\}, \qquad \psi'=\frac{d\psi}{ds}, \qquad \theta'=\frac{d\theta}{ds}, \qquad \varphi'=\frac{d\varphi}{ds}.

In this section, we will analyse only an initially straight flexible beam:

κ0=03×1. \boldsymbol{\kappa}_0=\boldsymbol{0}_{3\times1}.

At each point (x,y,z)(x,y,z) of the deformed beam, equation (*) becomes

Dκ=M, \boldsymbol{D}\boldsymbol{\kappa} = \overline{\boldsymbol{M}},

or

DAα=M. \boxed{ \boldsymbol{D}\boldsymbol{A}\,\boldsymbol{\alpha}' = \overline{\boldsymbol{M}}. }

The moment in the current cross-section (x,y,z)(x,y,z), expressed in the global reference frame, is

M={xnxynyznz}×{XYZ}+{CxCyCz}, \boldsymbol{M}= \left\{ \begin{array}{c} x_n-x\\ y_n-y\\ z_n-z \end{array} \right\} \times \left\{ \begin{array}{c} X\\ Y\\ Z \end{array} \right\} + \left\{ \begin{array}{c} C_x\\ C_y\\ C_z \end{array} \right\},

or

M={Z(yny)Y(znz)+CxX(znz)Z(xnx)+CyY(xnx)X(yny)+Cz}, \boldsymbol{M}= \left\{ \begin{array}{c} Z(y_n-y)-Y(z_n-z)+C_x\\ X(z_n-z)-Z(x_n-x)+C_y\\ Y(x_n-x)-X(y_n-y)+C_z \end{array} \right\},

where ×\times indicates the cross product between two vectors.

The moments in the local reference frame are

M=RM. \boxed{ \overline{\boldsymbol{M}} = \boldsymbol{R}\,\boldsymbol{M}. }

The beam is divided into n1n-1 finite differences. Node 1 is at the origin, the clamped end, and node nn corresponds to the free end of the beam where the load is applied. The nodes are equidistant. The distance between two consecutive nodes is

h=Ln1, h=\frac{L}{n-1},

where LL is the length of the beam.

With finite differences, the differential equation

DAα=M \boldsymbol{D}\boldsymbol{A}\,\boldsymbol{\alpha}' = \overline{\boldsymbol{M}}

becomes, using backward differences,

DAi{ψiψi1hθiθi1hφiφi1h}=Ri{Z(ynyi)Y(znzi)+CxX(znzi)Z(xnxi)+CyY(xnxi)X(ynyi)+Cz},i=2,,n. \boldsymbol{D}\boldsymbol{A}_i \left\{ \begin{array}{c} \dfrac{\psi_i-\psi_{i-1}}{h}\\[3mm] \dfrac{\theta_i-\theta_{i-1}}{h}\\[3mm] \dfrac{\varphi_i-\varphi_{i-1}}{h} \end{array} \right\} = \boldsymbol{R}_i \left\{ \begin{array}{c} Z(y_n-y_i)-Y(z_n-z_i)+C_x\\ X(z_n-z_i)-Z(x_n-x_i)+C_y\\ Y(x_n-x_i)-X(y_n-y_i)+C_z \end{array} \right\}, \qquad i=2,\ldots,n.

The condition at the clamped end, node 1, is

ψ1=0,θ1=0,φ1=0. \psi_1=0,\qquad \theta_1=0,\qquad \varphi_1=0.
Ri\boldsymbol{R}_i is the rotation matrix computed for node ii, that is, for the angles ψi,θi,φi\psi_i,\theta_i,\varphi_i.

The above equation can be rewritten in a recursive manner, making it very easy to program:

{ψiθiφi}=h[DAi]1Ri{Z(ynyi)Y(znzi)+CxX(znzi)Z(xnxi)+CyY(xnxi)X(ynyi)+Cz}+{ψi1θi1φi1},i=2,,n. \left\{ \begin{array}{c} \psi_i\\ \theta_i\\ \varphi_i \end{array} \right\} = h[\boldsymbol{D}\boldsymbol{A}_i]^{-1}\boldsymbol{R}_i \left\{ \begin{array}{c} Z(y_n-y_i)-Y(z_n-z_i)+C_x\\ X(z_n-z_i)-Z(x_n-x_i)+C_y\\ Y(x_n-x_i)-X(y_n-y_i)+C_z \end{array} \right\} + \left\{ \begin{array}{c} \psi_{i-1}\\ \theta_{i-1}\\ \varphi_{i-1} \end{array} \right\}, \qquad i=2,\ldots,n.

Several iterations are needed: using the above recursive equation, at the jj-th iteration, the nodal Tait–Bryan angles

αi={ψiθiφi},i=1,,n, \boldsymbol{\alpha}_i= \left\{ \begin{array}{c} \psi_i\\ \theta_i\\ \varphi_i \end{array} \right\}, \qquad i=1,\ldots,n,

are found as functions of the nodal coordinates obtained in the previous iteration j1j-1. Then the new nodal coordinates are found and so on.

The Cartesian coordinates of a point located at the curvilinear coordinate ss, expressed in Tait–Bryan angles, are

{x(s)y(s)z(s)}=0s{cosψcosθsinψcosθsinθ}ds, \left\{ \begin{array}{c} x(s)\\ y(s)\\ z(s) \end{array} \right\} = \int_0^s \left\{ \begin{array}{c} \cos\psi\cos\theta\\ \sin\psi\cos\theta\\ -\sin\theta \end{array} \right\}\,ds,

or numerically:

xi=hk=1i1cosψk+12cosθk+12,yi=hk=1i1sinψk+12cosθk+12,zi=hk=1i1sinθk+12,i=2,,n, \begin{aligned} x_i&=h\sum_{k=1}^{i-1} \cos\psi_{k+\frac12}\cos\theta_{k+\frac12},\\[3mm] y_i&=h\sum_{k=1}^{i-1} \sin\psi_{k+\frac12}\cos\theta_{k+\frac12},\\[3mm] z_i&=-h\sum_{k=1}^{i-1} \sin\theta_{k+\frac12}, \\[2mm] &i=2,\ldots,n, \end{aligned}

where

x1=0,y1=0,z1=0, x_1=0,\qquad y_1=0,\qquad z_1=0,

and

ψk+12=ψk+ψk+12,θk+12=θk+θk+12,φk+12=φk+φk+12. \psi_{k+\frac12} = \frac{\psi_k+\psi_{k+1}}{2}, \qquad \theta_{k+\frac12} = \frac{\theta_k+\theta_{k+1}}{2}, \qquad \varphi_{k+\frac12} = \frac{\varphi_k+\varphi_{k+1}}{2}.

The iterative process stops when the difference between the nodal coordinates in two consecutive iterations is smaller than a tolerance. See the MATLAB program available for download.

ZIP3D cantilever — MATLAB programDownload ZIP

The unknowns of the problem are the Tait–Bryan nodal angles, three angles for each node:

3(n1) unknowns. 3(n-1)\ \text{unknowns}.

Example 1

L=100,GIt=200,EIyˉ=EIzˉ=EI=400L=100,\quad GI_t=200,\quad EI_{\bar y}=EI_{\bar z}=EI=400 (circular cross-section), Cy=Cz=6.250.5EI/LC_y=C_z=6.25\sqrt{0.5}EI/L.

Deformed configuration of the initially straight beam lying along x-axis.
Figure 3. Deformed configuration of the initially straight beam lying along xx-axis.

Example 2

Clamped beam: L=100 mmL=100\ \mathrm{mm}, rectangular cross-section 5 mm x 1 mm (width x thickness), E=2e5 MPaE=2\mathrm{e}5\ \mathrm{MPa}.

Load on the free end: X=33.33 NX=-33.33\ \mathrm{N}, Y=16.67 NY=16.67\ \mathrm{N}, Z=23.33 NZ=23.33\ \mathrm{N}, Cx=0C_x=0, Cy=0C_y=0, Cz=0C_z=0.

Example 2: deformed cantilever beam
Figure 4. Example 2: deformed cantilever beam.

Maximum displacements (free end):

Matlab:

u=76.358 mmu=-76.358\ \mathrm{mm}, v=79.177 mmv=79.177\ \mathrm{mm}, w=19.961 mmw=19.961\ \mathrm{mm}

Ansys:

u=76.849 mmu=-76.849\ \mathrm{mm}, v=79.318 mmv=79.318\ \mathrm{mm}, w=19.440 mmw=19.440\ \mathrm{mm}

An Ansys macro can be downloaded here.

ZIPExample 2 — ANSYS macroDownload ZIP

The three moments in the global reference frame are checked in two ways:

M1=RTDκ, \boldsymbol{M}_1 = \boldsymbol{R}^T\boldsymbol{D}\boldsymbol{\kappa},

and

M2={Z(ynyi)Y(znzi)+CxX(znzi)Z(xnxi)+CyY(xnxi)X(ynyi)+Cz}. \boldsymbol{M}_2 = \left\{ \begin{array}{c} Z(y_n-y_i)-Y(z_n-z_i)+C_x\\ X(z_n-z_i)-Z(x_n-x_i)+C_y\\ Y(x_n-x_i)-X(y_n-y_i)+C_z \end{array} \right\}.

Obviously, for correct results:

M1=M2. \boldsymbol{M}_1=\boldsymbol{M}_2.
Example 2: global moment checks, Mx, My and Mz — x
Example 2: global moment checks, Mx, My and Mz — y
Example 2: global moment checks, Mx, My and Mz — z
Figure 5. Example 2: global moment checks, MxM_x, MyM_y and MzM_z.

Example 3

L=100 mmL=100\ \mathrm{mm}, rectangular cross-section: GIt=20002.6,EIyˉ=1500,EIzˉ=1000,Z=0.25,Cz=120GI_t=\dfrac{2000}{2.6},\quad EI_{\bar y}=1500,\quad EI_{\bar z}=1000,\quad Z=0.25,\quad C_z=-120.

Example 3: deformed beam
Figure 6. Example 3: deformed beam.
Figure 7. Example 3: interactive 3D view of the deformed beam.

Deformed beam

Torsion moment and bending moments along the beam (local reference frame)

In the next diagrams, the three moments in the local reference frame are computed in two ways:

M1=Dκ, \overline{\boldsymbol{M}}_1 = \boldsymbol{D}\boldsymbol{\kappa},

and

M2=RM. \overline{\boldsymbol{M}}_2 = \boldsymbol{R}\,\boldsymbol{M}.

Evidently, for correct results,

M1=M2. \overline{\boldsymbol{M}}_1 = \overline{\boldsymbol{M}}_2.
Example 3: local torsion and bending moment checks — xMxˉM_{\bar x}
Example 3: local torsion and bending moment checks — yMyˉM_{\bar y}
Example 3: local torsion and bending moment checks — zMzˉM_{\bar z}
Figure 8. Example 3: local torsion and bending moment checks.

References

1. Da Lozzo, E. C., Geometrically exact three-dimensional beam theory: modeling and FEM implementation for statics and dynamics analysis, Università degli Studi di Pavia, 2010.

2. Munteanu, M. Gh., Lobontiu, N., Nonlinear Finite Element Load-Displacement Model and Analysis of Circular-Axis Hinge, Self-Similar Mechanism With Large Out-of-Plane Motion, Journal of Mechanical Design, January 2022, Vol. 144(1)