0% found this document useful (0 votes)
11 views

file

Uploaded by

Tayeb Chelirem
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views

file

Uploaded by

Tayeb Chelirem
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

Lehrstuhl für Technical Reports on Automatic Control TECHNISCHE

RT Regelungstechnik Vol. TRAC-4, Nov. 2009


UNIVERSITÄT
MÜNCHEN
Available online at: www.rt.mw.tum.de

Generating a Parametric Finite Element Model of a 3D


Cantilever Timoshenko Beam Using Matlab

Heiko Panzer, Jörg Hubele, Rudy Eid and Boris Lohmann


Institute of Automatic Control, Technische Universität München
Boltzmannstr. 15, D-85748 Garching, Germany

Abstract

In this note, a fast and easy way to produce a Finite Element model of a 3D cantilever
Timoshenko beam in state space is presented, for instance for benchmarking purposes of
parametric Model Order Reduction. The model is generated by a single MATLAB file and
provides the possibility to modify several parameters like the beam’s geometry, material
properties and the number of degrees of freedom.
Keywords: FEM; Parametric Model Order Reduction; Timoshenko Beam

1 Introduction
Many techniques for the mathematical modeling of dynamical systems, e. g. for simulating,
optimizing or controlling purposes, employ linear systems of differential equations. The desire
for increasing accuracy of such models, that may for instance originate from a Finite Element
method, and the often occurring effect of slow convergence lead to a rapidly growing number of
describing equations that eventually can no more be solved and used efficiently. Model Order
Reduction (MOR) techniques are designed to answer this problem by replacing the large scale
original model by a considerably smaller one, preserving characteristic properties of the former
and approximating its transfer behavior as accurately as possible [2]. This task turns out to be
even more complex when the original model depends on parameters like geometry or material
properties that are to be preserved in the reduced model. This problem is known as parametric
Model Order Reduction (pMOR).
In [1, 3], several models of dynamical systems from different fields of engineering have been
collected and made available for benchmarking purposes. Nevertheless, due to the high interest
in pMOR and the various reduction methods, there is currently a need for parametric models
of different complexities with one or several parameters.
In the following, an easy way to construct such a model ”manually” without the need of pro-
fessional software besides Matlab is presented. Section 2 revisits the basic elastic theory for
slender beams and allocates all quantities needed for the calculation of a local finite Timoshenko
beam element. Section 3 shows how to assemble the global mass and stiffness matrices and a
ready-to-run Matlab implementation is given in the Appendix.

Corresponding author: Tel: +49 89 289 15592, Fax: +49 89 289 15653, email: [email protected]

1
TUM Tech. Rep. Auto. Cont. Vol. TRAC-4 2

2 Elastic Beam Theory and the Local Element Matrices

𝐹 (𝑡)

𝑧
𝑦
𝑥

Figure 1: The cantilever beam

Consider a simply supported cantilever beam that is loaded by a dynamic force 𝐹 (𝑡) applied
vertically at its tip, as shown in Fig. 1.
Let the length of the beam be 𝐿, its cross section a rectangle of height ℎ and thickness 𝑡, thus
with area 𝐴 = ℎ ⋅ 𝑡. We assume it is made of an isotropic, linear elastic material (e. g. steel),
with density 𝜌, Young’s modulus 𝐸 and Poisson’s ratio 𝜈. Its mass is accordingly given by
𝐸
𝑚 = 𝐿 ⋅ ℎ ⋅ 𝑡 ⋅ 𝜌 and its shear modulus by 𝐺 = 2(𝜈+1) .
𝐿
Now, we separate the beam into 𝑁 finite elements, each of which has length 𝑙 = 𝑁 and mass
𝑚
𝑚𝑒 = 𝑁 . The global numbering is carried out according to Fig. 2, thus the 𝑖-th Finite Element
connects the (𝑖 − 1)st and the 𝑖-th node. [5]

1 2 3 ... 𝑁

0 1 2 3 𝑁 −1 𝑁

Figure 2: Global numbering of elements and nodes

For the 3D case, every node has six degrees of freedom (dof): Three translational displacements
𝑢, 𝑣, 𝑤 and three rotational degrees of freedom 𝛼, 𝛽, 𝛾 (w. r. t. 𝑥-, 𝑦- and 𝑧-axis, respectively)
as seen in Fig. 2.

𝑧
𝑦 𝑤1 𝑤2

𝑥 𝛾1 𝛾2
𝛽1 𝑣1 𝛽2 𝑣2

𝑢2
𝑢1
𝛼1 𝛼2
node 1 node 2

Figure 3: Local degrees of freedom


TUM Tech. Rep. Auto. Cont. Vol. TRAC-4 3

Recall that the element’s second moments of area about 𝑦 and 𝑧 and its polar moments of inertia
about 𝑥 are given by
𝑡 ℎ3 𝑡3 ℎ ℎ2 + 𝑡2 𝑚
𝐼𝑦 = , 𝐼𝑧 = , 𝐼𝑝 = .
12 12 12 𝑁
For the element’s torsion constant 𝐼𝑡 , only an approximation can be given, as no exact analytical
equations exist for non-circular cross-sections. In case of an almost square cross section, i. e.
ℎ ≈ 𝑡, it is given by [4]
𝐼𝑡 = 0.141 𝑡 ℎ3 , if ℎ < 𝑡, or 𝐼𝑡 = 0.141 𝑡3 ℎ, if ℎ > 𝑡.
For simplification, define
12 𝐸 𝐼𝑧 12 𝐸 𝐼𝑦
𝑃𝑦 = , 𝑃𝑧 = ,
𝐺 𝐴𝑆,𝑦 𝑙2 𝐺 𝐴𝑆,𝑧 𝑙2
where the effective area of shear for a rectangular cross-section is given by 𝐴𝑆,𝑦 = 𝐴𝑆,𝑧 = 65 𝑡 ℎ.
Note that setting 𝑃𝑦 = 𝑃𝑧 = 0 leads to an Euler Bernoulli beam model as the influence of shear
stiffness is neglected.

We are now ready to compute the local mass and stiffness matrices, M𝑒11 and K𝑒11 , of the
finite Timoshenko beam element as presented in [6]. Remember that each element links twelve
local dofs {𝑢1 , 𝑣1 , 𝑤1 , 𝛼1 , 𝛽1 , 𝛾1 , 𝑢2 , 𝑣2 , 𝑤2 , 𝛼2 , 𝛽2 , 𝛾2 }, six belonging to each node. Therefore, we
partition M𝑒11 and K𝑒11 into
[ ] [ 𝑒 ]
𝑒 M𝑒11 M𝑒12 𝑒 K11 K𝑒12
M = , K = , (1)
M𝑒21 M𝑒22 K𝑒21 K𝑒22
where (⋅)𝑒11 and (⋅)𝑒22 describe the interdependency of the dofs of the first and second node,
respectively, and (⋅)𝑒12 = (⋅)𝑒21 the interconnection between both of them [5]. M𝑒22 and K𝑒22 are
equal to M𝑒11 and K𝑒11 , respectively, except for the sign of the off-diagonal entries.

⎡ ⎤
1
0 0 0 0 0
⎢ 3 ⎥

⎢ 13 6 𝐼𝑧 11 𝑙 𝐼𝑧 ⎥

⎢ 0 + 0 0 0 + ⎥
⎢ 35 5 𝐴𝑙2 210 10 𝐴𝑙 ⎥
⎢ 13 6 𝐼𝑦 11 𝑙 𝐼𝑦 ⎥
⎢ 0 0 + 0 − − 0 ⎥
M𝑒11

= 𝑚𝑒 ⎢ 35 5 𝐴𝑙2 210 10 𝐴𝑙 ⎥
(2)
⎢ 0 𝐼𝑝 ⎥
0 0 0 0 ⎥

⎢ 3𝐴 2


⎢ 11 𝑙 𝐼𝑦 𝑙 2 𝐼𝑦 ⎥
⎢ 0 0 − − 0 + 0 ⎥
⎢ 210 10 𝐴𝑙 105 15 𝐴 2

⎣ 11 𝑙 𝐼𝑧 𝑙 2 𝐼𝑧 ⎦
0 + 0 0 0 +
210 10 𝐴𝑙 105 15 𝐴

⎡ ⎤
1
0 0 0 0 0
⎢ 6 ⎥

⎢ 9 6 𝐼𝑧 13 𝑙 𝐼𝑧 ⎥

⎢ 0 − 0 0 0 + − ⎥
⎢ 70 5 𝐴𝑙2 420 10 𝐴𝑙 ⎥
⎢ 9 6 𝐼𝑦 13 𝑙 𝐼𝑦 ⎥
⎢ 0 0 − 0 − + 0 ⎥
M𝑒21 = M𝑒12 𝑇

= 𝑚𝑒 ⎢ 70 5 𝐴𝑙2 420 10 𝐴𝑙 ⎥
⎥ (3)
⎢ 0 𝐼𝑝
0 0 0 0 ⎥

⎢ 6𝐴 ⎥

⎢ 13 𝑙 𝐼𝑦 𝑙2 2 𝐼𝑦 ⎥
⎢ 0 0 − 0 − − 0 ⎥
⎢ 420 10 𝐴𝑙 140 30 𝐴 2

⎣ 13 𝑙 𝐼𝑧 𝑙 2 𝐼𝑧 ⎦
0 − + 0 0 0 − −
420 10 𝐴𝑙 140 30 𝐴
TUM Tech. Rep. Auto. Cont. Vol. TRAC-4 4

⎡ ⎤
𝐴𝑙2 0 0 0 0 0
⎢ 12𝐸𝐼𝑧 6𝐸𝐼𝑧 𝑙 ⎥
⎢ 0 0 0 0 ⎥

⎢ 1 + 𝑃𝑦 1 + 𝑃𝑦 ⎥

⎢ 12𝐸𝐼𝑦 6𝐸𝐼𝑦 𝑙 ⎥
⎢ 0 0 0 − 0 ⎥
1 ⎢ 1 + 𝑃𝑧 1 + 𝑃𝑧 ⎥
K𝑒11 = 3⎢ ⎥ (4)
𝑙 ⎢
⎢ 0 0 0 𝐺𝐼𝑡 𝑙2 0 0 ⎥

2
⎢ 6𝐸𝐼𝑦 𝑙 𝐸𝐼𝑦 𝑙 (4 + 𝑃𝑧 ) ⎥

⎢ 0 0 − 0 0 ⎥

⎢ 1 + 𝑃𝑧 1 + 𝑃𝑧 ⎥
⎣ 6𝐸𝐼𝑧 𝑙 𝐸𝐼𝑧 𝑙2 (4 + 𝑃𝑦 ) ⎦
0 0 0 0
1 + 𝑃𝑦 1 + 𝑃𝑦
⎡ ⎤
−𝐸𝐴𝑙2 0 0 0 0 0
⎢ 12𝐸𝐼𝑧 6𝐸𝐼𝑧 𝑙 ⎥
⎢ 0 − 0 0 0 − ⎥

⎢ 1 + 𝑃𝑦 1 + 𝑃𝑦 ⎥

⎢ 12𝐸𝐼𝑦 6𝐸𝐼𝑦 𝑙 ⎥
⎢ 0 0 − 0 0 ⎥
1 ⎢ 1 + 𝑃𝑧 1 + 𝑃𝑧 ⎥
K𝑒21 = K𝑒12 𝑇 = 3⎢ ⎥ (5)
𝑙 ⎢
⎢ 0 0 0 −𝐺𝐼𝑡 𝑙2 0 0 ⎥

⎢ 6𝐸𝐼𝑦 𝑙 𝐸𝐼𝑦 𝑙2 (2 − 𝑃𝑧 ) ⎥

⎢ 0 0 − 0 0 ⎥

⎢ 1 + 𝑃𝑧 1 + 𝑃𝑧 ⎥
2
⎣ 6𝐸𝐼𝑧 𝑙 𝐸𝐼𝑧 𝑙 (2 − 𝑃𝑦 ) ⎦
0 0 0 0
1 + 𝑃𝑦 1 + 𝑃𝑦

3 Assembly of Global Matrices and Insertion of Boundary Conditions


The next step is the assembly of the global mass and stiffness matrices M and K.
Due to the simple geometry of the beam, no coordinate transformations are needed. In addition,
the particularly easy allocation from local to global dofs according to the numbering shown in
Fig. 2 allows us to immediately state the assembled matrices M𝐴 and K𝐴 to be

⎡ ⎤
M𝑒11 M𝑒12 0 ... 0
⎢ 𝑒 𝑒 𝑒 𝑒 ⎥
⎢ M21 M22 + M11 M12 ⎥
⎢ ⎥
⎢ .. .. ⎥
𝐴
⎢ 0 M𝑒21 M𝑒11 + M𝑒22 . . ⎥
M =⎢ .

. .
⎥,
⎥ (6)
⎢ .. .. .. ⎥
⎢ ⎥

⎣ M𝑒22 + M𝑒11 M𝑒12 ⎥

0 ... M𝑒21 M𝑒22

⎡ ⎤
K𝑒11 K𝑒12 0 ... 0
⎢ 𝑒 ⎥
⎢ K21 K𝑒22 + K𝑒11 K𝑒12 ⎥
⎢ ⎥
⎢ .. .. ⎥
⎢ 0 K𝑒21 K𝑒11 + K𝑒22 . . ⎥
K𝐴 = ⎢
⎢ .. . .
⎥.
⎥ (7)
⎢ . .. .. ⎥
⎢ ⎥

⎣ K𝑒22 + K𝑒11 K𝑒12 ⎥

0 ... K𝑒21 K𝑒22

The cantilever beam is supported at its left end where neither deflection nor slope may occur.
Accordingly, we demand all degrees of freedom of the very left node to be 0 (Dirichlet Boundary
Condition). This complies to removing the first six rows and columns of M𝐴 and K𝐴 to get our
final mass and stiffness matrices M and K [5].
TUM Tech. Rep. Auto. Cont. Vol. TRAC-4 5

The remaining degrees of freedom can be collected to the global state vector
[ ]𝑇
z = 𝑢(1) 𝑣 (1) 𝑤(1) 𝛼(1) 𝛽 (1) 𝛾 (1) 𝑢(2) 𝑣 (2) 𝑤(2) 𝛼(2) 𝛽 (2) 𝛾 (2) . . . 𝑢(𝑁 ) 𝑣 (𝑁 ) 𝑤(𝑁 ) 𝛼(𝑁 ) 𝛽 (𝑁 ) 𝛾 (𝑁 ) .

The load 𝐹 (𝑡), that acts on the tip of the beam along the negative 𝑧-axis, affects 𝑤(𝑁 ) , which is
the fourth from last state. We choose this displacement to be also the output. Accordingly, the
global load vector b̂ and the output vector ĉ are given by
[ ]
−b̂𝑇 = ĉ = 0𝑇 , . . . , 0𝑇 , 0 0 1 0 0 0 .

Note that in static Finite Elements, the discrete application of forces leads to convergence
problems. For dynamic considerations however, this is a valid simplification. Note further that
due to the decoupling between transversal bending deformations along 𝑦 and 𝑧, longitudinal
displacement and torsion, only part of the states will be excited for the given load vector b̂.
Naturally, it is possible to augment the input and output vectors with further columns and rows,
respectively, in order to obtain a MIMO model.
Finally, we assume the dampening matrix D to be given by (Rayleigh damping)

D = 𝑑1 M + 𝑑2 K. (8)

This leads us to the second-order system

M z̈(𝑡) + D ż(𝑡) + K z(𝑡) = b̂ 𝐹 (𝑡), (9)


𝑇
𝑦(𝑡) = ĉ z(𝑡), (10)

which can be rewritten as a state space model


⎧ b
 E ẋ A x

 z }| ]{ z[ }| ]{
[ z
[ }| ]{ z[ }| ]{ z }| ]{
[
 0
⎨ F 0 ż 0 F z

 (𝑡) = (𝑡) + 𝐹 (𝑡)
0 M z̈ −K −D [ ż ] b̂ (11)

 [ 𝑇 ] z

 𝑦(𝑡) = ĉ 0𝑇 (𝑡),


⎩ | {z } ż
c𝑇

where F ∈ ℝ6𝑁 ×6𝑁 is an arbitrary nonsingular matrix [8].

Remarks for use in MOR:


∙ For the aim of stability preservation during the MOR process, it can be advisable to choose
F = K in (11). This makes A contractive and E positive definite, which, according to [7],
guarantees a stable reduced system for any one-sided projection method like one-sided Arnoldi.

∙ 𝑉 = x𝑇 Qx with Q = E−1 is then a Lyapunov function of system (11).

∙ Besides, 𝑇 𝑇
[ changing
] the output
[ matrix]to c = b Q, (11) is a Port Hamiltonian system where
0 K 0 0
J= and R = .
−K 0 0 D
TUM Tech. Rep. Auto. Cont. Vol. TRAC-4 6

4 Conclusions
We have presented a thorough way to produce state space models of a 3D cantilever Timo-
shenko beam that can be easily implemented. A ready-to-run Matlab code, that can be adapted
straightforward to match the user’s needs, is given in the Appendix. The function can be mod-
ified to have any of the quantities 𝐿, 𝑡, 𝑑, 𝜌, 𝐸, 𝜈, . . . , as well as 𝑁 , the number of elements, as
parameters.

For more MATLAB codes and further information, please visit our website: www.rt.mw.tum.de.

References
[1] Oberwolfach Model Reduction Benchmark Collection. available online at
http://www.imtek.uni-freiburg.de/simulation/benchmark/.

[2] A. C. Antoulas. Approximation of Large-Scale Dynamical Systems. SIAM, Philadelphia,


2005.

[3] Y. Chahlaoui and P. Van Dooren. A collection of Benchmark Examples for Model Reduction
of Linear Time Invariant Dynamical Systems. Slicot working note, 2002. Available at
ftp://wgs.esat.kuleuven.ac.be/pub/WGS/ REPORTS/SLWN2002-2.ps.Z.

[4] K.-H. Grote and J. Feldhusen. Dubbel, Taschenbuch für den Maschinenbau. Springer, 21.
Auflage, 2004.

[5] Y. W. Kwon and H. Bang. The Finite Element Method Using MATLAB. Crc Pr Inc., 2nd
Edition, 2000.

[6] J. S. Przemieniecki. Theory of Matrix Structural Analysis. McGraw-Hill Book Company,


1968.

[7] R. Castañé-Selga, R. Eid, and B. Lohmann. A generalized theory for stability preservation
in model order reduction of large scale systems. (In preparation).

[8] B. Salimbahrami. Structure Preserving Order Reduction of Large Scale Second Order Models.
PhD thesis, Institute of Automatic Control, Technical University of Munich, 2005.

Appendix A: Implementation in MATLAB

function sys = fem beam(L)


% Generates a FEM model of a 3D cantilever Timoshenko beam
% Replace arbitrarily many of the preset parameters by inputs to the file!
%
% Please cite this model as:
% H. Panzer, J. Hubele et al.:
% Generating a Parametric Finite Element Model
% of a 3D Cantilever Timoshenko Beam Using Matlab
% Technical reports on Automatic Control, vol. TRAC−4,
% Institute of Automatic Control, Technische Universität München, 2009
%
% Usage example: sys = fem beam(1); % for beam of length L=1m
%
TUM Tech. Rep. Auto. Cont. Vol. TRAC-4 7

% Authors: Jörg Hubele ([email protected])


% Heiko Panzer ([email protected])
% Last Change: 20 Nov 2009
%
% Visit our webpage for more code downloads: www.rt.mw.tum.de

% ========== parameters ==========

% (input) L: total beam length (x) [m]


N = 20; % number of elements [1]
t = .01; % t: beam thickness (y) [m]
h = .01; % h: beam height (z) [m]
rho = 7850; % density of steel [kg/mˆ3]
m = L*t*h*rho; % m: total beam mass [kg]
E = 210e9; % E: Young's modulus of steel [N/mˆ2]
nu = 3/10; % nu: Poisson's ratio
d1 = 8e−6; d2 = 8; % d1, d2: dampening ratio (D = d1*K + d2*M)

% ========== physical quantities ==========

G = E/2/(1+nu); % G: Shear modulus [N/mˆ2]


l = L/N; % l: beam element length
A = t*h ; % beam area [mˆ2]
ASy = 5/6*A ; ASz = 5/6*A ; % effective area of shear
Iy = 1/12*hˆ3*t ; Iz = 1/12*tˆ3*h; % second moments of area [mˆ4]
Ip = 1/12*t*h*(hˆ2+tˆ2); % polar moment of inertia [mˆ4]
It = min([h t])ˆ3*max([h t])/7; % torsion constant [mˆ4]
Py = 12*E*Iz/(G*ASy*lˆ2) ; Pz = 12*E*Iy/(G*ASz*lˆ2) ; % Phi

% ========== element mass and stiffness matrices ==========

% element mass matrix

M11 = zeros(6,6);
M11(1,1) = 1/3;
M11(2,2) = 13/35 + 6*Iz/(5*A*lˆ2);
M11(3,3) = 13/35 + 6*Iy/(5*A*lˆ2);
M11(4,4) = Ip/(3*A);
M11(5,5) = lˆ2/105 + 2*Iy/(15*A);
M11(6,6) = lˆ2/105 + 2*Iz/(15*A);
M11(6,2) = 11*l/210 + Iz/(10*A*l);
M11(2,6) = M11(6,2) ;
M11(5,3) = −11*l/210 − Iy/(10*A*l);
M11(3,5) = M11(5,3) ;

M22 = −M11 + 2*diag(diag(M11));

M21 = zeros(6,6);
M21(1,1) = 1/6;
M21(2,2) = 9/70 − 6*Iz/(5*A*lˆ2);
M21(3,3) = 9/70 − 6*Iy/(5*A*lˆ2);
M21(4,4) = Ip/(6*A);
M21(5,5) = −lˆ2/140 − Iy/(30*A);
M21(6,6) = −lˆ2/140 − Iz/(30*A);
M21(6,2) = −13*l/420 + Iz/(10*A*l);
M21(2,6) = −M21(6,2);
M21(5,3) = 13*l/420 − Iy/(10*A*l);
M21(3,5) = −M21(5,3);

Me = m/N*[M11, M21'; M21, M22];


TUM Tech. Rep. Auto. Cont. Vol. TRAC-4 8

% element stiffness matrix

K11 = zeros(6,6);
K11(1,1) = E*A/l ;
K11(2,2) = 12*E*Iz/(lˆ3*(1+Py)) ;
K11(3,3) = 12*E*Iy/(lˆ3*(1+Pz)) ;
K11(4,4) = G*It/l ;
K11(5,5) = (4+Pz)*E*Iy/(l*(1+Pz)) ;
K11(6,6) = (4+Py)*E*Iz/(l*(1+Py)) ;
K11(2,6) = 6*E*Iz/(lˆ2*(1+Py)) ;
K11(6,2) = K11(2,6) ;
K11(3,5) = −6*E*Iy/(lˆ2*(1+Pz)) ;
K11(5,3) = K11(3,5) ;

K22 = −K11 + 2*diag(diag(K11));

K21 = K11 − 2*diag(diag(K11));


K21(5,5) = (2−Pz)*E*Iy/(l*(1+Pz)) ;
K21(6,6) = (2−Py)*E*Iz/(l*(1+Py)) ;
K21(2,6) = −K21(6,2);
K21(3,5) = −K21(5,3);

Ke = [K11, K21'; K21, K22];

% ========== assembly ==========

% global mass and stiffness matrices: N*(6+1) dofs


M = zeros(6*(N+1), 6*(N+1));
K = zeros(6*(N+1), 6*(N+1));

% assembly
for i = 1:N
a=1+6*(i−1):6*(i+1);
K(a,a) = K(a,a) + Ke;
M(a,a) = M(a,a) + Me;
end

% boundary condition
K(1:6,:)=[]; K(:,1:6)=[];
M(1:6,:)=[]; M(:,1:6)=[];

% dampening matrix
D = d1*K + d2*M ;

% global load and output vectors


B=zeros(6*N,1); C=zeros(1,6*N);
B(N*6−3,1)=−1; % input: beam tip, −z
C(1,N*6−3)=1; % output: beam tip, +z

% ========== second order −−> first order ==========

F = eye(6*N);
E = [F zeros(6*N,6*N); zeros(6*N,6*N) M];
A = [zeros(6*N,6*N) F; −K −D] ;
B = [zeros(6*N,size(B,2)); B];
C = [C, zeros(size(C,1), 6*N)];

sys = dss(A,B,C,0,E);

end

You might also like