Н.Н. Калиткин - Численные методы (1133437), страница 56
Текст из файла (страница 56)
Очевидно, вопроса о существовании корня при этом не возникает; у„„всегда определяется, даже если алгебраическое уравнение (32) вещественного корня не имеет. Роль числа итераций хорошо видна на примере уравнения и'=)(и). Естественное нулевое приближение есть у)~ ~ =у„, так что первая и вторая итерации Ф-'ь =У.+Ч(У.). 1 Уи-'г! = Ул+ з й У (Уи)+~ (Ул+Мю)] являются соответственно схемой ломаных (! 5) первого порядка точности и схемой Рунге-Кутта второго порядка точности (23) типа «предиктор — корректор».
Дальнейшие итерации уже не увеличат порядка точности, так как он не может быть выше, чем в исходной схеме (32); они влияют только на коэффициенты в остаточном члене и увеличивают время счета. Таким образом, неявные схемы с заданным числом итераций мало отличаются от схем Рунге — Кутта и бывают удобны лишь для некоторых нестандартных задач.
Но они приводят к интересной идее ограничения числа итераций. Есть эмпирическое правило, в общем случае не обоснованное. Пусть для решения дифференциального уравнения написана неявная схема р-го порядка точности. Разрешим ее методом последовательных приближений аналогично (ЗЗ) и зададим число итераций. Тогда при одной итерации получим схему первого порядка точности, при двух — второго и так далее, при р итерациях— р-го порядка точности. дальнейшее увеличение числа итераций уже не увеличивает порядок точности. Это правило оказывается полезным даже для уравнений в частных производных.
По существу схема с заданным числом итераций есть новая явная схема. Поэтому здесь не возникает вопроса о существовании корня или сходимости итераций, подобных (33). 9. Специальные методы. Из всех численных методов интегрирования обыкновенных дифференциальных уравнений, рассчитанных на произвольные уравнения (точнее, на классы уравнений, у которых правые части имеют определенное число непрерывных и ограниченных производных), наилучшие результаты и при расчетах на ЭВМ, и прн ручных расчетах дают методы Рунге — Кутта.
Поэтому, приступая к решению какой-либо конкретной задачи Коши, обычно пробуют решить ее одной из описанных в п. 6 схем, Но выше отмечалось, что встречаются задачи с быстропеременнымн решениями, когда все схемы Рунге — Кутта для получения удовлетворительной точности требуют неприемлемо малого 254 ОБЫКНОВЕННЫЕ ДИФФЕРЕНЦИАЛЬНЫЕ УРАВНЕНИЯ !ГЛ.
УП! шага. Характерным примером такой задачи является система уравнений химической кинетики. Сначала разберем задачу химического распада одного вещества и'(!)= -сх(1, и)и, и(0)=иа)0, сг(1, и))0; (34) здесь и — концентрация вещества, 1 — время, а — скорость распада, которую считаем зависящей от 1 и и (ибо она зависит от температуры, а температура определяется выделением тепла при реакции и внешними условиями охлаждения). Запишем для уравнения (34) схему ломаных (15) р„!=да(! — та(Г„, уа)1, т=(„! — 1„. (35) По смыслу задачи, концентрация вещества должна быть положительной.
Но если скорость распада настолько велика, что хотя бы в одной точке сс„) 1!т, то численное решение (35) будет знакопераменным, что физически бессмысленно, Применение вместо (15) схем Рунге — Кутта более высокого порядка точности лишь немного ослабляет указанное ограничение шага, не устраняя его (см. задачу 7). Для одного уравнения (34) эта трудность несущественна: если скорость распада сз(Г, и) велика, то вещество распадается за малое время г сз-т, так что число шагов сетки 7тг=17т будет умеренным.
Но в системах уравнений химической кинетики присутствуют вещества с самыми различными константами распада или синтеза (нередко от сс 10з сек' до сз 10 ' сек-'). Тогда общий промежуток времени будет определяться самой медленной реакцией (! 100 сек), а допустимый шаг интегрирования — самой быстрой реакцией (т 10 ' сек). Ясно, что такой обьем расчетов — около 1Ога шагов — совершенно неприемлем* ). Для подобных задач приходится использовать специальные методы, разработанные именно для данных узких классов уравнений; для других классов уравнений эти методы обычно оказываются непригодными. Способы построения специальных методов основаны на изучении и использовании свойств общих решений исследуемого класса уравнений. Рассмотрим некоторые способы.
Большинство способов основано на том, что для исходного уравнения и'(х) =-7" (х, и) стараются найти такое вспомогательное уравнение о' (х) =гг(х, о), чтобы решение последнего возможно более просто выражалось через элементарные функции, и при этом на заметном отрезке изменения аргумента выполнялось бы и (х) — о (х). Иными словами, ищется приближенное решение, имеющее достаточно простой вид. ') Кроме гого, при таком числе шагов существенно сказыааатся некоррект. ность задачи, связанная с ошибками округления. ЗВ ЗАпАЧА КОШИ Для нахождения приближенных решений можно применить метод Пикара или другие аналогичные методы. Нередко удается добиться успеха, слегка упрощая правую часть исходного уравнения. Например, если в задаче (34) положить и(г, и) -с»» = сопзг, тогда вспомогательное уравнение будет и' (() = — а„о, а его решением при заданном начальном условии является и(() =и„х хехр [ — ъ»(г — ~„)1. Первый способ построения специальных схем удобен для зиакопеременных решений (иапример, быстро осциллирующих).
В нем рассматривается разность ш (х) = и (х) — и (х). Вычитая вспомогательное уравнение из исходного, получим уравнение, которому удовлетворяет эта разность ш'(х) =7(х, о(х)+ш) — д(х, и(х)); здесь и(х) — известная функция. Если п(х) действительно является хорошим приближением к решению, то функция ш(х) невелика, поэтому уравнение (Зб) должно легко интегрироваться обычными схемами Рунге — Кутта.
Втор о й способ выгоден для знакопостоянных решений (например, растущих по экспоненциальному или степенному закону). В нем рассматривается отношение ш (х) = и (х)7о (х), а для систем уравнений — отношения ш» (х) = и» (х)д» (х). Нетрудно убедиться, что это отношение удовлетворяет уравнению и' (х) = — „~ [7 (х, ши (х)) — шд (х, о (х) Д, (37) где о (х) — известное приближенное решение. Аналогично предыдущему случаю, полученное уравнение должно хорошо интегрироваться численно схемами Рунге — Кутта. П р и ме р. Если для уравнения распада (34) воспользоваться приближенным решением о (Г) =и»ехр [ — а» (à — (»)), то специальная схема (37) примет следующий вид: ( ) [мО м (Г~ ~п (~))з ш, при слабо меняющейся и((, и) малость правой части очевидна.
Третий способ' заключается в том, что вспомогательное уравнение рассматривается не на большом промежутке изменения аргумента, а на одном шаге сетки х„х-=х„„, Берется его приближенное решение о„(х), удовлетворяющее начальному условию о„(х„)=-у„-и(х„). Поскольку интервал сетки невелик, то на нем приближенное решение будет близко к точному, поэтому можно положить и (х„„) = у„.„= в» (х„»»). Этот способ означает написание такой разиостной схемы, которой решение воспомогательного уравнения удовлетворяет точно, а решение исходного уравнения — приближенно, но с малой погрешностью, 256 ОБЫКНОВЕННЫЕ ДИФФЕРЕНЦИАЛЬНЫЕ УРАВНЕНИЯ [ГЛ.
ЧП! П р н м е р. Рассмотрим уравнение, возникающее в задачах так называемой дифференциальной прогонки: и' (х) = — [и2 + р (х)), р (х) ) О. (38) Если положить Р(х) сопз(=Рл.ь!!2 пРи хл -х=--.хлл.2, то вспомогательное уравнение примет вид Р' (х) = — (Ба+ р), р =- сопз1. Оно интегрируется в элементарных функциях агс1д '— '-'- — агс1я — ",' = — й )Гр. У'Р У'Р Это соотношение явно разрешается, давая такую специальную схему: улл = ~УР, ь !!2 —" + + .
(39а) г Ул )'грл+ !/2 У ( 1 Рл+ !/2) 1' Рл+ !!2+ У 2Е (" )! Р + !М) Если можно считать 6)г р (<1, то схема (39а) упрощается: Ул ЛРлл-!М Улм (39б) Схемы (39а) и (39б) дают неплохие результаты даже в тех случаях, когда условие устойчивости прогонки нарушено, а точное решение задачи (38) имеет полюсы. Прн использовании третьего способа обычно удается построить схемы первого или второго порядка точности, но с малым остаточным членом (точнее, мала по величине комбинация производных, входящая множителем в остаточный член); схемы более высокого порядка точности построить этим путем трудно. Первый и второй способы позволяют использовать схемы Рунге— Кутта высокого порядка точности, но остаточный член при этом будет не очень мал, ибо решения и (х) и о (х) на большом отрезке изменения аргумента могут заметно отличаться, и правые части уравнений (36) или (3?) становятся большими.