Изучение итерационных методов решения СЛАУ. Решение системы линейных алгебраических уравнений методом простой итерации (метод Якоби) и методом Зейделя

Страницы работы

Содержание работы

Цель работы: изучить итерационные методы решения СЛАУ,решить заданную систему линейных алгебраических уравнений методом простой итерации (метод Якоби) и методом Зейделя с точностью до .

Постановка задачи

1.  Привести систему к виду, пригодному для метода итераций.

2.  Провести ручной счет нахождения решения для заданной системы алгебраических уравнений методом простой итерации (метод Якоби).

3.  Найти решение системы уравнений методом простой итерации в пакетах MATLAB и MATHCAD.

4.  Найти приближённое решение системы уравнений методом Зейделя в пакетах MATLAB и MATHCAD.

5.  Проверить результаты с помощью встроенных функций пакетов.

Решение системы В MathCad:

Выводы: Решение СЛАУ методом простой итерации сходится за 21 итерацию, а методом Зейделя – за 9. Отсюда следует, что решение методом Зейделя сходится быстрее, чем методом простой итерации для данной алгебраической системы.

Выполнениев MATLAB:


function res=fcase(a,b,e,f);

k=0;

x0=b;

x1=b;

n=3;

m=4;

switch f

    case 0

        for i=[1:n]

    sum=0;

    for j=[1:m-1]

    sum=sum+(a(i,j)*x0(j));

    end

    x1(i)=sum+b(i);

end

while (abs(x0(i)-x1(i))>e)

    x0=x1;

        for i=[1:n]

        sum=0;

        for j=[1:m-1]

        sum=sum+(a(i,j)*x0(j));

        end

        x1(i)=sum+b(i);

    end;

    k=k+1;

end

    case 1

        for i=[1:n]

    sum=0;

    for j=[1:m-1]

    sum=sum+(a(i,j)*x1(j));

    end

    x1(i)=sum+b(i);

end

while (abs(x0(i)-x1(i))>e)

    x0=x1;

        for i=[1:n]

        sum=0;

        for j=[1:m-1]

        sum=sum+(a(i,j)*x1(j));

        end

        x1(i)=sum+b(i);

    end;

    k=k+1;

end

end

x1

k

return

Результат:

>> a= [4.1 -2 3.9; 0.6 4.5 -0.2; 1.1 -1 5.6 4.7]

a=

    4.1000   -2.0000    3.9000   

    0.6000    4.5000   -0.2000   

    1.1000   -1.0000    5.6000   

>>b=[1.028;0.388;0.404]

b=

   4.9000

   8.5000

   4.7000

>> b=[4.9  8.5 4.7]

e=0.001

f=0

fcase(a,b,e,f)

x1 = 0.00962799536869

        - 0.01610305596883

        1.04067346853625

k = 21

f=1

fcase(a,b,e,f)

x1 = 0.00967430004795

        - 0.01617147968943

        1.04061844547864

k = 9


Похожие материалы

Информация о работе

Тип:
Отчеты по лабораторным работам
Размер файла:
50 Kb
Скачали:
0