Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Методы вычислительной математики для технических специальностей. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
☆
1.7. Метод Гаусса – Зейделя
Один из самых распространенных итерационных методов отличается простотой и легкостью программирования.
Проиллюстрируем на примере:
  
  
  
Пусть диагональные элементы
отличны от нуля, в противном

(1.42)
 
случае можно поменять. Выразим неизвестные , ,
из уравнений
  
󰇛
  

󰇛
  

󰇛
  

󰇜
, (1.43)
󰇜
, (1.44)
󰇜
. (1.45)
соответственно
Зададим некоторые начальные (нулевые) приближения значений не-
известных: 
󰇛󰇜
, 
󰇛󰇜
, 
󰇛󰇜
. Подставляя эти значения в пра-
вую часть (1.46), получаем первое приближение для


󰇡

 
󰇡

 
:
󰇛󰇜
 
󰇛󰇜
и приближение 
󰇛󰇜
 
󰇛󰇜
󰇛󰇜
󰇛󰇜
Используем это выражение для Находим из (1.46) приближение для
󰇛󰇜
:
(1.46)
󰇢
󰇛󰇜
для 
(1.47)
󰇢
21
.
Наконец, используя вычисленные значения
󰇛󰇜
, 
󰇛󰇜
, находим с по-
мощью (1.47) первое приближение уравнения
󰇛󰇜

󰇡

 
󰇛󰇜
󰇛󰇜
 
:
󰇛󰇜
(1.48)
󰇢
На этом заканчивается первая итерация решения системы.
Используя теперь значения
󰇛󰇜
, 
󰇛󰇜
,
󰇛󰇜
можно аналогично прове-
сти вторую итерацию, в результате которой будут найдены вторые при-
󰇛󰇜
󰇛󰇜
ближения:
, 
,
󰇛󰇜
.
Приближение с номером k можно представить в виде

󰇡

 
󰇛󰇜
 
󰇛󰇜
󰇢
󰇛󰇜
Итерационный процесс продолжается до тех пор, пока значения
󰇛󰇜
 󰇛󰇜
󰇛󰇜
,
не станут близкими с заданной погрешностью к значениям 
󰇛󰇜
,
.
󰇛󰇜
󰇛󰇜


󰇡


 
 
󰇡
󰇛󰇜
󰇛󰇜
 
 
󰇛󰇜
󰇛󰇜
, (1.49)
󰇢
󰇢
󰇛󰇜
󰇛󰇜
Рассмотрим теперь систему n уравнений с n неизвестными
   
󰇛󰇜
  
󰇛󰇜
  
,
i = 1,2,…n.
Будем опять полагать, что все диагональные элементы отличны от 0.
Тогда в соответствии с методом k-e приближение можно представить
,
,
в виде
󰇛󰇜
󰇛 

󰇛󰇜
   
󰇛
󰇛󰇜
 
󰇜

󰇛
󰇛
󰇜

󰇜

   
󰇛󰇜
󰇜 (1.50)
i = 1,2,…n
22
Критерий окончания итерационного процесса можно записать в виде
δ = max 󰇻
виде (при
max
󰇛󰇜
 
>>1):

󰇛󰇜
󰇻 < ɛ – по max абсолютного отклонения 1 ≤ i ≤ n или в
󰇛󰇜
< ɛ – критерий по относительным разностям.
Для сходимости итерационного процесса достаточным условием яв­ляется



; i = 1,2,…n. (1.51)

То есть для каждого уравнения системы модуль диагонального элемен­та был не меньше суммы модулей всех остальных коэффициентов. При этом хотя бы для одного уравнения это условие должно выполняться строго.
Это условие не является необходимым, так как для некоторых итера­ции сходятся и при нарушении этого условия.
Число обусловленности линейных алгебраических систем. Пусть имеем систему АХ = Bμ; A – невырожденная матрица коэффициентов n*n. Пусть правая часть получила приращение ∆b. Если x – решение, то x+∆x будет решением A(x+∆x) = b+∆b. Можно показать, что между относитель-
ными погрешностями вектора свободных членов

существует связь:




Число обусловленности Cond A=






и вектора решения

(1.52)
является коэффициентом
этой связи. Легко показать, что Cond A служит также коэффициентом ро­ста относительных погрешностей при неточном задании элементов матри­цы А в (1.40):





и




(1.53)

23
Таким образом, чем больше Cond A, тем сильнее сказываются на ре-
шении линейной системы ошибки в исходных данных.
Если Cond A велико – система плохо обусловлена. Если Cond A мало – система хорошо обусловлена. Говорить «хорошо» или «плохо» в отрыве от контекста задачи бес-
смысленно. Здесь играют роль размерность задачи, требуемая точность, точность представления чисел в ЭВМ и так далее. Однако можно дать оценку снизу:
Cond A =


≥
  


Непосредственный расчет числа обусловленности может быть, осо-
бенно при большой размерности, трудной задачей.
 (1.53)
24
2. НЕЛИНЕЙНЫЕ УРАВНЕНИЯ
Пусть имеем уравнение (нелинейное) вида F(x) = 0, F(x) – некоторая непрерывная функция. Необходимо найти его корни. Нелинейные уравне­ния можно разделить на два класса: алгебраические и трансцендентные.
Алгебраические – содержат только алгебраические функции (целые, рациональные, иррациональные), в частности многочлен степени n: P(x) является целой рациональной алгебраической функцией, дробно-
рациональной
󰇛󰇜
, иррациональной
󰇛󰇜
󰇛󰇜
.
󰇛󰇜
Трансцендентные – содержат тригонометрические, показательные, логарифмические функции.
Методы решения делятся на прямые и итерационные. Прямые мето­ды позволяют записать корни в виде некоторого конечного соотношения (формулы) (до 4-й степени включительно, если 5-я степень, взять в ради­калах невозможно).
Итерационные методы (то есть методы последовательных прибли­жений) состоят из двух этапов:
а) отыскание приближенного значения корня или содержащего его отрезка;
б) уточнение приближенного значения до заданного уровня точности.
Мы рассмотрели случаи только вещественного решения нелинейных уравнений (функция меняет знак).
2.1. Метод деления отрезка пополам
Допустим, что удалось найти отрезок
 
, в котором расположено
значение корня x = c, то есть a<c<b. Берем в качестве начального прибли-
жения корня середину отрезка, то есть 
󰇛󰇜
. Далее смотрим на значе-
25
ния F(x) в точках a,
,b. Тот отрезок, на котором F(x) принимает значения
разных знаков, содержит искомый корень, поэтому рассмотрим новый от-
резок (отрезок b) и делим его пополам, получаем точку ственно F(), и далее рассмотрим отрезок 
, делим его пополам и по-
и соответ-
лучаем значение  и соответственно F(󰇜. Из рис. 1 видно, что точка  уже близка к значению корня
. Таким образом, после каждой итерации
отрезок, на котором содержится корень, уменьшается вдвое.
Рис. 1. Метод деления отрезка пополам
Итерационный процесс продолжается до тех пор, пока значение
F(
) после n-й итерации не станет меньше по модулю некоторого задан-
ного малого числа ɛ, то есть
󰇛󰇜
<ɛ.
Этот метод медленный, но всегда сходится, то есть решение получа-
ется всегда, причем с заданной точностью.
2.2. Метод хорд
󰇟
Пусть мы нашли отрезок
󰇠
 
, на котором F(x) меняет знак. Пусть
для определенности F(a)>0, F(b)<0. Процесс итераций заключается в том,
что в качестве приближений к корню принимаются значения 
26
…точек
пересечения хорды с осью абсцисс. Сначала находим уравнение хорды,
проходящей через точки F(a) и F(b):
󰇛󰇜󰇛󰇜 󰇛󰇜󰇛󰇜
пересечения, положим F(x) = 0. Следовательно, x= Далее сравниваем F(a) и F(
) – для рассматриваемого случая корень будет

, чтобы найти точку

󰇛󰇜
󰇛󰇜󰇛󰇜
F(a)+a;
находиться в интервале (a,), так как F()<0. Отрезок () – отбрасыва-
ем и так далее (см. рис. 2).
Рис. 2. Метод хорд
Соответственно для точки ды соединяющей F(a) и F(
), получим

Соответственно для точки ды соединяющей F(a) и F(
), получим
, являющейся точкой пересечения хор-
󰇛󰇜󰇛󰇜
󰇜
󰇛
󰇛󰇜
, являющейся точкой пересечения хор-
 . (2.1)
27

󰇛󰇜󰇛󰇜
󰇜
󰇛
󰇛󰇜
 . (2.2)
Как видно из рис. 2, точка  уже близка к значению корня
Соответственно для случая n итераций точки пересечения хорды
F(a), F( 
) получим

󰇛󰇜󰇛
󰇛


󰇜
󰇛󰇜
󰇜
 . (2.3)
Итерационный процесс продолжается до тех пор, пока
где ɛ – заданная погрешность.
2.3. Метод Ньютона
По сути, аналогичен методу секущих. Только здесь вместо хорды на
k-й итерации проводится касательная к кривой y = F(x) при x =
.
󰇛󰇜
и ищется
<ɛ,
точка пересечения касательной с осью абсцисс. Уравнение касательной
в точке  с координатами F(),
F(x) – F() =
Значение x, равное
, при котором касательная пересекает ось x,
имеет вид
󰆒
󰇛
󰇜󰇛
  
󰇜
в которой F(x) = 0, определится по соотношению

Далее все повторяется: находим уравнение касательной в точке находим точку пересечения этой касательной с осью x = формулы  для x =
можно записать

󰇛󰇜
󰆓󰇛󰇜
󰇛󰇜
󰆓󰇛󰇜
 

. (2.4)
. По аналогии
. (2.5)
,
Соответственно для n+1 приближения можно записать
28


󰇛󰇜
. (2.6)
󰆓󰇛󰇜
Рис. 3. Метод Ньютона
При этом, естественно, необходимо, чтобы 󰆒󰇛󰇜≠0. Для окончания
итерационного процесса может быть использовано условие
󰆒󰇛󰇜
<ɛ или
условие близости двух последовательных приближений

 
󰕂. (2.7)
Мы видим, что здесь не нужно искать интервал, где есть корень урав-
нения. На каждой итерации объем вычислений больше, чем в предыдущих методах, но сходится он быстрее. Например, после 5-6 итераций погрешность метода может быть такой же, как у предыдущих после 50 итераций.
Трудность в применении метода Ньютона состоит в выборе началь-
ного приближения, для поиска которого иногда целесообразно применить всегда сходящийся метод (например, деления отрезка пополам).
Рассмотренные выше методы применимы для решения как транс­цендентных, так и алгебраических уравнений, однако алгебраические уравнения имеют некоторые особенности, которые могут быть использо­ваны при их решении.
29
2.4. Метод простой итерации
Пусть имеем нелинейное уравнение
F(x) = 0. (2.8)
Часто его можно представить в виде x = f(x).
Например: x 
 
.
Исходя из условий задачи, можно выбрать некое начальное прибли-
жение x = . Подставим  в правую часть и получим x =
:
󰇛󰇜 (2.) (2.9)
Теперь  подставляем в правую часть и получаем x = , 󰇛󰇜
и так далее, до того пока

 
󰕂, где 󰕂 – заданная малая величина.
2.5. Системы нелинейных уравнений
Пусть имеем систему
󰇛󰆒 …. 󰇜
󰇛
󰆒
󰇜
 (2.10)
_ _ _ _ _ _ _ _ _ _ _ _
󰇛
󰆒
󰇜

Не существует прямых (в отличие от линейных уравнений) методов
решения этих систем. Обычно используют итерационные методы:
а) метод простой итерации (напоминает метод Гаусса – Зейделя для
линейных уравнений).
30
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]