Краткий курс вычислительной математики. Денисова Э.В - 7 стр.

UptoLike

Составители: 

§ 2. Устойчивость. Корректность. Сходимость
1. Устойчивость. Рассмотрим погрешности исходных данных. Поскольку это так называемые неустранимые
погрешности и вычислитель не может с ними бороться, то нужно хотя бы иметь представление об их влиянии
на точность окончательных результатов. Конечно, мы вправе надеяться на то, что погрешность результатов
имеет порядок погрешности исходных данных. Всегда ли это так? К сожалению, нет. Некоторые задачи
весьма чувствительны к неточностям в исходных данных. Эта чувствительность характеризуется так
называемой устойчивостью.
Пусть в результате решения задачи по исходному значению величины х находится значение искомой
величины у. Если исходная величина имеет абсолютную погрешность Δх, то решение имеет погрешность Δу.
Задача называется устойчивой но исходному параметру х, если решение у непрерывно от него зависит, т. е.
малое приращение исходной величины Δх приводит к малому приращению искомой величины Δу. Другими
словами, малые погрешности в исходной величине приводят к малым погрешностям в результате расчетов.
Отсутствие устойчивости означает, что даже незначительные погрешности в исходных данных приводят к
большим погрешностям в решении или вовсе к неверному результату. О подобных неустойчивых задачах
также говорят, что они чувствительны к погрешностям исходных данных.
Примером такой задачи является отыскание действительных корней многочленов вида
,)(
ε
=
n
ax
10 <<<
ε
.
Изменение правой части па величину порядка ε приводит к погрешности корней порядка ε
1/п
.
Интересной иллюстрацией неустойчивой задачи является так называемый пример Уилкинсона.
Рассматривается многочлен
...210)20)...(2)(1()(
1920
+== xxxxxxP
Очевидно, что корнями этого многочлена являются
20,...,2,1
2021
=== xxx
.
Предположим, что один из коэффициентов многочлена вычислен с некоторой малой погрешностью.
Например, коэффициент -210 при x
19
увеличим на 2
-23
(около 10
-7
). В результате вычислений даже с точностью
до 11 значащих цифр получим существенно другие значения корней. Приведем для наглядности эти значения,
округленные до трех знаков:
x
1
= 1,00,
х
9
= 8,92,
х
2
= 2,00,
х
10,11
= 10,1 ± 0,644i,
х
3
= 3,00,
х
12,13
= 11,8 ± 1,65i,
х
4
= 4,00,
х
14,15
= 14,0 ± 2,52i,
х
5
= 5,00,
х
16,17
= 16,7 ± 2,81i,
х
6
= 6,00,
х
18,19
= 19,5 ± 1,94i,
x
7
= 7,00,
х
20
= 20,8
x
8
= 7,01,
Таким образом, изменение коэффициента -210 при x
i9
на -210 +10
-7
привело к тому, что половина корней
стали комплексными. Причина такого явления неустойчивость самой задачи; вычисления выполнялись
очень точно (11 разрядов), а погрешности округлений не могли привести к таким последствиям.
2. Корректность. Задача называется поставленной корректно, если для любых значений исходных данных
из некоторого класса ее решение существует, единственно и устойчиво по исходным данным.
Рассмотренные выше примеры неустойчивых задач являются некорректно поставленными. Применять для
решения таких задач численные методы, как правило, нецелесообразно, поскольку возникающие в расчетах
погрешности округлений будут сильно возрастать в ходе вычислений, что приведет к значительному
искажению результатов.
Вместе с тем отметим, что в настоящее время развиты методы решения некоторых некорректных задач. Это в
основном так называемые методы регуляризации. Они основываются на замене исходной задачи корректно
поставленной задачей. Последняя содержит некоторый параметр, при стремлении которого к нулю решение
этой задачи переходит в решение исходной задачи.
3. Неустойчивость методов. Иногда при решении корректно поставленной задачи может оказаться
неустойчивым метод ее решения. В частности, по этой причине при вычислении синуса большого аргумента
был получен результат, не имеющий смысла.
Рассмотрим еще один пример неустойчивого алгоритма. Достроим численный метод вычисления интеграла
=
1
0
1
dxexI
xn
n
, n = 1, 2, …
6