lİneer denklem takimlarinin ÇÖzÜm yÖntemlerİ
DESCRIPTION
LİNEER DENKLEM TAKIMLARININ ÇÖZÜM YÖNTEMLERİ. Analitik yöntemler İteratif Yöntemler. Analitik Yöntemler. Crammer Gauss eliminasyon yöntemi Gauss-Jordan Yöntemi Thomas yöntemi LU Ayrıştırma yöntemleri Ters Matris Yöntemi. Thomas yöntemi. - PowerPoint PPT PresentationTRANSCRIPT
LİNEER DENKLEM TAKIMLARININ ÇÖZÜM YÖNTEMLERİ
1. Analitik yöntemler2. İteratif Yöntemler
Analitik Yöntemler
Crammer Gauss eliminasyon yöntemi Gauss-Jordan Yöntemi Thomas yöntemi LU Ayrıştırma yöntemleri Ters Matris Yöntemi
Thomas yöntemi
Hesaplamalı akışkanlar dinamiğinde ve Hesaplamalı mühendisliğin bazı problemlerinde zaman zaman üç diyagonalli katsayılar matrisine sahip lineer denklem takımlarıyla karşılaşılır.
Üç diyagonalli katsayılar matrisine sahip böyle
bir lineer denklem takımı matris biçiminde normal olarak aşağıdaki gibi gösterilebilir
Thomas yöntemi
Thomas yöntemi Ancak katsayılar matrisinin çoğu sıfır olan elemanları için
bilgisayar hafızasında gereksiz yer işgal etmemek ve gereksiz işlemlerden kaçınmak amacıyla (N×N) boyutlarında bir katsayılar matrisi yerine (N×3) boyutlarında bir katsayılar matrisi kullanacak biçimde bir düzenleme ve buna uygun bir çözüm algoritması kullanılması tercih edilir.
Çözüm için çok tercih edilen bir yöntem Thomas algoritmasıdır. Thomas algoritması aslında Gauss eliminasyon yönteminin üç kolonlu bir dikdörtgensel matris kullanılarak yapılan özel bir uygulamasıdır.
Thomas yöntemi Yani yukarıdaki denklem sistemi Gauss
Eliminasyon Yöntemi ile Alt Üçgen Matrise dönüştürülüp tersten süpürme işlemi yapılabilir.
LU ayrıştırma yöntemleri
LU ayrıştırma yöntemleri
LU Ayrıştırma aşaması:
olup, hesapların başlatılabilmesi ve sürdürülebilmesi için ukk ve lkk elemanlarından birinin önceden belirlenmesi gerektiği görülmektedir. Nitekim uygulamada bu elemanlardan birisinin değeri 1 olarak seçilir. Bu seçime bağlı olarak yöntem iki farklı isimle tanınmaktadır:
Doolittle Yöntemi Doolittle yönteminde alt-üçgensel matrisin diyagonal
elemanları 1 alınmakta olup, buna göre yukarıdaki üç adım
şekline gelir.
Görüldüğü gibi hesaplamalarda bir sıra izlenerek herbir adımda önce üst-üçgensel matrisin bir satırının elemanlarının daha sonra da alt-üçgensel matrisin bir sütununun elemanlarının bulunması gerekmektedir.
Buna göre Doolittle yöntemi için genel algoritma aşağıdaki şekilde yazılabilir.
Crout Yöntemi Crout yönteminde üst-üçgensel matrisin diyagonal
elemanları 1 alınmakta olup, buna göre yukarıdaki üç adım
Görüldüğü gibi hesaplamalarda yine bir sıra izlenerek bu defa her bir adımda önce alt-üçgensel matrisin bir sütununun elemanlarının daha sonra da üst-üçgensel matrisin bir satırının elemanlarının bulunması gerekmektedir.
Buna göre Crout yöntemi için genel algoritma aşağıdaki şekilde yazılabilir.
LU Ayrıştırmasıİleri süpürme aşaması L⋅ Y=B denkleminin Y için çözümü ilk elemandan
başlayarak ileri-süpürme yoluyla gerçekleştirilir.
L matrisinin birinci satırı ile Y vektörünün çarpımından
L matrisinin i 'inci satırının Y vektörü ile çarpımından
LU AyrıştırmasıGeri süpürme aşaması U⋅ X=Y denkleminin X için çözümü de son elemandan
başlayarak geri-süpürme yoluyla gerçekleştirilir.
U matrisinin sonuncu satırı X vektörüyle çarpılarak
U matrisinin i 'inci satırı X vektörüyle çarpılarak
elde edilir.
Ters Matris Yöntemi
İteratif Yöntemler
Gauss-Jakobi yöntemi Gauss-Sidel yöntemi Rölaksasyon Yöntemi
İteratif Yöntemler A x=b doğrusal denklem sistemi, n çok büyük ise ve A çok
seyrek ise iterasyon yöntemleri ile çözülür.
Çünkü direkt metodlar çok fazla bellek, dört işlem ve hesap süresi gerektirirler.
Biriken yuvarlama hataları çözümü tehlikeye sokar. İterasyon yöntemlerinde A nın elemanları değişmez, bu nedenle A nın sadece sıfırdan farklı elemanları depolanır, sıfır ile dört işlem yapılmaz.
Hem bellek hem hesap süresi hem de yuvarlama hataları önemli miktarda azalır. Uygulamada karşılaşılan A matrisi genelde çok seyrektir, sıfırdan farklı eleman oranı yaklaşık %1-5 civarındadır.
İteratif Yöntemler
Gauss-Jakobi yöntemi
Çözüm Başlangıç için x1=x2=x3=x4=0 alalım
Gauss-Sidel yöntemi
kj
n
ij ii
ijkj
i
j ii
ij
ii
iki x
a
ax
a
a
a
bx
1
11
1
1
n bilinmeyenli denklem sistemi için Gauss-iedel formülü;
Yakınsama koşulu
GAUSS-SEIDEL metodu ile JACOBI metodu temelde aynıdır. Tek fark şudur: GAUSS-SEIDEL metodunda xi nin her yeni değeri hemen kullanılır.
3’e 3’lük bir denklem sistemini örnek olarak alalım.
a11 x1+a12 x2+a13 x3=b1
a21 x1+a22 x2+ a23
x3=b2
a31 x1+a32 x2+ a33 x3=b3
Başlangıç koşulları: x1=0; x2=0; x3=0
1 12 2 13 31
11
b a x a xx
a
2 21 1 23 32
22
b a x a xx
a
3 31 1 32 23
33
b a x a xx
a
32
Örnek: Gauss-Siedel yöntemini kullanarak
aşağıdaki sistemin çözümünü bulun. 3 x1-0.1 x2-0.2 x3 =7.85 0.1 x1+7 x2- 0.3 x3=-19.3 0.3 x1+0.2x2+10 x3=71.4
Çözüm: Önce bilinmeyenleri diğerleri cinsinden bulalım.
Burada başlangıç değer olarak “0” alırsak
1
7.85 0 02.616667
3x
2
19.3 0.1(2.616667) 02.794524
7x
3
71.4 0.3 2.616667 0.2 2.7945247.005610
10x
İkinci iterasyonda aynı süreç tekrarlanarak aşağıdaki değerler hesaplanır:
1
7.85 0.1 2.794524 0.2 7.0056102.990557
3x
Burada
2
19.3 0.1 2.990557 0.3 7.0056102.499625
7x
3
71.4 0.3 2.990557 0.2 2.4996257.000291
10x
Hatayı tahmin etmek için bilinmeyenlerin bağıl yaklaşım yüzde hatalarına bakılır. Örneğin x1 için:
,1
2.990557 2.616667%100 %12.5
2.990557a
’tir. x2 ve x3 için hata tahminleri
,2
2.499625 2.794524%100 %11.8
2.499625a
,3
7.000291 7.005610%100 %0.076
7.000291a
Bu şekilde tüm hatalar belirlenen bir tolerans sınırı altına düşene kadar iterasyona devam edilir.
Örnek: Gauss-Siedel yöntemini kullanarak aşağıdaki sistemin çözümünü bulun.
ε=0.0001 seçelim.
Çözüm Başlangıç için x1=x2=x3=x4=0 alalım
!!!
Görüldüğü gibi aynı problem Jacobi yöntemi ile 13 iterasyonda
çözülürken Sidel yöntemi ile 7 iterasyonda çözülebiliyor
Ardarda aşırı gevşetme yöntemi (Successive over-relaxation-SOR)
büyüklüğü, dikkat edilirse aslında k ’ıncı iterasyon adımında bulunan çözüm vektörünün katsayılar matrisi ile çarpımı olup, tam çözümün elde edilmesi halinde bu büyüklüğün bi ye eşit olacağı açıktır. Ancak iterasyon sırasında çözümler tam çözümden farklı olacağından bu büyüklük de denklem sisteminin sağ taraf vektöründen farklı olacaktır. Aradaki fark
“kalıntı (residus)” olarak adlandırılır. Buna göre İLK bağıntının sağındaki ikinci terim kalıntı terimi olup, bir önceki iterasyon adımında elde edilmiş çözümlere ilave edilen bir düzeltme terimi gibi yorumlanabilir: