روش گاوس-سایدل

از testwiki
نسخهٔ تاریخ ۲۱ سپتامبر ۲۰۱۹، ساعت ۲۱:۴۳ توسط imported>InternetArchiveBot (نجات ۲ منبع و علامت‌زدن ۰ به‌عنوان مرده.) #IABot (v2.0)
(تفاوت) → نسخهٔ قدیمی‌تر | نمایش نسخهٔ فعلی (تفاوت) | نسخهٔ جدیدتر ← (تفاوت)
پرش به ناوبری پرش به جستجو

روش گاوس سایدل الگو:به انگلیسی در جبر خطی عددی روش تکراری است که برای حل دستگاه معادلات خطی استفاده می‌شود. نام این روش از روی ریاضی‌دانان آلمانی کارل فریدریش گاوس و فیلیپ لودویگ ون سایدل نهاده شده‌است. اگرچه از این روش می‌توان در هر ماتریسی که دارای درایه قطری صفر نباشد استفاده کرد، اما فقط در صورتی همگرایی تضمین می‌شود که ماتریس مثبت معین یا قطری‌غالب باشد.

توضیح

برای یک سیستم مربعی با n معادلهٔ خطی و دارای مجهول x داریم: الگو:چپ‌چین

A𝐱=𝐛

الگو:پایان چپ‌چین که در آن: الگو:چپ‌چین

A=[a11a12a1na21a22a2nan1an2ann],𝐱=[x1x2xn],𝐛=[b1b2bn].

الگو:پایان چپ‌چین اگر A را به ماتریس پایین مثلثی و بالا مثلثی L* و U تجزیه کنیم: الگو:چپ‌چین

A=L*+UwhereL*=[a1100a21a220an1an2ann],U=[0a12a1n00a2n000]

الگو:پایان چپ‌چین معادلات خطی سیستم به شکل زیر بازنویسی خواهند شد: الگو:چپ‌چین

L*𝐱=𝐛U𝐱

الگو:پایان چپ‌چین روش گاوس سایدل از روش تکراری برای حل قسمت چپ عبارت جهت به دست آوردن x بهره می‌برد، و بدین منظور از مقدار قبلی x در سمت راست عبارت استفاده می‌کند. می‌توان آن را به صورت زیر نوشت: الگو:چپ‌چین

𝐱(k+1)=L*1(𝐛U𝐱(k)).

الگو:پایان چپ‌چین و با استفاده از خواص ماتریس مثلثی L* می‌توان x(k+1) را به صورت زیر به دست آورد: الگو:چپ‌چین

xi(k+1)=1aii(bij>iaijxj(k)j<iaijxj(k+1)),i=1,2,,n.

الگو:پایان چپ‌چین در واقع برای محاسبه xi(k+1) به همه عناصر x(k) به جز خود xi(k) نیاز خواهد شد.

محاسبات تا زمانی ادامه داده می‌شود تا در تکراری خاص به خطایی کمتر از مقدار مورد نظر برسیم.

مثال

برای سیستمی که به شکل A𝐱=𝐛 نمایش می‌دهیم داریم:

A=[163711] و b=[1113].

می‌خواهیم از معادله زیر

𝐱(k+1)=L*1(𝐛U𝐱(k))

به شکل

𝐱(k+1)=T𝐱(k)+C

استفاده کنیم، که در آن:

T=L*1U و C=L*1𝐛.

باید A به جمع دو ماتریس پایین مثلثی و بالا مثلثی L* و U تجزیه شود:

L*=[160711] و U=[0300].

معکوس L* برابر است با:

L*1=[160711]1=[0.06250.00000.03980.0909].

و حالا می‌توانیم مقدار زیر را پیدا کنیم:

T=[0.06250.00000.03980.0909]×[0300]=[0.0000.18750.0000.1193],
C=[0.06250.00000.03980.0909]×[1113]=[0.68750.7443].

و با استفاده از T و C مقدار 𝐱 را به صورت تکرار به دست می‌آوریم.

باید مقدار اولیه را به صورت حدس انتخاب کنیم، برای همین فرض می‌کنیم:

x(0)=[1.01.0].

حال می‌توانیم محاسبه کنیم:

x(1)=[0.0000.18750.0000.1193]×[1.01.0]+[0.68750.7443]=[0.50000.8636].
x(2)=[0.0000.18750.0000.1193]×[0.50000.8636]+[0.68750.7443]=[0.84940.6413].
x(3)=[0.0000.18750.0000.1193]×[0.84940.6413]+[0.68750.7443]=[0.80770.6678].
x(4)=[0.0000.18750.0000.1193]×[0.80770.6678]+[0.68750.7443]=[0.81270.6646].
x(5)=[0.0000.18750.0000.1193]×[0.81270.6646]+[0.68750.7443]=[0.81210.6650].
x(6)=[0.0000.18750.0000.1193]×[0.81210.6650]+[0.68750.7443]=[0.81220.6650].
x(7)=[0.0000.18750.0000.1193]×[0.81220.6650]+[0.68750.7443]=[0.81220.6650].

و همانگونه که انتظار داشتیم به مقدار دقیق همگرا شد:

𝐱=A1𝐛=[0.81220.6650].

منابع

الگو:پانویس الگو:چپ‌چین

الگو:پایان چپ‌چین

پیوند به بیرون