Professional Documents
Culture Documents
Presented by:
Supervisors:
Professor
Dr
Examiner:
Professor
Ulf
Martin
Hans
Carlsson
Karlsson
Bodn
Acknowledgment
This report is the result of my master thesis in Sound And Vibration department of
KTH university. It has been done in F Group, KTH with corporation of COMSOL
Multiphysics between November-March 2012. However, The report is delivered in
December 2012.
During my thesis working time, different people in different periods of time helped me.
At KTH university, I want to thank professor Ulf Carlsson my supervisor at KTH who
supported me through the procedure, the extension permission to deliver my report and
his great guidelines.
On f Group, I would like to thank rjan Johansson that gave me the opportunity to
do my thesis in the company and Martin Karlsson for introducing me good information
sources such as book references and his bearing parameters.
On COMSOL, Remi Magnard with his vital technical supports and Per Backlund who
gave me the permission from COMSOL to use COMSOLs license during my thesis
project time.
Also, I should thank to professor Hans Bodn at KTH to being my mentor and examinor.
Hessam Moradi
December 2012
ii
ABSTRACT
Rotary machinery systems are widely used in different industries. As they have rotational
movements, the resonances will be the function of rotational speed. Nowadays, there
are different CAE (Computer Aided Engineering ) softwares that use finite element
method to solve complex problems by simplifying the model to a limited DOF (Degree Of
Freedom) system. Some of the CAE software have built-in module for rotary machinery
to solve eigenvalue problems, unbalance response, stability, etc. COMSOL multiphysics1
is a CAE software that can deal with structural mechanics. There is not any specific
module for the rotor dynamics analysis in COMSOL multiphysics version 4.2a; however,
It is possible to make a model based on 1D beam elements or even structural mechanics
elements and solve the problem by using equivalent gyroscopic moment and unbalance
force terms. The scope of this thesis is based on 1D beam element solution. Moreover, the
result of the COMSOL solution has been compared with ANSYS based on 3D element 2 .
In this thesis, the main purpose is implementing rotor dynamics concepts in COMSOL
multiphysics based on beam element3 . Second chapter is focused on the theory part of
the rotordynamics where the equations in the stationary cases are derived which measn
the rotational speed of the rotor does not change by time; moreover, a brief overview of
finite element method has been mentioned. The third chapter covers the implementation
of the rotor dynamics in COMSOL where a very brief overview of different COMSOLs
sections that are used in this thesis are described; Moreover, load implementation , 3D
mapping based on extrusion integration and comparison a result data with ANSYS are
mentioned. In the fourth chapter rotordynamics analysis is described based on Campbell
plot4 , stability analysis and harmonic response from a model that is made in COMSOL.
Final chapter is the conclusion part about this thesis based on the results that have been
shown.
iii
Contents
1 Introduction
2 Theory
2.1 Unbalance . . . . . . . . . . .
2.1.1 Introduction . . . . .
2.1.2 Derivation Formula [6]
2.2 Gyroscopic . . . . . . . . . .
2.2.1 Introduction . . . . .
2.2.2 Derivation Formula . .
2.3 Finite Element . . . . . . . .
2
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3 COMSOL
3.1 Introduction . . . . . . . . . . . . . .
3.2 Beam Element . . . . . . . . . . . .
3.2.1 Bearing load . . . . . . . . .
3.2.2 Shaft load . . . . . . . . . . .
3.2.3 Disk load . . . . . . . . . . .
3.2.4 3D Modeling . . . . . . . . .
3.2.5 Solvers . . . . . . . . . . . . .
3.3 COMSOL modeling verification . . .
3.3.1 Verification . . . . . . . . . .
3.3.1.1 Lateral Mode . . . .
3.3.1.2 A COMSOL model
software . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
comparison
. . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
with
. . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
ANSYS
. . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
13 CAE
. . . . .
4
. 4
. 4
. 5
. 8
. 8
. 10
. 14
.
.
.
.
.
.
.
.
.
.
16
16
17
17
18
19
19
21
21
21
21
. 22
4 Analyzing rotordynamics
4.1 Campbell Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2 Stability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3 Harmonic response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
25
25
28
29
5 Conclusion
32
A Appendix
33
A.1 Matlab Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
iv
Contents
A.2 ANSYS batch file [5] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
A.3 Bearing plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Table of symbols5
x, y, z,r
(x , y , z )
Gr
Gc
e
Fb
Fc
Jp
J
Ip
I
Special coordinates
Rotational coordinates [rad]
Gravity center
Geometrical center
Eccentricity [m]
Bearing forces (Stiffness and Damping) [N ]
Centrifugal force [N ]
Polar mass moment of inertia [kg.m2 ]
Mass moment of inertia around x or y [kg.m2 ]
Polar area moment of inertia [m4 ]
Area moment of inertia around x or y [m4 ]
Rotational speed [rad/s]
Natural Frequency [rad/s]
Imaginary symbol
Spring constant for inclination [N.m/rad]
Mass of the shaft per unit length [Kg/m]
Tab. 0.1: Table of symbols
In this thesis bold symbols are vector or matrix notation, otherwise are scalar.
1 Introduction
Typically, combination of shafts, bladed disks that are supported by bearings make a
rotor dynamic system. The parts that can rotate (Shafts and disks) are called rotor
and the static parts as stator (like supports). Turbo-machinaries such as gas turbines,
compressors, Jet engines are some example of the rotor dynamics systems.
The rotating parts can rotate with a constant or varying rotational speed. The constant
rotational speed is called stationary and non-stationary otherwise. In this thesis all
of the derivation formula are considered in stationary case; however, in the industries
rotors usually work with varying rotational speed but if the change of the rotational
speed rate respect to time is fairly small then it is possible to consider a quasi-stationary
rotordynamic case.
One of the simplest models for rotordynamics problems is based on Jeffcot rotor where the
rotor assumed as a rigid disk that is located on a massless elastic shaft. This simple model
can be used for some kinds of analysis such as unbalance effect. Another assumption is
axial symmetry1 rotor where the dynamic study of the rotor becomes more simplified [4]
.
When the rotor parts are rotating in some specific rotational frequencies that are called
critical speeds the rotor can have high vibration amplitudes. In this case it can damage
different part of rotor, stator and any structures that are connected to them. Critical
speeds are indeed resonances of the rotor where the rotor eigenfrequencies match rotor
rotational frequencies. The first and second critical speeds 2 are more dominant and
it is possible to detected them by using Campbell plot. Before producing a product
it is important for designers to detect these frequencies in a computer modeling stage.
The results help to produce more reliable and effective products. In rotor dynamics
usually there are some supports as bearings. These supports have different types like fluid
bearings, magnet bearings, etc. Always, a bearing exerts a force to shaft to hold it in a
right position in order to prevent any contact with stator. This force can be calculated
based on the bearing type. For example in fluid bearings, the bearing parameters which
are stiffness and damping can be calculated by using CFD3 . There are some other type
1
1 Introduction
of forces like unbalance force that exerts to the system. In this case, if the gravity and
the geometry centerline of rotor does not sit on each other this force shows up.
It could be typically to have unbalance effect for the beam or shaft due to installation of
the components, thermal effect or inhomogeneity of the shafts or disks. [6]
Gyroscopic moment is a typical moment that exerts to the rotating part of a rotor.
This moment shows up when an instantaneous inclination angel from bearing centerline
observes and it is a function of rotor rotational speed, mass moment of inertia and
inclination angel time derivative in stationary case. It is typical to observe the effect of
this moment when a disk is placed in a location of a rotating shaft where the lateral
displacement of the shaft inclines the disk.
In this thesis, the major work is setting the rotor dynamics equations inside COMSOLs
framework in a correct manner without focusing on finite element approach that is
handled by COMSOL engine codes. However, Matlab code is required for post processing
the results to plot the data for some king of solutions such as eigenvalue problems. To
implement rotor dynamics codes that are mentioned in chapter 2, rotors are considered
as flexible elements and disks as rigid. It means that the equation of rotor dynamics for
a disk can be set as a point load and for a beam as an edge load (load per unit length).
2 Theory
In this chapter the main theory of rotordynamic is derived based on newton second law.
The deviation formula in this section is based on massless shaft with a rigid disk and it
is assumed that no torsional moment and no displacement in z direction happen.[6]
2.1 Unbalance
2.1.1 Introduction
In dynamics when a mass rotating around an axis in a rotating frame, it produces a
centrifugal force with proportionality to 2 in the outward of the radial direction. It has
been shown in figure 2.1 as the vector Fc .
2 Theory
(2.1)
= r + e
. Where
The transformation rGr coordinate can be written as rGr = r + e. So rGr
r and e are the displacement and eccentricity respectively.
The equation 2.1 can be decomposed into x and y components. Where
r = rcos(t)i + rsin(t)j and e = ecos(t)i + esin(t)j regarding to x = rcos(t) and
y = rsin(t)
So rewriting 2.1 as two equations in x and y components. As in this thesis we are looking
for the stationary case solution, it means that all time derivation of are zero so
m(
x + ecos(t) e 2 cos(t)) + cx + kx = 0
m(
y + esin(t) e 2 sin(t)) + cy + ky = 0
(2.2)
2 Theory
As eccentricity is constant so equation 2.2 can be written as :
m(
x e 2 cos(t)) + cx + kx = 0
m(
y e 2 sin(t)) + cy + ky = 0
(2.3)
Both terms Fx = e 2 cos(t) and Fy = e 2 sin(t) are unbalance forces that exerts to
the disk due to eccentricity . Figure 2.3 A is the geometry of the problem and figure 2.1
B shows the existing forces diagram.
Equation 2.3 can be written as
m
x + cx + kx = me 2 cos(t)
m
y + cy + ky = me 2 sin(t)
(2.4)
2 Theory
r =
=
2 Theory
2.2 Gyroscopic
2.2.1 Introduction
Gyroscopic effect is a common phenomenon in a rotary machinery system especially in
high rotational speed. Gyroscopic effect is a moment that can be generated in a rotary
system when there are instantaneous inclinations changing in time around the rotation
axis.
Figure. 2.4: Inclination of the disk around y axis due to the beam mode shape
In this section to use Newton formula it is important to deal with vector derivation. In
vector calculus the derivative of a vector with respect to time can have a direction based
on the absolute value time derivations and the direction change of the vector. As it is
shown in 2.5 A, It is possible to decompose Wt2 Wt1 into two vectors. One of them
shows the vector direction change without changing the magnitude (W ) and the other
one shows the magnitude change without direction change (Wq ) . If the absolute value of
the vector does not change, this vector movement called stationary. In this thesis we deal
with stationary rotations that we can see the results in 2.5 B and 2.5 C. It is possible to
2 Theory
show that W is always perpendicular to Wt1 if 0.
2 Theory
10
2 Theory
momentum is perpendicular to it. The net of angular momentum is Jp 1 and produce
a torque Jp 1 during 4T 0.
By using Newton second law for moments which expresses that the derivative of angular
momentum is equal to the applied moment, equation 2.5 can be written. By decomposing
moments into x and y coordinates based on the important result from section 2.2.1
equation 2.6 can be written.[6]
J 1 + Jp 1 + = 0
(2.5)
+ x = 0
J 1x + Jp 1y
+ y = 0
J 1y Jp 1x
(2.6)
1x = x + cos(t)
1y = y + sin(t)
(2.7)
By inserting equation 2.7 into equation 2.6 equation 2.12 can be obtained2 .
(
J x + Jp y + x = (J Jp ) 2 cos(t)
J y Jp x + y = (J Jp ) 2 sin(t)
(2.8)
From the equation 2.8 for eigenvalue solution the only terms that is depends on theta
are Jp y and Jp x . These terms are gyroscopic components in x and y direction
respectively that makes the omega dependent eigenfrequency solution. The eigenvalue
solution of 2.8 gives forward whirling and backward whirling frequencies.When the rotor
is rotating it has orbital path or circular path depends on the forces and moments that
exerts to it. In the orbital movement the motion would be composed of two frequencies
that rotates in the same or opposite direction of the shafts rotation. The one that is in
the direction of the rotational speed is called forward whirling and the other opposite
direction is called backward whirling.
1
2
is dynamic unbalance
Note that we are delivering stationary case where is constant
11
2 Theory
In section 2.2.2 gyroscopic is considered when there was not any lateral displacement. But
in overall we have six degree of freedom for solid. For rotating disk or beam with constant
the deflections in the direction of the bearing centerline is negligible in comparison
with lateral movements. Based on Newton second law we can write these equations.[6]
Fx
F
y
Mxz
Myz
= x x
= y y
= x x
= y y
(2.9)
Where , , are spring constants and for a beam depends on boundary conditions based
on beam theory. The response due to transition can be obtained by writing Newton
second law at point Gr
(
mxGr = Fx = x x
myGr
= Fy = y y
(2.10)
But xGr = x + e cos(t) and yGr = y + e sin(t) and by inserting them into 2.10 the
equation of motion becomes:
(
m
x + x + x = m e 2 cos(t)
m
y + y + y = m e 2 sin(t)
(2.11)
The same principle in section 2.2.2 can be used to drive the gyroscopic in this case. The
added terms to equation 2.8 in no damping case, are restoring moments because of the
inclination. The result would be
(
J x + Jp y + x + x = (J Jp ) 2 cos(t)
J y Jp x + y + y = (J Jp ) 2 sin(t)
(2.12)
M is the mass matrix, G is the gyroscopic matrix, K is the stiffness matrix, q is the displacement
fields and F is unbalance force.
12
2 Theory
m
0
0
0
0
m
0
0
0
0
J
0
0
0
0
J
x
0
y + 0
0
0
x
y
0
0
0
0
0
0
0
Jp
0
0
Jp
0
x
0
y + 0
x
y
x
y
x
y
cos(t)
= me2 sin(t)
0
0
(2.13)
(2.14)
0
0
0
0
c11
0
c21
0
m
0
0
0
0
0
0
0
0
m
0
0
0
0
J
0
0
0
0
J
0
0
0
0
0
Jp
Jp
0
0
c12
0
c11
0
c12
0
c22
0
c21
0
c22
0 0
0 0
0 0
0 0
me 2 cos(t)
2
me sin(t)
0
0
(2.15)
(2.16)
13
2 Theory
l
0
T dx
EI
By using kinetic energy the mass matrix, gyroscopic matrix and force matrix can be
derived[6]
The element displacement can be written as linear combination of shape functions. The
element equation can be written as
M
q + (G + C)q + Kq = F
where for a rigid disk it has been shown in 2.15 where K = 0. For a rotor element without
damping consideration it can be shown that the symmetric element matrices are [6]:
14
2 Theory
156
0
0
l 22l
M = 420
54
2
r
120l
l
G = 420
156
22l
0
0
54
13l
0
0
13l
36
0
36
0
3l
3l
0
36
0
0
36
0
3l
3l
0
S
4l2
0
0
13l
3l2
0
Y
4l2
13l
0
0
3l2
M
156
0
0
22l
156
22l
0
4l2
0
4l2
S
4l2
0
0
13l
3l2
0
Y
4l2
3l
0
0
l2
M
36
0
0
3l2
36
3l
0
4l2
0
4l2
0
36
0
S
3l
0
0
Y
0
3l 4l2 0
M
0
36
3l
0
0
36
0
0
3l 36 0
3l
0
0
l2 3l
0
0
2
0
3l
l
0
0
3l 4l2 0
l
K = 420
12
0
12
S
2
0
6l 4l
Y
6l
0
0 4l2
M
12
0
0 6l 12
0
12 6l
0
0 12
0
6l 2l2
0
0
6l 4l2
6l
0
0 2l2 6l 0
0 4l2
These element matrices are calculated based on calculating the kinetic and potential
energy of an element (both translation and rotation) . Moreover, the shape function is
considered for two nodes beam element with eight degree of freedom.
The assembled matrix for the whole system (Disk-Shaft system) can be found in [6] where
the matrix elements have 12 12 dimensions.
15
3 COMSOL
3.1 Introduction
COMSOL multiphysics is a finite element software that supports different kinds of physics
such as structural mechanics, acoustics, etc. They can interact with each other in order
to simulate coupling physic problems.
The module that is used in this thesis is Beam physic where the solution is based on
the Euler beam theory[1].
Euler beam equations are valid when the shape of each cross section remains plane after
deformation and the curvature radios is much longer than beams thickness. [3]
Beam module is available in both 2D and 3D workspace. 3D workspace has been used as
the solution on neutral axis can be extruded to have 3D visualization of different modes
by using coupling integration that will be described later.
COMSOL has object structural form with scope definition functionality. It means that, it
is possible to define different variables to the specific part of the physics. The advantage
is saving memory and reducing calculation time. There is a special variable in COMSOL
that is called Probes. A probe has the ability to be called from parametric sweep event
handler over and over during problem solving stage. Parametric sweep is a recursive
function that runs itself over given parameters. This ability helps to solve a physic one
time with different number of parameters that should be change during the calculations.
For example in this thesis bearing data are dependent on rotational frequency of the
rotor. It means that bearings are a function of rotational speed. So it is possible to define
a parameter in parametric sweep that plays the rotational speed role for the bearing
data.
For coupled physics problems field parameters have the scope through the connections.
It means that in the connection that the material is belonging to several physics, the
field properties of any of the physics has global scope. In the case that, there is not any
connection between different physics from geometrical point of view, it is possible to
use integration operator in COMSOL to make the scope of a particular physic element
shared globally.
16
3 COMSOL
Another interesting feature in COMSOL is coupling integration. The task of coupling
part is mapping the source data to the destination data. This feature can be used for
extrusion purpose and make a 3D modeling.
Fbx
Fby
"
kxx kxy
kyx kyy
"
u
v
"
cxx cxy
cyx cyy
#"
u
v
However; it is possible to use spring load directly when there is not cross terms in the spring force
equation.
17
3 COMSOL
where kij and cij are spring constant and damping parameter respectively are diagonal
2 and cross terms3 of the bearing .
(3.1)
A = (ro2 ri2 )
(3.2)
where
(3.3)
Equation 3.3 can be written per unit length as an edge load. In this case the gyroscopic
moments in both x and y directions per unit length based on gyroscopic terms in equation
2.8 becomes :
(
(3.4)
where Mx and My are the moments per unit length. Equation 3.4 can be used directly4
in COMSOL as an edge load for any pipe beam cross section form.
It is obvious that by inserting ri = 0 the equation 3.4 would be valid for a circular cross
section. 5
2
i=j
i 6= j
4
The default variables in COMSOL are = beam.rho,ro = 0.5 beam.do_pipe, ri = 0.5
beam.di_pipe,y = thyt,x = thxt
5
If the cross section selected circular instead of pipe, beam.do_pipe and beam.di_pipe are not available
in COMSOL anymore. instead they should be written based
( on beam.area. In this case 3.4 when
3
beam.area2
pi
beam.area2
pi
.5beam.rho
.5beam.rho
this formula can be used for pipe sections directly in COMSOL too.
;however,
18
3 COMSOL
Mx = ( 21 r4 t) y
My = ( 12 r4 t) x
Where t is the thickness of the disk. For the mass contribution by adding a point mass
load and substituting the moment of inertia of the disk in x, y, z directions, the lack of
the disk can be compensated.
F = m 2 u
M = J 2
x
x
x
2
My = Jy y
Mz = Jz z
3.2.4 3D Modeling
6 In
order to make a 3D model version based on neutral axis solution of beam element,
COMSOL has different solutions. The one that has been used in this thesis is General
Extrusion in coupling model option. The task of this extrusion is mapping source
displacement field to destination geometry displacement. This transformation matrix
can be written as
"
# "
#"
#
xnew
cos(thz) sin(thz)
x
ynew
sin(thz) cos(thz)
y
"
# "
#"
#
ynew
=
znew
"
# "
z
new
xnew
cos(thx) sin(thx)
sin(thx) cos(thx)
#"
cos(thy) sin(thy)
sin(thy) cos(thy)
u = xnew x
v=y
new
w=z
new z
6
y
z
#
z
x
(3.5)
(3.6)
I should have special thank from Remi Magnard in COMSOL who helped me to implement 3D mapping
19
3 COMSOL
x = genext(thx)
= genext(thy)
= genext(thz)
z
(3.7)
Where u, v, w, thx, thy, thz are COMSOLs displacement and rotation field components.
By inserting equation 3.6 and 3.7 in 3.5 and use super position of the displacements , the
result becomes :
new
x
z
z
x
z
new = genext(w) x sin(y ) + y sin(x ) + z (cos(x ) + cos(y ) 2)
(3.8)
where genext is the name of the coupling function for the displacement field mapping.
To use equation 3.8 it is important that coupling function should be defined beforehand
in COMSOL and the neutral axis of the beam should be selected in the source term.
Figure 3.3 has been created by 3D extrusion mapping based modeling.
Figure. 3.1: 3D mapping in COMSOL based on extrusion from the model in figure 3.3
20
3 COMSOL
3.2.5 Solvers
There are different kinds of solvers to deal with different study types in COMSOL
multiphysics. In this thesis, all of the analyzing parts has been done in Eigenfrequency
and Frequency domain solvers. In all of the solvers it is possible to use Parametric Sweep
that is an interesting feature in COMSOL. This feature can make an event dispatcher
to the solver each time when its value being called by the solver. To generate campbell
plots and root locus diagrams, this feature has been used to call the appropriate bearing
parameters7 in the equations as well as gyroscopic omega dependency.
=
=
=
=
1000 mm
100 mm
211 109 P a
kg
7850 m
3
(3.9)
For a beam with simply supported boundary condition, the first bending eigenfrequency
can be obtained theoretically as
f=
2
EI
mL3
(3.10)
Where E is Young Modulus, I is area moment of inertia around center of the cross
section, m is mass and L is the length of beam.
7
21
3 COMSOL
By substituting the parameter values from 3.9 in 3.10 the first bending eigenfrequency
can be obtained analytically.
f=
211109 4 .054
7850 4 0.14 14
= 203.59 Hz
The corresponded model in COMSOL is shown in figure 3.2 that corresponded with
analytical solution.
22
3 COMSOL
kg
N
E [m
[m
[] Poissons ratio
2 ] (youngs modulus)
3 ] Density
211E9
7850
0.3
Tab. 3.1: Model properties
23
3 COMSOL
At ( = 345 RP M, f = 5.721 Hz) one lateral or torsional mode can be seen in the model
and as the beam and disk are homogenous, the corresponded spring matrix is constant
and so it can be seen as a constant line.
The ANSYS and COMSOL model solutions are fairly following each other. The error
increases for higher natural frequencies where the mesh shape and density of the mesh is
dominant to get a closer result to the exact solution. In ANSYS everything is calculated
based on 3D modeling finite element and therefore it is more reliable and closer to
the exact solution; however, both results still based on numerical solutions. In 3D
modeling ANSYS, moment of inertia is totally dependent on mesh quality; however in
COMSOL based on 1D Euler beam solution, moment of inertia has been calculated
based on geometry model and cross section of the beam mathematically . So it is totally
independent of mesh.
24
4 Analyzing rotordynamics
In this chapter, three cases rotor dynamics test are discussed . The first case is an
eigenvalue solution and plot campbell diagram which is eigenfrequency versus shaft
rotational speed in order to detect critical speeds. The second case is stability analyzing by
using root locus diagram and the third one is harmonic response to track the displacement
field magnitude and phase difference with unbalance force excitation. The model that
has been used here to show the results, have supports that are not rigid at the both sides
of the shaft . Instead, the supports are flexible with cross term bearing parameters. The
plots of the bearing parameters are available in the Appendix. The model geometry is
shown in figure 4.1 with the properties in the below table.
kg
N
E [m
[m
[] Poissons ratio
2 ] (youngs modulus)
3 ] Density
209E9
7850
0.28
Tab. 4.1: Model properties
25
4 Analyzing rotordynamics
speed changes and mainly is used to find specific eigenfrequencies of the system that are
equal with the rotational speed of the rotor. In this diagram horizontal axis is rotational
frequency of the rotor and vertical axis is the eigenfrequency. It is possible to visualize the
critical speeds if we find the intersection of line Y = 1 with Yi = f (i ) 2 for any i where
Yi is the eigenfrequency of the system solution for ith mode for different rotational speed
of the rotor. These are the frequencies that should be avoided as we have resonances.
The main reason is because of unbalance force that could exist in a rotary system. This
unbalance force is proportional to squared of rotational speed of the rotor and when it
reach any of the natural frequencies frequency of the rotor, it could reach stator and
damage the rotor because of high vibration amplitude.
In COMSOL eigenvalue solution is based on the assumption of Y = A(x, y, z)et where
is eigenvalue. By using this definition the characteristic equation, gives the natural
frequency of the system as the imaginary part of the eigenvalue solution. So = jd
where d is the damped natural frequency.
1
2
26
4 Analyzing rotordynamics
Figure. 4.2: Campbell plot example Model 1 figure 4.1 with bearing parameters
It is assumed that the rotor speed is between 0 to 9000 CPM3 . The intersections of the
black line with first and second eigenfrequencies which are the first backward and forward
whirling modes are 887 RPM and 893 RPM. The third critical speed whirling modes
happens at 3942 RPM. The critical speed belongs to the second forward whirling modes
are far away from the rotor working frequency range, so there is not any concern about
it.
Another example of a campbell plot is shown in figure 4.3. The geometry and boundary
condition belongs to figure 3.3 and the rotor working frequency is between 0 to 140 Hz.
In this case, the whirling modes belong to gyroscopic terms are in the range of the rotor
speed.
27
4 Analyzing rotordynamics
4.2 Stability
Generally, stability means the amplitude of the eigenvalue solution should not growth
in time when there is no external excitation. Otherwise, it is unstable system. As it is
discussed, in rotor dynamics the solution of eigenvalue depends on rotational speed due
to gyroscopic moment. To detect the stability in rotor dynamics it is common to use
Root-Locus plot where the modal damping ration is in X direction and eigenfrequencies
of the rotor is in Y direction. When modal damping ratio is negative it means that the
system is self-excited and bearing forces feeding energy to the system.
Figure 4.4 shows root-locus plot for model in figure 4.1 when the supports are not rigid.
28
4 Analyzing rotordynamics
29
4 Analyzing rotordynamics
u
img
)
= arctan( ureal
uamp =
u2img + u2real
The result of harmonic response for the model based on figure 4.1 are shown blew.
30
4 Analyzing rotordynamics
Figure. 4.6: Phase difference between excitation and displacement of the disk
31
5 Conclusion
Using 1D element is simple method but it does not possible to use it for some certain
problems e.g. disks contains blades. In COMSOL,moreover; 3D mapping gives an
intuition about mode shapes of the beam in a tangible way but all disks are considered as
solid elements in point load and mass contribution load implementation. It means that
no deformation on disks can be demonstrated. Besides, 3D mapping is just extruding the
solution of neutral axis of the beam to another geometry which does not show the real
solution of the other locations of the beam in space. A closer solution to the reality can
be achieved if 3D element approach being implemented like the ANSYS model that has
been shown for comparison. In 3D modeling it is possible to make a complex geometry
for disks that contain different type of blades and work on meshing part freely. Moreover;
it is possible to have complex boundary conditions contain surface or volume loads.
The implementation of gyroscopic in COMSOL is easy even for beam where edge load
should be used. The reason belongs to the load implementation in COMSOL as it will
automatically multiply to the shape function and integrated along the domain to get the
force vector.
That would be the next working approach in COMSOL that solve everything in structural
mechanics instead of 1D beam. Fortunately, COMSOL made this project very easy, as no
finite element code is written particularly for this project . It means that all discretization
and assembling of matrices has been done in COMSOL in the background stage and that
is the purpose of using any CAE software. Loads are implemented based on analytical
solutions that are available in any rotordynamics textbooks and the most important
task in this project was dealing with COMSOL to implement rotordynamics analytical
formula based on Unbalance and Gyroscopic terms in the appropriate fields and solving
progress and post processing of data.
One restriction in the loading section that has been used in this thesis, is modeling only
a disk as in COMSOL it is not possible to define one node as a beam element. Maybe
one idea is to resolve this problem by making two elements (three points) and make
their length very small and use point load approach and mass contribution to solve the
gyroscopic implementation; however, implementing boundary conditions for the disk is
not an easy task.
32
A Appendix
A.1 Matlab Code
function out = correctionTable (s , referenceColumn , scale , sort , sortType)
% Function to adapt output tables from COMSOL with Ansys model export for better %visualization
lineIndex=1;
fid=fopen( s ) ;
repeatIndex=1;
objectIndex=1;
TYPES={ac , dc };
stringValues={Model: , Version : , Date: , Table : };
i f (nargin==2)
scale=1;
sort=0;
elseif (nargin==3)
[temp1 temp2]=size( scale ) ;
i f (temp1~=1 && temp2~=1)
disp( scaleargumentshouldbeavector ) ;
return
elseif (temp2==1)
scale=scale ;
end
for i =1:length( scale )
i f (~isnumeric( scale ( i ) ) )
disp( Thescaleargumentshouldbeavectorofnumbers ) ;
return
end
end
sort=0;
else
i f (nargin==4)
sortSize=size(sort) ;
i f (~isnumeric(sort) )
disp( Error : Thedataselectioninthesortingvectorshouldcontainsnumericalvalues
! )
return
end
i f (nargin==5)
i f (~strcmpi( sortSize (1) , 1 ) && ~strcmpi( sortSize (2) , 1 ) )
disp( Error : Thefourthargumentshouldbearoworcolumnvectorthat i d e n t i f i e s
thecolumnwhichsortingshouldbedone . )
return
else
i f (strcmpi( sortSize (2) , 1 ) )
sort=sort ;
end
33
A Appendix
end
sortType=ac % Ascending
else
i f (~strcmpi(sortType ,TYPES(1) ) && ~strcmpi(sortType ,TYPES(2) ) )
sortType=TYPES(1) ;
end
end
end
end
headerNames={};
for i=length( s ):1:1
i f (strcmpi( s ( i ) , . ) )
endIndex=i 1;
for j=i 1:1:1
i f (strcmpi( s ( j ) , \ ) | | strcmpi( s ( j ) , / ) )
name=s ( j+1:endIndex) ;
break
end
end
break
end
end
temp=textscan ( fid , %s , whitespace , \n ) ;
for i =1:length(temp{1})
header=1;
temp2=temp{1}( i ) ;
i f (~strcmpi(char(temp2{1}(1)) , % ) ) %Remove comments
currentLine=char(temp{1}( i ) ) ;
colLine ( lineIndex )=textscan (currentLine , %s ) ;
%Errors
i f (length( colLine{lineIndex})<3)
return
elseif (referenceColumn>length( colLine{lineIndex}))
display ( Error , thereferenceColumnnumber i s biggerthanthesizeofarray )
return
elseif (length( scale )~=length( colLine{lineIndex})1)
i f (nargin==2)
scale=ones(1 ,length( colLine{lineIndex})1);
else
display ( Error , lengthofthescaleargumentshouldbethesameoftheinput
table scolumn1 )
return
end
else
for j=1:length(sort)
i f (sort( j )>length( colLine{lineIndex}))
disp( Error : oneoftheelementsinthesortargument i s biggerthanthe
numberofavailablecolumns )
return
elseif (nargin>=4 && sort( j )<=0)
disp( Error : Oneofthesortingvectorhasnegativeorzerovalue . )
return
end
end
end
% Separation and scaling
i f ( lineIndex>1)
34
A Appendix
i f (strcmpi( colLine{lineIndex1}(referenceColumn) , colLine{lineIndex}(
referenceColumn) ) )
for j=1:length( colLine{lineIndex})
i f ( j<referenceColumn)
scaleIndex=j ;
else
scaleIndex=j 1;
end
i f ( j~=referenceColumn)
colLine{lineIndex}{ j}= num2str( str2double ( colLine{lineIndex}{ j })scale
( scaleIndex ) ) ;
i f (~sort)
out{objectIndex}{repeatIndex}=[out{objectIndex}{repeatIndex} char
(9) colLine{lineIndex}{ j } ] ;
else
% Sorting
for k=1:length(sort)
i f (sort(k)==objectIndex)
tempNum=str2num(out{objectIndex}{repeatIndex}) ;
i f (strcmpi(sortType ,Type(1) ) )
i f (tempNum(length(tempNum) )colLine{lineIndex}{ j}>0)
out{objectIndex}{repeatIndex}=[out{objectIndex}{
repeatIndex} char(9) colLine{lineIndex}{ j } ] ;
else
out{objectIndex}{repeatIndex}=[out{objectIndex}{
repeatIndex} char(9) colLine{lineIndex}{ j } ] ;
end
else
end
end
end
%end Sorting
end
objectIndex=objectIndex+1;
end
end
objectIndex=1;
else
repeatIndex=repeatIndex+1;
for j=1:length( colLine{lineIndex})
i f ( j<referenceColumn)
scaleIndex=j ;
else
scaleIndex=j 1;
end
i f ( j~=referenceColumn)
colLine{lineIndex}{ j}=num2str( str2double ( colLine{lineIndex}{ j })scale (
scaleIndex ) ) ;
out{objectIndex}{repeatIndex}=[colLine{lineIndex}{referenceColumn}
char(9) colLine{lineIndex}{ j } ] ;
objectIndex=objectIndex+1;
end
end
objectIndex=1;
end
35
A Appendix
else
for j=1:length( colLine{lineIndex})
i f ( j<referenceColumn)
scaleIndex=j ;
else
scaleIndex=j 1;
end
i f ( j~=referenceColumn)
colLine{lineIndex}{ j}=num2str( str2double ( colLine{lineIndex}{ j })scale (
scaleIndex ) ) ;
out{objectIndex}{repeatIndex}=[colLine{lineIndex}{referenceColumn}
char(9) colLine{lineIndex}{ j } ] ;
objectIndex=objectIndex+1;
end
end
objectIndex=1;
end
lineIndex=lineIndex+1;
else
% Header Making
currentHeaderLine=char(temp{1}( i ) ) ;
colLineHeader( lineIndex )=textscan (currentHeaderLine , %s ) ;
for j=1:length( stringValues )
i f (strcmpi(char(colLineHeader{lineIndex }(2) ) , char( stringValues{ j })) )
header=0;
break
end
end
i f (header)
spaceData=isspace(currentHeaderLine) ;
tempName= ;
for j=3:length(currentHeaderLine)
i f (spaceData( j )==1 && j~=length(currentHeaderLine) && (spaceData( j+1)==1 | |
strcmpi(currentHeaderLine( j ) , \t ) ) )
indexJ=j ;
break
end
end
j=indexJ ;
while j<=length(currentHeaderLine)
i f (spaceData( j )==0)
tempName=[tempName currentHeaderLine( j ) ] ;
elseif ( j~=length(currentHeaderLine) && spaceData( j+1)==0)
tempName=[tempName currentHeaderLine( j ) currentHeaderLine( j+1) ] ;
j=j+1;
else
i f (~isempty(tempName) )
headerNames{length(headerNames)+1}=tempName;
end
tempName= ;
end
i f ( j==length(currentHeaderLine) && ~isempty(tempName) )
headerNames{length(headerNames)+1}=tempName;
36
A Appendix
end
j=j+1;
end
end
end
end
% Header correction
for i =1:length(headerNames)
tt=char(headerNames( i ) ) ;
indexes=regexp( tt , [AZaz09 . ] ) ;
for j=length(indexes):1:2
i f (indexes( j )indexes( j1)~=1)
i f (strcmpi( tt (indexes( j ) ) , ) )
headerNames( i )={tt (indexes( j+1): indexes(length(indexes) ) ) };
else
headerNames( i )={tt (indexes( j ) : indexes(length(indexes) ) ) };
end
break
end
end
end
% Saving
a= ;
k=1;
for i =1:length(headerNames)
save( [name _ char(eval ( [ headerNames( num2str( i ) ) ; ] ) ) . txt ] , a s c i i , a )
a= ;
f i l e=fopen( [name _ char(eval ( [ headerNames( num2str( i ) ) ; ] ) ) . txt ] , w ) ;
for m=1:length(out{ i })
i f (~isempty(a) )
eval( a=[eval ( [ a ; ] ) char(10)out{ i }{m} ] ; ) ;
else
eval( a=[out{ i }{m} ] ; ) ;
end
end
fprintf( f i l e , a) ;
fclose( f i l e ) ;
end
37
A Appendix
38
A Appendix
cmomega,e_model, spn, , ,0 ,0 ,0 ,1 ,0 ,0
mxpand,5
solve
enddo
finish
/post1
neigv=5
nint=51
speeddel=14
pi=acos(1)
dim, rew, table , nint , neigv+1
dim,imw, table , nint , neigv+2
do, i ,1 , nint
nrpm=(i 1)speeddel
set , rew( i ,1) ,nrpm
set ,imw( i ,1) ,nrpm
set ,imw( i ,2) ,nrpm/60
do, j ,1 , neigv
set , i , j ,0 ,0
get , rew( i , j+1) , active , , set , freq
set , i , j ,0 ,1
get ,imw( i , j+2) , active , , set , freq
enddo
enddo
cfopen , utdata2 , txt
i i=1
vwrite ,imw( i i ,1) ,imw( i i ,2) ,imw( i i ,3) ,imw( i i ,4) ,imw( i i ,5) ,imw( i i ,6) ,imw( i i ,7)
( f7 .0 , f6 .1 , f8 .2 , f8 .2 , f8 .2 , f8 .2 , f8 .2)
cfclose
39
A Appendix
40
A Appendix
41
Bibliography
[1] COMSOL Manual Help, COMSOL Multiphysics.
[2] www.livephysics.com.
[3] A.C, N., VibroAcoustics part1, KTH, 2008.
[4] Genta, G., Vibration Dynamics and Control, Wiley Series in Nonlinear Science, 2009.
[5] Samuelsson, J., Rotor dynamic analysis of 3d-modeled gas turbine rotor in ansys,
Masters thesis, Linkping University of Technology, 2009.
[6] Toshio Yamamoto, Y. I., Linear and Nonlinear Rotordynamics: A Modern Treatment
with Applications, Wiley Series in Nonlinear Science, 2002.
42
List of Figures
2.1
2.2
2.3
2.4
2.5
2.6
Centrifugal force . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Unbalance situation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Unbalance effect derivation formula.
. . . . . . . . . . . . . . . . . . . . . .
4
5
7
Inclination of the disk around y axis due to the beam mode shape . . . . . . . . . .
8
The derivation of a vector with respect to time. . . . . . . . . . . . . . . . . .
9
Gyroscopic term extraction . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.1
3.2
3.3
3.4
4.1
4.2
4.3
4.4
4.5
4.6
. .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
20
22
22
23
.
.
.
.
.
.
25
27
28
29
30
31
43
List of Tables
0.1
Table of symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1
Model properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.1
Model properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
44