Скачиваний:
19
Добавлен:
07.01.2014
Размер:
124.42 Кб
Скачать

Российский химико-технологический университет им. Д.И.Менделеева

Кафедра вычислительной математики

ОТЧЕТ

Методы Решения СЛАУ

Вариант 15

Выполнил: Михеев Д.И.. гр. И-24

Проверил: Епишкин А.П.

Москва 2006

Методы решения СЛАУ

  1. Точные методы используют конечные алгоритмы. Их точность непредсказуема.

  1. Метод с использованием обратной матрицы

; если - квадратная, совместная, определенная, то может существовать обратная матрица

т.к. , то

Метод полезен для многократного решения одного и того же СЛАУ с разными значениями свободных членов.

б) Метод Гаусса

Метод последовательного исключения неизвестных, состоящий из 2-х этапов:

прямого и обратного ходов

Во время первого этапа (прямой ход) метода Гаусса составляется расширенная матрица коэффициентов

; i =1, …, n

Алгоритм прямого хода состоит из R шагов. R=1,2,…, n-1. Каждый шаг – обнуление коэффициентов R-ого столбца, стоящих ниже элемента

, где i=R+1,…, n; j=R,…,n+1;

В итоге матрица представляет собой

Обратный ход

=>

Модификация методом Гаусса

На этапе прямого хода при делении на коэффициенты , которые называются ведущими, возможны ошибки при делении на малое число. Для уменьшения погрешностей рекомендуется в качестве ведущих коэффициентов использовать максимальные по модулю коэффициенты

Методы различают:

С частным выбором главного элемента С полным выбором главного элемента

Достоинство метода Гаусса – содержит минимальное количество операций.

2. Итерационные методы

Итерационные методы дают последовательность приближений к решению. Если метод сходится, то можно получить решения с заранее заданной точностью e.

Все итерационные методы дают последовательность приближений решений.

, где -какое-то начальное приближение

Если эта последовательность сходящаяся, то пределом этой последовательности является решение:

- условие окончания поиска решений

- решение с точностью

Метод простых итераций

Итерация – совокупность действий, которые позволяют из

приближения получить

- начальное приближение

- первая итерация

- вторая итерация

- R-ая итерация

- итерационная форма

  • Достаточное условие сходимости – проверка нормы матрицы

- достаточное условие сходимости, если одна из норм <1, то и все остальные <1

  • Выбор начального приближения(от него зависит количество итераций)

  • Итерация метода

  • Проверка условий окончания

Программа по методу Гаусса

Sub matrix()

Dim n%,i%,j%,R%,alf!,s!,a!(),x!()

n=cells(1,1)

Redim a(n,n+1), x(n)

For i=1 to n

For j=1 to n+1

a(i,j)=cells(i,j+3)

Next j

Next i

For R=1 to n-1

For i=R+1 to n

alf=-a(i,R)/a(R,R)

for j=R to n+1

a(i,j)=a(i,j) + alf*a(R,j)

Next j

Next i

Next R

x(n)=a(i,n+1)/a(n,n)

for i=n-1 to 1 step -1

s=0

for j=i+1 to n

s=s+a(i,j)*x(j)

Next j

x(i)=( a(i,n+1)-1)/a(i,i)

Next i

For i=1 to n

Cells(i+3,j)=x(i)

Next i

End sub

Ответ: x1= -15,9295

x2= -26,3104

x3= -3,6855

x4= -5,1667

Программа по методу простых итераций

Sub iter()

Dim n%,i%,j%,e!,a!(),x!(),x_next!(),c!(),norma!,s!,d!(),delta!

n=cells(1,2)

e=cells(2,2)

Redim a(n,n+1),c(n,n),d(n),x(n),x_next(n)

For i=1 to n

For j=1 to n+1

a(i,j)= cells(i,j+3)

Next j

Next i

For i=1 to n

For j=1 to n

If i<>j then

c(i,j)=-a(i,j)/a(i,i)

Else

c(i,j)=0

End if

Next j

Next i

s=0

For i=1 to n

For j=1 to n

s=s+c(i,j)^2

Next j

Next i

Norma=sqr(s)

Cells(6,2)=norma

If norma>1 then

Cells(7,2)=”Решений норма не имеет”

End if

For i=1 to n

S=0

For j=1 to n

s=s+c(i,j)*x(j)

Next j

x_next(i)=s

Next i

delta=0

for i=1 to n

delta=delta+(x_next(i)-x(i))^2

Next i

delta=sqr(delta)

For i=1 to n

x(i)=x_next(i) Ответы: x1=-17,8372

Next I x2=-8,3479

Loop while delta>e x3=19,4374

For i=1 to n x4=-18,067

Cells(7+I,2)=x(i)

Next i

End sub