Вы находитесь на странице: 1из 29

Eigenvalues

Mathematics (Seminar)
Professor : Dr.Farahmand
Alireza Mohammad jafari
Student ID:8519415105

Eigenvalue Problems
Engineering Problems involving vibrations,
elasticity, oscillating systems, etc.,
Determine the eigenvalues for n homogenous linear
equations in n unknowns

[ A]{ x } { x }

Non-homogeneous system

[ A] [ I ]{ x} {0}
: eigenvalue;

homogeneous system

x : eigenvector

Mathematical Background
A I x

a11
a
21

a22

a31

a32

an 1

an 2

a12

For nontrivial solutions ==>

a1 n x 1
0
0
a23

a2 n x 2



a33
a3 n x 3 0

0


0
an 3
ann x n
a13

det( A I ) 0

Characteristic polynomial: det( ) = fn( )

( 1 ) N N C N 1 N 1 C N 2 N 2 C 2 2 C 1 C 0 0
The root of fn( ) = 0 are the solutions for the eigenvalues

Mass-Spring System

Equilibrium positions

d 2 x1
kx 1 k ( x 2 x 1 )
m1
2
dt

2
m d x 2 k ( x x ) kx
2
1
2
2 dt 2

Mass-Spring System
2
let x 1 X 1 sin t , x 2 X 2 sin t ;
Tp

d 2 x1

m1 dt 2 k ( 2 x 2 x 1 ) 0

2
m d x2 k( x 2 x ) 0

2
1
2

dt 2

2k
k
2

X 1
X2 0
m1
m1

2k

k
X 1
2 X 2 0
m2
m2

Homogeneous system

2 k / m1 2

k / m2

k / m2
2 k / m2 2

X1
0


0
X2

Find the eigenvalues from det[ ] = 0

Polynomial Method
m1 = m2 = 40 kg, k = 200 N/m
Characteristic equation det[ ] = 0
( 2 k / m1 2 )
k / m2
10 2

2
k / m2
( 2 k / m2 )
5

5
10 2

4 20 2 75 0 ( 2 15 )( 2 5 ) 0

Two eigenvalues = 3.873s1 or 2.236 s 1


Period Tp = 2/ = 1.62 s or 2.81 s

Principal Modes of Vibration


Tp = 1.62 s
X1 = X2

Tp = 2.81 s
X 1 = X2

Buckling of Column

Axially loaded column


Buckling modes
M bending moment
E modulus of elasticity
I moment of inertia
d2y M

2
EI
dx
M Py

d2y
P
2

p
y
2
EI
dx
y ( 0 ) y( L ) 0

Curvature:

d2y
dx 2

Buckling of Axially Loaded Column


d2y
2

p
y ; y( 0 ) y( L ) 0
2
dx

Eigenvalue problem

y A sin px B cos px

Buckling loads

y( 0 ) B 0
pL n , n 1, 2,

y( L) A sin pL 0
n 2 2 EI
P p EI
L2
2

Fundamental mode: n = 1
2 EI
Pcritical
L2

Euler formula

Buckling
Modes
n
L
2 2
n
EI
2
P p EI
L2
p

Polynomial Method
ODE

d2y M
2

p
y ; y( 0 ) y( L ) 0
2
EI
dx

Finite-difference method
yi 1 2 yi yi 1
2
2 2

p
y

(
2

h
p ) yi yi 1 0
i
i 1
2
hi
2 h2 p 2

1
2 h2 p 2
1
0
0

0
1
2 h2 p 2
1
0

1
0


2 h 2 p 2

y1
0
y
0
2


y3 0


0
yn

Which
Scheme?
Order of
Errors?

th-order polynomial
Characteristic
equation:
2 2 (2n)
n
det ( 2 h p ) 0

Polynomial Method
One interior node (h = L/2)

L
2 2 2
( 2 h2 p 2 ) y1 0 p

( a 10 %)
h
L
pexact

Two interior nodes (h = L/3)


2 h2 p 2

2
pexact ,
L L
0
1 y1
2 2 2

(
2

h
p ) 10

2 2
2 h p y2
0

ph 1, 3 p

3 3 3
,
( a 4.5 %, 17.3 %)
L
L

Polynomial Method
Three interior nodes (h = L/4)

2 h2 p 2

1
0

2 3
pexact ,
,
L L L
y1
1
0
0


2 h2 p 2
1 y2 0
0
1
2 h 2 p 2 y3

( 2 h2 p 2 ) 3 2( 2 h2 p 2 ) 0
p

ph 2 , 2 2

4 2 2 4 2 4 2 2
,
,
( a 2.6 %, 10.0 %, 21.6 %)
L
L
L

Power Method
If is the eigenvalue of A, then

Ax x
A x A( Ax ) A( x ) Ax x
2

A 3 x A( A 2 x ) A( 2 x ) 2 Ax 3 x
A 4 x A( A 3 x ) A( 3 x ) 3 Ax 4 x

A m x m x

m : eigenvalue of A m ; x : eigenvector

Power Method
Power method for finding eigenvalues
1. Start with an initial guess for x
2. Calculate w = Ax
3. Largest value (magnitude) in w is the
estimate of eigenvalue
4. Get next x by rescaling w (to avoid the
computation of very large matrix An )
5. Continue until converged
Power method also gives you eigenvectors

Power Method
Start with initial guess z = x0
(k1 ) w k( 1 )

w ( 1 ) Az ( 1 )
z( 2 )

w ( 1 ) Az ( 1 )
(1) (1)
k
k

w ( 2 ) Az ( 2 )
z

(3)

rescaling

(k2 ) w k( 2 )

w ( 2 ) Az ( 2 )
(2) (2)
k
k

k is the
dominant
eigenvalue

If 1 2 3 n , then

Power Method
1. Initial guess z (1) x0 1,1,...,1

normalize z by biggest wk
Calculate Az (2) w(2) z (3) ; normalize z by biggest wk

2. Calculate Az (1) w(1) z (2) ;


3.

M
... Calculate Az ( k ) w( k ) z ( k 1)

For large number of iterations, should


converge to the largest eigenvalue
The normalization make the right hand side
converges to , rather than n

Example: Power Method


Consider
Start with

Az ( 1 )

2 8 10
A 8 3 4
10 4 7
1

(1)
z x 0 1
1

Assume all eigenvalues


are equally important,
since we dont know
which one is dominant

2 8 10 1
20
0.9524

8 3 4 1 15 21 0.7143
21

10 4 7 1
1
.
0

eigenvalue eigenvector

Example
Current estimate for largest eigenvalue is 21
Rescale w by eigenvalue to get new x
20
0.9524
w

1
x

15 0.7143
max(abs( w )) 21

21
1
.
0

Check Convergence (Norm < tol?)


2 8 10
Ax x 8 3 4
10 4 7

0.9524
0.9524
2.3812
0.7143 21 * 0.7143 1.2382

1.0
1.0
1.6188

Norm
Ax x ( 2.3812 ) 2 ( 1.2382 ) 2 ( 1.6188 ) 2 3.1343

Update the estimated eigenvector and repeat


Az ( 2 )

2 8 10 0.9524
17.619

8 3 4 0.7143 13.762
19.381
10 4 7
1.0

New estimate for largest eigenvalue is 19.381


Rescale w by eigenvalue to get new x

w
1

max(abs( w )) 19.381
2 8 10
Ax x 8 3 4
10 4 7

17.619
0.9091

13.762 0.7101
19.381

1
.
0

0.9091
0.9091
0.1203
0.7101 19.381 * 0.7101 0.3594

1.0
1.0
0.4496

Norm
Ax x ( 0.1203 ) 2 ( 0.3594 ) 2 ( 0.4496 ) 2 0.5880

Example
One more iteration
Az ( 3 )

2 8 10 0.9091
17.499
0.9243

8 3 4 0.7101 13.403 18.931 0.7080


18.931

10 4 7
1.0
1
.
0

2 8 10
Ax x 8 3 4
10 4 7

0.9243
0.9243
0.0147
0.7080 18.931 * 0.7080 0.1153

1.0
1.0
0.1440

Norm
Ax x ( 0.0147 ) 2 ( 0.1153 ) 2 ( 0.1440 ) 2 0.1851

Convergence criterion -- Norm (or relative error) < tol

Example: Power Method


Az ( 4 )

Az ( 5 )

Az ( 6 )

Az ( 7 )

2 8 10 0.9243
17.513

8 3 4 0.7080 13.519 19.075


19.075

10 4 7
1.0

2 8 10 0.9181
17.506

8 3 4 0.7087 13.471 19.016


19.016

10 4 7
1.0

2 8 10 0.9206
17.508

8 3 4 0.7084 13.490 19.040


19.040

10 4 7
1.0

2 8 10 0.9196
17.507

8 3 4 0.7085 13.482 19.030


19.030

10 4 7
1.0

0.9181

0.7087
1.0

0.9206

0.7084
1.0
0.9196

0.7085
1.0
0.9200

0.7085
1.0

Script file: Power_eig.m

Norm Ax x

MATLAB
Example:
Power
Method

A=[2 8 10; 8 3 4; 10 4 7]
A =
2
8
10
8
3
4
10
4
7
[z,m] = Power_eig(A,100,0.001);
it
m
z(1)
1.0000
21.0000
2.0000
19.3810
3.0000
18.9312
4.0000
19.0753
5.0000
19.0155
6.0000
19.0396
7.0000
19.0299
8.0000
19.0338
9.0000
19.0322
error =
8.3175e-004
z
z =
0.9199
0.7085
1.0000
m
m =
19.0322
x=eig(A)
x =
-7.7013
0.6686
19.0327

z(2)
z(3)
z(4)
0.9524
0.7143
0.9091
0.7101
0.9243
0.7080
0.9181
0.7087
0.9206
0.7084
0.9196
0.7085
0.9200
0.7085
0.9198
0.7085
0.9199
0.7085

eigenvector
eigenvalue
MATLAB function

z(5)
1.0000
1.0000
1.0000
1.0000
1.0000
1.0000
1.0000
1.0000
1.0000

MATLABs Methods
e = eig(A)
gives eigenvalues of A
[V, D] = eig(A)
eigenvectors in V(:,k)
eigenvalues = Dii (diagonal matrix D)
[V, D] = eig(A, B) (more general eigenvalue

problems) (Ax = Bx)


AV = BVD

Inverse Power Method


Power method give the largest eigenvalue
Inverse Power method gives the smallest
*Eigenvalues of B = A-1 are inverse of eigenvalues
of A (i.e., = 1/)
So one could use power method on w = Bx to get
largest eigenvalue of B - smallest of A
Calculating B is wasteful - instead use
1

w Bx A x

x Aw

Inverse Power Method


Basic power method gives the dominant eigenvalue
Inverse power method gives the smallest eigenvalue
Ax x ; B A 1
x A 1 Ax A 1 x A 1 x Bx
1
Bx A x x ;

1

1/

is the dominant eigenvalue for B A 1


dominant

smallest

Script file for Inverse Power Method


Use LU_factor and LU_solve

A=[2 8 10; 8 3 4; 10 4 7]
A =
2
8
10
8
3
4
10
4
7
max_it=100; tol=0.001;
[z,m] = InvPower(A,max_it,tol);
L =
1.0000
0
0
4.0000
1.0000
0
5.0000
1.2414
1.0000
U =
2.0000
8.0000
10.0000
0 -29.0000 -36.0000
0
0
1.6897
B =
2
8
10
8
3
4
10
4
7
[B] = [L][U]
A =
2
8
10
8
3
4
10
4
7
1.0000 12.7826 0.3000 1.0000 -0.5333
it =
1
2.0000 0.7123 0.1205 1.0000 -0.8013
it =

[L]

[U]

3.0000

0.6687

0.1167

1.0000 -0.8152

4.0000

0.6686

0.1163

1.0000 -0.8155

it =
it =

z
z =

0.1163
1.0000
-0.8155
m
=
0.6686
x=eig(A)
=
-7.7013
0.6686
19.0327

eigenvector
eigenvalue
MATLAB
function

Smallest
eigenvalue

Вам также может понравиться