Главная > Математика > Разностные схемы
<< Предыдущий параграф
Следующий параграф >>
<< Предыдущий параграф Следующий параграф >>
Макеты страниц

2. Ошибки в вычислениях.

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

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

Но в действительности, избрав какой-нибудь алгоритм для вычисления решения мы на каждом шаге осуществления этого алгоритма допускаем ошибки округления, которые оказывают влияние на результаты, получаемые на последующих шагах вычислений. При фиксированном А и конечномерном пространстве алгоритм состоит из конечной последовательности арифметических действий. Результат каждого арифметического действия (вычисление суммы, разности, произведения или частного) непрерывным образом зависит от величин, над которыми это действие осуществляется. Поэтому, ведя вычисления с «достаточно большим» числом десятичных знаков, мы можем вычислить с любым наперед заданным числом десятичных знаков. Число запасных десятичных знаков, с которым ведутся числения для получения с заданным числом знаком, зависит и от избранного алгоритма и от А. Так, например, в § 7 показано, что при решении прогонкой хорошо обусловленной краевой задачи число запасных десятичных знаков вовсе не возрастает при Иногда, казалось бы, разумные алгоритмы для решения устойчивых задач могут требовать быстро возрастающего числа запасных десятичных знаков, пропорционального

1/h. Пример такого алгоритма приведен в п. 2 § 5. С уменьшением h это число, вообще говоря, должно возрастать. Алгоритмы, в которых это число возрастает слишком быстро, считаются неустойчивыми и практически непригодны для счета. Вопрос об исследовании устойчивости алгоритмов сложный. Примером такого исследования является обоснование прогонки (§ 7). Но в простейших случаях удается понять, каково требуемое число запасных десятичных знаков, опираясь лишь на сведения об устойчивости разностной схемы и доказанную в п. 1 теорему о возможности задавать разностную схему приближенно.

Пусть, например, мы ведем вычисления по разностной схеме

Находя h) по рекуррентной формуле

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

было порядка

Для этого должно быть порядка . Этого можно добиться, ведя вычисления с возрастающим при как числом запасных десятичных знаков.

На этом примере мы показали, что в простых случаях ошибки округления при вычислении решения с точностью до множителя вида можносчитать ошибками задания правых частей . Из доказанной выше теоремы следует, что тогда для устойчивых схем эти ошибки не мешают сходимости без потери порядка точности, если число десятичных знаков, с которыми ведется счет, медленно возрастает, как , где с — некоторая постоянная.

<< Предыдущий параграф Следующий параграф >>
Оглавление