Применение экстраполяции для оценки погрешности

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

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

Ответить на второй вопрос можно с помощью повторной экстраполяции, т.е. экстраполяцией экстраполированных результатов, полученных для разных наборов исходных данных. В этом случае получается оценка погрешности экстраполированных результатов (или размытость оценки погрешности). Если эта оценка удовлетворяет требованиям: в три и более раз меньше оценки погрешности исходных данных (относительная размытость меньше 1/3 [9]), то цель достигнута. Если нет, то данный способ оценки в конкретном случае следует признать ненадежным. Подробнее о критерии надежности сказано ниже.

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

Численная фильтрация

При экстраполяции требуется априорное знание характера зависимости результата расчетов от числа узлов (или математической модели погрешности), например

Применение экстраполяции для оценки погрешности - student2.ru , (6)

где Применение экстраполяции для оценки погрешности - student2.ru – точное значение; Применение экстраполяции для оценки погрешности - student2.ru – приближенный результат, полученный при числе узловых точек, равном n; Применение экстраполяции для оценки погрешности - student2.ru – коэффициенты, которые предполагаются не зависящими от n; Применение экстраполяции для оценки погрешности - student2.ru – величина, полагаемая малой по сравнению с Применение экстраполяции для оценки погрешности - student2.ru при тех значениях n, которые использовались в данных конкретных расчетах, k1,…, kL – произвольные действительные числа (предполагается, что k1<k2<…< <kL).

В математическом анализе обычно оценивается только первый член, поскольку остальные являются асимптотически (при n®¥) бесконечно малыми более высокого порядка. Однако для конечных n остальные слагаемые могут вносить существенный вклад и должны приниматься во внимание.

Если решение задачи представляет собой функцию с несколькими непрерывными производными, то можно допустить возможность его разложения по формуле Тейлора, тогда Применение экстраполяции для оценки погрешности - student2.ru – это часть ряда натуральных чисел. Тогда к задаче нахождения предельного при Применение экстраполяции для оценки погрешности - student2.ru значения z можно подойти как к задаче интерполяции зависимости Применение экстраполяции для оценки погрешности - student2.ru от параметра Применение экстраполяции для оценки погрешности - student2.ru алгебраическим многочленом с последующей экстраполяцией до Применение экстраполяции для оценки погрешности - student2.ru . Есть и другой подход, приводящий при условии постоянства Применение экстраполяции для оценки погрешности - student2.ru к тому же алгоритму, но не требующий целочисленности Применение экстраполяции для оценки погрешности - student2.ru . Это решение задачи численной фильтрации, т.е. последовательное устранение степенных слагаемых суммы (6) при сохранении значения константы z. Рассмотрим два значения Применение экстраполяции для оценки погрешности - student2.ru , Применение экстраполяции для оценки погрешности - student2.ru , вычисленные при числе узлов, равном Применение экстраполяции для оценки погрешности - student2.ru и Применение экстраполяции для оценки погрешности - student2.ru соответственно. Составим линейную комбинацию

Применение экстраполяции для оценки погрешности - student2.ru

и потребуем, чтобы, суммарный коэффициент при z был равен 1, а при Применение экстраполяции для оценки погрешности - student2.ru (для определенного j) равен 0. Отсюда получим формулу фильтрации, которая совпадает с экстраполяционной формулой Ричардсона [1]

Применение экстраполяции для оценки погрешности - student2.ru . (7)

Проводя последовательно экстраполяцию по всем парам соседних значений, получим отфильтрованную зависимость, не содержащую члена с Применение экстраполяции для оценки погрешности - student2.ru

Применение экстраполяции для оценки погрешности - student2.ru , (8)

где Применение экстраполяции для оценки погрешности - student2.ru . (9)

Заметим, что отфильтрованная последовательность Применение экстраполяции для оценки погрешности - student2.ru содержит на один член меньше, чем исходная. Если она содержит больше одного члена, то ее также можно отфильтровать, устранив степенную составляющую с Применение экстраполяции для оценки погрешности - student2.ru . Операции фильтрации можно повторять последовательно для Применение экстраполяции для оценки погрешности - student2.ru ,…, Применение экстраполяции для оценки погрешности - student2.ru , если исходная последовательность содержит достаточное количество членов. Результаты экстраполяций удобно представлять в виде треугольной матрицы

Применение экстраполяции для оценки погрешности - student2.ru (10)

Применение повторной экстраполяции при kj=j известно под названием метода Ромберга. При его применении возникает ряд ограничений.

Применение повторной экстраполяции приводит к изменению коэффициентов суммы (6). При Применение экстраполяции для оценки погрешности - student2.ru увеличение абсолютной величины коэффициентов может оказаться весьма существенным. Это ограничивает число возможных экстраполяций.

Величина Применение экстраполяции для оценки погрешности - student2.ru в (6) может оказаться суммой регулярной составляющей, имеющей вид Применение экстраполяции для оценки погрешности - student2.ru , и нерегулярной составляющей Применение экстраполяции для оценки погрешности - student2.ru , обусловленной погрешностью исходных данных, которая, например, связана с ограниченной разрядностью чисел в машинном представлении. Тогда исходная нерегулярная часть погрешности, содержащаяся в вычисленных значениях Применение экстраполяции для оценки погрешности - student2.ru , при каждой экстраполяции умножается на коэффициент

Применение экстраполяции для оценки погрешности - student2.ru .

Для метода Ромберга, применяемого к последовательности (6) при Применение экстраполяции для оценки погрешности - student2.ru , произведение таких множителей ограничено числом, приблизительно равным 8 (получено численно), т.е. метод Ромберга является устойчивым к погрешности исходных данных, но сам уровень нерегулярной погрешности может ограничить число возможных экстраполяций.

Процесс Эйткена

При оценке погрешности частичных сумм значение k в (2.4) может быть неизвестно. В этом случае можно использовать следующую модификацию правила Ричардсона. Вычислим три значения z1, z2, z3 при трех номерах последовательности: n, nQ, nQ2 и составим систему трех уравнений [1, 9]

Применение экстраполяции для оценки погрешности - student2.ru (11)

Найдем разности

Применение экстраполяции для оценки погрешности - student2.ru ,

Применение экстраполяции для оценки погрешности - student2.ru ,

и, разделив одну на другую, определим Qk

Применение экстраполяции для оценки погрешности - student2.ru . (12)

Теперь можно найти z

Применение экстраполяции для оценки погрешности - student2.ru . (13)

Как и в рассмотренных ранее случаях, мы нашли экстраполированное (уточненное) значение z=z*, а вместе с ним и оценку погрешности zi-z*.

Этот способ экстраполяции при неизвестном порядке точности принято называть алгоритмом Эйткена или d2-алгоритмом, который в более общем случае применяется для экстраполяции векторных последовательностей

Применение экстраполяции для оценки погрешности - student2.ru .

В последнем выражении zi – векторы, а скобками обозначается скалярное произведение.

Критерий размытости оценки

Оценка погрешности по правилу Рунге сводится к сравнению значения zn с экстраполированным значением Применение экстраполяции для оценки погрешности - student2.ru . Поскольку эта оценка справедлива при допущении, что величина Применение экстраполяции для оценки погрешности - student2.ru точнее, чем zn, то необходима проверка справедливости этого допущения. Это можно сделать следующим образом. Повторим процесс экстраполяции и получим значение Применение экстраполяции для оценки погрешности - student2.ru . Разность Применение экстраполяции для оценки погрешности - student2.ru представляет собой оценку погрешности приближенного значения zn.. Разность Применение экстраполяции для оценки погрешности - student2.ru является оценкой погрешности экстраполированного значения Применение экстраполяции для оценки погрешности - student2.ru или оценкой погрешности оценки погрешности (рис. 10). Отношение Применение экстраполяции для оценки погрешности - student2.ru имеет смысл относительной размытости оценки погрешности.

Если Применение экстраполяции для оценки погрешности - student2.ru , то это означает, что относительная размытость оценки Применение экстраполяции для оценки погрешности - student2.ru мала, и такой оценке можно доверять.

Применение экстраполяции для оценки погрешности - student2.ru

Рис. 10. Размытость оценки погрешности

Пусть оценка погрешности представляется в виде интервала Применение экстраполяции для оценки погрешности - student2.ru . Для определения порогового значения dn для принятия или отклонения полученной оценки желательно на основании имеющейся информации установить, не может ли при гипотетическом продолжении экстраполяций произойти переход получающихся значений левее Применение экстраполяции для оценки погрешности - student2.ru или правее Применение экстраполяции для оценки погрешности - student2.ru . Для этого предположим, что при последующих гипотетических экстраполяциях значение Применение экстраполяции для оценки погрешности - student2.ru , как коэффициента уменьшения расстояния между соседними экстраполированными значениями, будет сохраняться: Применение экстраполяции для оценки погрешности - student2.ru . Тогда предельное удаление предельного значения от Применение экстраполяции для оценки погрешности - student2.ru определяется суммой геометрической прогрессии Применение экстраполяции для оценки погрешности - student2.ru . Отсюда следует неравенство

Применение экстраполяции для оценки погрешности - student2.ru , (14)

где K³1 – коэффициент «запаса» надежности оценки. Необходимость введения коэффициента K вызвано желанием получать достаточно надежные оценки в условиях неопределенности, вызванной влиянием нерегулярных составляющих погрешности. Тогда получим условие (критерий принятия оценки)

Применение экстраполяции для оценки погрешности - student2.ru .

Примем величину K=2. Тогда пороговое значение Применение экстраполяции для оценки погрешности - student2.ru , тогда при Применение экстраполяции для оценки погрешности - student2.ru оценка принимается, а при Применение экстраполяции для оценки погрешности - student2.ru отвергается. Это же значение было получено эмпирически при анализе реальных численных данных [9].

Наши рекомендации