Ортега Дж., Пул У. Введение в численные методы решения дифференциальных уравнений. Под ред. А.А.Абрамова (1986) (1095855), страница 9
Текст из файла (страница 9)
Введем величину Е(Ь) = шах ~ у» — у(х») ! (2.2.9) 1<»<Ф которая называется локальной ошибкой дискретизации метода Эйлера и точке х и служит мерой того, насколько разностная аппроксимация у (х) называемую глобальной ошибкой дискретизации (иногда эту величину называют глобальной ошибкой усеченил) . Отметим, что Е(й) зависит от величины шага Ь, поскольку предполагается, что приближения у» вычисляются при заданном значении л, Интуитивно ожидаем и определенно надеемся, что при уменьшении Ь ошибка дискретизации будет убывать и, в частности, при стремлении Ь к нулю также будет стремиться к нулю.
Мы не будем здесь давать полный анализ глобальной ошибки дискретизации, а удовлетворимся лишь тем, что покажем, как такой анализ обычно проводится. Во-первых, предположим, что точное решение у имеет на отрезке [а, о] ограниченную вторую производную у шах ~у (х)1=М. (2.2.10) а<х<ь Далее рассмотрим величину 1 А(х, А) = — [ у(х + А) — у(х)] — Я(х, у(х)), (2.2.11) Ь отличается от Г (х,у(х) ) . Предположим теперь, что у» равно значению точного решения у (х»). Тогда разность между аппроксимацией по Эйлеру у»~~ и точным решениему(х»~,) выражается формулой у(х»+,) — у»+, =у(х»+~) — у(х») — Б~(х», у(х»)) = ЬЕ(х», Ь).
(2.2,12) Таким образом, умноженная на Ь локальная ошибка дискретизации равна ошибке на одном шаге метода Эйлера, стартовавшего с точного решения. Нас интересует максимум Е (х, Ь) по х, так что определим локальную ошибку дискретизации метода Эйлера как Е(А) = пъах !Е(х, Ь) !. (2.2.13) а<х<ь — ь (2.2.15) З~' (ху) % М1, ау То по. ео м Ла !у !<о а<х<Ь, (2.2.16) гда т ре е гранжа о среднем значении при некотором О < д < 1 имеем !Лх»,у(х»)) — йх», у») ! = дУ вЂ” (х„, ду(х») + (1 — В)у»)(у(х») — у») ~М, е».
ду Используя зту оценку и заменяя Е (х», Ь) на Е (А), из (2.2.15) получаем !е»~, !<(1+ЬМ,) !е» !+Ь !Е(Ь) !. (2.2.17) Полагая здесь с = 1+ЬМ~ и раскрывая последовательность в (2.2.17), получаем !е»+, !<с ! е» !+ Ь !Е(Ь) ! <сз ! е», !+сЬ !Е(Ь) !+Ь !Е(Ь) ! < ... ...<с !е, !+с» 'Ь !Е(Ь) !+...+сЬ!Е(Ь) !+Ь !Е(Ь) !. (2.2.18) 35 Отметим, что величина Е (Й) зависит как от величины шага Ь, так н от вида правой части дифференциального уравнения и от отрезка 1и, Ь].
Мы, однако, вьщелили явно только зависимость от Й, поскольку в предположении (2.2.10) с помощью разложения Тейлора, аналогичного (2.2.6), можно получить оценку Ь Е (Ь) < — М = 0(Ь). (2.2.14) 2 Мы здесь воспользовались стандартным обозначением 0(Ь) для величины, стремящейся к нулю при Ь -+О с той же скоростью, что и Ь. В общем случае будем говорить, что функция я (Й) равна 0(ЬР), если при Ь -+О величина я (Й) /Й" ограничена. Задача теперь состоит в том, чтобы связать локальную ошибку дискретизации с глобальной ошибкой дискретизации.
Если обозначить ошибку у (х») — у» через е», то, согласно (2.2.5) и (2.2. 12), получим е»„= у(х»„) — у»„= у(х») + ЬЯх», у(х»)) + ЬЕ(х», Ь)— — у» — ЙЯх»,у„) = = е» + Ь [-Ях»,у(х»)) — Дх»,у»)] + ЬЕ(х», Ь). Предположим теперь, что функция ~ имеет ограниченную частную производную по второй переменной: Таблица 2.2 0,718 0.468 0,277 0,152 0,080 1 1)2 1/4 1/8 1(16 2,000 2,250 2„441 2,566 2,638 0,65 0,59 0,55 0,53 В частности, оценка ошибки ен в конечной точке интервала будет содержать сумму Ж членов с "М, (и), каждый нз которых равен 0(й~) .
Так как Л'= (Ь вЂ” а)/й, то сумма будет равна 0(А) . Таким образом, у нас есть основания ожидать, что будет справедлива следующая Т е о р е м а'2.2.1 (ошибка дискретизации метода Эйлера) . Если функ-. ция 1" имеет ограниченную частную производную по второй переменной и если решение задачи (2.2.3) — (2.2.4) имеет ограниченную вторую производную, то глобальная ошибка дискретизации метода Эйлера Е(Ь) = 0(Ь) .
Чтобы эта теорема была доказана полностью, следует показать, что величина с = (1+ ЬМ,) ограничена при Ь -+О. Доказательство этого известного факта мы опускаем. Предыдущий анализ показывает, что глобальная ошибка дискретизации есть 0(Ь). Это обычно выражают утверждением, что метод Эйлера имеет первый порядок. Практическим следствием этого факта является ожидание того, что при уменьшении Л приближенное решение будет все более точным и при стремлении Ь к нулю будет сходиться к точному решению с линейной скоростью по А; т.е.
мы ожидаем, что при уменьшении шага Ь вдвое ошибка уменьшится примерно в 2 раза. Такое поведение ошибки демонстрируется на следующем примере. Рассмотрим уравнение у =у, у(0) = 1, решение которого есть у(х) = = е". Используя разные шаги Ь, мы по методу Эйлера нашли приближенные значения решения при х = 1 (см. табл. 2.2) . Точное решение при х = 1 равно е = 2,718...; в среднем столбце таблицы дана ошибка приближенного решения при разной величине шага. В крайнем правом столбце приведено отношение ошибок при последовательном делении пополам шага Л. Из таблицы видно, что, как и следовало ожидать, это отношение близко к 1/2.
Очень медленная сходимость при уменьшейии Ь, которая, в частности, видна и из табл. 2.2, характерна для методов первого порядка н служит препятствием для их использования. Значительная часть остального материала этой главы посвящена изучению других методов, погрешность которых при стремлении й к нулю убывает с более высокой скоростью. Как пример одного нз подходов к построению таких методов мы рассмотрим метод Хьюна, определяемый формулой Ь уь+~ =уь + — У(хь,уь) +Фа+~,>Ъ + ЬЛхь,уь))1.
2 (2.2.19) Обратите внимание, что мы просто заменили т (х„, уь) в методе Эйлера на среднее значений функции ~, вычисленных в двух различных точках. Это иллюстрирует рис. 25. Метод Хьюна известен также как мегод Руигв— Куттв второго порядка н, как мы вскоре покажем, имеет локальную ошибку 'дискретизации 0(йз). Наиболее знаменитым из методов Рунге— Кутта является классический метод четвертого порядка, задаваемый фор- мулой Ь У»+ з =У» + Ж + Ж + 2~з + ~'е) б (2.2.20) й Ь т1г(х»ру»)зРягх»+~я»+Р Ь й Рз .г х»+ У»+ Гз, Тангенс угла Тангенс у гла наклона среднему арнЧзиатнчвскоиу Тангенс угла наклона -г(х„,гг ) Рис. 2.5.
Метод Хыона не только у», но и у» 1, У» з и т.д. В настоящем разделе мы имеем дело с методами, зависящими только от у» и не использующими никаких предыдущих значений. Такие методы называются одноиатговыми и могут быть представлены в общем виде как У»+1 =У»+" ч~(х» У») (2,2.21) с соответствующей функцией р.
В случае метода Эйлера функцией р является сама Х, в то время как для метода Хьюна 1 л(х, у) = — 1,г(х, у)+Дх+в, у+в,г(х, у))]. (2.2.22) 2 Метод Рунге — Кутта четвертого порядка (2.2.20) тоже является одношаговым н соответствующая функция р может быть записана в виде, аналогичном (2.2.22) (см. упражнение 2.2.5) . 37 Ге .г (х»+ у» + Ькз) ° Здесь | (х», у») в методе Эйлера заменено на взвешенное среднее значений ,г", вычисленных в четырех различных точках.
Было быпоучительнопостроить для этого случая рисунок, аналогичный рис. 2.5; это предлагается сделать в упражнении 2.2.9. В разделе 2.4 мы будем рассматривать методы, которые используют информацию, полученную на предьщуших шагах, т.е. У»+, будет функцией Для любого одношагового метода (2.2.21) опеределим локалытую ошибку дискретизации аналогично методу Эйлера соотношением С(й) = гпах 1А(х, А) !, д~х~ь — ь 1 ~(х ") = — ~ у(х + 6) — у(х)] — р(х, у(х)), й (2.2.23) где, как и раньше, у (х) — точное решение дифференциального уравнения.
Если для данной функции ~р окажется, что А (Й) = 0(л") при некотором целом р, то при соответствующих предположениях относительно функций р и 1 можно показать, что глобальная ошибка дискретизации будет также порядка р по А, т.е. Е(л) = гпах 1у(х~) — у~ ! = О(л'). (2.2.24) 1<1<% с~ л' + — 3"„„(х, у + с, Ь|) + 0(йз )1, где обозначаем ~(х,у) просто как ~, а частные производные по х — как ~„и Г „.
Воспользовавшись теперь разложением по у, где все встречающиеся частные производные вычислены в точке (х, у), имеем ч~ =с,Х+сз ~К+с Ий. + — с7 й'РУ~,, +О(й')+ Порядок метода (2.2.21) определяется как целое р, для которого А (Ь ) = = 0(лр). Такое определение порядка является некоторым утверждением о свойствах самого метода. При этом предполагается, что решение дифференциального уравнения у имеет'ограниченные производные до определенного порядка.
Например, для метода Эйлера мы показали, что р = 1 в предположении (2.2,10). Как будет продемонстрировано ниже, для других методов может потребоваться ограниченность производных решения и функции ~ более высокого порядка. Сравнительно несложно показать, что локальная ошибка дискретизации метода Хьюна есть 0(6'), но мы получим это как следствие более общего анализа, который служит основанием для методов Рунге — Кутта. Давайте рассмотрим функцию у, определяемую соотношением ф(х ~) с1ДХ, ) ) +с31(х +с Ь 1 + с Ь~ (х У)).
Мы хотим выбрать константы с1, с~ и с, так, чтобы максимизировать порядок одношагового метода (2.2.21), т.е. хотим найти наилучшую определяемую константами с~ и сз линейную комбинацию двух значений ~ и в какой точке интервала при этом следует вычислять второе значение,1, что задается константой с, . Разложим функцию р в ряд Тейлора по двум переменным в окрестности точки (х, у) .