Самарский А.А., Гулин А.В. Численные методы (1989) (1095856), страница 39
Текст из файла (страница 39)
Иногда в (19) делают всего одну внутреннюю итерацию, полай й ! й>! гая 1=0, у!=х!, у; =х! . Тогда приходят к следующему итерационному методу: ..йы й+! й+! й й й й+! й — (х! , х, , ..., х! „ х;, х!ко ..., х ) (х! ' — х!) + "! йм й+! й й й + >й! (х! > ° > х! >> х» хи.!» х>>) = О> й = О, 1, ... (20) относительно переменной х! , й= 1, 2,..., т. йм Большое распространение получили гибридные методы, когда внешние итерации осуществляются одним методом, а внутренние другим.
При этом число внутренних итераций может быть фиксированным и не очень большим, так что внутренние итерации не доводятся до сходимости. В результате получается некоторый новый метод, сочетающий свойства исходных методов. Приведем примеры таких методов. Пример 8. Внешние итерации — ло Зейделю и внутренние— ло Ньютону. Здесь в качестве основной (внешней) итерации выбирается нелинейный метод Зейделя (18), а для нахождения хй!" используется метод Ньютона.
Обозначим у,=х;+'. Тогда итерации определяются следующим образом: дн й й+! > й й 5+1 > дх! — (х,, х,, ..., х! „уь х!+„..., Х) (у — у!) + В частности, при т=2 метод (20) принимает вид дЬ (х~, хь) Ф .л ь (х, — х,) + (, (х„ х~) = О, дх~ (21) — '(х,", х,) (х»" — х~) + ~, (х~", х~) = О. дхь П р и м е р 9. Внешние итерации — по Ньютону и внутренние— по Звйдвлю. Запишем метод Ньютона для системы (2) в виде (22) г"'(х') (х'»' — х")+Е(х') =О, д1, (х") где В'(х') =(а„), ац = ', (, 1=1, 2, ..., т.
Для решения дх системы линейных уравнений (22) воспользуемся методом Зейделя. Напомним (см. $1 гл. 2), что для линейной системы Аш+В=О (23) метод Зейделя строится следующим образом. Матрица А представляется в виде суммы А=А +Р+А+, где матрицы А, А+, Р соответственно нижняя треугольная, верхняя треугольная и диагональная. Итерации метода Зейделя строятся по правилу (А +Р)ге*+'+А,лв'+В=О, з=О, 1, ..., 1, (24) и система (24) решается путем обращения нижней треугольной матрицы А +Р.
В случае системы (22) надо положить А=В'(х'), вычислить последовательно векторы ш' согласно (24), начиная с ш'=О, и положить ш'+' =х'+' — х', так что х"'=х"+ш'+'. Заметим, что итерации по Зейделю можно осуществлять и относительно вектора х"+'. Пусть в (24) совершается только одна итерация, т. е. 1=0. Тогда, учитывая, что ге'=О, гв'=х"+' — х", получим метод (А +Р) (х"+' — х")+Е(х') =О, (25) где А +Р— «нижняя треугольная» часть матрицы Якоби (11), вычисленной при х=х'. В частности, при т= 2 метод (25) принимает вид '~' (х,", х',) (х'," — х',) + ~, (х,', х~) =О, дх~ (26) — '(х'„4 (х'," — х",) + — '(х'„х,') (х,"' — х',) + ~, (х'„х,') =О. дх~ дк» Сопоставление (21) и (26) показывает, что методы, рассмотренные в двух последних примерах, не совпадают.
213 ГЛАВА б ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ ДЛЯ ОБЫКНОВЕННЫХ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИИ 9 1. Исходная задача и примеры численных методов ее решения 1. Постановка исходной задачи. Будем рассматривать задачу Коши для системы обыкновенных дифференциальных уравнений — =)(1, и), 1)0, и(0) =инч сН (1) нли, подробнее, ~~ь (с) — =сс(1, и„и„..., и ), 1) О, с =1, 2, ..., т, (2) ссс ис(0)=ис", с=1,2, ..., т. (3) Хорошо известны условия, гарантнруюШне существование и единственность решения задачи Коши (см.
(39, с. 49)). Предположим, что функции с„ с= 1, 2, ..., т, непрерывны по всем аргументам в замкнутой области Р=(сс)(а, Сис — и(н~<Ь, 1=1,2, ..., т). Из непрерывности функций ), следует их ограниченность, т. е. существование константы М)0 такой, что всюду в Р выполняются неравенства 11;~ (М, с=!, 2,..., т.
Предположим, кроме того, что в Р функции 1, удовлетворяют условию Липшица по аргументам и„и„..., и, т. е. /с(1, и„и,„..., и') — )с(1, и„и„..., и ) ) ( ( (. () и, — и, ) + ) и, — и, ) + ... + )и — й 1) для любых точек (1, и„..., и ) и (1, и„и„..., и ) области Р. Если выполнены сформулированные выше предположения, то существует единственное решение и,=и,(1), и,=и,(1),..., и„=и (1) системы (2), определенное при ~1) (1,=ш(п(а, Ь/М) и принимающее при с=0 заданные начальные значения (3).
При исследовании численных методов для задачи Коши будем заранее предполагать, что ее решение существует, единственно и обладает необходимыми свойствами гладкости. 2. Примеры численных методов. Существуют две группы численных методов решения задачи Коши: многошаговые разностные методы и методы Рунге — Кутта.
Приведем примеры и поясним основные понятия, возникающие при использовании численных методов. Для простоты изложения будем рассматривать сейчас одно 214 уравнение — =г'(Г, и), 1)0, и(0) =и„. (4) ш Введем по переменному 1 равномерную сетку с шагом т)0, т. е. рассмотрим множество точек гь,= (Г„=пт, п=О, 1, 2,...). Будем обозначать через и(1) точное решение задачи (4), а через у„=у(Г.) — приближенное решение. Заметим, что приближенное решение является сеточной функцией, т. е. определено только в точках сетки м,.
П р имер 1. Метод Эйлера. Уравнение (4) заменяется разностным уравнением — )((,у)=0, п=0,1,2,. уо=иа (5) Решение этого уравнения находится явным образом по рекуррентной формуле у„„,=у +т)(г„, у ), п=О, 1,...,у,=и,. При использовании приближенных методов основным является вопрос о сходимости. Понятие сходимости приближенного метода можно сформулировать по-разному. Применительно к разностным методам, к которым относится и метод Эйлера (5), наибольшее распространение получило понятие сходимости при т О.
Оно означает следующее. Фиксируем точку г' н построим последовательность сеток м, таких, что т -0 и („=пт=( (тогда необходимо и- сс). Говорят, что метод (5) сходится в точке 1, если 1у„— и(1„) ! -0 при т-~О, 1„=5 Метод сходится на отрезке (О, Т), если он сходится в каждой точке гя (О, Т) . Говорят, что метод имеет р-й порядок точности, если существует число р)0 такое, что 1у.— и(1.) ~ =0(т") при т -О. Получим уравнение, которому удовлетворяет погрешность метода г„=у„— и(1„).
Подставляя у„=г„+и„в (5), получим =~((„„и„+ г„)— (б) т Правую часть уравнения (6) можно представить в виде суммы фш+ ф<в> где фш= — "" " +)'(1„, и„), ф~„' =~(1„, и„+ г„) — ((1„, и„). Функция фи~ называется невязкой или погрешностью аппроксимации разностного уравнения (5) на решении исходного уравнения (4). Видно, что невязка представляет собой результат подста- 21б новки точного решения и=и(1) в левую часть разностного уравнения (5).
Если бы приближенное решение у„совпадало с точным и(г„), то невязка равнялась бы нулю. Говорят, что разностный метод аппраксимирует исходное дифференциальное уравнение, если фо1- 0 прн т-+-О. Разностный метод имеет р-й порядок аппроксимации, если фо' =0(т'). В дальнейшем будет показано, что при очень общих предположениях порядок точности разностного метода совпадает с порядком аппроксимации.
Функция фа'=Г(гл, ил+ел) — )(1„, ил) [и обращается в нуль, если правая часть 1 не зависит от решения и. В общем случае ф® пропорциональна погрешности г„, так как по формуле конечных приращений имеем ф'„"= Г ((„,й'+Огл)гл, )0~(1. ди Порядок аппроксимации метода Эйлера (5) нетрудно найти, используя разложение по формуле Тейлора. Поскольку "=и'(1„)+0(т), то в силу уравнения (4) фо~ = — и' ((„) + ~ ((„, и„) + 0 (т) = 0 (т), т. е. метод Эйлера имеет первый порядок аппроксимации. При вы- воде предполагалась ограниченность и" (1). Пример 2.
Симметричная схема. Уравнение (4) заменяется разностным уравнением уги.1 ул 1 Ч(( У)+7(глн У ~1))=0, п=О, 1, ..., У,=и,, (7) т 2 Данный метод более сложен в реализации, чем метод Эйлера (5), так как новое значение у„+, определяется по найденному ранее у„путем решения уравнения у„+,— О,бт) (1„+„у„+,) =г„, где т„=у„+О,бт)'(1, у„). По этой причине метод называется неявным.
Преимуществом метода (7) по сравнению с (5) является более высокий порядок точности. Для невязки 2 справедливо разложение фю= — и' — — и" + 0(т~)+ — (и'+и' ) = т 1 а л 2 а л лы = — и„' — — й + — (и„'+ и„' + ти„+ 0 (т~)), 2Ы т. е. ф~о =0(т'). Таким образом, метод (7) имеет второй порядок аппроксимации. Из результатов $3 будет следовать, что он имеет и второй порядок точности. Приведенные примеры представляют собой простейшие случаи разностных методов, или, как их еще называют, разностных схем.
Методы Рунге — Кутта отличаются от разностных методов тем, что в них допускается вычисление правых частей )'(1, и) не только в точках сетки, но и в некоторых промежуточных точках. При мер 3. Метод Рунге — Кутта второго порядка точности. Предположим, что приближенное значение у„решения исходной задачи в момент 1=(„уже известно. Для нахождения у,„,=у(1кы) поступим следующим образом. Сначала, используя схему Эйлера О 5т (8) вычислим промежуточное значение у„„я, а затем воспользуемся разностным уравнением "=7(1„+ 0,5т, у,и), (9) т из которого явным образом найдем искомое значение у„+,. Для исследования невязки подставим промежуточное значение у,+ч,=у.'+0,5т~„, где 1„=1(1„, у„), в уравнение (9).
Тогда получим ревностное уравнение — )((и+ 0,5т, ул+ 0,5т)л) =О, т невязка которого равна фщ = — "" и+ 1((л+ 0,5т, ил + 0,5т1 ((л, ил)). (11) т Имеем " =и„'+ 0,5тй+ 0(т'), 1(Ю,+0,5т, ил+ 0,5т1(Е„, ил)) =)(1„, ил) + 7 д7(гл, ил) д( Ул' ил) ) + 0,5т ~ " " + 0,5т)(бь ил) " " ~ ='7(1„, ил) +0,5ти"„' дг ди так как в силу (4) справедливо равенство зли д7 д( — = — +~ —.