Metody Numeryczne w Mechanice - Ćwiczenia laboratoryjne (M.Pyrz) Obliczanie wartości i wektorów własnych 1. Programowanie

Napisać skrypt w Scilabie umożliwiający wyznaczenie wartości własnej danej macierzy rzędu n za pomocą metody potęgowej. Poszukiwana będzie wartość własna o największym module (oraz odpowiadający jej wektor własny).

Algorytm :

wybrać wektor początkowy x(0) i znormalizować go stosując normę euklidesową (0)

q

=1.

Dla iteracji k = 1, 2, 3, ... , obliczyć następujące wielkości (k)

(k)

(k)

(k-1)

x

= Aq

, ( k)

j

λ = x (k) = x q

.

(k-1)

q

(k)

x

j

Zatrzyma

−

ć iteracje po spełnieniu kryterium stopu ( k )

( k 1)

λ − λ

< ε .

Po kolejnych iteracjach

( )

lim

k

=

x

=

λ

→∞ λ

λ oraz

( )

lim

k

x , gdzie

jest wartością

k

1

k →+∞

1

1

własną o największym module, natomiast x jest wektorem własnym odpowiadającym 1

wartości λ .

1

2. Test i sprawdzenie poprawności Wyznaczyć wartość własną o największym module (i odpowiadający jej wektor własny) dla macierzy A.

2 10 8

0 





4

1

1

5

A





= 0 2 8 12





2

1

4

8 

Przeprowadzić obliczenia dla dokładności ε =10-1, 10-2, …, 10-6 startując z wektorów x (0) 1

=

[1 0.5 1 0.5]T oraz z x (0) 2

= [0.5 -1 0 0]T i podać liczbę iteracji niezbędnych do uzyskania rozwiązania.

Porównać wynik z rozwiązaniem otrzymanym za pomocą funkcji spec i sformułować wnioski.

1

Metody Numeryczne w Mechanice - Ćwiczenia laboratoryjne (M.Pyrz) 3. Przykład obliczeniowy Rozważamy przedstawiony na rysunku układ mas połączonych sprężynami: x1(t)

x2(t)

x3(t)

k1

k2

k3

m1

m2

m3

x

gdzie x1(t), x2(t) i x3(t) przedstawiają oscylacje poziome(w funkcji czasu t) mas m1, m2 i m3

wokół położenia równowagi, k1, k2 i k3 są sztywnościami sprężyn.

Zakładamy, że x1(t), x2(t) i x3(t) spełniają następujący układ różniczkowych równań ruchu:

 k1+ k2

-k2

0   x1(t)  m1

0

0   x1' (t)

0



 

 

 

  

-k2

k2+ k3

− k 3  x2(t) + 0

m2

0

 x2 ' (t) = 0















  

 0

k 3

k 3   x3(t)



  0

0

m3

−

  x3 ' (t) 0

x1″(t), x2″(t) i x3″(t) oznaczają drugie pochodne x1(t) , x2(t) i x3(t) po czasie.

Poszukujemy rozwiązania układu równań różniczkowych czyli funkcji x1(t), x2(t) i x3(t) w postaci: x1(t) = a1 sin(ω t +θ ), x2(t) = a2 sin(ω t +θ ), x3( t) = a3 sin(ω t +θ ) , gdzie a1, a2, a3, ω i θ są stałymi niezależnymi od czasu.

(

 k1+ k2)/m1

-k2/m1

0



a) Wykaza





ć, ze ω2 jest wartością własną macierzy

-k2/m2

(k2 + k3)/m2

-k3/m2







0

-k3/m3

k3/m3 





b) Przyjmując wartości: k1 = k2 = k3 = m1 = m2 = m3 = 1.

wyznaczyć (stosując metodę potęgową) największą wartość własną podanej macierzy oraz odpowiadający jej wektor własny (kryterium stopu: ( k )

( k

)

1

λ − −

λ

≤ ε = 0.001, wektor

początkowy: (0) = [0.8 −

T

x

1.0

0.4] ).

c) Wyznaczyć wszystkie częstotliwości i postaci drgań korzystając z funkcji spec

d) Korzystając z funkcji spec przeprowadzić obliczenia ω (i postaci drgań) dla układu mas i sprężyn charakteryzowanego przez (wystarczy wybrać jeden dowolny przpadek) i przedstawić schematycznie uzyskane postaci drgań.

i) k1 =3, k2 = 2, k3 =1 et m1 = 1, m2 = 1, m3 = 1, ii) k1 =1, k2 = 1, k3 =1 et m1 = 1, m2 = 2, m3 = 3, iii) k1 =1, k2 = 1, k3 =1 et m1 = 1, m2 = 4, m3 = 1.

2