Text
                    518
Б 30
УДК 519.95
Численные методы (анализ, алгебра,
обыкновенные дифференциальные уравнения), Н. С.
Бахвалов. Главная редакция физико-математической
литературы изд-ва «Наука», М., 1975 г.
В книге рассматриваются основные положения
численных методов, относящиеся к приближению
функций, интегрированию, задачам алгебры н
оптимизации, решению обыкновенных дифференциальных
уравнений.
Значительное внимание уделяется вопросам
выбора методов и организации вычислений при решении
большого числа однотипных задач.
Книга предназначена для студентов
университетов и технических вузов с расширенной программой
по математике, специализирующихся по прикладное
и вычислительной математике, а также для лиц,
интересующихся теорией и практикой численных
методов.
Таблиц 1, рисунков 62, библиографических
названий 126.
© Главная редакция
20204-016 „ „„ фнзнко математической лит
053@2)«75 издательства «Наука», 1973


ОГЛАВЛЕНИЕ Предисловие 7 Введение 9 ЧАСТЬ I. ЧИСЛЕННЫЕ МЕТОДЫ МАТЕМАТИЧЕСКОГО АНАЛИЗА Глава I. Погрешность результата численного решения задачи .... 15 § 1. Источники и классификация погрешности ... .... 15 § 2. Запись чисел в ЭВМ 18 § 3. Абсолютная и относительная погрешности. Формы записи данных 19 § 4. О вычислительной погрешности 21 § 5. Погрешность функции . . ■ 23 Глава II. Интерполяция и смежные вопросы 30 § 1. Постановка задачи приближения функций 31 § 2. Интерполяционный многочлен Лагранжа 35 § 3. Оценка остаточного члена интерполяционного многочлена Лагранжа 37 § 4. Разделенные разности и их свойства . 37 § 5. Интерполяциониая формула Ньютона с разделенными разностями 39 § 6. Разделенные разности н интерполирование с кратными узлами 42 § 7. Уравнения в конечных разностях 47 § 8. Многочлены Чебышева 56 § 9. Минимизация оценки остаточного члена интерполяционной формулы 59 § 10. Конечные разности 62 § 11. Интерполяционные формулы Ньютона для равных промежутков 65 § 12. Интерполяционные формулы Бесселя и Эверетта. Составление таблиц -67 § 13. О погрешности округления при интерполировании 75 § 14. Применение аппарата интерполирования. Обратная интерполяция 77 § 15. Ортогональные системы и их свойства 78 § 16. Ортогональные многочлены 85 § 17. Численное дифференцирование 88 § 18. О вычислительной погрешности формул численного дифференцирования 92 Глава III. Численное интегрирование 95 § 1. Квадратурные формулы Ньютона — Котеса 95 § 2. Оценка погрешности квадратурной формулы на классе функций 103 § 3. Квадратурные формулы Гаусса - 107 § 4. Практическая оценка погрешности элементарных квадратурных формул 119 § 5. Интегрирование сильно осциллирующих функций 125
4 ОГЛАВЛЕНИЕ § 6 Повышение точности интегрирования за счет разбиения отрезка на равные части . 128 § 7 О постановках задач оптимизации 134 § 8 Оптимальные квадратуры на классах функций с одной производной . 139 § 9 Оптимизация распределения узлов квадратурной формулы . .147 § 10 Примеры оптимизации распределения узлов . 153 § 11 Главный член погрешности 159 § 12 Формулы Эйлера и Грегори . 163 § 13 Правило Рунге практической оценки погрешности 167 § 14 Формулы Ромберга . . . 174 § 15 Эксперименты и их обсуждение . 178 § 16 Вычисление интегралов в нерегулярном случае • 185 § 17. Принципы построения стандартных программ с автоматическим выбором шага . .193 § 18 Стандартные программы численного интегрирования 201 Глава IV. Приближение функций и смежные вопросы 210 § 1 Наилучшие приближения в линейном нормированном пространстве . 210 § 2 Наилучшее приближение в гильбертовом пространстве и вопросы, возникающие при его практическом построении . . 212 § 3 Дискретное преобразование Фурье . . 218 § 4 Быстрое преобразование Фурье . ... 222 § 5 Наилучшее равномерное приближение 225 § 6 Примеры наилучшего равномерного приближения . • 228 § 7. Итерационный метод построения многочлена наилучшего равномерного приближения . . 235 § 8 О форме записи многочлена . 242 § 9 О способах вычисления элементарных функций 249 § 10 О скорости приближения функций различных классов . 253 § 11 Интерполяция и приближение сплайнами . . 256 § 12 Энтропия и е-энтропия . ... 262 Глава V Многомерные задачи ... . 270 § 1 Метод неопределенных коэффициентов ... . . 271 § 2 Метод наименьших квадратов . . ... 272 § 3 Метод регуляризации . . . . . 274 § 4 Пример регуляризации . . . 275 § 5 Сведе71ие многомерных задач к одномерным . .... 281 § 6 Оценка погрешности численного интегрирования по равномерной сетке . .... 289 § 7 Оценка снизу погрешности численного интегрирования . . • 292 § 8 Об оптимизации оценки погрешности на более широких классах способов интегрирования . . • . . 295 § 9 Метод Монте-Карло . . . . ... 300 § 10 Обсуждение правомерности использования недетерминированных методов решения задач • • 305 § 11 Ускорение сходимости метода Монте-Карло ... . 307 § 12 Квадратурные формулы повышенной точности со случайными узлами . 311 § 13 О выборе метода решения задачи . . . .... 316 ЧАСТЬ II ЗАДАЧИ АЛГЕБРЫ И ОПТИМИЗАЦИИ Глава VI Численные методы алгебры 323 § 1 Методы последовательного исключения неизвестных .... 324 § 2. Метод ортогонализации . . 333
ОГЛАВЛЕНИЕ 5 § 3 Метод простой итерации 335 § 4 Исследование реального итерационного процесса . . . 340 § 5 Спектр семейства матриц . 343 § 6 б2-процесс практической оценки погрешности и ускорения сходимости . • 349 § 7 Оптимизация скорости сходимости итерационных процессов . 352 § 8 Метод Зейделя . . . . 363 § 9 Метод наискорейшего градиентного спуска . • 369 § 10 Метод сопряженных градиентов . . • 372 § П. Метод Монте-Карло решения систем линейных уравнений 378 § 12. Итерационные методы с использованием спектрально эквивалентных операторов 385 § 13 Погрешность приближенного решения системы уравнений и обусловленность матриц Регуляризация 388 § 14 Проблема собственных значений 394 § 15 Решение полной проблемы собственных значений для симметричной матрицы методом вращений 400 лава VII Решение систем нелинейных уравнений и задач оптимизации 405 § 1. Метод простой итерации и смежные вопросы . 4Э7 § 2 Метод Ньютона решения нелинейных уравнений 411 § 3 Другие методы решения одного уравнения . . . 416 § 4 Методы спуска .... . 420 § 5 Другие методы сведения многомерных задач к задачам меньшей размерности . .... 425 § 6 Решение стационарных задач путем установления 429 § 7 Что оптимизировать' ... 436 § 8 Как оптимизировать' 440 •ЧАСТЬ III. ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ОБЫКНОВЕННЫХ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИИ лава VIII. Численные методы решения задачи Коши 447 § 1 Разложение решения в ряд Тейлора ... . 448 § 2. Методы Рунге — Кутта . .... 450 § 3 Методы с контролем погрешности на шаге . . . 459 § 4 Оценка погрешности одношаговых методов . . 461 § 5 Конечно-разностные методы ... . 466 § 6 Метод неопределенных коэффициентов ... ■ . 471 § 7. Исследование свойств конечно-разностных методов на модельных задачах .... . 476 § 8 Оценка погрешности конечно-разностных методов . . • 483 § 9. Главный член погрешности 488 § 10. Изучение свойств конечно-разностных методов па более точных моделях . . . 493 § 11 Интегрирование систем уравнений . .... 502 § 12 Ряд общих вопросов 512 § 13. Формулы численного интегрирования уравнений второго порядка 519 § 14 Оценка погрешности численного решения задачи Коши для уравнения второго порядка . . . • ... 523 § 15. Двусторонние методы .... . . . . • 528 лава IX Численные методы решения краевых задач для обыкновенных дифференциальных уравнений . 535 § 1 Простейшие методы решения краевой задачи для уравнения второго порядка . . ... .... 535 § 2. Функция Грина сеточной краевой задачи .... ... 542
6 ОГЛАВЛЕНИЕ § 3. Решение простейшей краевой сеточной задачи 548 § 4. Замыкания вычислительных алгоритмов 557 § 5. Обсуждение постановок краевых задач для линейных систем ' первого порядка ..... . 565 § 6. Алгоритмы решения краевых задач для систем уравнений первого порядка 571 § 7. Методы дифференциальной ортогональной прогонки .... 577 § 8. Нелинейные краевые задачи ... 58$ § 9. Аппроксимации специального типа 59& § 10. Конечно-разностные методы отыскания собственных значений . 601 § 11. Оптимизация распределения узлов интегрирования 606 § 12. Влияние вычислительной погрешности в зависимости от формы записи конечно-разностного уравнения ... ... 612 § 13. Оценка вычислительной погрешности при решении краевой задачи методом прогонки 618 Список литературы 622 Предметный указатель 628-
ПРЕДИСЛОВИЕ Настоящая книга написана на основе лекций, читавшихся автором последние десять лет на механико-математическом факультете и на факультете вычислительной математики и кибернетики МГУ и на основе опыта работы в ВЦ МГУ. Как и всякое другое пособие по численным методам, эта книга содержит изложение основных положений теории, в данном случае относящихся к приближению функций, интегрированию, задачам алгебры и оптимизации, решению дифференциальных уравнений. Текущий период характерен бурным развитием вычислительной техники; в частности, мощность парка ЭВМ возрастает на порядки в течение десятилетия. Это обстоятельство сопровождается усиленным применением ЭВМ и численных методов для решения резко расширяющегося круга задач. В результате происходит быстрое изменение взглядов на весь комплекс вопросов, связанных с применением ЭВМ, и требований к численным методам решения задач. В частности, в связи с вышесказанным нельзя предложить пособия по численным методам, содержащего рецепты решения всех возможных реальных задач. При выборе метода решения сложной конкретной задачи всякое пособие зачастую играет роль лишь общего руководства, отталкиваясь от которого исследователь рассматривает свои проблемы. Работа, связанная с созданием и применением численных методов, складывается из чисто теоретических исследований методов решения типичных задач, анализа работы алгоритмов при решении модельных задач, вычислительного эксперимента и ряда других моментов. Большое значение имеют вопросы выбора направления исследования, построения математических моделей рассматриваемых явлений, организации контактов с представителями других наук. В каждом конкретном случае эти проблемы приобретают свои оттенки и трудно дать какие-либо общие рекомендации, пригодные во всех случаях. Поэтому рассуждения автора по затрагиваемым вопросам следует рассматривать не как руководство к действию, а просто как одну из возможных точек зрения.
g ПРЕДИСЛОВИЕ Эффект от применения ЭВМ и численных методов достигаете» как в результате решения отдельных трудных задач, так и за счет расширения круга пользователей ЭВМ путем предоставления им больших удобств. Для последней цели важно составление стандартных программ решения типичных математических задач. Поэтому в рассматриваемой книге определенное внимание уделено также вопросам теории численных методов, возникающим при разработке таких стандартных программ. Автор многим обязан своему отцу, профессору С. В. Бахва- лову, академикам А. Н. Колмогорову, С. Л. Соболеву, А. Н. Тихонову, члену-корреспонденту АН СССР Н. Г. Четаеву, профессорам И. С. Березину, С. К. Годунову, доцентам Н. П. Жидкову, В. Г. Карманову, А. Ф. Филиппову, оказавшим большое влияние на формирование взглядов автора по рассматриваемым вопросам. Автор выражает благодарность рецензенту профессору Е. А. Волкову за весьма ценные замечания, которые существенно помогли автору. Автор благодарен профессорам В. В. Воеводину, Н. Н. Кузнецову доцентам Ф. П. Васильеву, Е. Г. Дьяконову, Я. М. Жилей- кину, В. А. Морозову за полезные обсуждения, способствовавшие улучшению рукописи. Автор признателен за большую помощь при работе над рукописью Б. И. Березину, Г. М. Кобелькову, А. Б. Кукаркину„ К. Ю. Осипенко, Р. В. Разумейко. Н. С. Бахвалов
ВВЕДЕНИЕ Прежде чем переходить к непосредственному изложению теории численных методов, попытаемся определить ее место в системе других областей знания н рассказать о проблемах, возникающих в связи с ее применением. Первоначально элементы математики появились в связи с необходимостью решения практических задач: измерений на местности, навигации и т. д. Вследствие этого математика была численной математикой — ее целью являлось получение решения в виде числа. Численное решение прикладных задач всегда интересовало математиков. Крупнейшие математики прошлого сочетали в своих исследованиях изучение явлений природы, получение их математического описания (как иногда говорят, математической -«модели» явления) и его исследование. Анализ усложненных моделей потребовал создания специальных, численных методов решения задач. Названия некоторых из таких методов — методы Ньютона, Эйлера, Лобачевского, Гаусса, Чебышева, Эр- мита — свидетельствуют о том, что их разработкой занимались крупнейшие ученые своего времени. Настоящее время характерно резким расширением приложений математики, во многом связанным с созданием и развитием средств вычислительной техники. В результате создания ЭВМ с 'Программным управлением менее чем за тридцать лет скорость выполнения арифметических операций возросла от 0,1 операции в секунду при ручном счете до 3 000 000 операций на современных серийных ЭВМ, т. е. примерно в E000)^ раз. Рост возможностей в связи с созданием вычислительной техники носит качественный характер и иногда сравнивается с промышленной революцией, вызванной открытием паровой машины. Уместно вспомнить, что в итоге промышленной революции и последующего развития науки и техники на протяжении двух веков скорость передвижения возросла от скорости пешехода 6 км/час до скорости космонавта 30 000 км1час, т. е. в 5000 раз. Распространенное мнение о всемогуществе современных ЭВМ часто порождает впечатление, что математики избавились почти от всех хлопот, связанных с численным решением задач.
10 ВВЕДЕНИЕ И разработка новых методов решения задач уже не столь существенна. В действительности это не так. Один из общих законов развития науки состоит в том, что потребности развития общества часто ставят перед-ней задачи, несколько превышающие ее возможности. Расширение возможностей приложения математики обусловило математизацию других разделов науки: химии, экономики, биологии, геологии, географии, психологии, медицины и конкретных разделов техники. Процесс математизации состоит в построении математических моделей процессов н явлений и разработке методов их исследования. В других разделах науки, например в физике или механике, построение математических моделей для описания различных явлений природы и изучение этих моделей с целью объяснения старых или предсказания новых эффектов явлений являются традиционными. Примером успешного изучения математических моделей в сочетании с обработкой результатов наблюдений задолго до появления ЭВМ явилось открытие неизвестной ранее планеты — Нептуна. Однако в целом работа в этом направлении зачастую продвигалась относительно медленно, поскольку обычно не удавалось получить решение возникающих математических задач и приходилось ограничиваться рассмотрением простейших моделей. Применение ЭВМ и расширение математического образования резко увеличило возможности в направлении построения и исследования математических моделей. Все чаще результаты расчетов позволяют обнаруживать и предсказывать ранее никогда не наблюдавшиеся явления; это дает основания говорить о математическом эксперименте. В некоторых направлениях исследования доверие к результатам численных расчетов так. велико, что при расхождении между результатами расчетов и экспериментов в первую очередь ищут ошибку в результатах экспериментов. Современные успехи в решении таких важных для общества задач, как атомные, космические, экономические, вряд ли былк бы возможны без применения ЭВМ и численных методов. Требование численного решения новых задач привело к появлению большого количества новых методов. Наряду с этим последние тридцать лет происходило интенсивное теоретическое осмысливание как старых, так и новых методов, их систематизация. Теоретические исследования в области численных методов в основном группируются вокруг численных методов решения так называемых типичных математических задач. В настоящее время сюда принято относить задачи анализа (приближение, дифференцирование, интегрирование), задачи алгебры, решение дифференциальных и интегральных уравнений, задачи оптимизации, обратные задачи; отметим, что два последних направле-
ВВЕДЕНИЕ ll ния теории численных методов начали формироваться в последние пятнадцать лет. Эти теоретические исследования оказывают большую помощь при решении конкретных задач и играют существенную роль в наблюдаемом сейчас широком распространении сферы приложений ЭВМ и математики вообще. Рассмотрим поучительный пример. Решение дифференциальных уравнений в частных производных сводится к решению систем линейных уравнений с матрицей, в каждой строке которой имеется 5—10 ненулевых элементов. Накануне появления ЭВМ такие системы уравнений решали в случае числа неизвестных порядка 10—W; сейчас нередки случаи, когда решаются системы с числом неизвестных порядка 10^—10^. В гипотетическом <:лучае решения этих задач на современных ЭВМ методами, известными тридцать лет назад, пришлось бы ограничиться системами уравнений с числом неизвестных порядка 10^—10'' (при тех же затратах времени ЭВМ). Быстрое проникновение математики во многие области знания, в частности, объясняется тем, что математические модели и методы их исследования применимы сразу ко многим явлениям, сходным по своей формальной структуре. Часто математическая модель, описывающая какое-либо явление, появляется при изучении других явлений или при абстрактных математических построениях задолго до конкретного рассмотрения данного явления. В частности, и в теории численных методов, так же как в чистой математике, полезна разработка общих построений. Однако есть разница в подходе «чистого» и «прикладного» математика к решению какой-либо проблемы. На языке первого понятие решить задачу означает доказать существование решения и предложить процесс, сходящийся к решению. Сами по себе эти результаты полезны для прикладника, но, кроме этого, ему нужно, чтобы процесс получения приближения не требовал больших затрат, например, времени или памяти ЭВМ. Ему важно не только то, что процесс сходится, но и то, как быстро он сходится. При численном решении задач возникают также новые вопросы, связанные с устойчивостью результата относительно возмущений исходных данных и округлений при вычислениях. Наряду с теорией численных методов период бурного роста переживает и ряд других разделов математики, непосредственно обязанных ЭВМ своим возникновением. Применение численных методов и ЭВМ к решению естественнонаучных задач оказывает влияние и на традиционные разделы математики. Например, направление исследования квазилинейных гиперболических систем во многом развивается под влиянием контакта с численной математикой. Математика возникла и развивается как часть естествознания, и долгое время ее развитие существенным образом
12 ВВЕДЕНИЕ определялось потребностями физики и механики. Требование математизации новых разделов науки неизбежно приводит к обратному влиянию этих разделов науки на развитие математики и должно существенно изменить лицо самой математики. Отметим еще один канал влияния прикладной стороны математики на развитие ее теоретических разделов. Прикладные исследования имеют непосредственную отдачу; это усиливает доверие общества к науке, расширяет понимание ее проблем в имеет следствием усиленное вложение средств с целью ее развития. При реал-ьной работе в области приложений математики возникает большое число осложнений самого различного, зачастую нематематического характера. Хотя трудно надеяться, что какие-либо теоретические нравоучения могут заменить собственный опыт работы, попытаемся,, иногда не совсем всерьез, обратить внимание на некоторые вопросы общего характера, важные для работы в области приложений математики. Проводимая ниже систематизация этих вопросов является довольно случайной, условной; по-видимому, можно предложить еще добрый десяток подобных классификаций, имеющих не меньшее право на существование. 1. Первостепенное значение имеет выбор направления исследования. Свобода выбора направления исследования обычно довольно невелика, так как основные контуры направления исследования обычно задаются «извне». При выборе направления исследования в пределах имеющихся возможностей полезно иметь в виду следующее правила трех частей, по своему внешнему виду похожее на шутку: проблемы делятся на I — легкие, И — трудные, III — очень трудные. Проблемами I заниматься не стоит, они будут решены ходом событий и без вашего вмешательства, проблемы П1 вряд ли удастся решить в настоящее время; поэтому стоит обратиться к проблемам II. 2. Нужно уметь сформулировать на языке математики конкретные задачи физики, механики, экономики, инженерные задачи и т. д., т. е. построить математическую модель рассматриваемого явления. Начинающий работу математик часто жалуется на трудности контактов с представителями других наук, которые «даже» не могут сформулировать стоящих перед ними задач. Правильное формулирование задачи — это научная проблема не менее сложная, чем само решение задачи, и не нужно надеяться, что кто-то другой целиком сделает это за вас. При постановке проблемы первостепенное внимание должно быть уделено выяснению цели исследования; принимаемая математическая модель явления не есть что-то однозначное, раз навсегда связанное <г
ВВЕДЕНИЕ 13 ЭТИМ явлением, а зависит от цели исследования. Прежде чем выписывать дифференциальные уравнения, выбирать метод решения и обращаться к ЭВМ, стоит подумать, а не будут ли бесполезны все результаты вычислений? В то же время надо воспринимать как должное, что большая часть результатов вычислений будет выброшена сразу же после их получения. Дело в том, что производимая работа зачастую носит исследовательский характер, и трудно заранее предсказать, что и в какой форме следует получить, на каком пути нужно искать численное решение задачи. Цель исследования и описание проблемы обычно уточняются в процессе контактов представителей конкретных наук или руководства организацией («заказчиков») и математиков («исследователей» или «исполнителей»). 3. Успех в прикладной науке требует широкой математической подготовки, поскольку только такая подготовка может обеспечить приспособляемость к непрерывно меняющимся типам задач, предъявляемых к решению. Одной из причин необходимости изучения «бесполезных» для практики на первый взгляд разделов математики является достижение более уверенного и более свободного владения «нужными» разделами математики. 4. Не следует думать, что совершенное знание математики, численных методов и навыки работы с ЭВМ позволяют сразу решить любую прикладную математическую задачу. Во многих случаях требуется доводка методов, приспособление их к решению конкретных задач. При этом типична обстановка, когда используются методы, применение которых теоретически не обосновано, или теоретические оценки погрешности численного метода неприемлемы для практического использования; при выборе метода решения задачи и анализа результатов приходится полагаться на опыт предшествующего решения задач, на интуицию и сравнение с экспериментом; и при этом приходится отвечать за достоверность результата. Поэтому для успеха в работе необходимы развитое неформальное мышление, умение рассуждать по аналогии, дающие основания ручаться за достоверность результата там, где с позиций логики и математики, вообще говоря, ручаться нельзя. В рассматриваемом вопросе есть и другая сторона. При численном решении конкретных трудных задач, возникающих в других областях знания, математик действует зачастую как естествоиспытатель, полагаясь во многом лишь на опыт и «правдоподобные» рассуждения. Крайне желательно, чтобы такая эмпирическая работа подкреплялась теоретическими разработками методов, аккуратной проверкой качества методов на контрольных задачах с известным решением, объективным сравнением с экспериментом. При длительном продвижении в каком-то направлении без такого подкрепления может теряться перспектива
14 ВВЕДЕНИЕ работы, полная уверенность в правильности получаемых результатов. Известное высказывание, что «хороший теоретик может истолковать в желаемом ему направлении любые результаты как расчетов, так и эксперимента», содержит большую долю истины. 5. После завершения расчетов наступает этап использования результатов вычислений в практической деятельности, или, как часто говорят, этап внедрения результатов. Правильнее будет сказать, что подготовка к использованию результатов начинается уже с анализа постановки задачи и в процессе ее решения, и по существу все моменты решения задачи и внедрения неразрывно связаны между собой; в процессе формулирования задачи и ее решения заказчик и исполнитель взаимно уточняют постановку задачи и тем самым подготавливают почву для ее внедрения. Математика в сочетании с ЭВМ применяется в самых разнообразных областях, и часто приходится иметь дело с заказчиками, не имеющими опыта применения ЭВМ. В процессе контакта с такими «начинающими» заказчиками особенно важно преодолеть их первоначальное недоверие к вторжению математики; результаты вычислений будут использоваться только тогда, когда заказчик осмыслит их со своих позиций и убедится в том, что их действительно можно и нужно использовать. При правильном подходе к взаимным контактам к концу процесса решения задачи начинающий заказчик приходит к пониманию, что ЭВМ и математика могут дать ему не все, но довольно много, а «начинающий» математик — к пониманию того, что он дает заказчику кое-что, но далеко не все нужное для реального решения задачи. Поучительна история все с той же планетой Нептун. За год до Леверье Адаме путем расчетов открыл существование этой планеты; однако он не установил контакта с астрономами, и его результат не был своевременно проверен экспериментом. 6. Существенным моментом в прикладной работе является необходимость получения результатов в установленный срок. Заказчик, для которого проводятся исследования (расчеты), часто имеет конкретный срок завершения исследований и принятия решения на их основе. Если исследования не будут завершены к сроку, то решение все равно будет принято, но на основании более грубого, эмпирического или просто «волевого» подхода. Потерянное в таком случае доверие со стороны заказчика часто бывает невозможно восстановить. В такой ситуации лучше найти удовлетворительное решение задачи, но в срок, чем получить полное решение задачи к тому времени, когда оно станет бесполезным. Дополнительная литература к введению 1[10], 11[30], [31], [35].
Часть I ЧИСЛЕННЫЕ МЕТОДЫ МАТЕМАТИЧЕСКОГО АНАЛИЗА Глава I ПОГРЕШНОСТЬ РЕЗУЛЬТАТА ЧИСЛЕННОГО РЕШЕНИЯ ЗАДАЧИ § 1. Источники и классификация погрешности Погрешность решения задачи обуславливается следующими причинами: 1. Математическое описание задачи является неточным, в частности, неточно заданы исходные данные описания. 2. Применяемый для решения метод часто не является точным: получение точного решения возникающей математической задачи требует неограниченного или неприемлемо большого числа арифметических операций, и поэтому вместо получения точного решения задачи приходится прибегать к приближенному. 3. При вводе данных в машину, при выполнении арифметических операций и при выводе данных производятся округления. Погрешности, соответствующие этим причинам, называют: 1) неустранимой погрешностью, 2) погрешностью метода, 3) вычислительной погрешностью. Дадим иллюстрацию этих определений. Пусть имеется маятник (рис. 1.1.1)*), начинающий движение в момент t = to. Требуется предсказать его положение в момент ^i. Дифференциальное уравнение, описывающее колебание этого маятника, берется в виде l^ + gs\ncf + ^.^ = 0, A) / — длина маятника, g — ускорение силы тяжести, ц — коэффициент трения. Как только принято такое описание, решение задачи уже приобрело неустранимую погрешность, в частности, потому, что *) Тройная [1умерация ссылок означает главу, параграф, номер формулы или рисунка; двойная — параграф и номер (в данвюй главе); одинарная — только номер (в дан1Еом параграфе).
16 ПОГРЕШНОСТЬ ЧИСЛЕННОГО РЕШЕНИЯ ЗАДАЧИ [ГЛ [ реальное трение зависит от скорости не совсем линейно; другой ИСТОЧНИК неустранимой погрешности состоит в ошибках определения I, g, [1, to, (p{to), q>'Uo). Название этой погрешности — «неустранимая» соответствует ее существу: она неконтролируема в процессе численного решения задачи и может уменьшиться только за счет более точного описания физической задачи и более точного определения параметров. Дифференциальное уравнение A) не решается в явном виде; для его решения потребуется применить какой-либо численный метод. Вследствие этой причины и возникает погрешность метода. Вычислительная погрешность может возникнуть, например, из-за конечности количества разрядов чисел, участвующих в вычислениях. Введем формальные определения. Пусть / — точное значение отыскиваемого параметра, например, в данном случае, реальный угол отклонения маятника ф в момент времени ^1, 7 — значение этого параметра, соответствующее принятому математическому описанию, в данном случае — значение ф(/1) решения Риа. I.1.I, уравнения A), Т^ — решение задачи, получаемое при реализации численного ;«етода в предполо- жении отсутствия округлений, Ik— приближение к решению задачи, получаемое при реальных вычислениях. Тогда р, =/ — / —неустранимая погрешность, Р2 = /й — / —погрешность метода, B) Рз = 7* — 7^j — вычислительная погрешность. Полная погрешность, т. е. разность между реально получаемым и точным решением задачи, Pq = II — / удовлетворяет очевидному равенству Р0 = Р1 + Р2 + РЗ' C) Во многих случаях под термином «погрешность» того или иного вида удобно понимать не рассмотренные выше разности между приближениями, а некоторые меры близости между ними. Например, в скалярном случае, полагают' ро=1^;-^1' р,=1/-л, Р2=|/„-л- рз=к-К\- при таких обозначениях вместо C) получаем Ро < Pi + Р2 + Рз- D)
§ I] источники и КЛАССИФИКАЦИЯ ПОГРЕШНОСТИ 17 В других случаях решение / и приближения /, 1/^, I'f^ оказываются элементами некоторых функциональных пространств, часто различных. Например, 7 может быть элементом пространства F непрерывных на [О, 11 функций, а 7ft — элементом пространства fj, сеточных функций /л, определенных в точках Хп = nil, п = О, ..., А"', А"' — целое. Тогда в качестве меры погрешности вводят некоторую меру близости pBi, 22), где Zi и гз могут быть элементами как одного, так и различных подпространств. Требования на эту меру близости — возможность принять се за естественную меру погренпюстн и выполнение неравенства треугольника рB„2з)<рB,, 22) + р(г2, гз) E) при любых Zi, 22, 23 S F, Fh. При этом не [вкладывается условие: если рB|,22) =0, то 2i = 22; так что функция p(zi.Z2) не обязательно является расстоянием в некотором метрическом пространстве. В рассматриваемом сейчас примере можно положить p(/i./2)= max \ii{nh.)-fi{nh)\ независимо от того, каким пространствам принадлежат /i и /2. Меры погрешности определятся, соответственно, равенствами Ро = Р Qh' >)' Pi = Р 0. п. Р2 = Р Uh' Ь Рз = Р Ul ~'h) и, вследствие E), будут удовлетворять неравенству D). Может возникнуть такой вопрос по поводу проблемы исследования неустранимой погрешности: зачем изучать неустранимую погрешность решения задачи, если она «неустранима»? По крайней мере такая точка зрения кажется оправданной, если математик получает для численного решения уже готовые уравнения, не участвуя в обсуждении физической постановки задачи. Это возражение нельзя признать разумным. Часто математик сам занимается исследованием постановки задачи, анализом и упрощением рассматриваемых уравнений. Поскольку все явления в природе взаимосвязаны, в принципе невозможно описать математически точно никакой реальный процесс, происходящий в природе. Однако анализ роли различных факторов на погрешность решения может позволить получить простейшее описание процесса с допустимой погрешностью. Обычно математик имеет представление о требуемой окончательной точности результата, и, исходя из этого, он может производить необходимые упрощения исходной задачи. Если математик не участвует в обсуждении физической постановки задачи, то представление о величине неустранимой погрешности ему все равно необходимо по следующей причине. При решении большинства задач из соображений «здравого смысла» видно, что нет особого резона применять метод решения задачи с погрешностью, существенно меньшей, чем величина пеустраинмой погрешности. Поэтому, имея представление о величине неустранимой погрешности, математик-исследователь
18 ПОГРЕШНОСТЬ ЧИСЛЕННОГО РЕШЕНИЯ ЗАДАЧИ (ГЛ. I может понизить требования к точности применяемого им алгоритма. В одном случае для решения была предложена следующая задача: для большого числа областей G и правых частей / составить таблицы решений уравнения Пуассона: Да = u^^jj^ + u^^^^ = f (;t(, Jtj) в области G, u |p = 0; Г — граница G; требуемая точность табличных значений 10"'. В исходной постановке задача была непосильна для решения в приемлемое время, и поэтому был рассмотрен вопрос о разумности исхо^1ной постановки. Оказалось, что реальная физическая задача описывается дифференциальным уравнением {k (д:,, х^) Uj,_)^_ + (k (дср х^) u^J^^ = f(x^, дга); про коэффициент k{Xi,K2) известно лишь, что при существующей технологии изготовления рассматриваемого материала он находится в пределах от 0,7 до 1,5. Ясно, что численное решение исходной эадами с погрешностью, меньшей 0,01 (а может быть, и меньшей 0,1), является бессмысленным. После уменьшения требуемой точности оказалось возможным уменьшить также число различных областей и правых частей, пользуясь тем обстоятельством, что решения в близких между собой областях при близких правых частях близки. После такого изменения постановки задача стала посильной для решения. Таким образом, исследование неустранимой погрешности исходной постановки задачи является часто'удобным путем для снижения предъявляемых требований к точности. Иногда в литературе встречается несколько иная классификация погрешностей: неустранимой погрешностью называют лишь погрешность, являющуюся следствием неточности задания исходных данных, входящих в математическое описание задачи, а погрешность, являющуюся следствием несоответствия математического описания реальности, называют погрешностью математической модели. § 2. Запись чисел в ЭВМ В современных ЭВМ наиболее приняты две формы записи чисел. Первая форма записи — с фиксированной запятой: все числа в ЭВМ имеют модуль, меньший 1; число знаков после запятой фиксировано. Таким образом, машина оперирует с числами х=±^а^д-''= ±iai, ..., at); A) k=i здесь q — целое —основание системы счисления, «i, ..., at — целые в пределах О ^ ал < ^. При операциях над числами х с \х\ <.\ могут появляться числа ус |г/| ^ 1, и тогда произойдет остановка работы ЭВМ («машинный останов» или «АВОСТ»). Чтобы избежать этого,
S 3J АБСОЛЮТНАЯ И ОТНОСИТЕЛЬНАЯ ПОГРЕШНОСТИ 19 производится масштабирование задачи — введение новых масштабов. Иногда заранее нельзя указать нужные масштабы; в других случаях введение очень больших масштабов с самого начала приведет к тому, что в исходных данных большое число первых из «i обратится в нуль и произойдет существенная потеря информации. Поэтому часто предусматривают изменение масштабов уже в процессе решения задачи. Вторая форма записи — с плавающей запятой: машина оперирует с числами t ^f=±<7''2aft<7"*=±<7''(ai. .... а,); B) порядок числа р удовлетворяет неравенству \р\ ^ ро. Наиболее распространен случай двоичной системы счисления: q = 2; случаи ^ = 8 и ^ ^ 10 применяются как вспомогательные на этапах подготовки п выдачи данных. На небольшой части машин принята троичная система счисления: ^=3. В наиболее развитых ЭВМ имеются представления чисел как с ф"ик- сированной запятой, так и с плавающей; в ряде случаев число разрядов t может задаваться пользователем по его усмотрению. При работе в режиме с плавающей запятой пользователь получает дополнительные удобства, так как может не заботиться о масштабах; однако при этом происходит некоторое замедление работы ЭВМ. Наиболее типичны значения q^2, ^ = 35, ро=64; тогда q-' = 2-^^3- 10"", г'^^г^'»^?. lO^^. § 3. Абсолютная и относительная погрешности. Формы записи данных Если а — точное значение некоторой величины, а а* — извест- рое приближение к нему, то абсолютной погрешностью приближения а* называют обычно некоторую величину Л (а*), про которую известно, что |а*-аКЛ(а*). Относительной погрешностью называют некоторую величину б(а*), про которую известно, что Относительную по^ешность часто выражают в процентах. По ходу изложения материала будут употребляться выражения: большое число, очень большое число, сильный рост функции.
20 ПОГРЕШНОСТЬ ЧИСЛЕННОГО РЕШЕНИЯ ЗАДАЧИ (ГЛ. I Чаще всего число х мы называем большим, если |л:| >> 1, но относительная погрешность результата решения задачи порядка |х|2"' является допустимой; если относительная погрешность порядка |лг|2~' является недопустимо большой, число X называем очень большим; выражение функция сильно растет чаще всего означает, что она возрастает в очень большое число раз. Иногда в литературе абсолютной погрешностью называют величину * . о' — а . , а —а, а относительной — величину ;—; мы будем придерживаться исходных определений, и поэтому у нас всегда О ^ Д(а*), б(с*). Значащими цифрами числа называют все цифры в его записи, начиная с первой ненулевой слева. Пример. У чисел а* = 0,03045. о* = 0,03045000 значащими цифрами являются подчеркнутые цифры. Число значащих цифр в первом случае равно 4, во втором 7. Значащую цифру называют верной, если абсолютная погрешность числа не превосходит единицы разряда, соответствующего этой цифре. Примеры, а* = 0.03045, Д(а*) = 0,000003; а* = 0,03045000, Д(а*) = = 0,0000007; подчеркнутые цифры являются верными. Если все значащие цифры верные, то говорят, что число записано со всеми верными цифрами. Пример. При о* = 0,03045, Д(а*) =0,000003 число а* записано со всеми верными цифрами. Иногда употребляется термин число верных цифр после запятой: подсчитывается число цифр после запятой от первой цифры до последней верной цифры. В последнем примере это число равно 5. Довольно часто информация о некоторой величине задается пределами ее изменения: ai^a^a2. A) например, 1,119<а<1,127. Принято записывать эти пределы с одинаковым числом знаков после запятой; так как обычно достаточно грубого представления о погрешности, то при записи пределов ai, аг часто берут столько значащих десятичных цифр, сколько нужно, чтобы разность аг — Й1 содержала одну — три значащие цифры. Многочисленные оговорки «часто», «обычно», «принято» специально употребляются нами, чтобы не создалось впечатления об обязательности кящх-то стандартных форм задания информации. Эти формы задания информации рассматриваются лишь потому, что они наиболее распространены, а следовательно, наиболее удобны при контактах.
i 4] О ВЫЧИСЛИТЕЛЬНОЙ ПОГРЕШНОСТИ 21 Абсолютную или относительную погрешность обычно записывают в виде числа, содержащего одну или две значащие цифры. Информацию о том, что а* является приближенным значением числа а с абсолютной погрешностью А (а*), иногда удобно записывать в виде а = а ± ^ {а')\ B> числа а* и Д(а*) принято записывать с одинаковым числом знаков после запятой. Например, записи а= 1,123 ±0,004, а= 1,123 ±4- 10"^ относятся к общепринятым и означают, что 1,123-0,004<а< 1,123+ 0,004. Соответственно, информацию, что а* является приближенным значением числа а с относительной погрешностью б (а*), записывают в виде а=а{\±Ь{а)). C) Например, записи а= 1,123A ±0,003), а= 1,123A ±3- 10"^), 0=1,123A ±0,3%) означают, что A-0,003) 1,123<а<A +0,003I,123, При переходе от одной из форм записи к другой надо следить, чтобы пределы изменения, указываемые новой формой записи, были шире старых. Иначе такой переход будет незаконным. Например, при переходе от A) к B) должны выполняться неравенства а' —A(a*Xai, а2.< а'+ Д (а"), при переходе от B) к C) неравенства а* A - б (а*)) < а' - Д {а), а* + Д {а) < а* A + б (а*)), при переходе от C) к B) должны выполняться противоположные неравенства (пределы всегда расширяются!). § 4. О вычислительной погрешности Ограничение на порядки чисел в ЭВМ \р\ ^ ро иногда приводит к прекращению вычислении; в других случаях относительно небол(зшая разрядность чисел в ЭВМ приводит к недопустимому искажению результата вычислительно'!
22 ПОГРЕШНОСТЬ ЧИСЛЕННОГО РЕШЕНИЯ ЗАДАЧИ . [ГЛ. I погрешностью. Такие алгоритмы, где, вследствие ограниченности р или малости t, возникают подобные эффекты, называют «неустойчивыми». Построение «устойчивых» алгоритмов, при использовании которых вычисления доводятся до конца без существенного искажения результата, составляет существенную часть теории чи- <:ленных методов. Ниже показано, что повышение точности иногда может быть достигнуто за счет несложного алгебраического преобразования. Отыскивается наименьший корень уравнения ip-—140г/-[-' + 1=0. Будем считать, что вычисления производятся в десятичной системе счисления, причем в мантиссе числа после округлений удерживается 4 разряда. Имеем у = 70-/4899, /4899 = 69,992...; после округления получаем /4899 »« 69,99, г/«^ 70-69,99 = 0,0L То же самое значение у можно, «избавившись от иррациональности в числителе», представить в виде у = 1/G0 + /4899), /4899 «^ 69,99, 70 + 69,99 = 139,99 и после округления 70 + 69,99 «^ 140,0. Наконец 1/140 = 0,00714285 ... , и после округления у *« 0,007143. Производя вычисления с дополнительными разрядами, можно проверить, что в обоих случаях все подчеркнутые цифры результатов верные; однако во втором случае точность результата существенно выше. Дело в том, что в первом случае пришлось вычитать близкие большие числа; так как эти числа были большие, то они были округлены с большой абсолютной погрешностью; в результате и ответ получился с большой абсолютной погрешностью. Здесь нам впервые встретилось явление потери значащих цифр (или «пропадания значащих цифр»), имеющее место при вычитании близких величин; это явление, например, довольно часто приводит к существенному искажению результата при решении линейных алгебраических систем уравнений.
§ 5] ПОГРЕШНОСТЬ ФУНКЦИИ 23' § 5. Погрешность функции Довольно часто возникает следующая задача. Искомая величина у является функцией от параметров а^, ..., an' У = = у{а\, ..., йп); известна область G в пространстве переменных. {а\ йп), которой принадлежат эти параметры. Требуется получить приближение к г/ и оценить его погрешность. Если у* — приближенное значение величины у, то предельной абсолютной погрешностью А{у*) называют наилучшую при имеющейся информации оценку погрешности величины у*\ согласно этому определению, в данном случае А{у')= sup |г/(а1, .... а„) —г/'|; A> С. °rt)^o предельной относительной погрешностью называют величину 1г/*1 • Задача. Доказать, что предельная абсолютная погрешность А{у*) минимальна при У 2 где К, = inf у (а,, ..., йп). Кг = sup у (о„ ..., о„). О О Рассмотрим наиболее распространенный случай, когда область G — прямоугольник: |а.-а:1<Л(а;.), /= 1 п. и за приближенное значение принимается у' = у{а\, ..., а\). Если у — непрерывно дифференцируемая функция своих аргументов, то, согласно формуле Лагранжа, п у (а, а„) - У* = 2 6/ (9) {а, - а*), B> где Ь/(в)=у,Да; + е(а,-а;), ..., а; + е(а„-а;)), 0<е<1. Отсюда следует оценка погрешности I у (а,, ..., а„) - у-1 < И„ {у') = i В Л (а)). C> где
24 ПОГРЕШНОСТЬ ЧИСЛЕННОГО РЕШЕНИЯ ЗАДАЧИ 1ГЛ. t Покажем, что при малых значениях P=V{^{a\)f+ ... +(АК))^ эта оценка не может быть существенно улучшена. Если производные г/д непрерывны в G, то B, = \bi{0)\ + o{l) при р-^0. Поэтому величина Ло{у') может быть представлена в виде A4y')=I>\bj{0)\A{a]), е,(р) = о(р). D) При /=1 aj — a] = sign [b, @)) А (аJ) имеем b/Q)(a/-a;) = (b/@) + o(l))sign(b/@))A(a}) = = (|Ь/@)| + оA))Л(а;). и тогда у{а„ ..., аг,)-у' = АЧу') + о{р). E) Отсюда и из определения предельной абсолютной погрешности A) следует, что АЧу') + ч{9)<А{у-), е2(р) = о(р), F) в то же время из C) имеем А{у-)^А,{у\ В совокупности получаем соотношение А' (у') + г, (р) < А (у-) < Ло (у') = Л" (у') + е, (р). G) Такпм образом, оценка C) пе является существенно завышенной по сравнению с предельно точной оценкой A). Согласно G), величины А{у*) и Ао{у*) с большой точностью приближаются более просто вычисляемой величиной Л°(г/*). Очень часто вместо оценки погрешности C) пользуются, вообще говоря, неверной «оценкой» \у{аи ..., an)-y'\^A'>iy-), (8) называемой линейной оценкой погрешности. Рассмотрим некоторые примеры определения величин А (у'}, Ло(/) и АЦу') 11 произведем сравнение этих величин.
% 51 ПОГРЕШНОСТЬ ФУНКЦИИ 25 1. у = а^о, а'=1, А (а*) = 0,001. Тогда у-=1, у,= [0-а\ Ь@)=10, В= sup I 10-091= 10,09 ,.., |a-I|<0.001 А(у*)= sup |а'0-1 1= I,001'0-1=0,010045 .... la-l|<0.001 Ао(у')=ВА{а') = 0,0т9 .,., АЦу') = \Ы0)\Ма') = 0,01. Здесь оценка погрешности через величину A^iy'), предельно точная оценка A) и «линейная оценка» (8) отличаются несущественно. 2. у = а^°, а'=1, А (а') = 0,1. Тогда у' = 1, В= sup 10-a9=I0-(l,lf = 23 |a-I|<0,I Л(Л= sup 1а"'-1| = A,1Г-1 = 1,5..., |a-l |<0,1 Ло(^/*) = ВА(а-) = 2, 3 .... A°iy') = \biO)\A(a')=l. Здесь различие между этими оценками более заметно. 3. Произведем конкретную оценку в случае простейших функций. Пусть y = yia\+ ... +Y«a„, где Yi. .... Y« принимают значения +1 или —I; пусть также известны оценки |а^ —а'| ^ А(а*). В данном конкретном случае by(Q)^Y/. 1^/@I=1. поэтому в оценках D), F) отсутствуют члены 6/ (р) высшего порядка и из G) следует, что А{у')=А^{у') = АЧу') = А{а])+ ... -f Л К). Поскольку, по определению, погрешностью называют любую оценку для у —у', то это соотношение можно также записать в виде А(±а;± ... ±а;) = А(а;)+ ... +АК). (9) В случае у = ai ± аг это равенство иногда формулируется в виде правила: предельная погрешность суммы или разности равна сумме предельных погрешностей. Если ошибки в величинах а* зависимы, то оценка (9), вообн1е говоря, может быть ул)^чшена. Простейший пример: Ci = а, 02= 1—а, где известно, что в обоих случаях а одно и то же;
■26 ПОГРЕШНОСТЬ ЧИСЛЕННОГО РЕШЕНИЯ ЗАДАЧИ СГЛ. I тогда независимо от погрешности в значении а сумма а\ + «2 равна 1. Пусть теперь i/ = af' ... а^"; тогда bj{0) = Pj(a'lJ~^ у' и А(у')^А<^{у')='^^\р,\\а]\-'\у'\А{а]). "После деления на \ у' \ получаем По отношению к частным случаям у = ау-а2 или y = a^•aJ^ это соотношение И[[огда формулируют в виде правила: предельная относительная погрешность произведения или частного приближенно равна сумме предельных относительных погрешностей. 4. Довольно часто возникает задача оценки погрешности функции, заданной неявно уравнением Р{У. а, а„) = 0. A1) Дифференцируя по Яу, имеем дР ду dF ^Q ду да, "*" да, ' откуда ду _ _ / дР \ (дГ- 1,~ \ да, При заданных а\ а* можно найти у' как корень (II). а затем значения A3) да, -~[да,1\ду1 (^^) МО) —(^)(f)- (у •  М С помощью этих величин можно получить «линейную оценку» логрешнвсти (8). ду Вследствие зависимости производных -^— от самого значения у получение строгих оценок A), C) здесь довольно трудоемко. 5. Обратимся -к оценке погрешности корней квадратного уравнения F{y, ai, a2) = y^ + aiy + a2 = 0 • A4) при заданных приближенных значениях коэффициентов а*, а'^ и их погрешностях A(aJ). ^{^1).
$ 5] ПОГРЕШНОСТЬ ФУНКЦИИ 27 Пусть у' — решение уравнения у +ауу +^2 = 0. Из формулы A3) имеем _ у' да. ft,@) = ^ 002 1 к. «5) ^у +^1 и, следовательно, 2// +а[| Рассмотрим некоторую область |a,I^bi, | «21^62 изменения коэффициентов ау, аг. Из явного выражения корней следует, что корни являются непрерывными функциями коэффициентов, и поэтому \y(a^, а^) — у{а], а;)| <(о(| а, - а;|, la^ — al]) Aб> при (а,, flg)' ("^р Яг)'^з 3'''°" области, (o(A,i, Яг)-*О при Я), Xj-^-O, Правая часть A5) стремится к оо при 2у' -{- а'^-уО; поэтому из сравнения A5) и A6) вытекает, что «линейная оценка» погрешности при помощи формулы (8) может оказаться в некоторых случаях сильно завышеннон по сравнению с точной оценкой погрешности C). Дело в том, что ранее рассуждения, проводились в предположении непрерывной дифференцируемо- сти y(ai, ..., йп) по аргументам Яь ..., an. Тогда погрешность у* оказывалась величиной того же порядка, что и погрешности аргументов Л (а*,). В случае, когда величина у* определяется неявным образом, при некоторых значениях параметров она оказывается недифференцнруемой функцией своих аргументов и характер оценки меняется. Пусть у' является двукратным корнем A1) при a^ = a], а^== = а*. Разложим левую часть A1) в ряд Тейлора в окрестности точки у', а\, а]. Поскольку д F{y', а\, a\) = Fy{y\ а\, й;) = 0
28 ПОГРЕШНОСТЬ ЧИСЛЕННОГО РЕШЕНИЯ ЗАДАЧИ [ГЛ. t при у* — двукратном корне A1), то уравнение A1) примет вид d^ {у - уУ + rfo.o («■ - «О + ^00. {а,-а;)+ ...=0, ' где а отброшенные члены — порядка о(р). В рассматриваемом примере A4) £?2оо = 1 и тогда У-У'=± /^010 («1 - «I) + ^001 («2 - «2) + о (Р). Таким образом, погрешность корня оказалась величиной порядка О {Yp ). Соответственно погрешность корня кратности / обычно имеет порядок 0\Ур ). 6. При оценке погрешностей корней алгебраических уравнений на первый взгляд могла бы показаться актуальной и естественной следующая проблема. Рассматривается уравнение r+iaV-/ = 0. A7) /=i ' Задана некоторая область изменения значений а', коэффициентов уравнения и оценка А (а*.) ^ \ их погрешностей. Оценить верхнюю границу ш погрешностей корней у этого уравнения. 3 а д а ч а. Получить такую оценку в случае уравнения A7) при [аА' I а^ I < 2, Д (а*), Д {а^) < у. Если область изменения значений aj такова, что при {а*} из этой области уравнение может иметь /-кратный корень, то нельзя рассчитывать на оценку погрешности, по порядку лучшую 0\Уу]. Однако, за исключением множества значений коэффициентов меры нуль, корень уравнения является простым и можно рассчитывать на оце1[ку погрешности О (у). Таким образом, оценка погрешности через величину у для большинства значений а*, ..., а* оказывалась бы существенно завышенной и пользы от этой оценки было бы мало. 7. Рассмотрим еще одну типичную задачу, встречающуюся в приложениях и близкую по способу решения к рассматриваемым выше. Имеется приближение у* к корню уравнения f (у) = а; требуется оценить его погрешность.
§ 5] ПОГРЕШНОСТЬ ФУНКЦИИ Вычислим величину a' = fiy'). При малых у* — у из равенства f{y)-f{y') = a-a- следует, что f'iyliy-yl'^a-a', и таким образом, _ • а-а' _ a-f{y') ^ ^ "^ f'iy*) Г (у-) • В наиболее распространенном случае а = О име( у у - у (^.).
Глава II ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ Задача приближения функций возникает при решении многих задач, а иногда и как самостоятельная. Настоящая глава посвящена частному, но довольно распространенному способу приближения функций путем интерполяции их значений; интерполяция является также важным вспомогательным аппаратом при решении других задач численного анализа: численного интегрирования и дифференцирования, решения дифференциальных уравнений и др. Прежде чем переходить непосредственно к интерполяции, напомним некоторые определения и в § 1 обсудим различные постановки задачи приближения.функций. Множество М называется линейным, если в нем определены операции сложения и умножения на числа (действительные или комплексные), не выводящие за пределы М и удовлетворяющие условиям: 1) сложение ассоциативно: (дс -f- у) + z = дс + (у + г), 2) коммутативно х + у = у + х, 3) существует нулевой элемент О, для которого дс + О = дс при любом дс е Л}, 4) 0-дс = О при любом дс е Л!. 5) (а+ Р)дс = адс+ Рдс, 6) а(х + у) = ах + ау, 7) а(Рдс) = (аР)дс, 8) 1 • ж = ж. В линейном множестве можно ввести понятие линейной зависимости и линейной независимости элементов. Система элементов ДС1 дс„ линейного множества М называется линейно зависимой, если существуют Ci, ..,, Сщ не равные одновременно нулю, такие, что С1ДС, -Ь ... -f СпДСп = 0. В противном случае систему называют линейно независимой. Линейным подпространством называется подмножест'во Н линейного множества, для которого из условия х,уеН следует аде -Ь Ру е Я при любых аир. Пространство R называется метрическим, если для любых двух элементов определено расстояние р{х,у), удовлетворяющее условиям: 1) р{дс, у)^0, причем р[х,у) =0 тогда и только тогда, когда х = у, 2) р{дс, jf) =р{у, дс). 3) р{*, у) ^Р(*, г) -Ь р(г, у) для любых *, у, г е R.
§ 1] ПОСТАНОВКА ЗАДАЧИ ПРИБЛИЖЕНИЯ ФУНКЦИИ 31 Множество R называют линейным нормированным пространством, если а) оно линейно и б) каждому элементу / е /? поставлено в соответствие действительное число 11/11, называемое нормой f и удовлетворяющее условиям: 1) 11/11 ^ О, причем 11/11 = О тогда и только тогда, когда / = О, 2) ||а/|| = |а 111/11 для любого комплексного а, 3) II/,+ /2IKII/1II + II/2II. Очевидно, линейное нормированное пространство является одновременно метрическим с расстоянием Р{/., /2)= II/.-/2 II. Линейное нормированное пространство называется строго нормированным, если равенство II/. + /2 II = 11/,11 +II/г II возможно тогда и только тогда, когда /з = a/i, а ^ 0. Говорят, что в линейном множестве R определено скалярное произведение, если каждой упорядоченной паре элементов /i, /2 е /? поставлено в соответствие некоторое комплексное число (/i,/з) и при этом выполняются соотношения: 1. (/../2) = {/2. /■)• 2. Для любых /[, /г, /з S /? и комплексных Oj, Oj имеет место равенство (Ol/l + 02/2, /3) = «1 {/1. /3) + «2 (/2. /з)- 3 (/,/)> О и (/, /) =0 только при / = 0. Из этих свойств скалярного произведения вытекает ряд других его свойств: 4- (/з. Oi/i + «2/2) = «1 (/3. /1) + «2 {/3. /2)- Для любых /i, /2 е/? имеют место неравенства: 5. |(/l, /2)|^< (/,, /l)(/2, /2). 6. II /, + /2II < II /1II + II /2II. где 11/11 = VJfT)- 7. Знак равенства в п. 6 имеет место лишь при /г = а/ь а ^ 0. Свойство 6 означает, что линейное множество R со скалярным произведением является линейным нормированным и, следовательно, метрическим пространством с Р {/., h) = II /i - /2II = fiU - /2. /1 - /2). Свойство 7 означает, что оно является строго нормированным § 1. Постановка задачи приближения функций Задача приближения функции возникает в различных ситуациях, часть из которых будет рассмотрена далее. Многообразие методов, предлагаемых для ее решения, столь велико, что иногда возникает следующий вопрос. Может быть, наличие большого количества различных способов приближения объясняется просто отсутствием научного подхода к постановке и решению проблемы; если бы такой подход был, то, может быть, удалось бы предложить один оптимальный способ приближения, пригодный во всех случаях? Такой вопрос возникает и при рассмотрении других разделов численного анализа. Сколь бы ни было заманчиво разработать единый подход к решению всех задач,
32 ИНТЕРПОЛЯЦИЯ И СМЕЖНЫЕ ВОПРОСЫ [ГЛ. 11 следует все-таки признать, что многообразие методов вызывается существом дела — многообразием различных постановок проблемы. Различные разделы теории приближений, в частности интерполяции, можно рассматривать как изучение абстракт- пых моделей некоторых реальных классов проблем. 1. Простейшая задача, приводящая к приближению функций, заключается в следующем. В дискретные моменты времени Хи ..., Хп наблюдаются значения функции f{x); требуется восстановить ее значения при других х. Аналогичная задача возникает в следующей обстановке. По ходу вычислений на ЭВМ приходится многократно вычислять одну и ту же сложную функцию в различных точках. Вместо ее непосредственного вычисления иногда целесообразнее вычислить ее значения в отдельных точках, а в других точках вычислять, используя информацию об этих известных значениях. Иногда из каких-то дополнительных соображений известно, что приближающую функцию целесообразно искать в виде /и)«^(л:; а , а„). Если параметры Яь ..., а„ определяются из условия совпадения f{x) и приближающей функции в точках Хи ..., Хп- gixr, а a„) = fixi), /= 1, ..., п, то такой способ приближения называкЛ" интерполяцией или интерполированием. 2. Часто бывает известно, что функция хорошо приближается функциями определенного вида, например многочленами, по неясно, как лучше всего выбрать степень приближающего многочлена. Проблема особенно усложняется, когда заданные значения функции содержат большие ошибки. 3. В задачах планирования экспериментов возникает следующая проблема. Известен вид хорошего приближения функции, например, функция хорошо приближается многочленом второй степени. В то же время измеряемые значения функции содержат большие ошибки. Требуется получить наилучшее в определенной норме приближение при минимальном числе измеряемых значений функции. Такая задача возникает при планировании экспериментов в биологии, химии, физике, географии, военном деле. Коснемся подробнее планирования экспериментов па химических предприятиях. Наиболее существенный выходной параметр продукции, например, сортность капрона, определяется целым рядом параметров, часть которых зависит от свойств поступающего сырья, а часть поддается управлению; требуется максимально повысить выпуск капрона первого сорта. Для этого нужно иметь в распоряжении функцию, отражающую зависимость вы.чода продукции от всех этих параметров. Рассмотрим случай, когда эта функция
§ и ПОСТАНОВКА ЗАДАЧИ ПРИБЛИЖЕНИЯ ФУНКЦИЯ 33 является многочленом второй степени от 10 параметров. Такой многочлен содержит 66 коэффициентов, поэтому для их отыскания требуется по крайней мере 66 измерений. Каждое измерение содержит существенную случайную ошибку из-за наличия ряда неконтролируемых и неизмеряемых факторов; поэтому для понижения влияния случайности необходимо увеличение числа измерений; в то же время каждое измерение обходится относительно дорого, так как требует изменения режима работы реального предприятия; к тому же такое изменение часто требует длительного промежутка времени, поскольку предприятие должно выйти на стационарный режим работы, соответствующий задаваемым значениям параметров. В результате анализа всех этих противоречий и возникла та проблема приближения функций, о которвй шла речь вначале. 4. Задача приближения появляется при составлении стандартных программ вычисления элементарных и специальных функций. Обычно такие функции обладают специальными свойствами, позволяющими резко уменьшить объем вычислений. Возникающая здесь проблема может быть сформулирована следующим образом. Рассматриваются все функции g{x), программа вычисления которых записывается в к ячейках ЭВМ, такие, что некоторая норма погрешности ||f — g\\ не превосходит £. .Среди всех таких функций нужно выбрать ту, вычисление которой требует минимальных затрат времени ЭВМ. В зависимости от обстановки норма может выбираться по- разному. В большинстве случаев берется 11/11= sup | / 1, [а, Ь] [а. Ь] — отрезок, на котором приближается функция. Довольно часто требуется повышенная точность в отдельных точках. Например, одна из стандартных программ sin.»^ обеспечивает малость погрешности в норме 11/11= sup \p{x)f ix) I, p (x) = min A0'^ л:-'). Ьт) Введение множителя р{х) вызывается требованием малости относительной погрешности sin.»^ при малых х. Точно так же может толковаться по-разному требование минимальности затрат времени 3BAV. Затраты, вообще говоря, могут зависеть от точки, в которой вычисляется значение функции. Обозначим их через t{x). Если не имеется информации о том, с какой частотой вычисляются значения функции в тех или иных частях отрезка, то целесообразно в качестве общей меры затрат принять 7' = sup;(*). Если такая информация есть, то можно принять r=Mt{x). 5. Если функция задается графиком или сложным аналитическим выражением, то возникают вариационные задачи других 2 Н, с. Бахвалов
84 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ [ГЛ. II ТИПОВ. Например, пусть решено разбить отрезок [а, Ь] на / частей: [а-_], ai], i=l /, аа = а, at = b, и на каждом отрезке [flj-i, а«] приближать функцию многочленом 4=0 ИЛИ дробно-рациональной функцией п. i ^ '^^x^^ /W«^M = т А=0 Среди таких способов приближения отыскивается оптимальный в том или ином смысле. Чаще всего заранее накладывается требование rii = ... = т, nil ==■... = nil, фиксируется число отрез-^ ков разбиения I и производится оптимизация метода по' йи .... di-i, пит. В частном случае / = 1 возникает задача наилучших равномерных приближений многочленами или дробно-рациональными функциями на фиксированном отрезке. Об этой задаче пойдет речь в главе IV. 6. Вид приближающей Аункции существенно зависит от цели, с которой осуществляется приближение. Предположим, что с требуемой точностью функция может "быть приближена многочленом десятой степени или выражением ai sin (oiJC-f-a2SinuJJi;. Если полученное приближение используется в теоретических исследованиях, для решения задачи на моделирующем устройстве или в технологическом процессе, то вторая форма записи может быть более удобной. Однако если значения функции вычисляются на ЭВМ, то вторая форма записи потребует при своей реализации большего числа арифметических операций. Далее будет конкретно рассмотрена задача интерполирования. Ее выделение вызвано наличием непосредственных многочисленных приложений, а также и следующим обстоятельством. Аппарат интерполирования многочленами является важнейшим аппаратом численного анализа; на его основе строится большинство методов решения других задач; его роль' в численном анализе аналогична роли разложения Тейлора в классическом анализе. Попутно будут рассмотрены некоторые другие вопросы общего характера, имеющие значение для других разделов численного анализа.
§ 2] ИНТЕРПОЛЯЦИОННЫЙ МНОГОЧЛЕН ЛАГРАИЖА 35 § 2. Интерполяционный многочлен Лагранжд Среди способов интерполирования наиболее распространен случай линейного интерполирования, когда приближение ищется в виде п (fi{x)—фиксированные функции, значения коэффициентов at определяются из условия совпадения с приближаемой функцией в узлах интерполяции ху. п f{x,)='^ai(pi{xi), j=l п. A> Способ решения задачи, при котором коэффициенты flj определяются непосредственным решением системы A), называется способом неопределенных коэффициентов. Наиболее изучен случай интерполирования многочленами S aix'-K B> Тогда ф{^) = л:'-', /=1, ..., п, и система уравнений A) имеет вид п 2 а,х',-^ = /(л:,), j=l, ..., п. C> Мы неявно предполагаем, что все Xj различные. Определитель этой'системы det[A:j~'j отличен от О (определитель Вандер- монда). Следовательно, система C) всегда имеет решение и притом единственное. Таким образом, доказано существование и единственность интерполяционного многочлена вида B). Нам удастся получить ряд явных представлений интерполяционного многочлена B), не прибегая к непосредственному решению системы C). Однако следует сразу же отметить, что в других случаях получение интерполирующей функции в явном виде обычно крайне затруднительно, и приходится прибегать к непосредственному решению системы A). Пусть 6,j ,j^ есть символ __( 1 при ?,= ... =q^ = 0. \ 9ft = { О для остальных совокупностей значений qi, .,., q^. Задача интерполирования будет решена, если удастся построить многочлены Ф/ (л:) степени п — 1 такие, что Ф< (л;/) = б/_^ 2*
36 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ [ГЛ II При /, /= 1, ..., п. Многочлен будет искомым интерполяционным многочленом; в самом деле, п п gn {xi) = 2 / {xi) Ф, {xt) = 2 / {X,) б._, = / Ui); J=l 1=\ кроме того, g„(л;) — многочлен степени п—\. Поскольку Ф;(л:/) = 0 при 1Ф'1, то Ф; U) делится на x — Xj при ]ф'1; таким образом, нам известно п~\ делителей многочлена степени п—\; отсюда 0iW= const- П {х — х,). Из условия Ф, Ui)=l получаем Интерполяционный многочлен B), записанный в форме п g„ (х) = L„ W = 2 ^ (^') П т:^ • (^> называют интерполяционным многочленом Лагранжа. Введем в рассмотрение функцию п % (^) = П (^ - ^/)- /=1 Очевидно, п k=l 11Фк J при x = Xj, й =5^ / выражение в квадратных скобках обращается в нуль, поскольку содержит множитель (дг^ — хХ Таким образом, %(*.)= П (^;-^/)- 1Ф1 Пх — х. — можно записачь в виде Xj X J 1Ф' ' & многочлен Лагранжа в виде Ln (х) = 2j / , , , Г E)
•§ 41 РАЗДЕЛЕННЫЕ РАЗНОСТИ И ИХ СВОЙСТВА 37 § 3. Оценка остаточного члена интерполяционного многочлена Лагранжа В предположении непрерывности ^■"■''{x) оценим разность между f{x) и построенным интерполяционным многочленом gn{x). Положим Ф (z) = / B) - gn (г) - Ка>п B), выберем К из условия ф(л:) = О, где х — точка, в которой оценивается погрешность. Очевидно, fM-gn(x) К-- «л (ж) при таком выборе К функция фB) обращается в нуль в {п-\- 1)-й точке Х\, ..., Хп, X. На основании теоремы Ролля ее -производная ф'B) обращается в нуль по крайней мере в п точках; применяя теорему Ролля к ф'B), получаем, что ее производная ф"B) обращается в нуль по крайней мере в («—1)-й точке; продолжая эти рассуждения дальше, имеем: ф(")B) обращается в нуль по крайней мере в одной точке ?, причем эта точка принадлежит отрезку [уи «/2]: </, = min(A:i, .... лг,, х), y2=ma\{xi л:„, х). Поскольку из условия ф'''*(С) = 0 следует ^^ f'"'(S) га! Соотношение ф(л:) = 0 можно переписать в виде f^x)-gM = ^^^^^ l^\y.y.l П) который и дает представление остаточного члена. § 4. Разделенные разности и их свойства Интерполяционный многочлен можно рассматривать как обобщение отрезка ряда Тейлора. Обобщением понятия производной является понятие разделенной разности. Разделенные разности нулевого порядка f{Xt) совпадают со значениями функции /(л:,); разности первого порядка определяются равенством
38 ИНТЕРПОЛЯЦИЯ И СМЕЖНЫЕ ВОПРОСЫ ГГЛ. 1Г разности второго порядка — равенством и, вообще, разности ^-го порядка f(xi; ...; Xh+]) определяются через разности (k— 1)-го порядка по формуле ,(.,, ...; ..„)='fe--';^'':f'"■■-'''. B) Иногда вместо f(xi; ...; дг») используют обозначения (/)(дг1; ...; дг*> или [xi; ...; дсл]. Лемма. Справедливо равенство fix,;...', ^,) = y^=iifzL__. C) Доказательство будем проводить по индукции; при k = t это равенство превращается в равенство f(xi)=f{xi), при й = 2 совпадает с A). Пусть C) доказано при k ^ I. Тогда . г ^_ ffe---; ^t+i)-^(^i=---; ^;) / №, ..., Xi^,) —— = Для 1Ф1, /+1 коэффициент при f{Xj) в правой части есть 1 1 П (*/-^«) П (^/-^/) 1Ф1 1Ф1 2</</+1 1<г<г (дг,-atQ-(а:/-Af,+ i) 1 т. е. имеет требуемый вид; для / = 1 или / = /+1 ^(л:}) входит только в одно слагаемое в правой части и коэффициент при нем также имеет требуемый вид. Доказательство закончено. Непосредственно из C) вытекает ряд следствий: 1. Разделенная разность является линейным оператором от функции f: {a]fi + (hf2)(xi; •■•; л:*) = а,/, (г,; .,.; Xk) + a2f2ixu •••; х^).
5 51 ФОРМУЛА НЬЮТОНА С РАЗДЕЛЕННЫМИ РАЗНОСТЯМИ 39 2. Разделенная разность есть симметрическая функция своих аргументов Хи ..., Xh (т. е. не меняется при любой их перестановке). Если функция задана в точках Xi Хп, то таблицу iU,) ^''f' ■ >' '''^ - f(x^,.x„) ■■■■' itz„) называют таблицей её разделенных разностей. § 5. Интерполяционная формула Ньютона с разделенными разностями При помощи разделенных разностей можно получить другую форму записи интерполяционного многочлена B.2). Справедливо равеч*тво п Сравнивая с D.3), убеждаемся, что выражение в скобках есть fix; Хх; ...; а;„). Таким образом, можно написать /{х) — Ln{x) = f{x;xu ...', Хп)<й„{х). A) Пусть Lm {х) — интерполяционный многочлен Лагранжа с узлами интерполяции Х;, .... Хт- Интерполяционный многочлен Лагранжа L„{x) можно представить в виде LAx) = Lx{x) + iLAx)-L,ix))+ ... +(LAx)-U-:(x)). B) Разность Lm(x) — Lm-^(x) есть многочлен степени от—1, обращающийся в нуль в точках л:,, .... Хт-и поскольку Lm-]{X/)== = Lm(xi) = f(xi) при 1^/^от—1; следовательно, L„ (х) — L„-i(x) = Л„_,(в„_, (л:), ©„_, (л:) = (л: — л:,)... (л: — х^^,). Лолагая х = Хт, получи^г / {Х„) — Ln-\ (Хт) = л„_,©„_, (х„).
40 ИНТЕРПОЛЯЦИЯ И СМЕЖНЫЕ ВОПРОСЫ ■ [ГЛ. 1Г С другой стороны, полагая в A) п = т—1 и х=Хт, имеен* I (Хщ) i-m—l(Xm)^^I\Xm't ^i', • . ■', Хт-[) (i>m-\ (Хт)- Таким образом, Am~i = f(x,; ...; х^), и поэтому Lm{x) — L„_i{x) = f{x,; ...; х„)т„-;{х); подставляя эти величины в B), получим Kix) = fixi) + f{xi;x2){x — Xi)+ ... • • • + /(хь ...; Xn)(x — Xi) ... {х — Xn-i). C). Интерполяционный многочлен, записанный в такой форме, называется интерполяционным многочленом Ньютона с разделенными разностями. Из сравнения A) с C.1) следует равенство 1{х\ X,; ...\ Хп) = -^—~, где у,<?<у2- D)- В частности, если 1{х) —многочлен Pi{x)=^bixl степени / ^ и, то на основании этой формулы имеем Ьп при 1 = п, при любых Xq, . . ., Хп. Для упрощения вычислений интерполяционного многочлена- удобно использовать так называемую схему Эйтквна. Пусть L^h^h+x, ...,1)(х)—интерполяционный многочлен с узлами интерполяции х^, ..., xi, в частности L(ii){x) =f{Xk). Справедливы равенства , f^. hk+i i+i) W {-^ - Ч) - hk /)(^)(^ - ^г+i) ,:■. 4k,k+i ;+i)W— ;:—ZTZ . W действительно, правая часть является многочленом степени / —/г+1 и совпадает с f{x) в точках Xk, ..., л:;^,. Схема Эйт- кена вычисления значения ^-d,..., п)(-^) заключается в последовательном вычислении с помощью формулы E) элементов таблицы значений интерполяционных многочленов L,„(x) Lfi2)(^) Li,,M} i ,Лх) 4ii.3} '-w/^' •■•■■■ '.'■•■Loj ,0
§ 5] ФОРМУЛА НЬЮТОНА С РАЗДЕЛЕННЫМИ РАЗНОСТЯМИ 41 Эта схема часто применяется при решении следующей задачи: Дана таблица значений некоторой функции f{x); требуется при каждом значении х наилучшим образом определить значение f(x) путем интерполяции значений этой таблицы. Пусть X фиксировано; перенумеруем узлы интерполяции в порядке возрастания l^, — х\. Интерполяционные многочлены i(i т){х) будем обозначать, как обычно, Lm(x). Выше получено представление погрешности A) / (х) — L„{x) = f{x;Xi;...; xj а^ (х), а также равенство Lm+iix) —Lm{x)=f{xi; ...; х„+;)<йп{х). F) Так как при малых|д: — х^] } {х; Xi', ...; х^) » —— я» / (-^ь ■ • ■; Xm+i), то отсюда следует, что L„,+,{x)-L„(x)^f{x)~Uix). G) Поэтому величину ет= \Lm+i{x)—Lmix)\ можно рассматривать как приближенную оценку погрешности интерполяционной формулы f{x) ^ Lm(x\. Последовательно вычисляют 31шчения Lu{x), Li{x), ei, U(x), 62, ... ; если при некотором т ещ^Е, где Е — удовлетворяющая нас точность, то вычисления прекращают и полагают f{x)^Lm{x). Если это неравенство не выполняется ни при каком т, то находят «т„= mine„ и полагают/(a:)^L„„(j-); р^^^ 2,5 1. если этот минимум достигается при нескольких /п, то среди них выбирают наименьшее. Часто величины Sm, начиная с некоторого т, имеют устойчивую тенденцию к увеличению, и поэто.му с этого момента вычисление значений Lm{x), Em прекращают. Заметим, что такой выбор т да и сам способ упорядочивания точек xi по их близости к X не являются оптимальными. Рассмотрим функцию f{x) = —ЗТ' ^ — некоторое комплексное число. Задача. Доказать, что для такой функции „.,_..w__±^(£^)...(|5t).
42 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ (ГЛ. II Из этой формулы видно, что при приближении функции многочленом степени га наилучшая точность будет достигнута, если точки xj выбираются в порядке возрастания | (дг — Xi)l(h — xt)\. Величина 1(дг — Xi)/{h — Х{)\ меньше 1 для точек, лежащих левее прямой АВ: \х — дг^| = |А — х,[ (рис. 2.5.1); соответственно, она больше I для точек, лежащих правее АВ. Отсюда следует, что для минимальности погрешности следует использовать все узлы интерполяции, лежащие левее АВ, н не использовать лежащих правее. При произвольном расположении узлов эти выводы не соответствуют принятому нами ранее принципу нумерации узлов. В то же время вряд лн можно указать способ интерполяции, оптимальный для любой функции. § 6. Разделенные разности и интерполирование с кратными узлами Пусть треб.уется построить многочлен ga{x) степени s — 1, удовлетворяющий заданным условиям A> здесь все Xi — различные, s = nii -\-...-{- Шп. Такой многочлен называют интерполяционным многочленом с кратными узлами, а числа т\, ,.., т„ — кратностями узлов Х\ Хп, соответственно. Интерполяционный многочлен gt{x) определяется единственным образом. В самом деле, предположив противное, имеем два многочлена степени s—1, удовлетворяющих условиям A), Тогда их разность Qa{x) удовлетворяет соотношениям Q^{x^)= ... =ди.-.)(^,) = о, .... точки Xi Хп являются нулями многочлена Qs{x) кратности гпи ..., гПп, соответственно. Мы получили, что многочлен Qs(x) Ф О степени s— 1 имеет s нулей. Следовательно, Qs(^:) ^ = 0. Далее будем предполагать, что \{х) s раз непрерывно дифференцируема. Существование интерполяционного многочлена gs{x), удовлетворяющего условиям A), покажем, получив для него явное выражение. Зададимся последовательностью совокупностей точек х^., 0<е<ео, i=l п, ]=\, ..., Ши удовлетворяющих условиям: при О < е < бц все точки х^. — различные, х^-^х^ при
§ g| ИНТЕРПОЛИРОВАНИЕ С КРАТНЫМИ УЗЛАМИ 43 г-»-0. В частности, можно положить ^/ = А:, + (/-1)е. Построим интерполяционный многочлен g^(x) степени s — I, совпадающий с f{x) в точках х^,. Таблица разделенных разностей, соответствующая этому набору узлов, имеет вид fD) Пх^щУ- fD^ f(x„; Xi2) Пхщф'- f(Xff<Xi2,Xp).^ ..•••■■ •■'" ..■•■■'' .••■' •'"'(^jiJF-a'- •'' B) Напишем интерполяционную формулу Ньютона с разделенными разностями: sl{x)=Al+A]{x-x],) + + АЦх - Х'и){х ~ХЬ)+ ... + ^'-1 (х - Х'п) ...{х- 4m„-l) где ^ Al=f{x1,l A4 = f{x'u;x'n). Al = f{xu', хп) 4з) А\-1 = 1(^хи; х]2; ...; 4тJ. Выражая разделенные разности через производные, имеем '\ril ^im)— (m-/)l • Переходя к пределу при е->-0, получаем ft"»-') (х \ |i^nj/H.:---;^J = i;;r37)r. C) Таким образом, все разности таблицы B) вида Дл:^^; ...; ;t^^) при е->0 имеют пределы, которые естественно обозначать f{xi; ...; Xi); (из C) следует, что величина предела зависит только m—1+l раз т~I И Xi). Имеем f{xr,...; ^,)=/^. D) Д|1-1 раз
44 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ 1ГЛ. И Индукцией по порядку разности покажем, что все разности, входящие в таблицу B), имеют пределы. Для разностей нулевого порядка, совпадающих со значениями функции, это очевидно. Пусть утверждение доказано для разностей порядка Выразим каждую из разностей порядка q через разности порядка ^ — 1: w^8. . у9. \ - ^(^'- '+'"■ • • •' ^;р) ~ ^(^"'' • • •■' ^/- р-') . (гл I К^ч' ••■' ^ip) — у^ - г^ ' ^ '' для определенности мы рассматриваем здесь случай /< Ш; и 1 < р. При / = i существование предела разностей порядка q следует из C). При \ф1 предел знаменателя в правой части E) равен Xj — XiФQ), а предел числителя существует по предположению индукции. Тогда предел левой части также существует. Таким образом, показано, что существуют пределы у всех, разностей порядка q и, следовательно, у всех разностей таблицы. Предел левой части E) обозначаем I\Xi', • • •', Xi; Xi^]' ...; Xi + \; ...; X/] ...; Xj). mj-/+l раз '"i+\ P^^ P P^'' Таблица пределов разностей f(x,} fix.) ^'^'■^'' f(x,x,.x,} HXrX,) ((х,,".х,,Хг}. fix,} _...■■■■' Щ;х„ ;x„) nx,;Xi)" ....•■•■■■■ iix,) Пхг) может быть заполнена при помощи формулы D) и рекуррентного соотношения, следующего из E): / \Xi] ■ • • ^ Xi] • • <, л/J • • • I Xjj = m^—l+[ раз Р раз I [х^, , • •', дс,-; ...; Xj', ,..; дс^^ f (х^; ,..; Xj\ • • •; Xj', • • •; Xjj ш,-(раз р раз т,-(+1раз р—1 раз — F) Xj Xi при / ф i-
§ 61 ИПТЕРПОЛИРОВАПИЕ С КРАТНЫМИ УЗЛАМИ 45 Отсюда Следует, что коэффициенты А1 имеют при е->0 пределы А^, где Лг = 2 ' ' • •' ■^s-i ^^ I \^ь • • • "> -^Г> • • • "> ^п'у • • •] Хп). Таким образом, многочлены g^ix) стремятся при е->-0 к некоторому многочлену g,{x)=A(,+ A,{x-x^) + A^{x-x;fJr ■■■ ... + Л,_, (х - х,Г^ ...(х~ ^„-,Г«-' (X - .vj""-' = = / (^i) + f (хи л;,) (х — л:,) + / U,; л:,; л:,) (л: — ;ciJ + ... G) Многочлен gs{x) записывается в виде "*' C-l) gs ix) = S "ifiriTr (-^ - ^')'~' + 0 ((^ - ^.ro. 1=1 Отсюда вытекает, что он удовлетворяет условиям, заданным в точке Х\. Вследствие единственности интерполяционного многочлена многочлен glix) не изменится при переобозначении Xi=^Xj, Xj = ЛГ]. Поэтому предельный многочлен будет удовлетворять заданным условиям ^ любой точке Xj. Следовательно, этот многочлен является искомым. Для упрощения вывода остаточного члена выберем последовательности x^i такими, чтобы при О < е < ео выполнялось соотношение где, как и в § 3, У1 = т\п(х, Xi, ..., Хп), 1/2 = max {х, л:, х^). Согласно C.1), имеем га "Ч При хФх\ Хп перейдем в (8) к пределу при е->0. Поскольку левая часть в (8) имеет предел /(л:) — gsl-*^), а п liin ©1 {Х) = @^ (Х) = II (.V - ХТК е-»0 *■ 1=\
46 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ [ГЛ. II то существует предел lim р>Eе) = 2(л:); таким образом, е-»0 /W-/sW=^CD,W. (9) Переходя к пределу при е->0 в соотношениях Mi= min P>W<P(SeX max f<')(x) = M2, получим Mi^z{x)^M2. По теореме Ролля существует точка £e[i/,, У2] такая, что 2(д:)==Р(?). Таким образом, равенство (9) приобретает вид /W-gsW=-^CD,W. A0) Согласно E.1), справедливо равенство / (X) - gl (х) = / (х; Acf,; ...; х^^^) а»^ (х). Переходя к пределу при е-»-О, получим f ix) — 8s {х) = f {х\ Xi; ...; л:„) а^ (х). A1) Сравнивая это равенство с A0), имеем /(•^1 •^1» ...| Хп) =^ ~^ ;. Это соотношение остается в силе при предельном переходе x-^Xj, i — любое. Из этих соотношений следует, что формула E.4) 1 \Х\, ...; Xfj+\)— щ (переписанная в других обозначениях) справедлива и в случае, когда не все ДС], .... Xn+\.— различные. Мы доказали существование интерполяционного многочлена, удовлетворяющего условиям A). Задачу интерполяции можно было бы поставить и таким образом: Задана таблица чисел a,j, г = 1, ..., «, / = 1, .,., m,-. Требуется построить многочлен gs{x) степени s—1, удйвлетворяю- щий условиям ё^1~^К^)==%> /=1, ...,«, j=l,...,.mi. ьна исходной ; функцию f(x) ■ /(/-»(л:.) = а.у Эта задача равносильна исходной задаче, поскольку всегда можно указать гладкую функцию f{x) такую, что
§ 7]. УРАВНЕНИЯ В КОНЕЧНЫХ РАЗНОСТЯХ 47 § 7. Уравнения в конечных разностях Уравнениями в конечных разностях принято называть уравнения, связывающие значения функций целочисленных аргументов. Роль конечно-разностных уравнений в дискретном анализе аналогична роли дифференциальны* и интегральных уравнений в классическом анализе. Рассмотрим простейший случай одного линейного уравнения относительно неизвестной функции одного целочисленного аргумента ly=^ac{n)y{n + i) = f(n). ^ A) 1=0 Это уравнение является разностным аналогом линейного дифференциального уравнения /г-го порядка ly=^^bt{x)y<'Hx)=^f{x) B) и называется линейным разностным уравнением k-го порядка. Изучение этого уравнения, так же как и построения предыдущего параграфа, показывает, что рассмотрение всяких исключительных случаев: кратные корни, кратные узлы интерполяции, часто можно провести с помощью предельного перехода от регулярного случая. ^ Исследование уравнений A) и B) будем проводить параллельно. Каждое из этих уравнений имеет вид Ly= h, где L — линейный оператор; уравнение Ly = 0 называют однородным; формулы у = у{Си ••■, Ci, п) и y=y{Ci, ..., Ci, х), соответственно, называют обидим решением, если при подстановке значений параметров Ci можно получить любое решение рассматриваемого уравнения. Если v — частное решение неоднородного уравнения Lv = А, то разность у — v является-решением однородного уравнения: L{y — v)=h — А = 0. Таким образом, общее решение неоднородного уравнения есть сумма частного решения неоднородного уравнения и общего решения однородного. Решения г/;, ..., ут однородного уравнения Ly = 0 называют линейно зависимыми в рассматриваемой области изменения независимого аргумента, если существуют Сь ..., Cm, не все равные нулю, при которых Схух + ... + СтУт ^ 0. В противном случае эти решения называют линейно независимыми. Если функции Иг являются решениями однородного уравнения Lu=0, то любая функция 2^г также является решением этого
48 ИНТЕРПОЛЯЦИЯ и СМРЖИЫР ВОПРОСЫ 1гл. и уравнения, поскольку Lr^CiUi^=^'^Ci(Lui) = 0. Пусть для определенности уравнение B) рассматривается в области л: ^ О, а уравнение A) в области «^0. Теорема Пусть bh{x) ФО при х'^0 и все Ь]{х) непрерывны при л:>0. Пусть ak{n) ф О при п^О и все «,(«) ограничены при каждом « ^ 0. Тогда общее решение однородного уравнения Ly = О записывается в виде k 1=1 где у и ..., уи линейно независимые решения уравнения Ly = 0. Доказательство Согласно теореме существования уравнение /у ^ О имеет решение при любых начальных условиях 1/@), ..., 1/(''-')@). • Согласно теореме единственности, это решение единственно. Обозначим через yi(x) решения уравнения /у = О при начальных условиях У (./-1) = I, 1, к. Однородное уравнение 1у = = О можно представить в виде 1/(« + /г) = '^^^^'%{nЛ■i). C) = г 1=0 аЛп) Если мы зададимся i/@), ... ..., I/ (/г — 1), то из C) сможем вычислить последовательно y(k), y(k-\- 1), ... Таким образом, при любых у@), ... ..., у{к— 1) уравнение 1{у) = = О имеет решение. Это решение единственно, поскольку значения любого решения удовлетворяют уравнению C), а из этого уравнения значения y{k), y{k+l), ... определяются однозначно. Обозначим через Уг{п) решения уравнения ly ^0 при начальных условиях ijiii— l) = 6i-/. i, i=\, ..-, k.
5 7] УРАВНЕНИЯ В КОНЕЧНЫХ РАЗНОСТЯХ 49 Эти решения образуют линейно независимую систему, В самом деле, если 2 Ciyt {X) = О, 1=1 то при /=1, ..., k имеем Следовательно, в случае (=1 то при /^1, ..., k имеем 1=1 (=1 все Ci обязательно равны нулю, и поэтому функции у,, ..., у^ линейно независимы. Пусть г/(tt) — какое-либо решение уравнения [у^О. Функция Пусть у (х) — какое-либо решение уравнения 1у == 0-. Функция г{х)=:Е>у"^'ЧО)у,(х) /=| z{n)^^y{}-l)yi{n) /=1 является решением этого уравнения при начальных условиях У@) г/'*-'ЧО). I у{0). ..., y(k-\). Вследствие единственности решения уравнения iy = 0 имеем yix)=Iiy''-HO)y,{x) /=1 Теорема доказана. у = 0 имеем k у(и)= 2 yd — 1)у/(и)- Далее в курсе дифференциальных уравнений доказывается такая теорема. Если нам известно k линейно независимых решений однородного уравнения '1у = О, то задача нахождения решений неоднородного уравнения B) сводится к решению уравнений dCjfdx^giix), где gi{x)—известные функции, т. е. к отысканию квадратур. Точно так же Б случае, когда известно k линейно независимых решений однородного уравнения 1у = О, задача нахож^иия решения неоднородного уравнения
50 ИНТЕРПОЛЯЦИЯ И СМЕЖНЫЕ ВОПРОСЫ [ГЛ. II СВОДИТСЯ к решению прюстейших разностных уравнении c^(n+l)-c^(n) = г^(n), где gj(")—известные функции. Мы не будем останавливаться на этих теоремах в силу их малой практической значимости. ^ Перейдем к рассмотрению уравнений с постоянными коэффициентами: /> = 2 W>M = i—й =-f{x), Ь^ФО D) /«/ == 2 arf/ (« + О = = Дп), а^фО E) и соответствующих однородных уравнений /r/ = 2M'"W = o. F) /|/ = 2зд('^ + 0 = 0. G) Займемся отысканием частных решений однородного уравнения. В случае уравнения G) функцию ехр {Кп) удобнее записывать в виде ц", ц == ехр Х. Подставляя в G), получаем уравнение «=о / Подставляя в F) предполагаемый вид частного решения ехр(А,д;), получаем уравнение 2йДЧехр(и) = 0. Таким образом, каждому корню уравнения (8) 2 агц'==0, 1=0 (9) называемому характеристическиМг соответствует частное решение ехр (Хх). I ц". Если все корни характеристического уравнения простые, мы получаем k различных решений. Покажем, что каждому /-кратному корню характеристического уравнения соответствует / различных решений однороднТ)го уравнения ехр(А,д;), хех1>{Хх), ... ..., x^-^ ехр{кх) Пусть для определенности Xi = ... =^1, Vii = ••■ = цг-
§л УРАВНЕНИЯ В КОНЕЧНЫХ РАЗНОСТЯХ 51 Разложим на множители характеристический многочлен к к 2 агМ.' == Oft П (И — Р'/)- k k 1=0 /=1 к,). 1=0 /=1 Зададимся действительным параметром е>0, е—►О. Возьмем .kja такие, что а) к}в различны при / = = 1, ...,/, б) стремятся к X} при е-*-0 для всех / ^ k. Возьмем nje такие, что а) Hit, различны при / = = 1,..../. б) стремятся к nj при е-*О для всех / ^ k. Образуем характеристические уравнения, соответствующие этим корням: k к к k О = й* П(^ - ^/е) = S bi,X', о = а^ П (ti - Ц/е) = S a,.\i^. «=о /=1 1=0 A0) /=1 Очевидно, при е-> 0. Этим характеристическим уравнениям соответствуют уравнения S^X'W = o. A1) <==0 Sa<ef/e(« + 0 = 0. A2) 1=0 Пусть при е > о мы можем указать решения Уе(п) уравнения A2) такие, что при любом п ^ О существует предел lim «/е (п) = Y (п). Е-»0 уЛ^У уравнения A1) такие, что при любом л: ^ О существует предел \\my^(,x) = Y{x), Причем Уг{,х) сходится к Y{x) равномерно вместе со всеми производными до порядка k включительно, на любом конечном отрезке [лтьД^г]. Переходя к пределу в (И) с учетом A0), получаем, что предельная функция Y{x) удовлетворяет уравнению F). Построим такие последовательности Уг{х) и Уе{п), которые будут сходиться к частным решениям F), G), соответетвующим кратным корням. При проведении этих построений удобно Переходя к пределу в A2) с учетом A0), получаем, что предельная функция Y{n) удовлетворяет уравнению G).
52 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ ГГЛ и использовать разделенные разности. Рассмотрим сначала случай двукратного корня. Положим I/2E W = (ехр Ял:) (Я,^; AjJ = _ ехр (Х.^^х) - ехр [Х^^х) У2гi^г)=(v^"')ii^н^^ М = (^26 - (i le U-2E— Hie Очевидно, эти функции являются решениями уравнений A1), A2), соответственно. Запишем их в виде У2Е(х) = хехр{Х^^х)Х X ехр ((Яое — Я|е) х) — 1 (Л, ^le)-»: У^г («) ^ = (i^-' + tl,"-V,e+ •••+(^ п-1 Переходя к пределу при е—»-0, получим У2г(х)-^хехр{Х1х) У2, («) ■ , га-1 + ... +tir' = Мы получили второе линейно независимое решение, соответствующее двукратному корню. Случай корня кратности, большей двух, рассматривается аналогично. При 1 ^ 9 ^ / положим f/,eU) = (exp(U))(A,e; ...; Я^^). | г/,е(") = (M'")(tiie; •••; i^чe)■ Вследствие представления разделенной разности D.3) й„£ {х) записывается в виде Уаг (^) записывается в виде 2с„ехр(Я.,;^) и, таким образом, является решением A1). Рассмотрим сначала случай, когда все Я/Е. i = и "', q, I Ц/е. действительные. Воспользовавшись формулой E.4) Ч и, таким образом, является решением A2). /= 1 <?. f{xi, ..., х^) = (q - 1I • где У1<^^г/2. A3) получим ^.«-1 где Aee[min(Ai£, .... Я,J, тах(Яи, .... V)l- i/^(«) = C:; > I?—1 n—q+\. Jqt где . max (tile ц,е)].
§л УРАВНЕНИЯ В КОНЕЧНЫХ РАЗНОСТЯХ 63 При е->0 имеем y<,eW->^<}W^ .?-' (<7-1I expiX.x). A4) Уав («) -^ Уц («) == ^Ч~\ n.~q+\ A5) Если не все Х,^ или, соответственно, не все р.-^ действительны, соотношения A4), A5) остаются в силе, однако проведенное доказательство непригодно вследствие того, что при комплексных Х\, ..,.., Xq формула A3) неверна. Мы ограничимся доказательством соотношений A4), A5) при специальном выборе Я. , р.. Доказательство проводится в предположении ц. ф 0; при р, = 0 можно взять р. — (у— 1)8, и проведенное выше доказательство остается в силе. При е > О положим при у= I /. Тогда, воспользовавшись D.3), получаем равенства <7 при у = 1 /. (ехр (Хх)) (^le; ...; Я^е) == N | ■ ,^1 11 (('^' ехр[(Я-,+ (/•- 1)8) л:] 1^/ ехр (у — I) tx iT\ П ((У- 1) е-(/-1)8) соответственно. {.V^^ ')(ц.в;...:1^<,в)=|;^р^ + (У-1)Е)-(Я, +(/- 1)8)) ехр(Я|А;) = = ((ехр X) @; е; ...;(?- 1) е)) ехр (Я,л:); (! + (/- l)8)-p,(H-(i-l)e)) 1Ф1 A+(/- 1)8)" ,tf И (A+0-1)Е)-A+('-1)Е)) цГ''+'-= = (р")A; 1+е; ...; 1 +(<? - 1)8)рГ''+'. Отсюда на основании A3) имеем (ехр (Яд;)) (Я,е! ...; Л.,е) = где 0<Яе<(^— 1)е. где 1<Де<1 + (9-1)е.
S4 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ [ГЛ. II Отсюда следует, при е->0 что выполнены соотношения (ехр'(Ях)) (Я,е; •..; Я,е) -> Y^ (х). | {ц") (ц,е; ...; Ц^е) -> Уд (л)- Здесь ^ может принимать значения ^= 1 / Итак, как в случае уравнения G), так и в случае уравнения F), мы смогли поставить в соответствие каждому /-кратному корню характеристического уравнения / различных решений. Теорема. Совокупность всех полученных решений, соответствующих корням характеристического уравнения (9), образует фундаментальную систему (т. е. они линейно независимы и решение G) может быть получено как линейная комбинация таких решений). Наметим доказательство этого утверждения. Пусть у\{п) УлС") — частные решения G). Лемма. Система решений yi(n), ..., у*(л) является фундаментальной, если <iet\\y^{i-l)\\фQ. В самом деле, предположим, что эти функции линейно зависимы. Тогда существуют С<, не все равные нулю, такие, что к 1=1 при всех п, в частности при л=0, .... k— 1. Но из условия det||yi(/ —1I1#, Ф О следует, что система линейных уравнений к '^ С^у^ и-l) = Q, ,= 1 k, 1=1 имеет только нулевое решение Ci ^ ... = С* = 0. Мы пришли к противоречию. Покажем, что всякое решение G) является линейной комбинацией этих решений. В самом деле, система уравнений к 1]С,уД/-1) = у(/-1), /==1 k, 1=1 имеет решение при любых у@) y{k—1). Таким образом, для любого решения у{п) мы можем указать такие С С*, что решение однородного уравнения 2 («) = 2 CiPi in) совпадает с у{п) при я == О k—1. Вследствие единственности решения разностного уравнения при начальных условиях y{Q) y{k—1) получаем, что , ft у{п) = г {п) = 2j ^iVl (") ,при всех п. Лемма доказана.
§ 7] УРАВНЕНИЯ В КОНЕЧНЫХ РАЗНОСТЯХ Б5 Если все корни характеристического уравнения (9) различны, то при ^i («) = (*" имеем det||j^j(/-l)||=n (^^i-^^|)¥'0. i>l Рассмотрим общий случай, когда среди корней (9) могут быть кратныег }!,= ... =ц;^, ц,,+, = ... =Ц,,+;,. ...; Ml. fi,,+i, Н+1Л1' ••• -различны. Образуем частные решения возмущенного разностного уравнении A2); Ун («) = (>*") (t*le). У1,е (п) = (М (Ми; • ■ •; М,.е). - УЛ+1.е(п) = (»*")(»^Л+1.е) Ул+;..е(п) = (м")К + 1.е; •••: 1^/,+/,. е). ••• Как показано выше, при специальном выборе корней возмущенного уравнения в виде A7) имеем y^g (я)-> К*''(я) при е->0, где у<'>(«) = м?. у<^'(«) = с>Г' A8) у<''>(я) -с;;-'цГ''+'. У^'+'У") = К+1' • • • Очевидно, что W^ = det || у„ (/ - I) ||-> det || Г<"(/ - 1) || = W. Производя линейные преобразования над строками матрицы ||y;g(/—1I1, получаем, что 1'^е| = |П'(»*^е-Ы|; здесь знак ' означает, что в этом произведении не встречается множителей (H^g —Hyg) таких, что при е->-0 Ц^е " М/е имеют один и тот же предел. Отсюда вытекает, что W = lim We ф О, и, таким образом, система функций УЧЦп) является фундаментальной. Теорема доказана. Т 6.0 рема. Множество линейных комбинаций t частных решений G), соответствующих корню ц\ кратности I, совпадает с множеством функций Я/-.(я)ц?, ^2^) где Pi~i{n) — произвольные многочлены степени I—1. Поскольку всякая функция C2~Vi~' есть многочлен степени д—] <. I по переменной п, то всякая.функция вида A9) представима в виде B0). С другой стороны, пусть /'i-i(rt)—некоторый многочлен степени /—1 от переменной п. Всякий многочлен степени I — I является интерполяционны!* многочленом степени I — 1 для самого себя при любых / узлах интерполяции. Поэтому в E.3) мы можем положить п = I, Ln = Pi-u f = Pi-j- Кроме того, положим JCj = / — I и Jc = л Получим /'/_, (л) = Ag + A^n + A^in-l)+ ... + А,_^п {п ~ I) ... (п-A~ 2)).
S6 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ (ГЛ. II где Ai = Pi-i@; ...; /); иначе это равенство можно переписать в виде отсюда следует, что каждое решение вида B0) может быть представлено в виде A9). Теорема доказана. Таким образом, вместо системы фундаментальных решений A8) можно взять систему фундаментальных решений Часто такой выбор решения фундаментальной системы более удобен. Рассмотрим теперь разностное уравнение * /m-l \ 2a,i/(rt + r)= 2 С/«'- а". B1) (=0 V /=о / Пусть а является корнем характеристического уравнения (9) кратности /; в частности, если а не является корнем этого уравнения, то / = 0. Можно показать, что уравнение B1) имеет частное решение вида 2 d;«/ а"; - B2) 1=1 I коэффициенты dj могут быть найдены методом неопределенных коэффициентов. § 8. Многочлены Чебышева Многочлены Чебыш (дг), где rt ^ О, определяются соот- тюшениями 7'о(х)=1, T,i,x) = x, ^n+i W = 2;c7'„(;c)—7'„_,(;с) при « > 0. ^' Пользуясь рекуррентной формулой A), получаем, например. Га (л:) = 2л:2 — 1, Гд (л:) = 4л:3 — Злг, Т, (х) = 8х* - 8л:2 -f 1, Г, (л:) = 16л:5 - 20.^3 -f 5л:, ... Старший член Тпн{х) получается из старшего члена Тп(х) умножением на 2х и, следовательно, старший член Тп{х) при « > О есть 2"-'л;". Все многочлены T^nix) являются четными функциями, а T^n+i {х) — нечетными.
S 8] МНОГОЧЛЕНЫ ЧЕБЫШЕВА 57 При га = О это очевидно. Предположив справедливость этого утверждения при некотором га, мы получим: 2xT2n+i(,x)—четная функция и, вследствие A), 7п+2(д;)—четная. Тогда 2хТ2п+2{х)—нечетная и 7„+3(j;)—нечетная вследствие A). При любом 0 имеем cos ((« -f 1) 0) = 2 cos 0 cos «9 — cos {(n — 1) 0). Полагая 0 = arccos jr, получим cos {{n + 1) arccos x) = 2x cos (« arccos x) — cos {(n — 1) arccos x). Функция cos(«arccosjr) удовлетворяет тому же разностному уравнению A) по переменной п, что и Тп{х); начальные условия при « = О и rt = 1 одни и те же: cos (О ■ arccos х)= 1= Т^ (х), cos(l • arccos j:) = л; = Tj (х); поэтому при всех п Тп{х)^ cos (п arccos х). B) Следовательно, |Г„М|<1 при |л:|<1. C) Не нужно думать, что |7"n(Jt)i^ 1 при всех х Если \х\> 1, то arccos л не является действительным числом, а косинус такого числа может оказаться больше 1. Рекуррентное соотношение A) является разностным уравнением с характеристическим уравнением М,2 - 2л:м. + 1 = О, отсюда При хФ±1 корни простые, и поэтому Г^(л;) = С,ц|Ч-CgH^. Из начальных условий Tq{x)=1, Tj (х) = л; получаем Ci^C2 = = 1/2; таким образом, T^^,)^bc+YZE]r+iizJ^EE])l, D) При комплексных значениях х = z функция Yz^ — \ является неоднозначной. Под Yz^—1 будем понимать ветвь, которая при действительных 2 > 1 принимает положительные значения и определена в плоскости с разрезом по [—1,1]. Из уравнения ^^ ^п (х) = cos (« arccos л;) = О получаем что /яBш+1)\ п , х^ = cos ^ 2п ]• ^^^ «—1.
^ ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ ГГЛ. И — корни Т„(х). Вследствие B), C) точками экстремума Т„{х) на [— 1, 1] будут точки, где | Т„{х) |= 1. Решая это уравнение, лолучим >f(m) = COS (^-jj-j , m=0, ...,.« причем Тп (xim)) = COS ят = (-1 )"*. Многочлены fn(x) = 2^-"T„{x) = x"+ ... называют многочленами, наименее уклоняющимися от нуля. Это определение объясняется следующим свойством. Лемма. Если Рп {х) — многочлен степени п со старшим коэффициентом 1, то max|P„Ml^max|f„Ml=2'-". E) t-i.li [-1.11 Доказательство. Предположим противное. Многочлен Тп{х) — Рп(х) имеет степень я- I; в то же время sign (f„ U,„,) - Рп {x^m^)) = sign (С-1)" 2'-" - Р„ {х,„,))= {-1)". так как, согласно предположению, \Рп{х(т)) |<2'~" при всех т. Таким образом, между каждыми двумя точками x^m), x^m+\) многочлен Тп(х) — Рп{х) меняет знак. Многочлен Тп{х) — Рп(х) степени п— 1, отличный от нуля (поскольку он отличен от нуля в точках х^т)), имеет п различных корней. Мы пришли к противоречию. Задача. Доказать более сильное утверждение: если Рп(х) = х"+ ...фТп (х), то max |Р„(д:)|>2'-''. f-i, 1) Линейной заменой переменных х' = —5"^"'—Т^ '"' ^'''Рбзок {—1,1] можно перевести в заданный отрезок [а,Ь]. Многочлен Тп(х) при этом преобразуется в многочлен ,Г»( ^ Т— ) ^"^ старшим коэффициентом B/(& —о))". В соответствии с леммой можно утверждать, что многочлен П"' *' (х) = F - а)" 2'-^ХР^"^!!^''^) со старшим коэффициентом 1 является многочленом, наименее уклоняющимся от нуля на отрезке [а,Ь]. Это означает, что для любого многочлена Рп{х) степени п со старшим коэффициентом
S 9) МИНИМИЗАЦИЯ ОЦЕНКИ ОСТАТОЧНОГО ЧЛЕНА 5* 1 справедливо неравенство max I Р„ (*) I ^ та X I г!."' *' (;с) | = F - а)" 2' -'". F> [а. Ь] [а. Ы ' _ ' ■ Нетрудно проверить, что нулями tL"' *' (х) являются точки Ь + а , Ь-а ^^^ / яBт+1) i Yn ]• '" "• •••• "- >fm=—:? 1 Й—COS - „,, ^, m = 0, .... rt— 1 Отметим также, что многочлены foW= l/l/^ и 7'„(л:)= Г„(д;> при rt^I образуют на [ — 1,1] ортонормированную систему 2 свесом—,. Проверим свойство ортонормированности ЭТИХ функций при т, пфО. После замены Д|;:=созв имеем 1 л г 2Тп{х)Т^{х) ^^^2_ fcosn0cosm0de = _J пУ \-х^ " J п = ^ J (cos ((rt -m)Q) + cos ((« + m) 9)) d0 = 6„_„ + 6, n+tti' Второе слагаемое обращается в нуль при п, m > О, если it' ■{- -\- т^ фО. Отсюда вытекает требуемое равенство 1 J 2ТАх)Тт(х)^^_ _1 я/1-х2 § 9. Минимизация оценки остаточного члена интерполяционной формулы Пусть функция f{x) приближается на [а,Ь] с помощью интерполяционного многочлена степени п—1с узлами интерполяции Хи ..., Хп^[й,Ь]; пусть погрешность оценивается в норме llf 11= supl f (х) |. Согласно C.1), имеем где t, е [а, Ь], если х е [а, Ь]. Отсюда следует оценка погрешности интерполяции \\f-LJ<^f^. A) Займемся минимизацией правой части этой оценки за счет выбора узлов j^i, ..., Хп', для этой цели и были введены в рассмотрение многочлены Чебышева, наименее уклоняющиеся от нуля. Многочлен а)п{х) = (х —Xi),,.{x — дс„) имеет старший
€0 И[1ТГ.РП0ЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ (ГЛ. II коэффициент 1, и поэтому \\а>п1\ ^ {Ь — a)"■2^-^'^, согласно (8.6). Если взять в качестве узлов интерполяции _ b^-i-ji , b —а ^^^ ( л{2т+\) то Н 2~^°^1^ ^j-  = 0. .... rt- 1. B) (i)„{x) = ib — a) 2 Г„^ ^1д 'j I(о„ 11 = (й-а) 1-2я Следовательно, при таком расположении узлов справедлива наилучшая из оценок, которая может быть получена как следствие оценки A): llf-^JK"'"'""--"""". C) При получении A) максимум произведения заменен на произведение максимумов сомножителей. Поэтому может возникнуть надежда получить оценку погрешности, лучшую чем C). Однако это не так; если f (а:) = о„х"-f ... —многочлен степени п, то r(S)=o„rt! = const, и неравенство A) превращается в равенство; тогда при любых узлах интерполяции имеем „ _ ^^ I, > 11>1.>-.Г2'-'" _ „^ „ _ „,, ,,-,,' Как отмечалось, важной проблемой вычислительной математики является проблема оптимизации методов решения задач некоторого класса. Общая постановка ее такова. Задается некоторый класс Р решаемых задач р. Задается некоторое множество М методов решения. Пусть е{р,т)—погрешность метода т при решении задачи р. Величину е{Р, т)= sup е{р, т) называют погрешностью метода на классе задач Р. Величину Е(Р, Л1)= inf е{Р, т) называют оптимальной оценкой погрешности методов из множества М на классе задач. Р. Если существует метод m е Л1, на котором эта оценка достигается, т. е. Е{Р,М) = е{Р,т), то такой метод т называют оптимальным.
§ Ч] МИНИМИЗАЦИЯ ОЦЕНКИ ОСТАТОЧНОГО ЧЛЕНА 61 Полученное нами решение задачи об оптимизации узлов распределения интерполяционной формулы можно сформулировать в описанных выше терминах. Пусть Р — множество задач приближения функций, определенных на [а,Ь] и удовлетворяющих условию |/'")(х) | ^ Л„, М — множество методов приближения, состоящих в том, что функция заменяется ее интерполяционным многочленом Ln{x) по совокупности узлов xi, ..., Хп', таким образом, метод решения т определяется заданием узлов интерполяции Xi, .... х„. Наконец, пусть мера погрешности в{р, т) = \\f — Ln\\. Согласно A), имеем с другой стороны, для задачи приближения многочлена относящейся к рассматриваемому классу, имеем следовательно, Как мы видели выше, E{p,M) = \nie{p,m)= ы (AJ^) == А!*:^^!?!::!!. Таким образом, способ интерполяции по узлам многочлена Чебышева B) является оптимальным в рассматриваемом смысле. Строгая постаиовка и решение подобных вариационных задач очень важны для развития вычислительной математики. По существу основную часть нашего курса можно было бы изложить как решение различных аадач оптимизации. Однако мы не будем проводить последовательно такую точку зрения, чтобы не создалось преувеличенное впечатление о роли изучения задачи оптимизации методов. В заключение произведем сравнение оценки C) с оценкой погрешности разложения функции в ряд Тейлора. Согласно рассмотрениям § 6, отрезок ряда Тейлора совпадает с интерполяционным многочленом Лагранжа при единственном, «-кратном узле интерполяции ^~—. Поэтому, естественно, при оптимальном распределении узлов интерполяции
62 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ (ГЛ. И B) мы должны иметь лучшую оценку. В самом деле, оценка II/«"Ml F-< 2-" \f-tn\\<- п\ погрешности отрезка ряда Тейлора уступает оценке C) в 2"-' раз. При любом другом выборе точки, где функция раскладывается в ряд Тейлора, оценка погрешности отрезка ряда Тейлора будет еще хуяЛ. § 10. Конечные разности Пусть узлы талбицы Х{ расположены на равных расстояниях: Xi = Xo + ih, fi — соответствующие значения функции; величину h называют шагом таблицы. Разности fi+i — fi называют разностями первого порядка; в зависимости от обстановки эту величину обозначают как разность вперед: А/;, разность назад: Wft+i или центральную разность: f>f 1+112= f\+ii2- Таким образом, f.+. -h=Mt=vf,^,=6f,^,,,=n^„,. (I) Разности высшего порядка образуют при помощи рекуррентных соотношений: nt = А (A'"-'fO=^'"-'fш - ^""'fi, 6'"fi = 6F"*" fi) = !>"'~ fi + il2 — 6'"" fo-1/2. li ' i + 1/2 11-112' Таблицу разностей обычно располагают в виде X *0 Xl ATj *3 *4 • • f h и и h и • • f hft fsft fsft hi2 • • r fi fl fl • • r hp. fin ' • 0
§ 101 КОНЕЧНЫЕ РАЗНОСТИ 63 В некоторых интерполяционных формулах, наряду с упомянутыми выше величинами, используются средние арифметические двух последовательных величин одного и того же столбца: и/7 = (Г+./2 + С-./2)/2 при т.нечетном, J^C+./2 = (С + /Г)/2 при т четти. Лемма. Разности т-го порядка выражаются через значения функции по формуле т {При четном т i — целое, при нечетном т i — полуцелое!) Доказательство проводим методом индукции. При /п = 1 соотношение B) выполняется, согласно A). Пусть оно доказано при т == I. Имеем t I Ч2+112-1 у^{ I) ^if 1-112+1/2-Г Собирая коэффициенты при одинаковых f^ и пользуясь равенством получим требуемое выражение для величины f\+K Лемма доказана. Из B) следует, что оператор конечной разности является линейным. В частности, из B) имеем /? = ^+.-2/,+ /,_,. It ^^ 11+312 '^ll + lft "Т" '^/г-1/2 11-312' n = fi+2-^fi + ^ + ^fi-'^fi-r + fi-V Лемма. При Xt^Xo-\-ih справедливо равенство Доказательство проводим по индукции. При т = I имеем f(XuXi^.i) = fl+\~'fl fi+ 1/2 Предположив, ЧТО соотношение C) верно при всех т^1 имеем f(''i+\'' •••' ''i+i+\)~t(^i'< ••■■ '^i+i) •*i+i+i "i f{xi', • • •', >f<+(+i) = __ fl + \ + ll2 — fi+ll2 __ fl+U+l)l2 {hh\)(h(i+\)) а'+'(/-ы)!
64 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ [ГЛ. TI таким образом, C) справедливо и при m = /-f 1. Лемма доказана. Согласно E.4), имеем f{Xi;...\Xi+„i) ml где Xi ^ ^S^-'^i+m- Сопоставляя это равенство с C), получаем D) Следствие. Конечные разности п-го порядка от многочлена степени п постоянны, а разности любого более высокого порядка равны нулю. При ручно.м счете последнее обстоятельство часто используется для составления таблиц многочленов. Непосредственно вычисляем значения многочлена для /1+1 последовательных значений аргумента, по этим значениям составляе.м таблицу разностей до я-го порядка. Далее заполняем столбец разностей п-го порядка, учитывая, что они постоянны, затем столбец разностей {п—1)-го порядка, затем (п — 2)-го порядка и т. д.; при заполнении столбцов разностей пользуемся формулой и —Ii-i^ii-\i2- Оказывается, что при составлении таким образом таблицы N 'S> п значений многочлена степени п вычислительная йогрешность в самом неблагоприятном случае может быть порядка N"t, где е — единица последнего разряда, с которым производятся вычисления. Это обстоятельство требует аккуратности при применении этого способа; в частности, при составлении длинной таблицы ее разбивают на части и применяют этот прием к отдельным частям. Рассмотрим влияние ошибки какого-либо значения ft на конечные разности различных порядков; пусть вместо ft стоит fi + е. Тогда имеем таблицу разностей 11 ■3/2 1-\ , + е 1 + \ 1+2 /1-1/2 + ^ f\ + \l2~ ^ 1+3/2 fU + ^ f] - 2е f?+i + e Мы видим, что в соответствии с B) на разности порядка т ошибка распространяется с коэффициентами (—1)'Cj!„. Если функция достаточно гладкая, то ее разности не очень высокого порядка могут оказатмя малыми. В то же время па их фоне величины С^е будут выглядеть достаточно большими. Из наблюдений над таблицей разностей можно указать значение функции, содержащее ошийку, и исправить его,
§ 111 ФОРМУЛЫ НЬЮТОНА для РАВНЫХ ПРОМЕЖУТКОВ 65 Точно так же можно обнаруживать ошибки, имевшие место при составлении таблицы разностей. Пусть, например. /?,2=1-10-'. ^^;2 = -2з•lo-^ f - '3/2 f3 - 19/2 ■ =2 • lo-^ = ll•lo-^ /^/2=l2•lo-^ /U/2=1-10" Если бы какое-либо значение jt содержало относительно большую ошибку е, то в третьих разностях это обстоятельство проявилось бы в наличии величии вида е, —Зе, Зе, —8. В рассматриваемом случае третьи разности практически равны нулю, за исключением fj/o, j-;n> fg/2< которые примерно имеют вид е, —28, е (е=11'10"^). Это наводит на мысль, что была допущена ошибка при вычислении значения fjp, которая и имела следствием эти возмущения в третьих разностях. Отметим следующее свойство таблиц разностей функций. Поскольку значения функции 1{х,) вычисляются не абсолютно точно, а округляются в процессе и после вычислений, то на самом деле вместо значений /, стоят некоторые значения yt = h + r\t. Тогда значения разностей записываются в виде Для достаточно гладкой f (х) (мы не будем определять точно, что это такое) значения fP будут убывать с ростом т. Например, при f(x) = sin х имеем пеэтому |/71^'''"->0 при А< I, m-> оо. Велич1:11Ы t)J" записываются как комбинации слагаемых вида (—1)'C^tij. и поэтодму могут] расти с ростом т. Поэтому при наличии округлений функция ф(т) = тах i/j" убывает при малых т и растет при больших т. В той области значений т, где разности высшего порядка начинают расти, основная информация, которая содержится в таблице разностей ft-ro порядка очень гладкой функции, — это информация о разностях ошибок r\i, и использование этих разностей, как правило, не прибавляет ничего нового к нашей информации о функции. § П. Интерполяционные формулы Ньютона для равных промежутков Высокая ТОЧНОСТЬ приближения функции может быть достигнута двумя путями: 1, Добавляются новые узлы интерполяции, и функция интерполируется по всем узлам многочленом максимально высокой степени. 2. После добавления новых узлов интерполяции значения функции вычисляются путем интерполяции по ближайшим узлам; степень интерполяционного многочлена не увеличивается. Рассмотрим второй из этих путей. Если нет особых причин для какого-то специального выбора узлов, узлы большой таблицы значений функций обычно берут равномерно распределенными: Xj = Хо-f/Л. Если узлы интерполирования выбираются 3 Н. с. baxsa.ioB
66 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ [ГЛ. II вблизи ТОЧКИ X, где вычисляется значение функции, то промежуточная точка t, в оценке остаточного члена C.1) также находится вблизи точки х\ таким образом, величина /("'(^) изменяется не очень сильно при выборе узлов в окрестности точки х. Следовательно, решающее влияние на значение погрешности оказывает величина п I ««(*) I = ПI л: — х, I, т. е. произведение расстояний от точки х до узлов интерполирования. Следовательно, величина |'^con(JC)| будет минимальной, если в качестве узлов интерполирования для нахождения /(х) мы возьмем п узлов, ближайших к х. Очевидно, что при четном п = 21 следует взять по / узлов справа и слева от точки х. При нечетном п = 2/ + 1 следует взять узел, ближайший к д:, и по / узлов слева и справа от него. Если точка находится в начале таблицы или конце, то выбрать такую совокупность узлов невозможно. При интерполировании в начале или конце таблицы принято записывать интерполяционный многочлен в виде так называемых формул Ньютона для интерполирования вперед или назад. Пусть Ln{x)—интерполяционный многочлен Лагранжа по узлам jco, ..., Хп-\. Согласно E.3), имеем ^п(х) = f(Хо) + f{xq; Xi){x — Xq)+... ... + / (Xq', . . .', Xn-i) (X^— Xq) ... (X — Xn-2)' Произведем замену переменных Jc = *o + '^' и перейдем от разделенных разностей к конечным, согласно A0.3). Получим ^n(Xo + nt) = t0 + ni2t+ ■•' +/(n-l)/2 („_ ,), • A) Остаточный член C.1) представится в виде ^(П, (g) <(<-!) ■•• (i-{n-l))h'^ ^ Формулу A) называют интерполяционной формулой Ньютона для интерполирования вперед. Если мы произведем такую же замену переменных в интерполяционном многочлене L„ (л;) ло узлам Xq, Х—1, . . . , Х-(п-\)' i^nix)='fiXo) + f(Xo, X-j){x-Xo)+ ... • • • + / (*о'> • • • "| ■'^-(п-1)) {Х — Xq) . . . {Х — JC_(„_2)), то получим интерполяционную формулу Ньютона для интерполирования назад ^„{Xo + ht)=fo + f_iiJ+ ... +L(„_i,/2 (TITTjl W
§ 12] ФОРМУЛЫ БЕССЕЛЯ И ЭВЕРЕТТА СОСТАВЛЕНИЕ ТАБЛИЦ 67 С остаточным членом ^(П) ^^Q t(i+\) ... (^ + (n-l))h'^ ^ Обратимся к вопросу о практической оценке погрешности. Если функция f{x) задается аналитически, то можно оценить ее производную и отсюда получить оценку остаточного члена интерполяции. Однако, если функция достаточно сложная, получение такой оценки может потребовать много времени и достаточной квалификации; кроме того, такая оценка часто оказывается существенно завышенной. Поэтому обычно поступаются строгостью оценки в угоду ее простоте: верхнюю грань производной заменяют каким-то приближением к ней (верхней грани). Если оценивается погрешность f{x)—Ln(x) в конкретной точке х, то, согласно E.6), E.7), имеем / (х) - и (X) « / (*,; ...; «„+,) ш„ {к). В других случаях важна малость погрешности интерполирования во всех точках отрезка [а, Ь], и необходимо иметь оценку величины Af„ = max|f(") {х)\. [а. Ь] Для определенности речь пойдет об интерполировании функции, заданной на сетке с постоянным шагом: х^^хц + дк. Если /<"'(х) непрерывна, то справедливо равенство llm aj = М„; a'l = max h д»/„ л« Поэтому при малых А можно принять Af„ « а„. § 12. Интерполяционные формулы Бесселя и Эверетта. Составление таблиц Во многих случаях приобретает особо важное значение малость степени полиномов, приближающих функцию. Уменьшения степени таких полиномов без потери точности иногда можно достигнуть, образуя линейные комбинации интерполяционных полиномов. Рассмотрим простейшие из таких способов приближения функций. Если точка интерполирования х лежит на (хо, Хо + h/2], то узлы интерполирования удобно брать в последовательности Xq, Хо + h, Хо — h Хо+ Ih, Xq — Ih. Тогда при любом q группа из первых q узлов этой последовательности состоит из узлов, ближайших к jc, и оценка остаточного члена вида |f(;c)-L„WI<max-L^^^^|cD„W| . для интерполяционного многочлена по этой совокупности узлов будет лучше, чем для любой другой совокупности. 3*
68 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ [ГЛ. П Интерполяционная формула, написанная по первым узлам этой последовательности, называется формулой Гаусса для интерполирования вперед. Последовательность узлов xq, Xq—h, Xu-\-h, ... в том же самом смысле будет наилучшей для интерполирования в точке из [jco — /1/2, Х(). Такую интерполяционную формулу называют формулой Гаусса для интерполирования назад. Формулы Гаусса имеют самостоятельное значение и широко применяются при ручном счете. Выпишем формулу Гаусса для интерполирования вперед по'2п-\-2 узлам ^2n+2ix)==f{Xo)-\-f{Xo; Xi){x — Xo)-\- ... ... +f(xo; X,; x_i; ...; Xn+i){x — Xq) ... {x —Хп){х — x-n)- A) После замены x=^Xg-\-ht получим G2ft+2 (Xq -\- ht) = L2n+2 (Xo + ht) = — f -^ fl / 4- f2 <(^-') _L I f^«+^ t(i'-l)...{t'-n') ,„. /o~r/i/2'~r/o 21 1^ ••• ~г'1/2 Bn-f 1)! • ^^> Выпишем теперь формулу Гаусса того же порядка для интерполирования назад по отношению к узлу JCi, т. е. по совокупности узлов Хи Хо, Х2, Х-и ... , Jtn+l, Х-п'. JL2n+2{x) = f{x\)-\-f{xi; Xo){x — Xi)-\- ... ... +/(х,; Хо, ...; х„+и x_„)(х — JC,)(х — Хо) ... (х —х„+,). (^) После замены переменных x=Xo + W получим I i2n4.i tit'-[) ... {t'-(n~i)^){t-n)(t-{n+\)) , ■ •• -Г/1/2 Brt+ 1I • (V Формулы A), B), C), D) являются различн^>1ми формами записи одного и того же интерполяционного многочлена Ла- гранжа по узлам х-п, ..., Хп+\. Поэтому можно написать, что этот многочлен Лагранжа равен полусумме правых частей B) и D). При образовании этой полусуммы заметим следующее: разности нечетного порядка в обеих формулах одни и те же, и поэтому можно привести подобные члены, соответствующие одинаковым разностям; в то же время коэффицие'}ты при разностях четного порядка одинаковы и их также можно'объединить. В результате получим интерполяционную формулу Бесселя -ваа+г (^0 + ht) = G2n+2 (Xq + ht) = L2„+2 (xo + ht) = = ^^/./2 + f\,2 a - 1/2) + Ы12 T-^ + • • • I „f2„ tit'-\)...(t'-(n-\y)(t-n) , ••• ~r Wl/2 Brt)l "•■ , „„+, t (t' - \) ... (l^ - in - \Y)(t - n){t - \I2) . "•"'•/2 Brt-|-I)! ^^>
§ 121 ФОРМУЛЫ ВЕССЕЛЯ И ЭВЕРЕТТА. СОСТАВЛЕНИЕ ТАБЛИЦ 69 (здесь и далее опускаются промежуточные выкладки). Есте- 'Ственно, что остаточный член этой формулы совпадает с остаточным членом интерполяционного многочлена Лагранжа с /„\ о /v^ — fB"+2» A-\ (.У — х-п) ... (х — хп) {х — x„ + i) I \Х) — D2n+2 \Х) — / KQ) Bп + 2)! ' или /(хо + ЛО-В2«+2(л:о + Л/) = По сравнению с формулами Лагранжа и Гаусса A), B) эта ■формула дает лишь определенные удобства пользования; в частности, при интерполировании на середину отрезка, т. е. при i = '/2, коэффициенты при разностях нечетного порядка обращаются в нуль. Однако, если отбросить последнее слагаемое в правой части E), то получится формула иного типа: А„ + , К+ ^0=t^/./2 + /1/2(^-1/2) + + Ц/Г/2 2i ^ ••• +'"''/2 J2n)\ • (^) Многочлен В^п+х {xq + ht) степени 2п уже не является собственно интерполяционным многочленом. Он образуется как полусумма интерполяционных многочленов с узлами соответственно, т. е. совпадает с f{x) лишь в 2п узлах х-(п-\), ... ,.., Хп, в то же Бремя при его написании используются также значения функции в узлах x_n и JCn+i (рис. 2.12.1). Его остаточный член, естественно, складывается из отброшенного члена в правой части E) и правой части F): !(Хо+М)-В2п+ЛХо + М)== _ f2„+i t(i^-\)...(t'~(n-\r){t-n){i~\/2) 142 Bn+l)l "'' + / ^^'^ B« + 2)I • ^^> Можно убедиться, что первый член правой части (8), являющийся главным, меньше, чем главный член погрешности каждой из формул, полусуммой которых является B2n+l{Xo-b fit). Мы проверим далее последнее утверждение при п= I. Рассмотрим следующую типичную задачу. Требуется построить таблицу значений некоторой функции так, чтобы погрешность при интерполяции значений функции многочленом заданной степени т не превосходила е. В этом случае говорят, что
70 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ [ГЛ. II таблица допускает интерполяцию степени т (с погрешностью е). Таблицы, выпускаемые для широкого круга пользователей, обычно составляются так, чтобы они допускали интерполяцию первой степени, иначе — линейную интерполяцию. Примером таких таблиц могут служить таблицы В. М. Брадиса, известные из школьного курса. В дальнейшем рассматриваем случай таблицы с постоянным шагом. Для вычисления значения f{x) при помощи такой таблицы берутся узлы Хд и Xg+i справа и слева от точки х: jc, < дс < Xq^i (они будут ближайшими к х); затем f{x) заменяется интерполяционным многочленом пер- L ^ вой степени по этим узлам: = L+l I t. Погрешность этой формулы Г(?)А^ t{t-l) где Ха<^<Х, q+l- Эта величина не превосходит е, если Рис. 2.12.1. J (тах|Г'(СI)Х го. II <е; ■ достигается при /=1/2 и равен 1/8. Таким об- \ t{t — \) max \ ' [О, I] 1 ^ разом, достаточно выполнения условия max|r(S)IA2/8<e. (9) Пусть мы хотим составить или ввести в машину таблицу sinjc на [О, я/2] так, чтобы погрешность линейной интерполяции не превосходила 0,5<10"®. Поскольку тах| (sinдс)У| = 1, то из (9) вытекает требование на шаг таблицы /l^/8<0,5• 10"" или Л < 0,002. Часто требование допустимости линейной интерполяции является слишком жестким и вместо него требуют допустимости квадратичной интерполяции (т. е. интерполяции многочленом второй степени). Простейшим случаем квадратичной интерполяции будет интерполяция многочленом Лагранжа по ближайшим
121 ФОРМУЛЫ БЕССЕЛЯ И ЭВЕРЕТТА. СОСТАВЛЕНИЕ ТАБЛИЦ 71 трем узлам. Пусть Xq — узел, ближайший к х. Положим X = Xq + ht и f{^q + M)«L,(x^ + ht)^f^ + P^^,^t + fl-^^^. A0) Остаточный член этой формулы 31 Чтобы таблица допускала квадратичную интерполяцию A0), достаточно выполнения условия тах|/<з)(С)|ЛЗ max KKl/2 <е. Так как max |П<1/2 перепишется в виде 6 = -г^г то это требование на шаг max I р @1 АЗ/16 < е. A1) В конкретном случае /(^:)=sinx, е=0,5 • Ю'^получаем /г^0,02. Рассмотрим другой способ замены функции многочленом второй степени. Пусть jce(x,, x,+i), x = x^-\-ht; положим = t^/,^./2 + /;^,;,(<- 1/2) + ц/^,^,;,-^^^. A2) т. е. заменим f(x) многочленом Бесселя второй степени G), написанным по узлам jc,_|, х^, x^+i, х<,+2- Согласно (8), остаточный член A2) есть :3 tU-\){t- 1/2) <7+1/2 6 p(g),n(^--0(^-2) Так как /^+,/2==Л^/'^'(^), то для допустимости интерполяции по формуле A2) достаточно выполнения соотношения max|p>(g)|/z3 max 0<t<l <«-!)(<-1/2) 6 + + тах|Г(С)|А* max \ ' ^''' l\^'' ^^ 0<<<1 Поскольку <(<-1)(<-1/2) max 0<<<1 I 6 max 24 <(<'-1)«-2) <е. 72JA3 ' 0<<<il 24 ТО интерполяция по формуле A2) допустима, если max I ft») (S) I й» , 3max|/(^>(S)| ,4 ^ ^ 72jA3 128 "^ ■ 128 • A3)
72 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ [ГЛ. II При малых h главной частью является первое слагаемое; онО' меньше, чем левая часть A1) в 9 V^3/2=7,794 , .. раз. Следо- вательно, при малых h для выполнимости A3) можно взять шаг в У9У^З/2 «5 1,98 раз больше, чем для выполнимости A1). В рассматриваемом примере условие A3) имеет вид /гЗ/72 /З + 3/zV128 < 0,5 • \0~\ Решая это неравенство, получим Л ^ /to = 0,038... Заметим, что при ручном счете шаг /i=0,038 неудобен вследствие «некругло- сти» этого числа. Поэтому при составлении таблиц его заменили бы заведомо на меньшее, но «более круглое» число 0,03. Если и такой шаг таблицы слишком велик, можно пойти по пути увеличения порядка интерполяционного многочлена. Сейчас мы рассмотрим еще один способ записи интерполяционного многочлена, носящий название способа Эверетта и являющийся весьма удобным При решении следующей задачи уплотнения таблиц: дана таблица значений функции с узлами хо + nh, требуется составить таблицу значений функции с узлами Ха + nh' при Л' = h/l, где I — целое. Последующие построения, связанные с формулами Эверетта, непосредственно вряд ли понадобятся читателю. Однако они любопытны в качестве примера частных приемов и частных вариационных задач, помогающих усилить эффективность вычислительных алгоритмов в конкретной обстановке. Обратимся к интерполяционной формуле Гаусса B), исключив в этой формуле разности нечетного порядка при помощи соотношения B1+1 _ B1 ,21 П/2 — М ~/0- После приведения подобных членов получится формула Эверетта Е2П+2 (^0 + М) = G2„+2 (*о + hi) = So (u) + Si @; A4) здесь u = 1 — < о (.ч-f . I f2t{t^-l) I ,2. t it'-I)... it'-n^) Еще раз подчеркнем, что все эти формулы дают представление одного и того же интерполяционного многочлена. Остаточный член этой формулы есть остаточный член формулы Лагранжа, т. е. , B„+2),.. ^2п+2 iU'-i)...it'-n')U-in+\)) .. .. ' ^^> Bп + 2I ./ • ^'°' Запись интерполяционного многочлена в виде A4) примерно вдвое сокращает работу по сравнению с другими записями при решении задачи уплотнения таблиц: при использовании формулы Эверетта значения f(xo — ht) при О < / < I вычисляются по формуле f{xo-ht) = So(u) + S.,(t); таким образом, значение So (и) используется при нахождении двух значений fixozbht). Мы можем вычислить все значения S,(«) при и= \/1, ... ..., {I—\)/1 и составить значения f{x) в узлах сгущенной сетки ха-\-пк' как их линейные комбинации. Непосредственное вычисление значений интер-
§ 12) ФОРМУЛЫ БЕССЕЛЯ И ЭВЕРЕТТА СОСТАВЛЕНИЕ ТАБЛИЦ 73 ПОЛЯЦНОННОГО многочлена из других форм записи требует суммирования 2п-^ 1 слагаемых по сравнению с « + 1 слагаемым в A5). Проведем дополнительные построения в случае п = 2, когда При ручном счете целесообразно приблизить коэффициент при \ выра- ■жением —к ,„п— и вместо &q\t) вычислять " 120 1ИИИРИТ ППИ \ s,{0 = V+(f'-w'^) 4\ /4*2-1) Можно представить пользователю таблицы, где, наряду со столбцом значений f,, содержался бы столбец значений f^ ofT^?* Вычисление значений функции при помощи таких таблиц по формуле \ [х^ + W) « S"<,+i (О + S, («) = Гв (х^ + Ы) •было бы весьма простым. Поставим перед собой задачу наиболее разумного выбора параметра к. Мы будем формулировать эту задачу как задачу выбора ft, при котором главная часть Бир|£б(х<,+ ЛО - г'б (;t, + ЛО I <е[0, 1) минимальна. Имеем равенство £е(;с, + ЛО-Яб(А;, + ЛО = _4 < (/2 - 1) (<2 - 4 + ft) . н " ("' - 1) («' - 4 + к) "'</+' 120 "'"''? 120 • ^ ' На первый взгляд может показаться разумным выбрать к из условия minmax|<«2- 1) (/^ - 4 + ft) I. * [О, 1! Однако, вследствие близости V„j^\ и fl, слагаемые в правой части A7) могут компенсировать друг друга, и такой выбор к не будет наилучшим. Поэтому предварительно выделим главный член в правой части A7). Подставим в правую часть A7) /Ui = <^\п + 1/2^^+,,2. t, = <+„2 - i/2f',+i/2. « = 1 - ^ После приведения подобных членов получим £б {х^ -f ЛО - Яб {J;, + ЛО = Si + Sj, где , _„,4 5/(/'-l)(/-2)-f3ft<«-l) «1 —W<,+i/2 [20 ' ^ ' _ 5 / (F - 1) (/ - 2) « - 1/2) + ft/ (< - 1) « - 1/2) «2—/,,-1-1/2 120 • ('^^ При ^f*' (х) ^ О S, имеет порядок А', и поэтому является главной ■частью разности £е (х,-f-й<) — £б (х^-f Л/). Наиболее естественно выбрать ft
74 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ [ГЛ. II ИЗ условия минимума коэффициента в s, min max | 5/ (t^ - 1) (/ - 2) + ЗА/ (/ - 1) |. ft fo, и Справедливо равенство /(/2^1)(/_2) = <(/_1)(/(/_ 1)_2). Поэтому после введения новой переменной «/ = 4/A — /) получим Поскольку При изменении / на отрезке [О, 1] у пробегает (дважды) отрезок [О, 1], то min max | 5/ U^ - 1) (/ - 2) + 3kt (/-1I = ft 10. 1] 15 5 3 15 ■ттУ^ + ir У—-г ky\ =-r^ min max \y^ — ry I ,10 2 4 I 16 r 10, 11 B0) где г = -=- ft — 8. о Обратимся к рис. 2.12.2. При 0<г< 1 функция у^ — гу на [0,1] имеет локальные экстремумы в точке 1 и в точке, где (у^ — гу)'= О, т. е. при у = г/2. Величина первого экстремума равна 1 — г, второго —г*/4. Определим Го е (О, 1) из условия, что значения функции у^ — гу в точках этих локальных экстремумов по модулю равны между собой, т. е. из уравнения 1 — Го = гЦа. Отсюда г^ = УЬ —1 и тах|г/'-Ло«/|=1-'-о = 3-/8"= \-—. = Ь. 10.11 3 ;|- У 8 Если л = Л1<Ло. то тах| {/' — гу\'^\ — г>\ — Га = Ь; если /■ = /'2>/'о, то [0,11 2 2 '■ '"о —г->——=\ — Га = Ь; справедливость этих 4 4 Я-i шах \у^ — гу\^ 10,11 соотношений также видна непосредственно из рисунка. Таким образом, мы нашли г, при котором достигается min max \у^ — ry\ ='- mil тал и — i ц —^ — ■ Г \0.\] "^ 3 + /8 Обращаясь к B0), получаем значение А: А = 5 (З + /2 )/б = 3,6785... и при этом k max 15/(/'-!)(/-2) +ЗА/(/-1I ^ 10,1] 16C + V^8) . Из A8) получаем оценку , шах |/(^)(.П^,^ max 1/Н) (.)!,,_ 384 (З + /8 ) 2238,0 ... Оценим величину | Sj | при таком значении k: max|/(»)(x)[ 1*^'^ 1646..., "•
4 131 о ПОГРЕШНОСТИ ОКРУГЛЕНИЯ ПРИ ИНТЕ(^ПОЛИРОВАНИИ 75 в то же время исходный остаточный член можно оценить через max I fW (х) I 204,8 Суммируя все эти оценки, получаем А». ^ max I f (^) (X) I 2238,0... "'^ 1646.... "*■ 204,8 Отсюда можно получить, что для рассматриваемого нами примера f{x) = = sin X погрешность интерполяции по этой формуле не будет !/ превосходить 0,5 * 10 "^ при Л ^ ^ Ао = 0,16... Таким образом, по сравнению со случаем линейной интерполяции, мы добились существенного увеличения шага, с ко^ торым допустимо составление" таблиц прн точности интерполяции 0,5 • 10-«. Может случиться, что неважна форма, в которой ищется приближение для суммы слагаемых, содержащих четвертые разности, например, если в дальнейшем мы будем исследовать свойства функции, находить ее экстремумы и т. д. Для этих целей можно поставить перед собой задачу приблизить эти слагаемые выражением ^J^, так, чтобы максимум главного члена погрешности был минимальным. Задача. Показать, что решением упомянутой выше задачи будет Рис. 2.12.2. Q,U)^ 960<A -/')-5 30720 ' показать, что при этом главный член погрешности не превосходит max I f'О (х) I 3072 h*. § 13. О погрешности округления при интерполировании ' Предположим, что выбран некоторый способ интерполяции. Выше мы получили достаточное представление о погрешности, являющейся следствием замены функции многочленом. Однако существу^ет еще одиа^причина погрешности: задаваемые значения функции содержат погрешности, в частности, вследствие округления этих значений. Пусть требуется вычислить значение
76 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ [ГЛ. 1Г f(x) ПО формуле /=1 являющейся общим видом рассматриваемых нами интерполяционных формул. Поскольку реально заданы не /j, а приближенные значения }]= fj + ^j, то в результате будет получено значение r=lfiP,{x)-j-tr],P,{x). Если известны границы изменения значений tIj, то можно оценить верхнюю грань погрешности п е = 2 r]iPj (х). Например, при условии |tij| ^ т) имеем оценку |е|<112|Я/М|. 1=1 Для широкого употребления иногда выпускаются р-значные (все значения функции содержат р десятичных знаков после запятой) таблицы, удовлетворяющие следующим условиям: таблица допускает линейную интерполяцию с погрешностью 0,5-10"», все значения функции заданы с погрешностью не более 0,5-10"Р. Если мы вычисляем значение f{x) интерполяцией пО' узлам хо, Х\, где Хо<. х <. Хи то Poix)= *'~* , Р,{х)= *~'^° г\{\РМ\ + \РЛх)\) = ц. Таким образом, при линейной интерполяции погрешность, вследствие округления значений функции, не превосходит погрешности этих значений. С учетом того, что погрешность интерполяции не превосходит 0,5- 10"р, получаем, что погрешность получаемых приближенных значений не превосходит 10"р, если только при интерполяции не вносится дополнительной погрешности. Составление р-значных таблиц с погрешностями знач')\нин функции, не превосходящими 0,5 •10"'', является очень трудоемким делом. Пусть, например, точное значение f(Xi) есть О, г/, ... ур 499 ... 9; (I) к раз здесь 1/1 Ур—десятичные цифры. Мы должны взять в качестве /i значение 0,1/1 ... Ур. Однако если мы при вычислении f(xt) совершим ошибку 2'10-''-р~', то мы возьмем в качестве /i значение О, J/i.. .{/р-1-Ю"'', т. е. ошибка будет больше 0,5-10"Р. Поскольку k может оказаться сколь угодно.
§ М] ПРИМЕНЕНИЯ АППАРАТА ИНТЕРПОЛИРОВАНИЯ 77 большим, то может потребоваться проводить вычисления значений f{xi) с очень большим числом знаков. В большинстве случаев р-значные таблицы или содержат значения функций с погрешностью, не большей Ю'р, нлн в описании таблиц говорится, что погрешность не превосходит 0,5" 10"р, но на самом деле допускается погрешность 0,5-10"рA + Y). где \ — достаточно малое. Источником погрешности значений функции является также погрешность от округления при вычислении по интерполяционным формулам. Естественно, что эта погрешность зависит от числа значащих цифр, с которыми производятся вычисления. Как и выше, никакое фиксированное количество знаков при вычислениях не позволяет гарантировать, что ошибка, являющаяся следствием округлений при вычислениях, меньше 0,5-10"^. В самом деле, если значение интерполяционного многочлена при отсутствии округлений есть A), то при ошибке от округления 2'10"''ч'"' округленное значение может иметь ошибку, несколько большую 0,5-10"р. Так^м образом, даже при интерполяции р-значной тлблицы, удовлетворяющей наложенным выше самым жестким условиям, погрешность округленных с р знаками после запятой значений функций может превосходить 1,5 • Ю'р. Применение выч11г.':;:т-,;ьных машин и автоматизация способов печати таблиц до.-ают ::е столь существенным рассмотрение затронутых выше вопросов. Если мы возьмем старые руководства по методам вычислений, то найде.ч там существенно большее, чем у нас, количество форм записей интерполяционных многочленов. Дело заключается в следующем; при вычислениях на большинстве современных ЭВМ каждая операция осуществляется с большим числом разрядов в фиксированное время, не зависящее от числа значащих цифр чисел; вероятность сбоя машины также не зависит от этого числа. Поэтому при той же погрешности метода и округления качество интерполяционной формулы определяется лишь числом различных арифметических и логических операций при ее реализации. При ручном счете время осуществления операций и вероятность сбоя (ошибка человека, осуществляющего вычисления) растут с числом значащих цифр, с которыми производятся вычисления. Появление в свое время большого числа записей одной и той же интерполяционной формулы Лагранжа в существенной степени связано со стремлением получать формулы, в которых участвуют числа возможно меньшей разрядности. § 14. Применения аппарата интерполирования. Обратная интерполяция Употребление интерполяционных многочленов оказывается полезным при решении ряда задач. Пусть, напри.мер, требуется найти значение экстремума функции одной переменной и точку экстремума. Составим таблицу значений функции с крупным шагом. Из рассмотрения этой таблицы можно увидеть место расположения экстремума. Составим таблицу с более мелким шагоя в этом месте. Из рассмотрения этой таблицы можно уточнить расположение экстремума и т. д. Такое последовательное уплотнение таблицы не следует производить неограниченно. Обычно пас интересует значение экстремума с некоторой точностью у. При некотором шаге таблица допускает кубическую интерполяцию, например по формулам из § 12,4; точностью у. Заменим функцию интерполяционным многочленом, продифференцируем его и найдем корень. Значение функции в этом корне примем за экстремальное
78 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ^ (ГЛ. II значение. Поскольку \f{x)—Рз(Аг)|^у> ^о |тах/(х) — — та\Рз{х)\ ^ \. В зависимости от обстановки иногда бывает удобнее мельчить шаг таблицы до тех пор, пока ие станет допустимой квадратичная интерполяция. Другой типичной задачей, где может быть применен аппарат интерполирования, является нахождение корня X уравнения f(x) = d. Путь решения этой задачи тот же самый. Составляем таблицу значений функции; определяем по ней грубо, где находится корень уравнения, затем составляем таблицу с более мелким шагом и т. д. Если вычисление функции относительно нетрудоемко, неразумно применять в процессе вычислений интерполяцию степени выше второй; в противном случае возникает задача нахождения корней многочленов, сама требующая достаточно большого числа арифметических операций. Если вычисление функции трудоемко, может оказаться более выгодным пойти по пути увеличения степени интерполяционного многочлена. В случае, когда в окрестности у = d функция g{y), обратная к f(x), является достаточно гладкой, более эффективным явится применение обратной интерполяции. Обратной интерполяцией называется следующий алгоритм. Пусть известны значения функции yi^f{Xi) при 1 = 1, ..., п. Эта информация эквивалентна тому, что известны значения Xi = g(yi) обратной функции. При условии допустимости интерполяции по переменной у можно заменить обратную функцию g{y) интерполяционным многочленом 1-п{у), удовлетворяющим условиям Ln{yi) = Xi, 1= 1 п, и положить ^ = g(d)» Ln(d). Такой способ особенно удобен, если нас интересуют значения решения уравнения при достаточно большом числе значений d или если желательно получение явного выражения корня уравнения f{x) = d в зависимости от параметра d. Если интерполяция по узлам у\ уп не обеспечивает нужной точности, полагаем Хп+1 = Ln(d), i/„+i = = f{Xn+i); далее, в зависимости от обстановки, целесообразно заменить g{d) значением интерполяционного многочлена по всем узлам У1 уп+\ или по узлам, ближайшим к d. § 15. Ортогональные системы и их свойства Пусть Н — гильбертово пространство со скалярным произведением {f,g) и, соответственно, нормой ||f||=V^(/, /). Наиболее важные следствия рассмотрений настоящего параграфа относятся к случаям:
§ 151 - ОРТОГОНАЛЬНЫЕ СИСТЕМЫ И ИХ СВОЙСТВА ' 79 А) Н — пространство комплекснозначных функций, определенных на [а,Ь\ с ограниченным интегралом \p{x)\f{x)fdx. скалярное произведение задается равенством ь if. g)=lp(x)fix)gix)dx; A) а р > О ПОЧТИ всюду на [а, Ь]; функции, отличающиеся друг от друга на множестве меры О, считаются равными. Б) Н — эвклидово пространство п-мерных комплекснозначных векторов (Xi, ,,., Хп) со скалярным произведением п {х,у)=^^РцХ1У1, B) Р = [pij] — положительно определенная матрица. Пусть задана система элементов из Н: {ф^„ ^ ф1 ф„. Система (фЛп называется ортогональной, если (фь ф;) =0 при t Ф j. Система {фЛп называется линейно независимой, если п 2С./ф;=0 ТОЛЬКО тогда, когда все С) = 0. - Важным аппаратом многих исследований является ортогона- лизация заданной системы элементов гильбертова пространства. Лемма 1. Пусть задана линейно независимая система элементов ф1, ..., ф„. Можно построить ортогональную линейно независимую систему элементов I ^1= ^b,i<fi, j=l, ..., п, где все bii=\. C) Мы будем проводить построение такой системы методом индукции. При п = 1 имеем тривиальную систему tfi = ф1. Пусть требуемая система {t{ij}n построена при некотором п = А, тогда ifft+i отыскиваем в виде к ^ft + l= Ф* + 1— Ij'JA/^i- D) Коэффициенты аы выбираем из условия ортогональности ,(^ft+ii ifi) =0 при i^k. Вследствие ортогональности системы
80 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ [ГЛ. 1Г элементов {^j}h последнее соотношение представится в виде (Фа+1. ^d — ani^h ^/) = 0. откуда ^ _ (Ф/я-1.^<) следовательно, элемент будет ортогонален всем предшествующим. Подставляя сюда i ^i = S bip(fp при i ^ Й, получим требуемое соотношение. Совокупность соотношений C) при / ^ л можно представить в виде где tf, \ /Ф,\ /I О О О ... 621 1 0 0... в то же время, перенося все ф^ из правой части E) в левую, получим 1 О О О ... ffin)^ Лп^1?(п), где Л„=| '^^' л" I' (*^) матрицу Вп иногда называют матрицей ортогонализации. Так как detB„=l, преобразование, задаваемое матрицей В„, является невырожденным и поэтому переводит линейно независимую систему элементов {ф^}п в линейно независимую систему {l|5j}n. В силу линейной независимости системы {q)j}n отсюда следует, что Вп= Ап\ Важным аппаратом математического анализа являются системы ортогональных многочленов. В качестве системы функций {фЛ берется система 1, ..., х'+^, ..., производится ортогонали- зация в пространстве со скалярным произведением A) по
§ 151 ОРТОГОНАЛЬНЫЕ СИСТЕМЫ И ИХ СВОЙСТВА 8] описанной выше процедуре. Получаемые многочлены называют ортогональными многочленами, соответствующими весу р{х) и отрезку [а,Ь]. Иногда ортогональными многочленами, соответствующими весу р{х), называют многочлены '^]{х)^ aji\)j{x), где величины aj подбирают из каких-либо дополнительных соотношений, например, из условия ЦЧ'^Ц = 1. Систему ортогональных элементов, удовлетворяющих такому условию, называют ортонормированной. Мы уже имели дело с системой многочленов r„W = 2"-'x''-f .... ортогональных на отрезке [—1, 1] с весом 2/(я 1^1 — r^ ).• Как отмечалось, значения этих многочленов можно вычислять по рекуррентной формуле r„+,(x) = 2xr„W-7'n-.W. (8) Вычисление значений ортогональных многочленов Чебышева при помощи формулы (8) более предпочтительно по сравнению с непосредственным вычислением нх по явной формуле G) по следующим причинам: 1. Вычисление по формуле (8) не требует хранения в памяти или вычисления коэффициентов bju 2. Обычно требуется вычислять одновременно значения всех многочленов \i:i{x), ..., t|)n(>J) в одной и той же точке. При независимом вычислении значения каждого многочлена по формуле G) вычисление значений всех многочленов потребует X л^ арифметических операций. Здесь II далее a(ii))^b{n) означает, что а{п) и Ь{п) одного поря1ка, а (п) = О (Ь (п)), Ь(п) = 0(а{.:)). При одновременном вычислении всех значений при помощи рекуррентного соотношения (8) потребуется 0(п) арифметических операций. 3. Значения Тп{х), получаемые при непосредственном вычислении по формуле G), могут содержать большую вычислительную погрешность. Дело заключается в следующем: число Т„{х) образуется как сумма слагаемых: Tn{x)=I>d„,x'. (9) 1=0
82 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ ГГЛ. 1Г При записи в машине эти слагаемые dnjX^ смогут приобрести абсолютную погрешность порядка | rfni>^^ 12~*; следствием этого может быть погрешность значения Тп{х) порядка D„{xJ~*, где DAx)=I>\d,tx'\. /=о Оценим снизу D„(a:); из равенства Tn{\x\i)=Iidnii\x\i)' следует оценка I T„(\x\i)\<,^\dr,ix'.\==D„{x). 1=0 в то же время, согласно (8.4), при действительном х имеем так как {\x\+Vl+\x?){\x\-Vi+\x?)=-l. то отсюда получаем Таким образом, при больших п и х ФО при непосредственном использовании формулы G) вычислительная погрешность может достигать значений порядка {\Х\+УТ+\ЛТ2-*. Задача. Доказать равенство Dn{x) = \Tn{\x]l) |. Мы столкнулись здесь опять с явлением пропадания знача-' щих цифр: I Гп(Аг) 1^1, но при вычислении значения Тп{х) из (9) оно получается как сумма больших по модулю слагаемых переменного знака и поэтому приобретает большую погрешность. В то же время можно показать, что при вычислении по рекуррентной формуле (8) погрешность Тп(х) имеет гэрядок 0(п^2-*). Из изложенного видна важность получения рекуррентных соотношений типа'(8), связывающих значения ортогональных многочленов, соответствующих другим весовым функциям р{х).
4 151 ОРТОГОНАЛЬНЫЕ СИСТЕМЫ И ИХ СВОЙСТВА 83 Мы рассмотрим некоторые более общие образования. Пусть L — самосопряженный оператор над гильбертовым пространством Н: ф1 е Н, фJ = L■'-lфJ; предположим, что элементы фь • • ■ • <Рп линейно независимы. Согласно лемме, можно построить систему ортогональных элементов / - Ч"/ = S Ь/гФ/, где все bjj = 1. Теорема., Элементы ijjj удовлетворяют системе соотношений H)/+, + a/+,,/H)/ + a/+i,/-ii|'/-i-Li|)/ = 0, ^ A0) а/+1./-1 >0- Доказательство. Справедливо равенство / / L^l= 2 biiLq>i= 2 bii<fi+i. Вследствие соотношения (G): 4>ii+i)^^ ^i+i^u+u можно написать Z-^/=Sa/+i, .-^г. (И) Заметим, что ay+i, j+i = 1 вследствие C), F). Умножая ска- лярно обе части A1) на ifs при А ^/+!• получим 1+1 (^/, Li|>ft) = (LH);, ^k)=^at+i.i{b. ^*) = a/+i.ft(i|5ft, tfj). A2) > i=i Выразим Lijjft из (II) и подставим в левую часть последнего равенства При А + 1 < 7 левая часть обращается в нуль, и поэтому o/+i.ft = 0 для k<j—l. Таким образом, соотношение A1) может быть представлено в виде а/+1. /+i^/+i + «/+1.1^1 + а/+,. ,-i^i-i — Lrl^i = О, A3) где, вследствие A2), Мы имеем (ij)y, L^j+i)/{^j+u i|)/+i) = a/+i,|+i = I. ■ т. е. {L^t,\f+i) = i'^l+b ^/+i); поэтому
84 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ (ГЛ. II В то же время Таким образом, рекуррентное соотношение A0) имеет вид Теорема доказана. Далее наибольший интерес представит случай А при ф]^ 1 и L — операторе умножения ,на л;. Тогда г|з/ — многочлен Р/_, (л;) степени/—1, и после переобозначения а/<. = d/_., у^_,,/^^г + 1 соотношение A4) приобретет вид Р„+1 (-V) + d,^,,„Pn{X) + i/„+,. „_,Р„_, (.V) - хР„ (X) = О, A5) ь ь \^xp{x)Pl{x)dx \p{x)P"/.x:dx dn+\.n=—b . ^n + i.n-i^-b-^ > 0. A6) ^p{x)Pl(x)dx \p(x)Pl_^(x)dx a a Лемма 2. Пусть {^/}„ — система элементов I ^l=^bii(fi при bii=l, построенная методом последовательной ортогонализации системы {(fj}n, CL {Zj}„ — некоторая ортогональная система элементов I Zj= ^dji(fi, причем все rf;y= 1. A7) Тогда Zj = t|3y при всех } ^ п. Доказательство. При j => I утверждение справедливо; пусть оно выполняется при всех j^k. Из A7) следует, что k гй + , = ФА + 1-2«й+1,Л- 1=1 Умножая на г,-, получим 0 = (*Рй + 1. г,)-«й + 1.гB;. 2;); отсюда - _ («Pfe + i- %) k + Ut (^,, ^,) • Возвращаясь к доказательству леммы 1, мьь видим, что Zk+t также определяется равенством E). Таким образом, Zk+\ = ^к+\, и единственность ортогональной системы рассматриваемого вида доказана.
16] ОРТОГОНАЛЬНЫЕ МНОГОЧЛЕНЫ 8S § 16. Ортогональные многочлены Приведем наиболее употребительные системы ортогональных многочленов, соответствующие различным весовым функциям. 1. Многочлены Якоби. При отрезке [—1, 1] и весовой функции pW = (l-ж)«(l+ж)^ а, р>-1, ортогональную систему образуют многочлены Якоби Имеют место соотношения II р^^. ^)(^Л = ( 2°+Р+'Г(« + п+1)Г(р + п+1) У^ 11^" ^ ^11 \«1(а + р + 2/г+1)Г(а + Р + п+1) / (а + р + 2п) (а + р + 2п + 1) (а + Р + 2п + 2) хР'^-^^ {х) = = 2 (п + 1) (а + р + « + 1) (а + р + 2п) Р|^|Р' (х) + + (р2 - а^) (а + р + 2п + 1) Р^ Р> W+ + 2(а + «)(Р + «)(а + Р + 2« + 2) P^^lf{x); (\у здесь Г — гамма-функция Эйлера. Многочлены Якоби удовлетворяют дифференциальному уравнению ^-a.a(^'if■P'И-(l--^Ж"•^-)),.+ -f ((Р - а) - (а -Ь Р -Ь 2)х){Р^^'^Нх)\ = - n{a + fi + n+ 1) Р'^'Р' (х). иначе говоря, они являются собственными функциями дифференциального оператора Lap. 2. Многочлены Лежандра. Частным случаем многочленов Якоби прн а = Р = О, т. е. прн весовой функции р(х) ^ 1, являются многочлены Лежандра ^'•w=w^(^=-')'' с нормой ||L„|i = |/'2/Brt-H) и рекуррентным соотношением {п+ \)LnAr\{x)~{2n+ \)xLn(x) + nLn-\{x) = (i. Заметим, что прн больших п это соотношение, так же как и A) при любых аир, близко к рекуррентному соотношению для многочленов Чебышева. 3. Многочлены Чебышева. Прн а = Р = — 1/2, р (л) = l/)^l — л^ многочлены Якобн превращаются в многочлены Чебышева первого рода Тп(х). 4. Многочлены Чебышева второго рода. При а = р = 1/2, p(x) = Y^ ~ х', многочлены ,^коби превращаются в многоклены Чебышева второго рода l/„(A:) = (sin((rt+l)arccosA:))/l/l-V- = Г,'^, (д:)/(« + 1), и = О, 1, ...,
86 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ [ГЛ. II -С нормой llfnil = п/2. Рекуррентное соотношение для многочленов Чебышева второго рода такое же, как для многочлеиов Чебышева первого рода. 5. Многочлены Эрмита. При fa, 6) = (—оо, оо) и p(Af)=exp(—х^) ортогональную систему образуют многочлены Эрмита Нп (*) = (-!)'' ехр (*') -^ (ехр (- х')) с нормой я рекурретным соотношением Я„+, (х) - 2хНп {х) + 2пЯ„_, (х) = 0. Многочлены Эрмита удовлетворяют дифференциальному уравнению я;'-2*я;=-2пя„. 6. Многочлены Лагерра. При [а, 6] = [О, оо) и р {х) = х"' ехр (— х) орто- .гональную систему образуют многочлены Лагерра C>W=(-l)'';^-"exp^.^(*«-b«exp(-;c)) с нормой ./п1Г(а+п+1) я рекуррентным соотношением 4+1 {х)-{х-а-2п- 1) 4"> (;с) + п (а + я) 4"l.i (*) = 0. Многочлены Лагерра удовлетворяют дифференциальному уравнению * (С (^))хх + («+!-*) (i!."> {х)\ = - /.£,<,«) (;с). Установим ряд свойств ортогональных многочленов. Пусть Ро{х), ..., Рп{х), ... — система ортогональных многочленов на отрезке [а, Ь\. PЛX)=X'^+^P„|XI. 7=0 Лемма I. Каждый многочлен Рп{х) имеет ровно п различных нулей на открытом интервале (а, 6). Доказательство. Предположим, что Рп{х) имеет на (а,Ь) только I <. п нулей х\, ..., Xt нечетной кратности. Тогда Л1ногочлен I Pn{x)U{x-Xi), ле меняет знак на [а, Ь]; поэтому j p{x)PAx)Jl{x-Xi)dx^O.
§ 16] ОРТОГОНАЛЬНЫЕ МНОГОЧЛЕНЫ 87" с другой стороны, этот интеграл равен нулю, поскольку Рп(х) ортогонален ко всем многочленам меньшей степени. Получил» противоречие. Лемма 2. Пусть Vi"* < ... < Л"'— нули Рп (х). Тогда нули многочленов Рп-Лх) и Рп(х) перемежаются, т. е.: а < л:'») < л:'"-') < ... < xJ^tTi'» < <"> < Ь. B)- Доказательство. Пусть это утверждение доказано для некоторого я. Подставим в A5.15) x=xf^; получим Поскольку rf„+i,„_i>0, то sign Р„+, (х'")) = - sign Р^_, (хН- C> Так как все нули многочлена Pn~l(x) = x'^~^ -{- ... лежат на (а, Ь), то sign Pn-i {b)=\, sign Pn-i (a) = (-!)"-'. Отсюда и из B) следует, что sign Р„_,(х<'')) = (-!)"-'. Точно так же signP„+,F)=I, signP„+,(a) = (-ir+'. Отсюда и из C) получаем, что в последовательно расположенных точках а, л;',"*, ..., х^^К Ь многочлен P„+i (лг) имеет чередующиеся знаки. Между каждыми двумя последовательными из; этих точек многочлен Рп+\(х) должен иметь корень; в итоге доказана справедливость B) для следующего значения п. Индукцию можно начинать с я = 1, поскольку при я = I все выписанные соотношения, включая C) выполняются. Лемма 2 доказана. Рассмотрим практически важный случай, когда вес является четной функцией относительно середины отрезка [а,Ь]\ пусть д.1я определенности, [а, Ь] = [—1,1], соответственно, р{х) = р{—х)^ тогда справедлива Лемма 3. Все многочлены P2i{x) — четные, многочлены P-ii-x {х) — нечетные, т. е. Pli—х) = {—1)>Pjix) при всех j, D). и рекуррентное соотношение A5.15) имеет вид
88 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ (ГЛ. 1Г Доказательство. Многочлены Ро(*) = \, Pi{x) = х ортогональны, вследствие четности р{х) {Ро,Р,)= ^ xp{x)dx=0. -1 II поэтому являются многочленами ортогональной системы. Пусть мы уже доказали D) при / < п и E) при / < п. Обращаясь к формуле A5.15), имеем Pn^-iix) + {dn+u п~х)Рп (х) + d„+,, n-iPfi-i (х)=0. Вследствие D) и четности р(х) функция^ дер (л) P^ (л) — нечетная и поэтому, согласно A5.16), rfn+i, п = 0. Отсюда следует справедливость E) при j=n. Функция хРп{х) той же четности, что и Pn-t{x); поэтому и третье слагаемое P„+i{x), входящее в левую часть E) при / = п, той же четности, что и Pn-i{x). Таким образом, утверждение D) доказано для следующего значения j = п+ I. Лемма 3 доказана. Отсюда, в частности, следует, что в рассматриваемом случае нули ортогональных многочленов Р„ (а) расположены симметрично относительно начала координат. В частности, при п нечетном одним из нулей будет точка л; = О вследствие нечетности Рп (х). Рекуррентные соотношения для конкретных ортогональных многочленов, выписанные в пп. 2—4, имеют несколько иной вид, чем E), поскольку E) выписано для ортогональных многочленов, нормированных так, что их старший коэффициент равен 1. Отметим одно важное свойство распределения нулей ортогональных многочленов. Пусть [а,&] = [—1,1], вес р{х) почти всюду положителен на [—1,1]; обозначим через Wn{xi,X2) число нулей многочлена Рп{х), принадлежащих отрезку [хьл^з]- Тогда справедливо соотношение irn "'"'^■'-^^' = f .А_ dx. F) •I лу \ — х^ Wn(x^,X2) ^ _ _ Я-»оо п. ," Я)^ Таким образом, нули ортогональных многочленов независимо от весовой функции р(х) асимптотически распределены одинаково, 2 с плотностью —, п\^1—х'' § 17. Численное дифференцирование Простейшие формулы численного дифференцирования получаются в результате дифференцирования интерполяционных формул. Пусть известны значения функции в точках Xi, ..., х„ и требуется вычислить производную Р)(>^)- Построим интерполяционный многочлен Ln{x) и положим f (x)«L<f'(^). Точно так же мы можем заменять значения производных функции значениями производных других многочленов интерполяционного типа: Бес- ■селя, Эверетта и т. д.
S 17] ЧИСЛЕННОЕ ДИФФЕРЕНЦИРОВАНИЕ 8» Произведем оценку погрешности формул численного дифференцирования. Имеем равенство fix) — Lnix) = f{x; Xi; ...; х„)(о„(л;); этсюда по формуле Лейбница fik) (^) _ £,., (^) _ 2 С/ (/ {х; X,; ...; х„)У'> (o<f-/) (х). A) Пусть g(x) непрерывно дифференцируема q раз. Согласно выражению E.4) производной через разделенную разность, имеем g(x; х + е; ...; x + qe) = gW> {x^)/q\, где X ^ Xg ^ X + q^', отсюда gD) (х) = q\ lim g{x; х + е; ...; x + qe). Следовательно, (f (x; X,; ...; xj)*"* = q\ [lim f (x; x -j- e; ...; x + qe; x,; ...; X;„)]. B) Выражение в квадратных скобках по определению разделенной разности с кратными узлами есть / \х х; Xjj • I., x^j, q+l раз Таким образом, соотношение A) можно переписать в виде k fii^)^x)-L<^nx) = ^j^f{x^^_^x; X,; ...; ^„L'-'>W. О) f=^ /+1раз Мы получили представление погрешности формул численного дифференцирования через разделенные разности функции. После оценки разделенных разностей через производные, согласно E.4), получится оценка погрешности ft I р) (X)-LJf) (X) I <S:(,_^;;, + j), шах l /•«+/) (..) 11 <-/) (x) \, D) где, как и ранее, i/i = min(x, Xi, ..., x„), 1/2= max (x, x, x„). Рассмотрим некоторые частные случаи. Пусть производная fe-ro порядка определяется из дифференцирования интерполяционного многочлена /г-й степени при k + 1 узлах интерполяции
■90 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ ГГЛ. 1Г jci, ..., Xh+\. Поскольку Lk+\ix) = f{xi)+ ... +f{xu ...; Xk+i){x — >!i) ... (x — Xk), TO соотношение ^**' (x) « Lk'+i (x) приобретает вид r(x)^k\f(xu ...; x,^,). T. e. является следствием E.4). При й=1 из C) имеем fix)-L'^(x) = f(x; X,; ...; х^)(а'^х)+ f(x; х; х,; ...; х^)(а„(х) = fin) (У- \ fin+l) If \ = -4Р «>п (х) + VfTM '"" ('')• ^" ^^ ^ f^" ^2^- -(^^ Если л; является одним из узлов интерполирования »i, .,., х„, то (о„(л;) = 0, и из соотношения E) получаем I /' (х) - L'n (х) К (max I /<") (х) \) Щ^. Рассмотрим случай, когда узлы расположены на равных расстояниях Xj— Xj-i^h. Выражение (bJ/'(^) .есть сумма произведений я — / сомножителей, каждое порядка А, и поэтому coJ/>(x) имеет порядок 0(A"-J). Значит, правая часть A) есть f(x; хг, ...; x„)(b(.*)(x) + 0(A''-*+') = O(A''-*). Если<й^*>(*) = Ов точке х, то, согласно этому соотношению, по? рядок погрешности повышается. Приведем примеры употребительных формул, обладающих таким свойством. Пусть вычисляется значение производной f"(x) в точке Хо при узлах интерполяции л;_г Хо, ..., xi, Xj — л:^_1 ^ А. Тогда п = 21 + I, <i)n{x) = {x —x-i) ... (х —Xt) — функция нечетная относительно точки Хо. Поэтому <B„(^:o)=<B^'(jCo)= 0> и соотношение C) при k =:2 будет иметь вид r'(x,)-L':i{x,) = 2f(x', х- х_,; ...; х>;(х„). Непосредственным дифференцированием получаем зн^ление Таким образом, с учетом E.4) имеем f-N-Kih)=^j^^f''-'m''- F) Величину 1-п{Хо) можно выразить через разности f^. В результате
S 17] ЧИСЛЕННОЕ ДИФФЕРЕНЦИРОВАНИЕ 9Г получится формула rw~^;-w=/--'t''-"';ff-""'>;' (п /=1 с остаточным членом F). Наиболее употребительны случаи формулы G), соответствующие /= 1, 1 = 2: f" Ы - n/h'. f" К) - (/? - -iV ^о)/Л'. (8) Точно такое же повышение порядка погрешности на 1 по сравнению с Л"~' имеет место при вычислении любой производной р*Чл:о^ по рассмотренной выше совокупности узлов. Пусть вычисляется значение производной у'{х) в точке x = Xq-\- hl2 при узлах интерполяции Jf_(/_i), .... Xfl, *i, •••, Xi, Xj^] — Xj^h. В этом случае (в„ (x) — функция четная относительно точки Jf, и поэтому соотношение E) приобретает вид f'(Jc)-U(x) = i^;^fi,„(x). (« + 1I Как и в случае второй производной, выразим Ln{x) через Щ^^ и вычислим <Лп{^). Получим формулу численного дифференцирования f(x„ + A/2)«.I^K + A/2) = /-I _,,-' V (-'Н (пт C/2) ■■■(?- 1/2)Р р/Ф, ,Q. —« Zj B/+1I ' ^' С остаточным членом B/+1I (-1)^ (A/2) C/2). ..(/-1/2))» ,,2;+.) ,^> ,2/ B/+ l)t ' ^^^" • Выпишем наиболее простые формулы (соответствующие /^1» rK + A/2)-fU/A. Точно такое же повышение порядка точности ня 1 будет иметь место при этой совокупности узлов для любой производной нечетного порядка.
92 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ (ГЛ. II Упомянем также представляющие практический интерес так иазываемые односторонние формулы численного дифференцирования. Пусть требуется вычислить ^'{Хй) при узлах интерполяции лго, ..., jr„ с равным шагом. Согласно E), имеем nh)-KAh)=^^<{4)- (И) Подставляя сюда выражение Ln+\{x) в виде интерполяционного многочлена Ньютона для интерполирования вперед, получим формулу с остаточным членом (-1)" f("+')/n;," (rt + I) ' ^^' ■ Простейшие формулы (соответствующие /= 1, 1=2) /'Ы-/и/А. A3) ГЫ-(/и-т^?)/л- Аналогично строятся формулы для вычисления /'(jcq) при узлах интерполяции х^, ;с_,, ..., х_„; ГЫ-^;^,Ы = А-'5;у/1„а A4) /=1 с остаточным членом ТГТТ/*"""*(?) А". § 18. О вычислительной погрешности формул численного дифференцирования В случае формул численного дифференцирования мы сталкиваемся с тем обстоятельством, что уменьшение погрешности метода решения может приводить к росту влияния ^югрешности исходных данных и вычислительной погрешности. Пусть для определенности f'ixa) определяется из соотношения riXo)-^(f(x,)-fiXo))/h. (I) Согласно A7.11), остаточный член этой формулы г. = -Г(?)А/2. Пусть |/"(^)|^Af2 и, следовательно, \ri\^M2h/2.
« 181 О ВЫЧИСЛИТЕЛЬНОЙ ПОГРЕШНОСТИ 93 Если значения функции f(Xi) вычисляются с некоторыми погрешностями Bi, \ei\^ Е, то погрешность fix^) будет содержать дополнительное слагаемое Г2=(е,-ео)//г, \r,K2E/fi. Для простоты пренебрежем округлениями при реальном вьь числении правой части A). Тогда имеем оценку погрешности \r\K\r,\ + \r,\^gih)=M,h/2 + 2E/h. B) Для малости погрешности необходима малость h, но при уменьшении h растет второе слагаемое (рис. 2.18.1). Из уравнения g'{h) = О получаем точку экстремума g{h): ho = 2 УЩЩ и затем значение g{ho) = 2VM;E. Таким образом, ни при каком h нельзя гарантировать, что погрешность результата будет величиной порядка o{Ye). Ошибки е,- возникают вследствие ошибок в задаваемых значениях функций, например, если функция определяется из измерений, или вычисляется по некоторой приближенной формуле; поскольку эти значения округляются дополнительно при вводе в машину, то следует считать, что £^const2~', где t — число разрядов. Таким образом, мы можем получить f'(xo) в лучшем случае с половиной верных разрядов. В случае применения формул более высокого порядка точности .положение несколько улучшается. Пусть производная у^'^Цх) вычисляется по формуле Рис. 2 18.1. 1/'^> (х) I^c,y,]/h\ с, = 0A), C) с остаточным членом 0{h'); в случае fe = 1,2 мы видели, что формулы для вычисления производных порядка k действительно содержат в знаменателе h^^. Погрешность, являющаяся следствием ошибок в правой части C), оценивается величиной const-E/h>^. Таким образом, вместо B) мы имеем \r\^g,(h)=Ay+A2E/fi\
94 ИНТЕРПОЛЯЦИЯ и СМЕЖНЫЕ ВОПРОСЫ [ГЛ. 1Г Минимум правой части достигается при h порядка E^'(^+^^\ и при этом сама правая часть имеет порядок £"('+4 Таким образом, с ростом / порядок погрешности по отношению к Е повышается; при этом значение шага, соответствующее минимуму оценк-и погрешности, становится все больше. Конечно, следует иметь в виду, что величины Л: и Лг могут расти с ростом /, и поэтому увеличение / разумно лишь в определенных пределах. В практической рабоуе получили распространение различные способы «сглаживания» исходных значений функции. Эти приемы позволяют, с одной стороны, уменьшить величину £, а с другой— сделать функцию более гладкой, т. е. сделать допустимым применение интерполяционных формул дифференцирования более высокого порядка точности. Об этом пойдет речь в главе V. Дополнительная литература к главе II § 1: 1 [101, 11 [321; §§ 4-7, ]0: II 19, 11); § 18: III [25, 34].
Глава III ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ § 1. Квадратурные, формулы Ньютона — Котеса Простейшие квадратурные формулы можно получить из наглядных соображений. Пусть вычисляется интеграл /: jf(x)dx. Если f(x) «const на рассматриваемом отрезке, то можно положить / я5 F — a)f{t)> %, — произвольная точка отрезка [а, Ь\. Естественно взять в качестве S среднюю точку отрезка; тогда по- ''"''' лучим формулу прямоугольников Ь + а\ (b-a)f(- Предположим, что функция f{x) близка к линейной; тогда естественно заменить интеграл площадью трапеции с высотой {Ь—а) и основаниями f{a) и f(b) (рис. 3.1.1). Получим формулу трапеций Если функция f{x) близка к ли- Рис. 3.1.1. нейной, то из наглядных соображений видно, что формула прямоугольников также должна давать неплохой результат: дело в том, что F — а)/(—^—) есть площадь любой трапеции с высотой b — а и средней линией f(b + a\ **' /•I—^—1 в частности, она равна площади трапеции, у которой
96 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ 1ГЛ. Ill одна из сторон лежит на касательной к графику кривой в точке (Ч^-,/(^)) (рис. 3.1.2). Более сложные квадратурные формулы, так же как и формулы численного дифференцирования, строятся при помощи аппарата интерполирования. На этом же пути можно получить оценку погрешности квадратурных формул. Пусть вычисляется интеграл ^ f{x)p (х) dx; смысл введения функции р{х), называемой весовой, будет объяснен в § 3. Зададимся некоторыми di, ..., dn^[—1,1] и построим интерполяционный многочлен Ln{x) степени п—1, совпадающий с f{x) в точках b + а , b — а Х{= 2 Положим b + 2 -^i- ftb) lf{x)p{x)dx^ Jl,W p {x) dx. Имеем Phc. 3.1.2. Rn(f) = J f {x) p ix) dx-\L„ (x) p (x)dx== a a b = \p{x){f{x)-L„{x))dx. Разность f{x) — Ln{x) можно оценить, воспользовавшись оценкой погрешности интерполяционного многочлена Лагранжа [а, Ь] "-' где Отсюда сй„ (х) = ix — Xi) ... {х — х„). Г/1 Л1 J "' [a.b] Произведем в последнем интеграле замену переменных b + а , b — а X^Xit): -t;
I и КВАДРАТУРНЫЕ ФОРМУЛЫ НЬЮТОНА — КОТВОА 97 получим ь I I ЛЛ I V\ П I V\ I П г —^ й i t П . /Til n! где л(. ,,)-1Щр!^ш. -I Таким образом, справедлива оценка \H„if)\^D{du .... d„)(maxlf<'"(x)|)(A:=^p, A) Пусть все d/ различны. Тогда п /-=1 i¥-l ' ' После замены переменных x = X{t) получим J р (х) L„ (х) dx = (-Ц^) Yi Dif (^/)» B) где 1 ^ -I 1Ф1 ' ' Таким образом, построенная квадратурная формула имеет вид jfi,)pix)dx^^'^D,f(^^ + ^d;). C) Как и при численном дифференцировании можно обнаружить следующее обстоятельство: если задача имеет определенную симметрию, то метод с симметрией того же типа часто обладает дополнительными преимуществами. Лемма. Пусть весовая функция р {х) — четная относительно середины отрезка [а, Ь], и узлы Xj расположены симметрично относительно середины отрезка: d, = —dn+i-j- Тогда коэффициенты квадратуры, соответствующие симметричным узлам, равны между собой /)/ = /)„+,_/. D) 4 Н. е.. Бахвалов
98 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. Ill Доказательство. Запишем коэффициенты квадратуры в виде I .,= 1 _/"'.-(^/И-"-^,)'"' где о (/) = (< — d|) ... (< — dn). Если п четно, то о (О = w (— t) и а' (dj) = •=-~<а' (dn+i-i). Если « нечетно, то а {t) = — <а {—t) и <B'(dy) = = (й'(dn+i-/)- В обоих случаях после замены t = ~t' получим ^>-\^'^'K'i<in.Z\t' + 'it)'' ■')' 1 J Такие «симметричные» квадратуры обладают следующим дополнительным свойством, которое, формально говоря, не предусматривалось при их построении. Они точны для любой функции, нечетной относительно середины отрезка [а, Ъ]. В самом b деле, для таких функций \ p(x)f{^x)dx=Q вследствие четности а п р{х), а VD/f(A:/) = 0 вследствие D); поэтому и i?n@ ==0- /=1 В частности, квадратуры будут точны для любого одночлена const • \х Y^\ Рассмотрим такую квадратуру, соответствующую нечетному п. Она точна для/ {х) = const • \х :^\ и, согласно построению, также и для любого многочлена степени п—1. Следовательно, такая квадратура будет точна и для любого многочлена степени п. Таким образом, построенные квадратуры с 2q—1 и 2^ узлами 'И с симметричным расположением узлов относительно середины отрезка оказываются точными для многочленов степени 2q— 1. Чтобы получить уточненную оценку погрешности квадратур с нечетным числом узлов не через ^<"'(а:), а через f'^+'H-*^)» следует заменить подынтегральную функцию интерполяционным многочленом Лагранжа, имеющим точку {Ь-{-аI2 двукратным узлом интерполирования. Ниже для случая р{х) ^\. строится ряд элементарных квадратурных формул и дается оценка их погрешностей; при « = 1 и « = 3 для «симметричных» формул производится оценка погрешности через f^"''"'',(*)'
S П КВАДРАТУРНЫЕ ФОРМУЛЫ НЬЮТОНА - КОТЕСА 99 1. Формула прямоугольников. Пусть «=1, di = 0. Тогда £)=J|/|d/=l, D,= Jl-d/ = 2 -1 -1 и имеем квадратурную формулу ь |/Wdx«(b-a)f(^) F) а С оценкой остаточного члена maxirU)!-^^^. A, Ы 4 2. Формула прямоугольников с кратным узлом. Пусть и = 2, di = с?2 = 0. Тогда 1 ь а Таким образом, имеем квадратурную формулу ь |fWd^-(b-a)/(^) а С оценкой остаточного члена [а. Ы ^4 В обоих случаях получилась одна и та же квадратурная фор^ мула, но с различной оценкой остаточного члена. 3. Формула трапеций. Пусть п= 2, di = —1, £?2 = 1- Тогда -1 1 -1 1 1J=J-4^^=i.
100 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ (ГЛ. ГП Получена формула трапеций ь |/Wdx«i^(/(a) + /F)) G) с оценкой остаточного члена шах|ГМ|^Ц^. (О. 61 ^^ 4. Формула Симпсона. Пусть п = 4, d, = —I, d2 = di = 0, di^l. Тогда -I Согласно формуле интерполирования с кратными узлами, мы можем написать L,{x)=^L,{x) + f[aib: а+ b а+ b Yx-a){x-b){x-^), где L^(x)=^f(a) + f{a;b){x-a) + f[a;b;^)ix-a)ix-b). Второе слагаемое в выражении Щх) является функцией, нечетной относительно'середины отрезка [а, Ь]. Поэтому Г /-4 (х) йд; == J 1з (д;) dx. а а Многочлен Lsix) является интерполяционным многочленом второй степени, соответствующим di=*= — 1, ^2 = 0. d3=l (рис. 3.1.3). Этим значениям di, ^г, > £?з соответствуют Рис 3.1.3. ^. = т. ^2 = Т' ^3 = i. Полученная квадратурная формула (8)
§ 1] КВАДРАТУРНЫЕ ФОРМУЛЫ НЬЮТОНА - КОТЕСА 101 С оценкой остаточного члена называется формулой Симпсона. 5. Квадратурную формулу, точную для многочленов третьей степени, можно получить также, например, при /г = 4, взяв ^1= —1. ^2= —"з". ^з='-з", di=l. Тогда по описанной процедуре получается квадратура ь J / (х) dx '-^(fia) + Sf(a+^) + 3f(a+^^^) + f{b)). (9) При той же степени многочленов, для которых эта формула точна, она требует на 1 узел больше по сравнению с формулой Симпсона, и поэтому ее употребление менее оправдано. В связи с рассмотрением этой квадратуры полезно обратить внимание на следующее. Так как/(х) — L„(x)=/^"'(S(x))-^^p', то остаточный член квадратуры записывается в виде: ь J r{iix))^dx. В рассматривавшихся выше случаях 2—4 Шп(л;) не меняла знака на [а, Ь]. Согласно теореме о среднем: b Ь [ h{x)gXx)dx = h{x) \ g{x)dx, jee[a, 6], если g(jc)>0; а а это выражение может быть представлено в виде ь t\K)\^dx. A0) а Подставляя в A0) конкретное выражение (Лп{х), получаем представление погрешности формул прямоугольников, трапеций и Симпсона, соответственно:
102 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. 111 Если /<">(д;) на [а,Ь] не очень сильно меняется, то для этих формул оценка A) не будет слишком завышенной. В случае формулы (9) r.^ix) = {x-a)(x-^^)(x-^^)ix-b) меняет зн::/. на [а, Ь], и поэтому нельзя непосредственно представить остаточный член в виде A0). Поэтому возможно, что оценка A) для этой квадратуры окажется зai!ЫШLMlнoй. В § 2 будут проведены построения общего характера, с помощью которых удастся получить точную оценку погрешности этой квадратуры через максимум l/'^M-*^) I- Основной целью настоящей главы будет рассмотрение способов вычисления интегралов от функций, заданных аналитическим выражением, и выработка принципов построения стандартных программ интегрирования таких функций. Естественно, что кроме этих задач в теории квадратурных формул имеются и другие задачи, например, связанные с обработкой экспериментального материала. Для примера обратим внимание на квадратурные формулы Чебышева, широко применявшиеся при подсчете водоизмещения судов. Постановка задачи, приведшей к построению этих квадратур, довольно близка к по- ctanOBKe задачи, возникающей при планировании эксперимеввтов (см. глава 2, § 1). Вычисляется интеграл / (х) dx, причем рзвестно, что функвхия -1 ](х) с приемлемой точностью может быть приближена многочленом степени fl. Получение каждого значевгич ](х), ввапример, путем измерений, обходится довольно дорого, и получаемые значения содержат довольно большие случайные ошибки. Предположим, что ошибки измерения независимы, имеют одинаковую дисперсию d и математическое ожидание, равное нулю. Тогда дисперсия приближевшого значеввия Sn(/), вычисляемого по квадратурвюй формуле / (/) - Sn if) = 2 с J {хХ /=1 равна Условие /(/) = S„(/) при / = const имеет вид: 2= 2 е.. (И) 1=1 п Как нетрудно проверить, минимум величины d^Cj при условии (И) до- /=1 стигается при а =f ,,, ~ Сп — 2/п. Эти рассуждения привели к следующей
§ 21 ОЦЕНКА ПОГРЕШНОСТИ НА КЛАССЕ ФУНКЦИИ ЮЗ постановке задачи: среди всех квадратур п 2 (f)-i^n^i)' точных для многочленов степени д, найти квадратуру, соответствующую наименьшему п. При q = О и q = I искомой будет квадратура прямоугольников /(/) =2/@); при 9 = 2 и 9 = 3 —квадратура Гаусса (см. § 3) """(-7Г)+'Ш- § 2. Оценка погрешности квадратурной формулы на классе функций Рассмотрим квадратурную формулу ь N nf)=jf {X) dx - S^ if) = F - aM] Dif (xj). *) a /=I Про которую известно, что она точна для всех многочленов степени п— 1. Пусть С„(Л„, [а, Ь]) —класс функций п— 1 раз непрерывно дифференцируемых с кусочно-непрерывной производной /'"М-*^)» удовлетворяющей условию |f(")(jc) | ^ Лп при хе е [а, Ь]. Поставим перед собой задачу получить явное выражение величины sup \I{f)-S^{f)\. f^C„(A„la,b]) т. е. получить оценку погрешности, предельно точную на рассматриваемом классе. Напомним формулу Тейлора с остаточным членом в интегральной форме: X f {X) = Г?/ + J /'"' {у) ^V-lV ^У' A) с где Подставим это представление f в выражение погрешности l^Af) = nf)-S^(f). B) *) Иногда в записи квадратуры перед знаком суммы стоит множитель Ь~а, а иногда {Ь — а)/2; в зависимости от этого коэффициенты Dj имеют различный смысл
104 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ (ГЛ. П1 Величину Rslf) можно записать в виде Rn(f) = ^?iv(rj) + Rn(\ f'"'(y) ^"~if" dy . Первое слагаемое равно нулю вследствие предположения, что квадратура точна для многочленов степени п — 1. Таким образом, R.(f)-\{if^'^Чy)■^^^^=:^dy)dx^ -.ib-a)'^D,^f<ny)%^dy. /=1 с Возьмем для определенности с = а; производя перестановку переменных интегрирования х а у в первом интеграле, получим 6 X а а a ^y la Каждое слагаемое J /<"' (у) —[^_\)\— dy можно записать в виде чП-1 ри ^ > о, ри ^<0. . ( t при ^ > О, '-1о „, Таким образом, RNif)=iкAy)f^'^Чy)dy, C) а где У=1
§ 2] ОЦЕНКА ПОГРЕШНОСТИ НА КЛАССЕ ФУН1СЦИИ 105 Отсюда следует оцец^са погрешности ь \ЯАП\<л,^\К^(у)\с1у. (б) а Покажем, что эта оценка не может быть улучшена. На любом из отрезков [а, Xi], [хи Хз], ..., [хк, Ь] функция Кк{у) является многочленом степени п и поэтому имеет не более п нулей. Поэтому на всем отрезке [а, Ь] функция KN(y) имеет не более /г(Л^+1) нулей. Положим z(x) := An sign Kn(x). Функция X имеет своей n-Pi производной кусочно-непрерывную функцию г(х), \г{х)\ = An, т. е. принадлежит рассматриваемому классу, ь ь R^ (Z) = J /Civ (у) Лп sign Kn (у) dy = A„j\KN (у) I dy, a a таким образом, b sup \RNif)\==An\\KNiy)\dy. F) Задача. Рассмотрим класс n раз непрерывно дифференцируемых функций, !/<"'(*) 1^ ^п. Доказать, что на этом классе также b , sup\ R^ U)\ = A^j\K^ {у) \dy. G) a Обратимся к оценке погрешности квадратурной формулы а через max I/'■" (л^) !• Предварительно произведем в интеграле [а. Ы ь \\Кц{у)\^у замену y = a + {b — a)t. Получим а b I \\KAy)\dy^{b-aT^' \\K%{t)\dt,
106 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ 1ГЛ. HI где KN{i) -^ 2^Dj . _,., , d,= -^—-. (8) В рассматриваемом случае ^0@=ii^-i(@^K + 3(rr;K + + з(|-/)ЧA-0'); заметим, что (Q — tf^Q при О^Л Можно проверить, что Ki(i)^Q при 0^/^1. Далее, для оценки погреиЛюсти следует ВЫЧИСЛИТЬ интеграл I I j\KUt)\dt = - jf<.\{t)dt. о о В случае, когда /Сл^@ сохраняет знак, оценка погрешности может быть произведена более удобным способом. Лемма. Пусть /Сл^@ сохраняет знак на [а, Ь]. Тогда справедливо равенство R. (/)=f"' (?) -^ц#^ (/ ^" ^^ - i; Ь/('^/)"] • (9) Доказательство. Применяя обобщенную формулу Лагранжа к правой части C), получим ь Г Rn (/) = /'"' (£) j ^iv (г/) dJ/ = f'"' (£) F - ")"+' J ^w @ d^ a 0 (u — a)" Подставляя сюда f (у) = fo (у) = -^^—j—^ . имеем 1 RN{fo) = (b-ar+^ j K'NiOdU 0 Подставив ту же функцию в равенство получим \п у=1 /
§ 31 КВАДРАТУРНЫЕ ФОРМУЛЫ ГАУССА 107 Из этих соотношений следует Jn(Od/=^(j/"i/-|;D,(d»)'']=<T. о ^0 /=1 / Теперь справедливость (9) очевидна. Заметим, что величина а есть погреш- ность квадратуры f{x)dx'a \.0//('i|) при вычислении —т-dx. О /=| о Таким образом, в рассматриваемом случае «»(А-р(«^^(ЫШ'-1AУ-^)= При пяти узлах аналогично формуле Симпсона строится формула / а + f(^^)) + 7(f{a) + f{b))) A0) с остаточным членом 1 935 360 ^^ ~ ^^^ ^'^' ^^^' При выводе остаточного члена этой формулы узел —т— рассматривается как кратный, функция /С 5 (у) сохраняет постоянный знак н оценка погрешности проводитси по описанной выше схеме. Формулы с большим числом равноотстоящих узлов применяются относительно редко. § 3. Квадратурные формулы Гаусса На примере формул Симпсона и прямоугольников видно, что при удачном выборе узлов степень многочленов, для которых точна квадратурная формула, повышается. Поэтому можно поставить следующую оптимизационную задачу. При заданном числе п узлов построить квадратуру / (/) = J / (X) р W dx - 5„ (/) = -Ц^ 2 ^/^ (^/)' A) а /=1
108 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ (ГЛ. III точную для многочленов наиболее высокой степени. Такие квадратуры называют формулами Гаусса. Рассмотрение подобной постановки вызывается следующими соображениями. Пусть имеется квадратурная формула A), точная для любого многочлена Рт степени т: /(Pm)=5„(PJ B) Вследствие B) при любом Р„, имеем цепочку равенств Rn if) = Rn iPm) + Rnif-Prd = Rn (f - РЛ Справедлива очевидная оценка I ^?ne^) К \g(x) IIP W \dx + ^y\ D, II g{x,) |<F„sup| g{x) I. /=1 !"•« где Отсюда Vn=]\p{x)\dx + [^]Y^\Di\. C) y-i |i?„(/)l<V„sup|/(A;)-P„(A:)|. la. Ы Взяв в правой части нижнюю грань по всем многочленам степени т, получим оценку \RAt)\<V„Em{f), - D) где £„(f) = inf sup|fW-P„M|. . функция приближается многочленами более высокой степени точнее, чем многочленами низкой. Поэтому можно ожидать, что погрешность квадратуры будет меньше, если она точна для многочленов более высокой степени. Это высказывание, вообще говоря, неверно: во-первых — оценка D) не является точной, во-вторых — коэффициент V„ зависит от конкретной квадратуры и, строго говоря, может расти с ростом степени многочленов, для которых точна квадратура. Однако все-таки в нем содержится некоторое оправдание разумности рассматриваемой постановки. Может случиться, что подынтегральная функция исходного ь интеграла \F{_x)dx плохо приближается многочленами, а а функция F(x)/p{x), где р(д;)—некоторая функция простого вида, приближается многочленами хорошо. Тогда для данной задачи квадратура вида A), точная для многочленов некоторой
I a I S 3} КВАДРАТУРНЫЕ ФОРМУЛЫ. ГАУССА 1Q9 степени, будет иметь преимущество по сравнению с квадратурой ь п F(x)dx^^'^CiF{x,), (б) точной для многочленов той же степени. i Если при р(х) ФО ПОЛОЖИМ в A) p(x)f(x) =/i(x), то получим квадратуру ь п Fix)dx^^'^C,F{x,). С, = -^, Очевидно, эта квадратура будет тоуна для всех функций р{х)Рт(х), где Рт(х)—многочлен степени т. Таким образом, исходная постановка равносильна постановке отыскания квадратуры вида E), точной для функций F(х) = р(х)Рт{х) при возможно более высокой степени многочлена т. Остановимся на первой из постановок. При т Рт{х)=У>а,х' 9=0 имеем Rn(Pm)=I,a,R^{x''). <7=0 Таким образом, чтобы квадратура A) была точна для многочленов степени т, необходимо и достаточно, чтобы она была точна для всех функций л;', q = 0, ..., т. Следовательно, должны выполняться соотношения R„(x'')^\x''pix)dx-^^^D,x'l=Q, q=0,,,.,m. F) а . /=1 Мы имеем систему из m-fl-ro уравнения относительно неизвестных ati, ..., Хп, Di Dn. При т^2п—1 число уравнений не более числа неизвестных, и поэтому можно ожидать, что алгебраическая система F) имеет решение. Можно попытаться построить квадратурные формулы, соответствующие значению т = 2п—1, решая эту систему, однако, неясно, будут ли узлы квадратур, получаемых из F), принадлежать отрезку [а, Ь]. В противном случае может случиться, что функция ^(л;) не определена в узлах интегрирования, и поэтому употребление квадратуры невозможно. Заметим, что в главе VIII при построении конечно-разностных методов решения обыкновенных дифференциальных уравнений возникнут квадратуры с узлами вне отрезка [а, Ь].
110 ЧИСЛЕННОЕ ИНГЕГРИРОВАНИЕ [ГЛ. Ill Займемся построением квадратур, соответствующих максимальному значению т = 2п — 1. Лемма 1. Если Xi д;„ — узлы квадратуры A), точной для всех многочленов степени Чп — 1, то h Jcu„(A:)P„_,Wp{A;)rfx = 0 а при (йп{х) =^ {х — л;1)...(дг — Хп) и Рп-\{х)—произвольном многочлене степени не выше п— 1. Доказательство. Пусть P„_i(д;) — некоторый многочлен степени не выше п—1. Вследствие условия леммы квадратура A) точна для Q2n-\(.X)= (йп{х) Рп-\{.Х). Поэтому 6 Ь J сй„ (л;) Р„_ 1 (л;) р (л;) йл; = J Q^n-1 (л:) р W dx = ■YiDiQ2n-Axi) = Q\ n b-a 2 последнее соотношение вытекает из равенства Qan-i (Xj) = О при всех /. Лемма 1 доказана. Далее предполагается, что р{х) >0 почти всюду на [а, Ь]. Из рассмотрений § 15 гл. И вытекает единственность многочлена \|;п(л;) =-5" + ..-, ортогонального ко всем многочленам низшей степени при скалярном произведении, заданном соотношением b {f,g)=lf{x)gix)pix)dx. Поэтому \|;п(д;) = A)п{х) и узлы отыскиваемой квадратуры должны быть нулями \|jn(A^); согласно рассмотрениям § 15 гл. II, многочлен ^Ipnix) имеет на [а, Ь] п различных нулей. Лемма' 2. Пусть Xi, ..., Хп — нули ■^п{х) и A)—квад,.а- тура, точная для многочленов степени п—1. Тогда квадратура A) точна для многочленов степени 2п— 1. Доказательство. Произвольный многочлен Q2n-i(x) степени 2/г — 1 представим в виде Q2n-1 {X) = \|j„ (д;) gn-i{x) + rn-i (х).
§ 3] КВАДРАТУРНЫЕ ФОРМУЛЫ ГАУССА 111 где g„_, и г„_, — многочлены степени п — 1. Имеем Яп (Q2„-l) = Яп i^nSn-l) + Rn {Гп-l) = к i^nSn-lh a 1=1 поскольку J '^n{x)gn-iix)pix)dx = Q вследствие свойства ортогональности \|;п(л;) к многочленам низ^ шей степени, а все ^IpniXj) = О по предположению леммы; тогда Rn{Q2n-\) = 0. Лемма 2 доказана. Теперь можно построить требуемую квадратурную формулу. Для этого зададимся узлами интерполяции Xi, ..., Хп, '^n{Xj) = О, и построим квадратуру Ньютона — Котеса, согласно описанной в § 1 процедуре; получим требуемую квадратуру b I п Ь~а /=1 nx)p{x)dx^^Yi^iHx,), G) точную для многочленов степени 2п— 1. Если почти всюду р{х) > О, то не существует квадратуры, точной для всех многочленов степени 2/г. В самом деле, возьмем Qinix) = {x — XiY ... {х—Хп)^, тогда левая часть A) ь j ((л: — л;,) ... (д; — Xn)f р {х) dx > О, а а правая равна 0. Исследуем некоторые свойства квадратуры G), в частности, докажем положительность коэффициентов Gj. Функция / _ ) является многочленом степени 2/г — 2, обращающимся в нуль во всех точках Xj Ф Xi. Квадратура G) будет точна для этой функции, и поэтому 1{Щ ^Ш''-Ч^0.{^I.
112 '' .ЧИвЛНННОЕ ИНТЕГРИРОВАНИВ ' 1ГЛ. Щ ■ Раскрывая выражение ■|_^ ■, получим Квадратура G) точна для f(x)= 1, и поэтому а /-I вследствие положительности Qj мы можем переписать это равенство в виде ь i 1-1 Возвращаясь к формулам C), D), получим V^-^j p(ji)dx + ^'^\G,\^2jp{x)dx. а 1=1 а Тогда из формулы D) следует оценка |/?„(f)l<2^p(^)dxJ£2„-.(f). (8) Приведем еще одну оценку погрешности формул Гаусба, на этот раз через max I P'^^{x) \. [а, Я Пусть l2nW ~ интерполяционный многочлен Лагранжа о двукратными узлами интерполяции д;,, ..., х„, т. е. Согласно B.6.11), имеем
J 31 КВАДРАТУРНЫЕ ФОРМУЛЫ ГАУССА [ИЗ Поскольку для формул Гаусса ^?„ (/-2» W) = О» то » i n fc-a 2 y-i 5] D/(x,; X,; x,5 ...1 x„; ^„)Ф^(^с,). Вычитаемое равно нулю, так как 'ф„(л;/)= при всех /, поэтому /?„Ш= J f{x) «Г. х^, .... дс„, x^)ii>Hx)p(x)dx. а Воспользовавшись неотрицательностью '^^(х)р(х), применим обобщенную формулу Лагранжа; получим ^?„(/) = /(?; х^] X,; ...; х„; jc„) J г|J (л;)р(jc)djcj а выразив /(S; л;,; л;]! ...; х„', л;„) через производную, имеем RAf)=F'^Чl)\^pix)dx, (9) а Для практического применения формул Гаусса необходимо иметь в распоряжении узлы и коэффициенты этих квадратур. В случае р{х)—четной относительно точки-^-^—, согласно рассмотрениям § 16 гл. II, нули ортогональных многочленов* т. е. узлы квадратур Гаусса, расположены симметрично относительно середины отрезка [а, Ь]. Вследствие леммы из § Г коэффициенты интерполяционной формулы Гаусса G) будут удовлетворять условию четности G} = Gn+i-j. Это обстоятельство наполовину уменьшает объем таблиц формул Гаусса. Если р{х) ^ 1, то коэффициенты Gj и числаd/ = —'~jrz не зависят от отрезка [а, Ь]. В самом деле, если многочлен 1^1п{х) = (х — Xi) ... {х — Хп) принадлежит системе многочленов, ортогональных с весом 1 на [а, Ь], то многочлен (t — di)... ...(t — dn) принадлежит системе многочленов, ортогональных с весом 1 на [—1, 1]. Поэтому он сам, его нули, а согласно A.2), и коэффициенты Dj определяются однозначно, вне зависимости от исходного отрезка [а, Ь].
114 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ 1ГЛ. Ill При составлении таблиц квадратур Гаусса для различных весов удобно пользоваться свойством перемежаемости нулей ортогональных многочленов \^п(,х), доказанным в § 16 гл. II. В соответствии с этим свойством после определения корней \^n-i(,x) становятся известными интервалы, которым принадлежат корни \^п(х). Приведем для сведения набор квадратур Гаусса для отрезка [—1, 1] при р{х) = 1. В атом случае остаточный член (9) есть oZn + l /„п4 fBn) (Г) ± [211 ' ^''' {2niy{2n-t 1) ' Вследствие свойства симметрии мы указываем лишь неотрицательные dj и коэффициенты при них (табл. 1). Таблица 1 1 2 3 4 5 6 0,0000000000 2,0000000000 . 0,5773502692 1,0000000000 0,00000000000 0,88888888888 0,8611363115 0,3478548451 0,0000000000 0,5088888888 0,9324695142 0,1713244924 0,7745966692 0,5555555556 0,3399810436 0,6521451549 0,9061798459 0,4786286705 0,6612093864 0,3607615730 Da Ч 0,5384693101 0,2369268851 0,2386191861 0,4679139346 В настоящее ьремя составлены таблицы узлов и весов квадратур Гаусса при п ^ 512 с 20 десятичными знаками. Рассмотрим примеры применения проведенных построений для получения несколько иных квадратур. Для простоты возьмем случай [а, Ь] = [—1, 1]. Формулы Лобатто. Пусть при отыскап;г,1 квадратуры 1 п -1 j=i наложено дополнительное требование, что di =—1 и dn = l. Тогда число свободных параметров, от которых зависит квадратура, равно 2п — 2. Поатому есть основания ожидать, что удастся
§ 31 КВАДРАТУРНЫЕ ФОРМУЛЫ ГАУССА 115 иайти решение системы F) при m = 2/г — 3, т. е. построить квадратуру, точную для многочленов степени 2п — 3. Интерполяционным многочленом первой степени, совпадающим с /(л:)_ в точках ±1, является Представим исходный интеграл в виде I I /Ш= lQAx)dx+ I ^^"\ZV^ Pix)dx. A0) -'i -1 где p{x)=l — x^. Построим формулу Гаусса с п — 2 узлами, соответствующую весовой функции р {х): 1 п-1 lf{x)pix)dx:^'^D,f{d,)- A1) -1 /=2 ДЛЯ удобства мы обозначили узлы через ^2. •••. dn-i- Положим ^f{x)dx^' \Q,ix)dx + ^D/^'^'\~_^^^'^'\ A2) -1 -1 /=2 / После подстановки выражения Qi{x) и осуществления интегрирования в первом интеграле получим требуемую квадратуру 1 п-1 J f{x) dx - DJ{-1) -f 5; Dif (d,) -f DJ A), -1 /=2 где, в частности, D, = D,(l-d'r', 1=2 rt-1. Действительно, пусть f{x)—многочлен степени 2п — 3. Первый интеграл в A0) вычисляется без ошибки. Разность f{x) — Q\{x) есть многочлен степени 2п — 3, обращающийся в О при х = ±1; поэтому {f{x) — Qi(x))(l — x^)-^ есть многочлен степени 2п — 5. Для такого многочлена квадратура A1) точна, и поэтому при замене второго интеграла в A0) вторым слагаемым в правой части A2) ошибки нв^произойдет. При «==2 формула Ло- батто совпадает с формулой трапеций, при п == 3 — с формулой Симпсона. Пусть теперь р{х) —нечетная функция на [—1, 1], р{х) >0 почти всюду на [О, 1], число узлов п = 21 — четное.
116 чиоле;1ное интегрирование [гл. hi При р(х) четной у хороших квадратур оказывалось Dj =; = Dn+1-j. ^i = —^n+i-j. При p(x) нечетной естественно искать такие квадратуры в виде I(f)^^^D,(fid,)-f(-di)}, 0<dt< ... <dt<L A3) Такая квадратура автоматически точна при f(x) четной. Квад- ратура A3) содержит /г =«= 2/ свободных параметров, поэтому есть основания надеяться получить квадратуру, точную для одночленов х, ..,, л:*"-*. Так как она автоматически точна для одночленов 1, .... дг^п^ то она будет точна для многочленов степени 2/г, т. е. на 1 выше, чем в случае формул Гаусса при положительном весе. Чтобы построить такую квадратуру, представим исходный интеграл в виде 1 1 Iif)==l(fix)-fi-x))p(x)dx=lf^'^-l^~'^ xpix)dx. о о После замены переменных х= У у получим 1 nVi = \pi.y)pi.y)dy, о где Построим квадратуру Гаусса 1 / \F{y)p{y)dy^^Ъ^F(i^), A4) о /-I точную для многочленов F{tj) степени 2/—1. Возвращаясь к старой переменной х, имеем т-\ъ,' ^^^^ -;i_- ^^ =^ S ^, (/ i4i) - \ (- ^.)). Если f(x)= 2 ^ix^, то /=0 п-1 F{y) = 1t a^j+iyK 1=0
§ 31 КВАДРАТУРНЫЕ ФОРМУЛЫ ГАУССА 11/ Поэтому соотношение A4)' и последующее обращаются в точные равенства. Такие квадратуры могут быть применены, например, при вычислении оо интегралов ( f (х) cos х dx; интеграл разбивается на части: о (П+1)П 1 ЯП —1 и для вычисления последних интегралов применяются квадратуры A3), соотжетствующие p(*) = sln—5-. Практически важный случай, в частности для задачи приближения функций, представляют формулы Гаусса на отрезке [—1, 1] при весовой функции —==-. называемые формулами Эрмита: /(/)- {-fM^dx^SAf)=j%ixi), A5) -1 '^ * /-=1 где jc, = cos—'Т '"■ — нули многочлена Чебышева Тп(х). Проверим, что квадратура A5) точна для многочленов Тт{х), если m < 2rt. При m = 0 справедливо /(?о)= j ^_L_rfx==n, S„G'o) = rt и 1{То) = 8п(То), При m > О, вследствие ортогональности функций Тт(х) при весе -7==-. имеем У I — х' В то же время П R m B/ — 1) я 2ге /=1 /=1 Sn (T'm) = 7 S *^°^ ^'" arccos ху) = -^ ^ cos =1 У=1-п
118 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. III Суммируемые числа образуют геометрическую прогрессию со знаменателем ехр( ^"' |; при О </и < 2/г этот знаменатель отличен от I. Воспользовавшись формулой для суммы членов геометрической прогрессии: /=1 получим тBге+ Цт\ ( mi^-^2n)лl\ ехр ■)-ехр(- ехр 1 п Так как то при о < /и < 2п ИМ66М On (Тт) =0 = 1 {Тт) ■ Поскольку квадратура точна для всех многочленов Чебышева Тт{х) при т < 2п, то она точна для всех многочленов степени 2п— 1. В настоящее время рассчитано много таблиц формул Гаусса и формул типа Лобатто, в частности, при [а, Ь] = [~1, \], р{х)=1, [а, Ь] = [0, 1], р{х) = х\ [а,Ь] = [0,\], p{x) = {x{l-~x)f, [а, Ь] = [О, оо), p{x) = xf ехр (- х). Если подынтегральная функция интеграла Cll Iif) = jfix)dX О хорошо приближается тригонометрическими многочленами i с периодом <й, то целесообразно применить квадратуру Имеем равенство N-1 Sff{exp {2nmi j)) = -^ S ^'^Р (^"^^^ Й) ^ N-1 (В VI , т ехр Bnmi) — 1 ^ m /2ятм .^Q "Ри lГ«e^^^^o«•
§41 ' ПРАКТИЧЕСКАЯ ОЦЕНКА ПОГРЕШНОСТИ Пф В ТО же время ■(ехрBят/^))=| / ^ ,„ . л. \\ I ® при т = 0. О при тфО. Из ЭТИХ равенств следует, что квадратура A6) точна для функций cosf2nm—1 при т = 0 или при -^ не целом и всех функций sinBnm—); в результате этого квадратура точна для любого тригонометрического многочлена N-\ т=\ следовательно, Rn if) = Rn if - ts) + Rn its) = RAf- h)- Аналогично (8) получаем оценку |;?jv(/)|<2(uinf тах|/(;с)-/л,(л:I. tN V>. a Квадратуры A6) особенно употребительны при вычислении интегралов по угловым переменным при интегрировании в полярных и сферических координатах. Можно показать, что не существует квадратур с N узлами, точных для всех тригонометрических многочленов степени N. § 4. Практическая оценка погрешности элементарных квадратурных формул Выше получен ряд квадратурных формул и строгие оценки погрешности для них. Однако это не решает всех проблем по отношению к задаче численного интегрирования, стоящих перед нами. Важнейшей задачей вычислительной математики является создание алгоритмов и их систем, обеспечивающих получение решения задач с заданной точностью при минимальном объеме затрат человеческого труда и работы машины. Практическое применение полученных выше оценок требует аналитических выкладок по оценке производных и поэтому достаточно большого объема работы исследователя; кроме того, эти оценки часто оказываются слишком завышенными. Поэтому при создании таких систем обычно отказываются от использования подобных оценок, зачастую жертвуя строгой гарантией малости погрешности приближенного решения.
120 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ ИГ Можно говорить, что задача от ее возникновения до получения результата проходит через некоторую систему, состоящую из людей, решающих задачу, и ЭВМ. На первоначальном этапе применения ЭВМ узким местом, т. е. местом, наиболее тормозившим работу этой системы, являлся недостаток ЭВМ. Поэтому применение аналитических методов решения или аналитическое проведение оценок погрешности было оправданным. Однако теперь, с повсеместным распространением вычислительной техники и внедрением ее в различные сферы деятельности общества, обстановка меняется. Узким местом этой системы становятся длительность- выбора математической модели, выбора метода решения задачи, программирования и других этапов, предшествующих непосредственному решению задачи на ЭВМ. Эти этапы особенно замедляются в случае, когда решением задач на ЭВМ занимаются представители конкретных наук, например филологи, медики, экономисты, географы, малознакомые с численными методами или программированием. Их обучение тонкостям теории численных методов может превратиться в самоцель, отвлекающую от решения основных задач их науки, и в конечном счете обойтись обществу довольно дорого. Поэтому в настоящее время важнейшей проблемой является создание систем решения задач с максимально простым обращением, предполагающих малую квалификацию пользователя в отношении численных методов и программирования. Например, естественно потребовать, чтобй к программе вычисления интеграла с заданной точностью мог обратиться исследователь, знающий, что такое интеграл, но не умеющий ни интегрировать, ни дифференцировать. Конечно, в развитии многих областей знания и техники решающая роль математики состоит в создании математической модели явления, а потом уже в применении ЭВМ для ее обсчета. При разработке модели от специалиста этой отрасли знания требуется определенная математическая культура, и наше высказывание не следует понимать как предложение полностью избавить его от математики. Подоплекой проводимых здесь рассуждений является следующая известная мысль. Когда мы занимаемся решением каких-то задач, то нужно учитывать эффективность нашей работы не только по совокупным затратам на решение этих задач, но ' и принимать во внимание убыток, понесенный обществом в результате того, что нами не решены некоторые другие, возможно более важные, задачи. При практическом анализе погрешности численного интегрирования часто пользуются различными полуэмпирическими приемами. Наиболее распространенным из этих приемов является следующий. Производятся вычисления по двум квадратурным
§ *] ПРАКТИЧЕСКАЯ ОЦЕНКА ПОГРЕШНОСТИ 121 формулам некоторая линейная комбинация S(f) = S'(f) + G(S2(f)-S'(f)) этих квадратур принимается за приближенное значение интеграла, а величина p=|5^(f)—5'(/)|—за меру погрешности приближенной формулы /(/) « S{f). Довольно типичным является случай 6 = 0. Описанный выше подход нельзя считать полностью оправданным вследствие его неоднозначности. Пусть S' (f) — формула Симпсона: -1 S^(f) —формула трапеций: S^(f) = f (-1)-f/A) и 6 = 0. Тогда в качестве меры погрешности выступает величина Р = |-1П1)-2/@) + /(-1)|. Если S^ (f) = 2/@) — формула прямоугольников, то соответствующее значение р==-з-|/A) — 2f @)-f-/(—1) |. Таким образом, мы получили две различные эмпирические оценки погрешности одной и той же формулы Симпсона. Попытаемся прояснить ситуацию. Выражение S{f) является некоторой квадратурной суммой N S(f) = ^^D,f{x,) A) no совокупности узлов Xj, принадлежащих объединению узлов, соответствующих квадратурам S'(f) и S^(f). В то же время где /(f)=-^iB/f(*/). B) 1=1
122 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. III Возьмем Произвольную линейную комбинацию вида B) и положим 5'Ш = 5(Л. SHf) = S{f)-Ql(n. Тогда мы получим приближенное значение интеграла I{f) « fiiS{f) с оценкой погрешности р==0|'(П1- ^^ видим, что на таком пути можно получить неограниченное множество оценок погрешности одной и той же квадратуры A). Рассматриваемую задачу можно формулировать следующим образом. Приближенное значение интеграла вычисляется по формуле N Iif)^S{f) = ^^Dtfix,). C) Требуется построить выражение вида B), дающее представление о погрешности квадратуры C). Предположим, что погрешность квадратуры C) представляется в виде _ Rif)^Dib-af'r\0. D) Рассмотрим случай /п<М Тогда в качестве l{f) можно взять величину _ l(f) = D (b-af+'ml f(Xi ■,..., xt'^^^). где Xi^, ..., X[ _|^| — различные узлы квадратуры C). Согласно выражению разделенной разности через производную, имеем: /(/) = 5(й-аГ+'^<'"'(С), a<Z<b; следовательно, при а = const, f^"^Цa)=^0, Ь — а->-0 справедливо соотношение: Rif) '^ 1(f), и величину р=|^(/)| можно принять за меру погрешности. Пусть, например, оценивается погрешность формулы трапеций b а согласно оценкам из §§ 1, 2, имеем R(f)=---^^^rit,y, таким образом, мы можем принять за меру погрешности Ь-а fib)-2f(-^) + f{a)\. Иначе обстоит дело, когда m'^N. Тогда нельзя получить никакого приближения к /<'"',(S) через величины /(jci), ..., f{xs)
5 41 ПРАКТИЧЕСКАЯ ОЦЕНКА ПОГРЕШНОСТИ 123 И проблема получения эмпирической оценки погрешности в рассматриваемой выше постановке не может быть решена. Например, мы не можем получить удовлетворительного представления 06 оценке погрешности формулы Симпсона через значения |(а), n-^-g—)• /(^)- Однако можно получить некоторую завышенную рценку погрешности. Рассмотрим один подход к разрешению возникшей проблемы. Обратимся к формуле B.5) при п = N—\. Мы получим оценку погрешности вида: I/? (/) К (Ь - а)^ D max I f''-" (;с) I = а. la.b\ Положим _ p = {b-arD{N-l)\\f{xu...; х^)\. E) При а = const, f^■'^~^^ (а) =^ О, Ь — а-^0 имеем а^р, и таким образом, величину р можно принять за приближенную оценку погрешности формулы C). Эта оценка будет сильно завышенной, поскольку при предположении tn'^N ршеем R{f) = = О {{b — а)'^+1); однако мы не можем предложить лучшей оценки погрешности формулы C) по сравнению с оценкой через о. В случае формулы Симпсона из B.5) получаем оценку E) с Z) = -gT-, и, таким образом, за меру погрешности принимаем 4(Ь-а) 81 f{b)-2f[^) + f{a) . F) Если вычисляется интеграл от аналитической функции и число узлов задано, то представляется наиболее разумным применение формул Гаусса, поскольку они точны для многочленов максимальной степени; оценку погрешности разумно проводить по описанной выше процедуре Наше предложение оценивать погрешность формулы Симпсона с помощью выражения F) основывается на предположении достаточной гладкости f{x). Однако подобные эмпирические заключения зачастую применяются в условиях, когда не выполнены требования, предполагавшиеся при их получении, например при интегрировании негладких функций. Пусть, например, [а,Ь] = [0, 1]. /„ pW = U-|-a)P, а>0, р>0. Тогда погрешность формулы Симпсона есть В то же время |/a.p(l)-2/„,p(j)-f/„.p@)| = S„,e=|(l + a)P-2(i-faLaP|.
124 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. III Имеем Е. а, е lim lim ^ -„ . в-»0 а-»0 i>a. 3 ° Таким образом, применение F) для оценки погрешности формулы Симпсоиа при малых аир является неоправданным. В случае малых аир более естественно оценивать погрешность формулы Симпсоиа величиной -g-F-fl)|/F)-2/(-^) + /(fl)|. G) В одной из стандартных программ интегрирования, где стремились к «максимальной» надежности результата, в качестве меры погрешности была принята величина где D" было определено следующим способом: был взят отрезок [О, 1] н положено М= sup '^(^".Р)! ; В случае формулы Симпсона такой выбор D" также приводит к оценке погрешности выражением G). В случае многомерных интегралов все практические способы оценки погрешности опираются на исходную, раскритикованную нами процедуру. Дело в том, что в многомерном случае погрешность оценивается через значения нескольких производных подынтегральной функции. Получение «обосиован- ных» оценок, подобных F), для таких формул крайне затруднительно. Поэтому обращаются к исходной процедуре с последующей экспериментальной проверкой результатов ее применения. Исходная постановка вычисления интеграла по формуле N N С оценкой погрешности по | / (/) 1, 1A) = ^ Bjf (Р/) фО содержите качестве /=' свободных параметров величины Dj, flj и координаты узлов Р} квадратуры. При выборе этих параметров обычно руководствуются следующим правилом. Задаются степенью многочленов т, для которых квадратура должна быть точна, и требуют, чтобы выражение /(/) обращалось в О на многочленах некоторой заранее заданной степени mi (mi < m), но не обращалось в О на всех многочленах степени т; обычно берут mi = m—2, За счет выбора Sji О, и узлов квадратуры подбирают минимальное N, при котором выполняются заданные условия. При удовлетворении этих условий нет однозначности в способе оценки погрешности, поскольку /(/) определяется этими условиями с точностью до некоторого множителя а: l{f) = aP(f), где N l\)= 2'®/(^/)' Обычно а берут равным минимальному по модулю из чисел Dj/Bj.
§ 5] ИНТЕГРИРОВАНИЕ СИЛЬНО ОСЦИЛЛИРУЮЩИХ ФУНКЦИИ 125 § 5. Интегрирование сильно осциллирующих функций Пусть требуется вычислить интеграл Г / (х) ехр (tcjjc) dx, а где а{Ь — а) ^ 1, f{x)—гладкая функция. Функции Re (/ {х) ехр {iiax)), Im {f {х) ехр {шх)) имеют на рассматриваемом отрезке примерно (а(& — а}/л нулей. Поскольку многочлен степени п имеет не более п нулей, то такие функции могут быть хорошо приближены многочленами степени я лишь при я;§>(а(й — а) In. Поэтому для непосредственного вычисления интегралов от таких функций потребуется применение квадратур, точных для многочленов высокой степени. Более выгодным может оказаться путь рассмотрения функции ехр (шх) как весовой. Как и в § 1, зададимся узлами интерполирования b + а , Ь — а , . , Xi = —j— + —Y--dj, 1=1,..., п, ь и заменим исходный интеграл на Г L„ {х) ехр {шх) dx; последний а интеграл может быть вычислен в явном виде J ь Ln {х) ехр {тх) dx = S" (/) = п = -Ц^ ехр (ia -Ц^) '^D,{(u -^^J f {xj), где D,(p)=' j[Jl4p^)^^PiiP^)dt' A) Получилась квадратурная формула - ь |f(x)exp(t(ox)dx«S^f) B)
120 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ 1ГЛ. Ill С остаточным членом b Рп (/) = /(/ (х) - In W) ехр Цш) dx. а В соответствии g A.1) b а < D (й?„ ..., rf„) (maxI/<«'W I) (-Ц^) (a. b] \ г I Я+1 Вычисление интегралов подобного рода является типичной задачей, встречающейся при разложении функций в ряды Фурье, при построении диаграмм направленности антенн и т. д. ) В стандартных программах вычисления таких интегралов используются формулы A), B), соответствующие случаям: п = 3, d\ = —1, й?2 = О, й?з ^ 1 (эту формулу называют формулой Филона) или п = 5, d, = — 1, ^2 = —0,5, dz = 0, di = 0,5, rfs = 1. При вычислении интегралов по формулам A), B) может возникнуть следующая неприятность, которую мы проиллюстрируем на случае п = 2; rfj =■ —1, йг = 1; тогда: 1 г\ / \ Г I — ' I- j\jj. sin р , р cos р — sin р , ^i^^ J —2—ехр(фО^^=—^ + -^^ j2 -и 1 г> / \ Г 1 + ' /■ j\jj sin р р COS р — sin р . При р->-0 имеем Таким образом, Di{p), D2{p) —»■ 1 при р-*0. Пусть р—малое число. Функции cosp и sin р вычисляются в машине с погрешностью 0B"') и 0(р2~')^ соответственно. Вследствие этого коэффициенты D\{p), D^ip) приобретают погрешность 0B~'/р). При п>2 оказывается, что погрешность коэффициентов ZJj(p), вычисляемых по формулам A), может оказаться величиной порядка 2-'/р""'- Например, при t = 30, л = 5, р.^0,01 такая погрешность уже недопустима. Поэтому,
§ 5] ИНТЕГРИРОВАНИЕ СИЛЬНО ОСЦИЛЛИРУЮЩИХ ФУНКЦИЙ 127 стандартные программы вычисления интегралов от осциллирующих функций должны иметь специальный блок, предусматривающий изменение расчетных формул при малых р с тем, чтобы избежать существенного влияния вычислительной погрешности. Если п не очень велико, например « = 2, то можно пойти по следующему пути: при \р\, большем некоторого р„, подбираемого экспериментально, вычисления производим по формулам A), B); если |р| ^рп, то вычисляем исходный интеграл по формуле трапеций A.7), рассматривая всю функцию f{x) ехр (ico*) как подынтегральную. В рассматриваемом случае (п = 2, di = —1, ^2 = 1) формула A.7) приобретает вид /(л;)ехр(шх)dx « ~" (ехр(ша) f (а) + ехр(iab) f (&)). C) I Формулы A), C) можно объединить в одну формулу * / (д:) ехр (i(ox) dx = а = -Ц^ ехр (ш ^) (D, (р) f (а) + D, (р) f (b)). D) где b-a DU2(P) = д i при \р\>р2^ sin р ^^ р COS р — sin р Р Р ехр(+р/) при !р1<Р2 E) В стандартных программах вычисления интегралов рассматриваемого типа применяются квадратуры tnna D), E). Возникает вопрос: зачем усложнять стандартную программу? Может быть, проще написать стандартную программу вычисления по формулам B), стандартную программу вычисления по формуле трапеций и дать инструкцию: при больших \р\ обращаться к первой из стандартных программ, при малых |р|—ко второй. Обсудим целесообразность такого подхода. Нашей целью является создание максимальных удобств пользователю ЭВМ. Если в описании правил использования стандартной программы написано слишком много, то пользователь может не понять того, что написано, и 1) обратиться к другой программе, худшей по качеству, но имеющей лучшее описание или более простое обращение; 2) воспользоваться программой неправильно и не получить результатов; например, в рассматриваемом случае, применив
128 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ 1ГЛ. Ill метод A), 'B) при р = 0, он получит аварийную остановку машины; 3) воспользоваться программой неправильно н получить неверный результат, предполагая, что он верный; например, так , случится, если он воспользуется формулами (I), B) при 2"'//'" порядка 1. Очевидно, последний случай влечет за собой наиболее неприятные последствия для пользователя. При выборе метода для стандартной программы надо стремиться к тому, чтобы описание программы, составляемой на базе этого метода, было по возможности простым и кратким; надо иметь в виду, что всякое дополнительное высказывание может быть истолковано неправильно в ущерб для расширения области применения программы. Предложение об использовании двух программ, одной — при \р\ > р2, другой — при |/о| ^' :^ Р2, приводило к путанице, особенно в случае вычисления серий интегралов, включающих интегралы как с малыми, так и с большими р. Поэтому в конце концов эта пара программ была заменена программой, где вычисления проводятся по формулам D), E) и в описании ничего не говорится о величине \р\. Приведем один поучительный реальный пример. В начале описания одной из стандартных программ вычисления кратных интегралов было написано «применение настоящей программы нецелесообразно, если число узлов берется большим 100 000». Спустя короткое время программа была практически изъята из употребления. Оказалось, что среди первых пользователей программы подавляющее большинство сразу задавались числом узлов п= 100 000; при этом на вычисление простого интеграла уходило слишком много машинного времени. Весть об этом распространялась во все стороны с возрастающей скоростью и вскоре к программе перестали обращаться. На самом деле, большинство реальных интегралов вычислялось при ее использовании с приемлемой точностью при числе узлов порядка 1000; число 100 000 было указано лишь как ориентировочная верхняя граница значений п, при которых вычислительная погрешность еще не оказывает катастрофического влияния на результат. § 6. Повышение точности интегрирования за счет разбиения отрезка на равные части Из оценки C.4) вытекает, что погрешность квадратуры оценивается через точность, с которой функция f(jK) может быть приближена многочленами степени п. Поэтому может показаться естественным добиваться увеличения точности за счет повышения степени многочленов, для которых эта квадратура точна. Однако такой путь содержит свои «подводные камни». При неудачном выборе узлов может оказаться, что величина 21-0/1 растет вместе с я. Тогда в оценке C.4) величина Vn
S 61 ПОВЫШЕНИЕ ТОЧНОСТИ ИНТЕГРИРОВАНИЯ ' B9 также растет ели может оказаться, что уменьшение £m(f) с ростом п не компенсирует увеличения Vn- Например, для простейшего равномерного распределения узлов ^/"' = -1+^^^. /=1. •••.«. [а,Ь] = [~\,1], оказывается, что при т = п — 1 У„ растет примерно как 2" (точнее, log2Vn '^ п). В результате этого для аналитической функции f(jc) = A +25.»:^)"^ при таких узлах 1 -1 при п-> оо. Рассмотрим случай отрезка интегрирования [—1, 1] и сформулируем общую теорему, указывающую на необходимость осторожного обращения с формулами, точными для многочленов очень высокой степени. Пусть при каждом п мы имеем квадратуру I л -1 J=l точную для многочленов степени п—1. Обозначим через Wn{Xi,x%) число узлов квадратуры A), принадлежащих отрезку Ui,jc2]. Теорема (без доказательства). Пусть существует отрезок [jci,дсг]^ е [—1,1] такой, что WfiiXj, JCj) , Г 1 , -7* , dx при п ^ со, ч J яУ 1-х' Тогда можно указать & # О и а такие, что для одной из аналитических функций ^^(.-iUbi))' ^"^(x-d+bi))' Im I Rn if) I = CO. n-*oo Таким образом, узлы квадратур A), точных для многочленов степени п—1, должны располагаться обязательно с такой же плотностью, как нули ортогональных многочленов, т. е. как и нули квадратур Гаусса. Иначе такие квадратуры нельзя рассматривать как универсальные. Перепишем оценку C.8) погрешности формул Гаусса ]Rn{f)\<2Up(x)dx\E,n-Af). B) Пусть подынтегральная функция f{x) непрерывна; тогда, согласно теореме Вейерштрасса, при любом е > О найдется 5 Н. С. Бахвялов
130 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. HI многочлен Рд(х), для которого max \f(x) —Pq{x)\ ^ е, отсюда [а. Ь\ следует, что £т(/)->0 при т-*-оо. Таким образом, для любой непрерывной функции f{x) погрешность формул Гаусса /?„(/)^-0 при п->оо. Задача. Пусть f(x) интегрируема по Римаиу. Доказать, что для формул Гаусса RnU)^0 при rt^oo. Итак, формулы Гаусса могли бы быть положены в основу универсальных программ вычисления интегралов от функций. Некоторое практическое неудобство представляет следующее обстоятельство. Мы не можем обычно заранее сказать, с каким числом узлов потребуются квадратуры Гаусса при вычислении интегралов с заданной точностью. Поэтому потребуется вводить в машину или переписывать с запоминающих устройств в оперативную память узлы и веса этих квадратур, соответствующие все большим значениям п, что несколько затормозит вычисление интегралов, особенно на малых машинах. Следует также отметить, что во многих случаях возникает задача вычисления интегралов, где подынтегральная функция или ее производные невысокого порядка имеют участки резкого изменения, например обращаются в бесконечность. Такие функции плохо приближаются многочленами сразу на всем отрезке интегрирования. Здесь часто оказывается более выгодным разбить исходный отрезок на части и там применять формулы Гаусса или какие- либо иные формулы. Пусть вычисляется интеграл /= f{x)dx. Разобьем отре- А зок [А, В] на М частей [flg-i, flg], где ао = А,ам — В. Для вычисления интеграла по каждой из частей применим какую-либо из квадратурных формул из §§ 1,3: ? Iq= J !{x)dK^S^ = = 2 li^lfy 2 + 2 ^/j B) С оценкой остаточного члена £>( max |/'"'иI)(''''"°'"'Г' Га . а 1 \ ^ '
§ 6] ПОВЫШЕНИЕ точности ИНТЕГРИРОВАНИЯ 131 В результате интеграл по всему отрезку будет аппроксимирован суммой мм "• / 1 С оценкой остаточного члена 1/?;й(/)| = 1/-5:й{о1< <d5]( max |f'">(x)|)(°'' ;^-) . E) Формулу D) часто называют составной или обобщенной. Рассмотрим наиболее простой для исследования случай, когда отрезки разбиения имеют одинаковую длину а, — а^^^^Н, тогда оценка погрешности E) после замены max |/'"'М1 н^ величину Л„ = max I/<"> (•*^) I приобретает вид (о. ы \RM{f)\<DA,(B-A)H'', где D = D2-'"+". F) или |/?^(/)|<ВЛ^^-^У^' . G) Не следует думать, что в случае функций с малым числом ограниченных производных составные формулы численного интегрирования имеют лучший порядок сходимости по сравнению с формулами Гаусса. Предположим, что подынтегральная функция имеет р ограниченных производных. Тогда, применяя составную формулу D), соответствующую п = р, получим приближенное значение интеграла с погрешностью O(N-p). С другой стороны, известно, что для такой функции fjw-i (П='0 (Л/'"''). Поэтому из C.8) следует оценка погрешности формулы Гаусса с N узлами /?A/(n=o(iv-P). Таким образом, порядок оценки погрешности в обоих случаях одинаков. Обратим винмаине еще на одно удобство использования формул Гаусса сразу по всему отрезку интегрирования. Не нужно оценивать число ро ограниченных производных подынтегральной' функции и в соответствии с этим выбирать наиболее подходящую формулу численного интегрирования по отрезкам разбиения — прн применении формул Гаусса порядок погрешности О {N~''') обеспечивается автоматически. Если производные более высокого порядка, чем ро, обращаются в бесконечность только иа концах отрезка интегрирования, то обычно порядок сходимости формул Гаусса еще лучше. Конечно, не нужно думать, что формула, имеющая более высокий порядок скорости сходимости, всегда точнее формулы более низкого порядка скорости сходимости (по этому поводу см. объяснения к рис. 3.15.2—3.15.5), Приведем конкретные квадратурные формулы и оценки погрешности для частных случаев формул C).
at 132 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. Ill 1. Составная формула трапеций с постоянным шагом интегрирования. В этом случае при постоянном шаге а, — a,_i ^ Н формула C) приобретает вид j f{x)dx^H[^l + fia,)+ ... +/(ал,-,)+ -^). оценка остаточного члена . (°м - °о) "' _ л i^^м " ^о)' /о^ ^2 12 ^2 12Л^2 • \о) 2. Составная формула Симпсона с постоянным шагом интегрирования. При постоянном шаге а, — a,_i ^ Я = 2Л формула C) приобретает вид +4^(«1)+ти«2)+... +тп«м-.)+4/(%4)'^'^^М* где й/ = Со + /^. Оценка остаточного члена л i'^м - Др) ^' _, ^4 (Дл< - °о)' _ \ ("м - °о) ^* "^'^ 2880 2880М< " 180 Последняя запись оценки наиболее употребительна. Мы получили формулы с порядком погрешности 0(Л^-") по .отношению к общему числу узлов интегрирования Л^ = Mm в предположении ограниченности |f<"'(jif)l- Заметим, что в случае формул трапеций и Симпсона общее число узлов Л^ оказалось меньше чем Mm, поскольку концы элементарных отрезков [ug-i, aq] были узлами интерполяции и значения функции в этих концах использовались для вычисления интегралов по двум элементарным отрезкам. Оценку погрешности того же порядка можно получить и при в более слабом предположении . | ( /<"' (х) \dx < оо. А В самом деле, обратимся к представлению B.3) погрешности на элементарном отрезке b а где . /=1
5 61 ПОВЫШЕНИЕ точности ИНТЕГРИРОВАНИЯ Отсюда получаем оценку 133 и (« (/)|<тах|К^у((/)( \\f"-Hy)\dy. (Ю) [а. &1 J В то же время тах|К„A/)| = 5F-аГ 1а. Ы'. ™ ' где b = max 1-1.1) (•-О" VI „ (rf^-O""' п\ Zl"l (п- /=1 («-1I х. — а ' I ^* Т"Г1— ' '^ равенство получено с помощью замены переменных y = a + (b — a)t в правой части A0). В итоге имеем \Rfl(f)\<D(b-a)'' j\f'^'^{x)\dx. (И) Таким образом, для квадратуры C) справедлива так же оценка остаточ- «ого члена ч -7-1 Пусть а, — а,_1=Я. Тогда суммарная оценка остаточного члена есть М '^q в \Rм<f)\<D'^f^'^ J \f'^H'c)\dx=^DH'^j\|^'^Hx)\dx. (,2) Пусть, например, вычисляется 1 {(sinxfdx, 0<а<1, о Так как ((sin jc)")j^-> оо при х->-0, то мы не можем получить никаких оценок погрешности через max ] f (х) \, В то же время функция (sin ж)" монотонная •iia [О, 1], и поэтому I J|((sin;c)")'U* = (sin;c)"i;=I. Следовательно, при использовании квадратуры D), соответствующей я == I, с постоянным шагом Од — a^_i ^ Я, согласно A2) имеем оценку погреш- .ностн О (Я). В данном примере из оценки F) малость погрешности не <;ледовала; в то же время на основании A2) мы заключаем, что эта погрешность порядка 0A//V). Таким образом, большое
134 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. ПГ значение какой-либо оценки погрешности не всегда свидетельству- 1ЕТ о том, что в действительности величина погрешности велика. В частности, переход к оценкам через нормы производных в метриках Lp при р ф оо иногда приводит к существенному уточнению оценки погрешности в многомерном случае. Возникает вопрос: можно ли получить лучшие по порядку оценки погрешности при тех же предположениях о подынтегральной функции или хотя бы улучшить константы в этих оценках. Изучение этого вопроса приводит к задаче построения квадратур с оптимальной оценкой погрешности, или, как говорят, оптимальных квадратур. § 7. О постановках задач оптимизации Мы получили ряд формул численного интегрирования и могли бы получить еще большее количество таких формул. В связи с этим возникает следующая проблема — чем больше способов решения задачи, тем труднее решиться выбрать какой-то из них; каждый может иметь свои положительные качества: простота программирования, малое время работы ЭВМ, малая загрузка памяти, простота оценки погрешности, применимость к широкому кр'угу задач. Таким образом, излишняя информация о способах решения задач при чрезмерном ее росте может также и затормозить их реальное решение. Поэтому необходима какая-то систематизация методов решения, их отбор. Естественно пытаться решать задачи наилучшим, оптимальным способом. Мы уже рассматривали некоторые модельные формулировки задач об оптимальных методах решения на примере вычисления значений функций; при этом рассмотрении возникают определенные математические постановки задач, требующих решения. При рассмотрении каждой новой проблемы представляется желательным получить ее наиболее подробное, наилучшее описание и затем решить возникшую задачу наилучшим образом. Однако обычно это не удается и приходится довольствоваться меньшим; описать проблему наилучшим образом и решить ее удовлетворительно или описать проблему удовлетворительно и затем полностью решить возникшую задачу. При рассмотрении проблемы оптимизации методов можно говорить о выборе между удовлетворительным решением проблемы оптимизации методов для классов задач, близких к реальным, или полным решением проблемы для эталонных математических классов, подобных рассматриваемому в следующем параграфе. Может вызвать недоумение высказывание об «удовлетворительном решении проблемы оптимизации методов» для каких-то классов;
§ 7] О ПОСТАНОВКАХ ЗАДАЧ ОПТИМИЗАЦИИ 135 ведь задача оптимизации методов на классе сводится к вполне конкретной математической задаче, которую, по-видимому, можно решить окончательно, а не «удовлетворительно». В принципе это высказывание верно, однако обычно полностью решить задачу в приемлемое для практики время не удается: время, необходимое для построения оптимального метода, обычно существенно превосходит время, в течение которого возникает новое, уточненное, описание классов рассматриваемых задач. Также надо иметь в виду, что не всегда удается формализовать это математическое описание класса реальных задач: имеется какое-то качественное представление о' классе, имеются неплохие численные методы и интуитивно ясно, что в практическом плане оптимальность методов достигнута; в то же время нет даже четко формализованного описания класса решаемых задач. Примером такой обстановки является положение с вопросом интегрирования кусочно-гладких функций, которое в неформализованном виде будет рассмотрено в § 17. Точно так же, например при анализе физических моделей, можно описать задачу с помощью сложной системы дифференциальных уравнений и решить эту систему с малой точностью или описать с помощью простой системы, и решить эту систему с большой точностью. В разных случаях, в зависимости от конкретной обстановки, бывает целесообразен.тот или иной подход к решению задачи. Представляется, что для прикладной науки часто более существенно не' окончательное решение вариационных задач, а правильная их постановка. Обычно больший эффект дает удовлетворительное решение правильно поставленной в практическом смысле вариационной задачи, чем полное решение вариационной задачи, не охватывающей все существенные характерные черты задачи. Что такое оптимальный метод решения задачи? Под оптимальным решением задачи можно понимать решение, требующее минимальной затраты машинного времени. Это будет неправильная постановка, поскольку в принципе всякую задачу можно решить без применения машин, затр'атив на это очень большое количество времени. Под оптимальным можно понимать решение, требующее минимальных затрат времени (или, соответственно, материальных затрат). При этом следует помнить, что время и затраты на поиск оптимального алгоритма уже входят в решение задачи. Когда мы ставим вопрос о решении задачи оптимальным образом, мы не учитываем разных возможностей исследователей, решающих задачу. А ведь, в зависимости от индивидуальных возможностей исследователя (наличие ЭВМ, библиотеки, лаборанта, сотрудников, обладающих опытом решения подобных
]3б ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ 1ГЛ. ИГ задач, и, наконец, его способностей), оптимальное решение,, вообще говоря, будет различным. Мы говорили о вопросе оптимального решения каждой конкретной задачи. Такая постановка не совсем правильна также по следующей причине. На самом деле коллектив исследователей сталкивается с целой совокупностью задач. Мы можем поставить перед собой цель решить первую, вторую и т. д. задачи за кратчайшее время. Однако постановка- вопроса совсем изменится, если мы зададимся целью решить с минимальными затратами целую совокупность задач. Мы можем решать первую, вторую и т. д. задачи оптимальными мето/хами. Но в это время наука двигается вперед, и если мы не будем изучать новых методов, создавать новые алгоритмы и стандартные программы, рассчитанные на решение будущих задач, то в целом мы проиграем. При наличии большой серии задач, не требующей сверхсрочного решения, будет выгоднее заняться теоретическими исследованиями, создать новые алгоритмы, а затем уже решать эти задачи. Не имеет однозначного ответа также вопрос о том, кто должен заниматься оптимальным решением задач. Если мы имеем дело с единственной конкретной задачей, заведомо не требующей нового алгоритма и больших затрат машинного времени, ее лучше выполнить работнику низкой квалификации. Увеличение числа задач и их сложности требует привлечения работников высокой квалификации, поскольку здесь их отдача будет наиболее полной. Конечно, важно учесть и роль изучения опыта решения задач как сложных, так и простых. Для того чтобы задачу оптимизации методов можно было рассматривать нак чиста математическую задачу, необходимо определить целевую функцию исследования, класс рассматриваемых задач и возможности исследователя. Качество какого-то алгоритма на классе задач мы характеризуем его качеством на самой плохой для него задаче этога класса. Поэтому чем уже класс, тем лучше качество алгоритмоа на этом классе. Казалось бы, что следует построить оптимальные алгоритмы для возможно большего числа классов задач. Однако при излишней детализации классов задач слишком много усилий уйдет на отыскание оптимальных на этих классах способов решения задач. В этом случае может не хватить сил и времени на решение самих задач, разработку и создание стандартных программ. (Конечно, эти замечания против детализации задач в меньшей мере относятся к случаю решения задач на специализированных машинах и устройствах, где следует максимально сузить класс рассматриваемых задач и рассмотреть проблему всесторонне.)
§ 7] О ПОСТАНОВКАХ ЗАДАЧ ОПТИМИЗАЦИИ 137 При первом взгляде на проблему кажется, что в практике вычислений всегда имеют дело с конкретными задачами и никогда не рассматривают класс задач. По этому поводу можно сказать следующее: действительно, при выборе метода решения задачи исследователь не относит задачу формально к какому- либо классу; однако метод решения всегда выбирается в зависимости от некоторых типичных свойств задачи: тип дифференциального уравнения, наличие особенности у решения, число конечных производных и т. п. При выборе алгоритма исследователь учитывает эти свойства и тем самым вольно или невольно относит рассматриваемую задачу к классу задач, обладающих этими свойствами. При анализе задач и разбиении их на классы часто возникает вопрос: какому классу задач уделить первоочередное внимание, в частности, на какой класс задач следует рассчитывать при составлении стандартной программы численного интегрирования? Пусть, например, при помощи этой программы будут вычисляться интегралы как от гладких, так и от не очень гладких функций (это, конечно, условное деление) примерно с одинаковой частотой. На какие функции нужно ориентироваться при выборе алгоритма? Ответ на этот вопрос можно получить из следующих соображений. На гладких функциях алгоритм будет работать более эффективно; пээтому время, затрачиваемое на их решение, будет меньше времени, затрачиваемого на решение задач с негладкими функциями. 50% экономии времени при вычислении интегралов от гладких функций принесет меньшую выгоду, чем 50% экономии времени при вычислении интегралов •от негладких функций, и следовательно, целесообразно уделить большее внимание эффективности алгоритма в случае негладких функций. Конечно, вывод будет другим, если доля негладких функций мала. При отыскании оптимального метода решения класса задач в случае, когда предполагается непосредственное внедрение алгоритма в вычислительную практику, обычно возникает также следующая проблема: нам не удается сразу найти оптимальный метод решения задач рассматриваемого класса. После некоторого времени работы мы находим какой-то метод, иногда близкий к оптимальному, иногда просто лучший, чем ранее известные, а затем постепенно усовершенствуем его. В какой момент надо остановиться в усовершенствовании метода и перейти к ■составлению стандартных программ решения задач этого клас- •са? При ответе на этот вопрос надо учитывать следующие простые соображения. Если мы поспешим и быстро начнем внедрять только что полученный алгоритм, то, может быть, нам придется вскоре создавать новые алгоритмы из-за плохого качества этого алгоритма. Затягивание времени при составлении стандартных
138 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ П1 программ также нежелательно: при этом мы допустим большой, перерасход времени при решении задач по имеющимся стандартным программам. Можно возразить, что создание совершенных стандартных программ приведет к большой экономии машинного времени в будущем. Однако при анализе этого возражения в свою очередь следует учесть, что машинное время становится все менее дефицитным и более дешевым. Кроме того, чем раньше мы решим ту или иную задачу, тем больший реальный выход получает общество в целом. Нужно учитывать также важность быстрого внедрения вновь созданных алгоритмов для самой задачи отыскания оптимальных методов решения. Дело в том, что анализ результатов расчетов часто может указать на необходимость изменения класса рассматриваемых задач и открыть путь для новых теоретических исследований. Мы видим, что подход к проблеме оптимальности должен носить динамический характер: должны строиться оптимальные методы или близкие к ним для все новых классов задач, предъявляемых наукой и техникой при изменении возможностей, предоставляемых ЭВМ. При этом необходима как текущая работа, так и работа по доведению предложенных ранее постановок до окончательного решения. Для численной математики, как и для всякой прикладной науки, характерна следующая обстановка. Обычно задачи новых типов предъявляются сначала в незначительном количестве, требуется срочное их решение любой ценой; затраты идут не в счет. На первом этапе решения применяется первый попавшийся приемлемый метод. Далее эти задачи поступают в большом количестве, производится более или менее удовлетворительная постановка задачи оптимизации методов и находится некоторое ее решение. Затем задач'а переводится на поток, т. е. решение задач этого типа производится при помощи систем соответствующих стандартных программ. Не следует думать, что на этом этапе полностью кончается исследование данного типа задач — чтобы создавать эффективные методы решения новых задач, нужно осмысливать те задачи, которые остались несколько позади, и производить их теоретические обследования. Соотношение между текущей .и перспективной работой также является важнейшим фактором жизнедеятельности любой научной организации. В каждый момент времени организации предъявляются некоторые требования, выполнение которых необходимо для ее существования: самоокупаемость в случае хозрасчетных организаций, своевременная отчетность по годовому плану и т. п. Однако существуют и критические моменты времени, когда могут предъявляться повышенные требования в виде требований своевременного решения новых классов задач. По-
§ Я1 ОПТИМАЛЬНЫЕ КВАДРАТУРЫ 139 этому при планировании работы должны предусматриваться какие-то теоретические разработки впрок, резервы людей, машинного времени. Вернемся к вопросу об оптимизации методов. Часто математик, создав оптимальный или близкий к нему метод решения задачи, сетует на то, что этот метод плохо внедряется в вычислительную практику. Ответ на этот вопрос может быть самым разным. Очень часто это происходит вследствие консерватизма практических работников, их желания работать старыми, привычными методами. Иногда это объясняется недостатками самого метода. Например, случается, что кроме (и даже вместо) оптимальности метода желательны и существенны простота метода и возможность надежного контроля точности получаемых результатов. Может случиться, что сам класс рассмотренных задач не совпадает с классом, к которому относится большинство реальных задач, поступающих для решения. Конечно, нужно учитывать также вопрос о том, насколько широк возможный круг решаемых задач рассматриваемого класса. Если сейчас и в перспективе ожидается решение небольшого числа задач рассматриваемого класса, разработка оптимальных алгоритмов и создание стандартных программ решения задач этого класса могут себя не оправдать. В то же время изучение задачи оптимизации методов на различных классах часто полезно тем, что при ее решении возникают новые методы, которые затем находят широкое применение и при решении задач нз других классов. Примером, подтверждающим это высказывание, может служить разработка теоретико-числовых методов интегрирования. § 8. Оптимальные квадратуры на классах функций с одной производной Рассуждения § 7 показывают важность изучения различных постановок проблемы оптимизации методов на классах задач. Рассмотрим задачу вычисления интеграла nf) = ifiP)piP)dP. Область интегрирования Q и весовая функция р{Р) считаются фиксированными. Класс.рассматриваемых задач определим заданием класса F подынтегральных функций. Погрешностью квадратуры Hf)^SAf) = ^^D,f{P,) -
но ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ (ГЛ ИГ на классе F называют величину RAF)=sn^\Rf,{f)l где, как обычно. Нижняя грань WAF)= inf R^iF) называется оптимальной оценкой погрешности квадратур на рассматриваемом классе. Если существует квадратура, для которой RNiF)= Wn{F), to такую квадратуру называют оптимальной^ или наилучшей, на рассматриваемом классе. Обратимся к случаю 1 nf)=jf(x)dx, /ef = C,M. [О, 1]); о С] (Л, [0,1])—класс непрерывных функций с кусочно-непрерыв^ ной первой производной, удовлетворяющей условию |/'(л:)|^Л» Квадратурную сумму записываем в виде ы Ss{f)=^^Dif{xi), д:, < ... < Хд,. Потребуем выполнения условия 7=1 Если A) не выполнено, то при f{x)= с = const имеем ^«(f)=(i-2^/)c=5^o. Все функции fix)= const принадлежат рассматриваемому классу, и следовательно, ы RAF)> sup /=i С\ =оо. Ясно, что об оптимальности такой квадратуры говорить не приходится. Квадратура, удовлетворяющая условию A), точна для постоянных, т. е. всех многочленов нулевой степени. Для таких квадратур, согласно B.6), справедливо соотношение 1
«81 где ОПТИМАЛЬНЫЕ КВАДРАТУРЫ Ял,(у)=1-у-2О/(л:/-уH, 1 при t> о, <0. 141 ( 1 при t ^'^°^\0 при / Для Хт-] <:У <Хт имеем ^. } о при /■ < т, (^'-^)=ll при j>m, (здесь мы положили О" = 0); поэтому 1 при У<Хи Qm='SiDi при Хт-1<у <Хт, т = 2, О при Xfj^y. N, B) Мы видим, что исходная задача минимизации погрешности на классе свелась к решению следующей задачи; приблизить 1 наилучшим образом в метрике Lii \\f\\=^ \ \f{x)\dx функцию о 1 — у функциями вида B). Обозначим 1 1\Кы(у)\^У через V {Qi, ..., Qn', Xi, ..., Xfj). о Имеем равенство V (Q2, ..., Qfj', Xi, . •., Xfj) = = \\y\dy+^ J \{\-y)-Qm\dy\- \\\-y\dy. C> От фиксированного Q^ зависит только одно слагаемое т V(QJ= J \{l-y)-Qm\dy. •*m-l
142 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. Ш Непосредственным интегрированием получим при 1—;c„_i<Q„ ViQm) i 0-Qm-Xm)' + (l~Qm-Xm-i)' 2 \Xm — Xfn—i) Отсюда при 1 — Xm<Q„<l — ;Cm_i, (Qm — A — Xm)) {Xm — X^-l) при Qm < 1 — Xm. Xm—lT Xm V'iQm)>0 при Qm>l- V'iQmXO при Qm<l- следовательно. ■*m—I T *fr mmViQ^)^v(l--^^^'^=^^) = 4 D) Кроме величин V (Qm) правая часть C) содержит также слагаемое l\y\dy+ \\l-y\dy = ^^±^^f^. Отсюда, из C) и D) следует, что inf ViQz, ..., Qfj-, хи .... Xfi)-= <?2 Qn — ' (Xu • • •) Xfi) ■■ xi + i^-x^Y i^m~ Xm-l) 4 m=2 Таким образом, inf ViQi, ..., Qjv; x„ .... %)== = inf К (л; Xfj). X\ XfJ Приравнивая нулю производные -д—, получим систему урав- нений ^^1 ~ ^2 /л ^'^N ~ ^ ~ -"^jv-i /ч ^т-1 ~^■*m + ^'^m+l л 2 ~"' 2 ' 2 ' ■т = 2, .... N — 1.
SI ОПТИМАЛЬНЫЕ КВАДРАТУРЫ 143 Решением э-^ой системы будет 2т — 1 , .; ^т = —2}^—• т = 1, .... Л/, и при этих значениях V (дГ], ..., х^) = -^. Мы получили точку экстремума функции V, но это еще не означает, что мы нашли ее нижнюю грань; функция V{Xu...,Xn) рассматривается в области О ^ Х\ <. Х2 <....<. х^ ^ I, и если ее нижняя грань достигается в некоторой точке границы, то вы- полнение условии -д— = 0 в этой точке не является обязатель- НЫМ. Проверим непосредственно, что полученное значение V является минимальным. В неравенство Коши — Буняковского IN 2 /2W \/2W \ 2.л <B.;)Bб5) подставим Х2 — X, а/=1, bi = Xi, Ь2=Ьз=-- 2  — Об 2 ' '■■' "ЗЛ^-г—02JV-1 — 2 • 2JV— ^~^N^ 2W очевидно, 2а/6/=1. В результате получим 1=1 2W /«=1 или I Итак, минимальное значение I Kjv (г/) | dy, равное-^, до- 0 стигается при Для соответствующей квадратурной формулы D,= l-Q, = ^. D;v = Q^, = -^.
144 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ (ГЛ. Ill Таким образом,- оптимальной на рассматриваемом классе является квадратура о /=1 А С оценкой остаточного члена .„ (ч, Рассмотрим в качестве примера еще один класс функций С\' (А, [О, 1])— класс непрерывных кусочно-дифференцнруемых функций, удовлетворяющих условию I I /' (х) \dx ^А. о Согласно F.10), имеем оценку погрешности 1 R^{c\'Ha.[0, 1]))^ sup \ К^{у) \ j \rix)\dx. E) о Покажем, что на самом деле здесь имеет м^сто равенство. Функция К/^ {у) == = (l—y)~Qm линейная на [хт-\> х^), поэтому sup |К (у)| = = тах(|1-дс^_,-0^|, |1_д^^_C^|), кроме того, ^supj Kj^(y) 1 = = sup |у| = л;,, sup |fC (у)|= sup |I—^1 = 1—л;„. Таким образом, 0= sup \К^(у)\ = тах{х,, \ ^ - х^-Q^]. \1 - х^-Q^l 1 - «/v)- F) Вследствие линейности Кк(у) на каждом из промежутков [О, jti), [jti, лгг),... ..., {xn-i,Xn),[XnA] справедливо следующее утверждение: для любого е можно указать некоторый отрезок [г/i, г/а], Уг > Уи принадлежащий одному из указанных выше сегментов, такой, что на этом отрезке I К;^ (у) I > sup I Kfj (у) I - е. sign К^ (у) = const. Возьме.м О при л;^^!, /е (x) = i А -^ ^ при у, < л; < г/2, I Уг~~У\ \ I при л;>г/2. /А I тогда fi(x)=—-^z— при х^(у1,у2), f^{x) = 0 при л; §*[i/p f/j]. Для такой функции имеем и следовательно,
§ SG ОПТИМАЛЬНЫЕ КВАДРАТУРЫ 145 Вследствие произвольности е справедливо неравенство Rl^{c\^HA, [О, 1]\)>А вир] К^(У)\. Отсюда и из E) получаем R^{C\'Ha,[0, l])) = AsHp\Kf,(y)\. Имеем очевидное равенство \Xi) + ({\-x,-Q,) + {-(l-Xt- Q,))) + ... = д:, + (ДС2 - дс,) + ... +(дСдг-д:^_,)+1-Дс^=1. Максимум модулей слагаемых, стоящих в фигурных скобках, согласно F), равен sup| Kfj(y) |. Если сумма 2N слагаемых равна I, то максимум модуля этих слагаемых ие менее -^rvf. Поэтому sup 1/(„ (у) |^7Г«7. Максимум 2/V J0, 1] ^*« 1 модуля этих слагаемых будет равен -^тг в том и только том случае, если все они равны между собой и равны -^тг. Следовательно, если существует квадратурная формула, для которой то обя1ательно Подставляя х\ = -^ во второе уравнение, получим Qj = 1—тг, затем подставляем это значение Q/j в третье уравнение, получим -^г^-лтт" и т. д. Итак, W"~ 2iV ' "^Z"' iV Этим значениям Qj, как и ранее, соответствуют Dj = -rr. Таким образом, мы получили оптимальную на рассматриваемом классе квадратуру о ;=1 с оценкой остаточного члена -rrr-r. 2N
146 ЧИСЛЕтЮЕ ИНТЕГРИРОВАНИЕ (ГЛ 1И В настоящее время оптимальные квадратуры получены для небольшого набора классов функций, в основном, одной переменной. Непосредственное значение этих квадратур для приложений йичтожно; однако это не значит, что не нужно заниматься построением таких квадратур. Представители других, особенно гуманитарных, наук привыкли говорить, что математика количественная наука, «математики считают», в то время" как их науки занимаются качественными выводами. Это в корне неправильное мнение. Конечно, в настоящее время математика указывает влияние на многие стороны жизни общества, поставляя многообразные результаты расчетов: прочность конструкций, оптимальные планы и т. д. Однако, кроме этого, математика является существенным аппаратом качественного исследования явлений природы и общества. Зачастую имеется много противоречащих друг другу моделей этих явлений, выбор между которыми не может быть сделан путем теоретических построений. Обсчет моделей на ЭВМ может дать ответ о соответствии их реальности, и зде(;ь выводы математики носят, в основном, качественный характер. Ценность рассмотрения некоторых математических моделей экономики часто выражается не в выработке оптимального плана, а в выработке, в основном, качественной рекомендации, например, о направлении изменения структуры топливного баланса или об изменении системы оплаты с целью большего стимулирования развития соответствующей отрасли. Точно так же проводившиеся выше построения оптимальных квадратур и дальнейшее их развитие на случай функций большей гладкости и большего числа переменных ценны не получением конкретных квадратурных формул, а выяснением качественной стороны вопроса: где какие методы лучше, на какую точность можно рассчитывать при исполвзовании определенной информации о подынтегральной функции, какова плотность распределения узлов у хороших квадратур. Например, мы убедились, что, используя информацию только об ограниченности первой производной, нельзя получить оценок погрешности, по порядку лучших О i-jr)- Таким образом, оценки погрешности, полученные в § 6 при п = I, по порядку числа узлов не могут быть улучшены. Мы убедились также, что предположение об ограниченности первой производной не может привести к существенному улучшению оценки погрешности по сравнению с предположением об ограниченности \\r{x)\dx. о
§ 91 ОПТИМИЗАЦИЯ РАСПРЕДЕЛЕНИЯ УЗЛОВ КВАДРАТУР 147 § 9. Оптимизация распределения узлов квадратурной формулы Развитие методов численного интегрирования могло бы пойти по пути создания оптимальных методов на различных классах Cl-"^ (А, [а, Ь]) и создания программ на основе этих методов. Очень скоро после начала рассмотрения задач оптимизации методов стало ясно, что на этих классах уже известные методы с оценками погрещности F.7), F.12) недалеки от оптимальных; как увидим в § 7 гл. V, за счет оптимизации квадратурной формулы оценки погрешности F.7), F.12) на рассматриваемых классах не могут быть улучшены по порядку. При этом также стало ясно, что некоторые методы, практически совпадающие с классическими методами Эйлера и Грегори, являются асимптотически оптимальными по оценке главного члена погрешности. Мы вкладываем в это понятие следующий смысл. Для этих методов на соответствующих классах функций были получены оценки погрешности в то время как для оптимальных на этих классах методов оценка погрешности имеет вид ■Р+°Ш- Казалось бы, что так как есть почти оптимальные методы, то следующим этапом должен стать перевод всех систем интегрирования на использование этих оптимальных методов. Однако подобное утверждение нельзя рассматривать «ак бесспорное. Вследствие большого многообразия задач, требующих решения, при переходе к этапу внедрения методов в практику всегда следует проявлять известную осторожность. Нельзя полиостью ручаться, что принятое нами описание классов этих задач наилучшим образом соответствует классу реальных задач; например, следует признать, что классы Ci плохо описывают реальные задачи. Конечно, вследствие привычки к традиционным методам внедрение новых методов обычно требует энергичных действий со стороны их приверженцев. В то же время надо иметь в виду, что старые методы прошли испытание временем и могут оказаться более пригодными для решения задач некоторых классов; поэтому отбрасывание старых методов должно производиться лишь после достаточного теоретического и практического анализа. В случае рассматриваемой проблемы оптимизации методов интегрирования практические работники еще до полного
148 ЧИСЛЕННОЕ интегрировании; [ГЛ IH выяснения вопроса об оптимальности методов пришли к следующим заключениям. При разбиении исходного отрезка интегрирования на одинаковые uq — flq-i ^ Я МЫ получаем информацию о подынтегральной функции равномерно по всему отрезку интегрирования. В то же время подынтегральная функция может быть более гладкой на части отрезка интегрирования и ясно, что там следует поместить относительно меньшее количество узлов. Поэтому для практически оптимальных методов разбиение отрезка интегрирования на части должно быть приспособлено к специфике поведения подынтегральной функции. Рассмотрим возможные постановки задачи распределения узлов в зависимости от особенностей поведения производной подынтегральной функции. Эти постановки имеют много общего, однако дл*1 конкретных задач тот или иной подход иногда оказывается более удобным. Для простоты изложения мы будем проводить рассмотрение на примере формулы трапеций. Пусть вычисляется интеграл nn-lfUdK и подынтегральная функция удовлетворяет условиям |Г'(^I^' ^ Ai на отрезках (Sf-i,Bi), 1= \, ..., q, где О = 5о < fii < ... ,.. < 5g = 1. Для вычисления интегралов В; //Ш= J f{>^)dx •=i~\ применим составную формулу трапеций с равными отрезками разбиения длины Ht = -jj-, bi = Bi~ Bi-i. itif)'^St(n = H,(i^ + f{Bi-, + Hd+ ... +^). Согласно F.8), оценка остаточного члена есть ^ . Суммарная \2Ы: I я погрешность при замене /(/) суммой 2S/(/) не превзойдет " л 1.3
§ 91 ОПТИМИЗАЦИЯ РАСПРЕДЕЛЕНИЯ УЗЛОВ КВАДРАТУР 149' Поставим задачу: при заданном числе N = Ni -{-.. .-{-Nq отрезков разбиения распорядиться выбором величин Ni так, чтобы суммарная оценка погрешности Ф была минимальной. Найдем минимум Ф при условии Ч'' = Л/i + ... + Л^з — Л/^0, не предполагая пока, что величины Ni — целые. Приравнивая нулю производные функции Лагранжа Ф + W, получаем систему уравнений — ' -Ь Я = 0. Отсюда Из условия Ч' ^ о получаем уравнение относительно X: я Уь^Г &h^- Определяем X и затем из A) находим Ni. Поскольку Ni должны быть целыми, то возьмем Л/, = Л/? = [й,|ГА]. B) Очевидно, N-q^Nl+ ... -ЬЛ/"<Л/. Мы не нашли настоящего минимума Ф по множеству всевозможных целых Л/], ..., Nq, удовлетворяющих условию Л/i-f... ...-{• Nq = N, однако дальнейшее уточнение вряд ли разумно. Обычно практический интерес представляет другая вариационная задача. Найти минимальное значение N ^ Ni-]-... • • • + ^g. при котором оценка погрешности Ф не превосходит е. Поскольку Ф монотонно убывает с ростом величин Ni, то достаточно ограничиться случаем Ф = е. Возьмем функцию Лагранжа в виде Ni+ ... +Nq + X-\ф-e). Приравнивая нулю ее производные по Ni, получим те же урав- нения A); подставляя значение Л// = й/|/ -т^- в уравнение Ф = е, получим ^ 1=1 Определяем X, а затем соответствующие Л/;. Соотношения относительно величин Ni, получившиеся при рассмотрении этих двух задач, имеют одинаковый вид. Поэтому для получения
150 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ (ГЛ. Ill качественных выводов об оптимальном распределении узлов достаточно ограничиться рассмотрением одной из этих задач. Нашей целью является разработка оптимальных методов решения и разработка на их основе систем программ решения типовых математических задач. Можно представить себе программу вычисления интеграла с заданной точностью, работающую по следующей схеме. Производится вычисление таблицы значений функции на некоторой сетке Jto, .... Хп- По этой таблице составляется таблица разделенных разностей Из рассмотрения этой таблицы делается вывод о наиболее целесообразном разбиении отрезка на части {Bi-i,Bi) и значениях Ai, соответствующих этим частям. Затем, в соответствии с A), выбираются значения Л^г и производится интегрирование. Имеются' работающие программы, реализующие алгоритм вычисления интеграла, лишь несущественно отличающийся от описанного. По-видимому, при решении задач некоторых классов такие программы могут оказаться наиболее эффективными. Однако большинство алгоритмов реально работающих стандартных программ базируется не на таком непосредственном использовании полученных соотношений, а на одном качественном выводе, являющемся следствием A). Перепишем это равен- ■ство в виде At (h \^ _ А 2 ALih.Y Левая часть этого выражения равна оценке погрешности по эле- ментарному отрезку интегрирования длины -jj-, на которые был разбит отрезок [Bi-i,Bi]. Таким образом, это соотношение означает, что при оптимальном распределении узлов интегрирования оценки погрешностей, приходящихся на элементарные отрезки интегрирования, должны быть одинаковыми. Для получения этого вывода достаточно было ограничиться рассмотрением случая q = 2. Это обстоятельство подтверждает общее свойство качественных характеристик методов решения задач (не обязательно математических): для их получения достаточно ограничиться рассмотрением простейших моделей, учитывающих основные стороны явления. Рассмотрим еще одну, близкую постановку задачи оптимн- дации распределения узлов интегрирования. Чтобы не утомлять читателя второстепенными деталями, мы не будем проводить подробных оценок членов высшего порядка в оценке погрешности.
в SI ОПТИМИЗАЦИЯ РАСПРЕДЕЛЕНИЯ УЗЛОВ КВАДРАТУР 15Г Пусть отрезок интегрирования [0,1] разбит на части [a,_i, а,], 9 = 1, ..., Л/, flo = О, fljv = 1 и интеграл по каждой части вычисляется по формуле трапеций "а /, if)= \ f {х) dx « s^ if) = """/"-■ if (fl,_,) + /(a,)). Тогда интеграл по всему отрезку [0,1] вычисляется по формуле (a^-a^-ij ,3 С оценкой остаточного члена N г = У( max l/'-WD^^^^lj^. C). Пусть известно, что 1/"(л-) | :< f (х) на [0,1], где F(x) непрерывна; пусть в качестве а, взяты значения ф(-хг) непрерывно дифференцируемой функции ф, удовлетворяющей условиям ф@) =0, фA) = 1. Очевидно, оо. а,-а,_, = ф(-^-)-ф(^^-) = ф'(|-)т + °(ж) "Р" ^ поэтому max irWK max F {x) = F{a,) + o{l) = fU(jA] +o(l). Из этих соотношений получаем ("_.Z^( niax ,.w„M^^. _r..MW Подставляя последние соотношения в C), имеем ( max lrWI)<e, = (ф'(X)y^\^+o(-i,). r<f -4г\%МАШ^\^^Ш- Выражение в фигурных скобках является квадратурной суммой Римана для интеграла 1 |(Ф'(,))зП5т^/
152 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ ГГЛ III от непрерывной функции. Следовательно, Рассмотрим задачу минимизации первого, главного члена выражения D). Для удобства решения уравнения Эйлера примем за независимую переменную функцию ф. Тогда коэффициент при -TTj- в главном члене погрешности запишется в виде 1 \ и'т-'Цф-л^. 12 Уравнение Эйлера для функции, минимизирующей функционал 1 /E(ф, t, f)d^. о имеет вид d (дО\ d<p\df )' в рассматриваемом случае -^ = 0, и поэтому из E) следует -^7г = const. Подставляя конкретное значение функции G, получим (^'(ф))-зZM:= const или /='(Ф)(ф'@)' = с,. F) Общее решение этого уравнения зависит от Ci и еще некоторой постоянной Сг- Значения этих постоянных можно определить из граничных условий ф@) = 0, фA)= 1. Решение рассмотренной вариационной постановки может практически использоваться различными способами. Например, существуют программы, осуществляющие численное интегрирование F) на сетке с шагом, существенно большим -тг, и затем распределяющие узлы в соответствии с полученным решением. Из соотношения F) можно сделать тот же вывод о равенстве оценок погрешностей на элементарных отрезках интегрирования при оптимальном распределении уз.юв. В самом деле, умножим F) на Т2дгг> положим / = -^ и заменим ^(ф(-^)) и
§ 10] ПРИМЕРЫ ОПТИМИЗАЦИИ РАСПРЕДЕЛЕНИЯ УЗЛОВ 153 ТФ'Ш. соответственно, эквивалентными величинами max F(x), a^ — a^^i. В результате получим ( max F(x))^^^ 12^-'^ -W- G) Еще один путь практического использования уравнения F) состоит в следующем. Пусть требуется вычислить большую серию интегралов с одинаковым характерным поведением подынтегральных функций. Выделим простейшую, модельную функцию, для которой задача оптимизации узлов может быть решена в явном виде, и далее будем производить интегрирование с распределением узлов, соответствующим этой функции. Если характер изменения функций рассматриваемой серии зависит от некоторого параметра, то этот параметр следует учесть при выборе модельной функции; естественно, что модельная функция не обязательно относится к рассматриваемому классу. Чем большее число задач предъявляется для решения, тем более могут быть оправданы затраты,-связанные с удачным выбором и рассмотрением модельной задачи. § 10. Примеры оптимизации распределения узлов Рассмотрим примеры решения уравнения (9.6) для конкретных задач. Пример 1. Пусть вычисляется серия интегралов 1 J(b)=jfib, x)dx, о 6 —параметр серии, f{b,x) = xbg{b,x), — 1 < 6 < 2, g{b,x) — гладкая, g{b,Q)ФQ. Если ЬФ^, 1, то вторая производная fxx{b,x) не ограничена в окрестности точки 0; при выборе модельной задачи следует учесть эту специфику поведения подынтегральной функции. В окрестности Jt = О имеем hxib, x) = b(b-l)x»-^g{b, 0)-f 0(хь-'). Таким образом, в окрестности точки д: = О вторая производная fxx пропорциональна второй производной функции х^>, поэтому функцию х^' естественно рассматривать в качестве модельной. Примем за F{x) величину \b{b— 1)\х^'-'^, тогда уравнение (9.6) запишется в виде \b{b~l)\^fb-2(^J = C,
154 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. III Отсюда (з1 '^^tlAib^^T^Ct + C, из условия ф@) = 0 получаем, что С2 = 0, из условия фA)= I, Ь+1 что ф ^ =t. Таким образом, ф(^) = ^Тй- (I) 1 и для модельной задачи вычисления интеграла \ х''dx опти- 0 мальным в рассматриваемом нами смысле является распреде- 3 ление узлов а, = 1-^1 Проведенные выше рассуждения не являются строгими, так как при получении оценки (9.4) предполагалась ограниченность оценки второй производной F{x), а для рассматриваемой модельной задачи это условие не выполнено. Приведем правдоподобные рассуждения в пользу того, что и в рассматриваемом примере разумно ориентироваться на уравнение (9.6) при выборе оптимального распределения узлов <f{t). Пусть F{x) непрерывна во всех точках (О, I], как в примере 1. Предположим, что распределение узлов, соответствующее некоторой функции (fa{i), таково, что главный член оценки погрешности интегрирования существует, не больше, чем у любого другого распределения, и имеет порядок 0(l/N^). Покажем, что тогда фо@ должно быть решением (9 6). В самом деле, возьмем некоторое г) > 0. Главная часть погрешности интегрирования по отрезку [фо(г1). •] имеет вид -Tpirrj"» где I 1гуЫ= I F(<9{i))(v'(t))'dt. Возьмем произвольную функцию ф@ рассматриваемого класса, совпадающую с фо@ при ' ^ Л- Очевидно, что погрешности интегрирования на отрезке [О, ф(т1)] для всех таких функций совпадают. Вследствие минимальности главного члена погрешности, соответствующего функции фо@. должно выполняться неравенство /,) (ф) ^^п(фо)- Отсюда следует, что функция фо@ должна удовлетворять уравнению (9.6) при ti < < ^ 1. Вследствие произвольности г\ она должна удовлетворять уравнению при О <. t ^ I. 1 На примере вычисления интеграла х^ dx при — 1<6<2 покажем, о что для фо (О "решения (9.6) при граничных условиях фо @) = О, фо A) = I, главный член оценки погрешности существует и действительно имеет поря- 3 док -тд-. Соответствующая функция Фо(/), согласно A), есть t ; ясно,
9 101 ПРИМЕРЫ ОПТИМИЗАЦИИ РАСПРЕДЕЛЕНИЯ УЗЛОВ 155 что d = - l + b > 1. По формуле Тейлора 1, -1,-1 = Фо [-jri "F ~ "Ро (V -m' B> где ■2-др-<е5<-^. Так как ф^ (/) =d (d-1)/''-2>0, то а,-а,_,<< C> D> При 2<G имеем Из B) и D) следует, что -К1Г'т)(' + °G)) - ^<" В рассматриваемом случае F(x) = \b{b-i)\ х''-\ \F'{x)\ = \b{b-\)(b-2)\ х*-^ возрастает. Поэтому max \р(х)-\Ь[Ь-1)\Ш q Y (Ь-2) <\F'(aq-i)\(ag-ag-i)- При 2^G с учетом C) имеем |f'(a,-,)(a,-a,-i)Kconst|^-^j -j^. Отсюда получаем 9 \d (Ь-2)-1 1 Следовательно, max iy _,М.-.),AГ''-(.^о(|)). п,,. .fw'"'-''-'»'- -^^^(^Г'*-'И1Г'Я('+°Ш)- ''> поскольку b = равен 3 —d q —-}—, то показатель степени, в которую возводится -д^. 3 (d - 1) + d F - 2) = 3 (d - I) + d (iil^-il) = 0. Таким образом, (а.-а__,K d^\b(b-l)\ / П\\ max f(.)^^ 12^ тг^О + Пт)) "P'' ^<^- 1 e-r eJ
156 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ (ГЛ. III При больших q правая часть мало зависит от q\ это естественно, так как для функции ф@. удовлетворяющей (9.6), выполняется (9.7). Оценка погрешности интегрирования на отрезке [О, fli] вида (maxf(;.))i^l^ (в, а,1 '2 непригодна вследствие неограниченности F(x). При 6<0 подынтегральная функция Jc' обращается в оо при х ==Q. Определим ее равной О при Jt = 0. Тогда при всех Ь разность между интегралом Jt* djt и квадратурой Si{f) есть 2 \6 + 1 2/^' U+l 21 N^' Сумма этого выражения и оценок погрешности E) по остальным отрезкам равна Величине ^ d4\b-\\ °(S^)-^^^J^7^+o(i-). ,е, \2т Мы -получили нужное соотношение. • Задача. Пусть I ** при *е@, I], 1 — 1<&<1, интеграл f{x)dx вычисляется по формуле трапеций с посто- 0 янным шагом uq — а^—i ^ "ТГ" Показать, что суммарная погрешность удовлетворяет соотношению где D F) =5^ 0. Из Сравнения последней оценки с F) следует, что в случае функций с особеннестями в производных оптимизация распределения узлов интегрирования может приводить к увеличению порядка скорости сходимости. Пример 2. Вычисляется серия интегралов 1 J а:* In xg (b, х) dx, о g{b,x)—глацкгя, g{b,0) ФО, b — параметр серии. Поскольку In X имеет особенность в точке О, то кажется естественным взять в качестве модельной функции л:*1п х. Ее вторая производная имеет вид ;сЬ-2FF_1Iпа; + B6-1)).
§ 101 ПРИМЕРЫ ОПТИМИЗАЦИИ РАСПРЕДЕЛЕНИЯ УЗЛОВ 157 При f (л;) = I (д:*'1пл;)"| уравнение (9.6) не решается в квадратурах: поэтому постараемся его упростить. При л;—►О функция InJCjpacTeT медленнее, чем любая степень Jr^ е > 0. Исходя из этого, в уравнении (9.6) для упрощения решения возьмем F(x) = const •д:*'"^. Пример 3. Вычисляется серия интегралов I j expi^-j'jg(b,x)dx, G) о g{b,x)—гладкая, g{b,0) #0, b — параметр серии — может принимать очень малые значения. При малых 6 подынтегральная функция и ее производные резко меняются в окрестности точки jc = О за счет множителя ехр I—7-). Поэтому имеет смысл произвести оптимизацию распределения узлов ннтегри- рования на модельной задаче вычисления интеграла expl——\ dx, о Положим f (jt)= (expl—г)) • Уравнение (9.6) приобретает вид Отсюда 1 - ехр (- ^) = C,t + С Из условия ф@) = 0 следует С4 = 0, а из условия фA)=1 получаем "-«'^р(-^)=('-^'^р(-ж))'- OTdUAil ф (О = 36 In ' Пример 4. Вычисляется та же серия, но g{b, <) = jrA F, х), h{b, 0)=7^0. Можно рассмотреть в качестве модельного интеграл 1 X ехр I —7-) dx. При о fW = |(.exp(-i.))"| = |-iV~||exp(-i-) соответствующее уравнение (9.6) ие решается в элементарных квадратурах. В случае необходимости срочного решения задачи целесообразно ограничиться оптимальным распределением узлов, построенным для примера 3.
158 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ ГГЛ. ИГ Пример 5. Вычисляется серия интегралов 1 J "Р ( ~ "fr) 8 (b, х) dx. g{b,x)—гладкая, g{b,0)Ф0, ft — параметр серии — может принимать малые значения. При малых b подынтегральная функция и ее производные рез- ко меняются в окрестности точки « = О за счет множителя expl—-Tj-I. Поэтому в качестве модельной возьмем задачу ехр ( rj-jdjt. Положим /'(jt)= fexpf—-га-)) , тогда в качестве (9.6) О получим уравнение Г ^ ЬЧ^\ ЬЧ\ dl j 2 • Отсюда Этот интеграл «е вычисляется в явном виде, и поэтому попытаемся произ- вести упрощения; например, можно заменить на 1. При Ф больших значениях -^, когда погреиуюсть такой замены большая, ее влия- ,(-XV ние не столь значительно вследствие наличия малого множителя ехр I — -^г^-1. После такого упрощения функция ф(/) будет выражаться через функцию, обратную к функции и I ехр ( — о') dv. о Заметим, что задачи, подобные рассмотренным в примерах 3, 4, 5, возникают довольно часто. Например, прн расчетах диаграмм направленности антенн вычисляются серии интегралов 1 Г ехр (ibg (b, х)) h {Ь, х) dx о в широком диапазоне изменения Ь; функции S{b,x), h(b,x) являются довольно гладкими. При b не очень больших эти интегралы могут вычисляться при помощи известных нам квадратурных формул. С ростом b производный' подынтегральной функции растут, и поэтому требуется все большее число узлов интегрирования. При очень больших b можно воспользоваться методом перевала или иными асимптотическими методами. Однако при «промежуточных» значениях b оба эти метода будут плохи: первый — вследствие трудоемкости, второй — вследствие малой точности. Поэтому иногда оказывается целесообразным следующий метод: контур интегрирования преобразуется
§ HI ГЛАВРШИ ЧЛЕН nOrPEUlHOCTH 159 так, чтобы ои проходил по линиям наискорейшего спуска exp{ibg[b,x)), как это делается при использовании метода перевала. Мы получим интегралы от резко меняющихся функций, аналогичные рассмотренным в примерах 2, 3, 4. Далее производим оптимизацию распределения узлов интегрирования и применяем соответствующие квадратурные формулы. На примерах 3, 4 видно, что оптимизация распределения узлов интегрирования на основании (9.6) требует достаточно высокой квалификации исследователя. Поэтому далее в § 17 будет рассмотрен вопрос о передаче этих функций ЭВМ. §11. Главный член погрешности В §§ 1, 2, 6, 8 был рассмотрен ряд квадратурных формул и получены оценки погрешности через максимумы производных или интегралы от их модулей. При выводе этих оценок не предполагалось наличия у подынтегральной функции производных высших порядков. Однако если такие производные имеются, то может произойти компенсация некоторых составляющих погрешности. Для об(?^уждения вопроса о качестве оценок и о реальной величине погрешности целесообразно выделить в погрешности главный член. Обратимся к формуле A.3) l(f) = \fix)p(x)dx^SAf) = ^'^Djf(^+^d,) (I) С остаточным членом A.1): b Rn(f) = /(/)- S„(f)=jp(x)if (x) - и{X))dx. a Для определенности рассматриваем случай р{х)^= 1. После за- ^ Ь+а . Ь—а , мены переменных х=—s 1 о— остаточный член запишется в виде RAf) = ^ j(fD^ + ^i)-Qn(f(^ + ^t)))dt B) Здесь для удобства введено обозначение: Qn(git)) = ^g{d,)J[ Пусть m таково, что квадратурная формула A) точна для всех многочленов степени т—1, но не точна для многочленов
160 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. III степени т. Из способа построения интерполяционной квадратурной формулы A.3) вытекает, что т^п. Подставим в правую часть B) разложение Тейлора /-=0 C) при некотором I > т, здесь а ^ Ц/) :^ Ъ для —I :^ / < 1. Группируя слагаемые с одинаковыми множителями f(^', получим где -1 1 -1 С учетом явного выражения иутерполяционного оператора Qn получаем грубую оценку последнего слагаемого: |р,|<у?п,ах|ГМ|(-Ц^)'*'. v;=l(i<i'+iK,fni^ где Коэффициент при f*'* (—j-^j равен погрешности при вычисле- НИИ интеграла от функции -^ ^ по рассматриваемой квадратурной формуле. Поэтому уо = ... = Ym-i = 0. В то же время Ym Ф О, так как иначе квадратура была бы точна для любого многочлена степени т. В итоге этих рассуждений мы имеем право написать равенство -f тах|/(')(х)|(-Ь1£у+'эдО^ D) где I0/K1, Ym^O, m<Z-l.
§ 11] главный член погрешности Ifif Заметим, что в § 1 для формул прямоугольников, трапеций и Симпсона были получены соотношения вида для формулы Гаусса при р{х)^ 1 такое соотношение следует из формулы C.9). Из соотношения E) йытекает справедливость соотношения, аналогичного D) при 1 = т-\- \, Пусть для вычисления интеграла в I{f)=lf{x)dx А применяется квадратурная формула F.4) м /(/)«'s;j,(/)=2s,(/), <?=1 где ^1 = ( 2 / Ъ ^lf[ 2 + 2 ^/) • Причем а?==ф(-^). где ф(^)—гладкая, (f@) = A, фA) = В. Тогда Од — а^_, = О i-j^j. Воспользовавшись D), можно написать равенство Следовательно, сумма погрешностей по всем отрезкам разбиения записывается в виде .i(f) = v.i r>(^^^)(^S=^)"% о (-Л^). Далее проводим преобразования такие же, как в § 9: ".-".-'-■jrf'l-D+olT). p.(ii+^)=,«(,(^)) + a(ir). 6 Н. С. Бахьалов
N2 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. Ill В результате имеем где Ф@ = /""Чф@)(ф'@)'""'"'- Выражение в фигурных скобках является квадратурной суммой интеграла 1 о к которому оно стремится. Если /('"+•> (jc) и ф" (О ограничены, то можно показать, что 1 ^м(/) = ^^^=^?^|ф@^^ + о(-^). ' F) в частности, если точки d,, ..., rf„ расположены симметрично относительно О и производные f^'^+'^Цх) и (p^^^Цt) ограничены, то второе слагаемое в правой части F) есть 0(—шт)' Докажем последнее утверждение для случая формулы трапеций при постоянном шаге интегрирования, т. е. при ф^ = const, Ug — Ug-1 ^ Я. Возьмем I = 4; Y2 -'1 J 21 "^ 3 • -1 -dt: ' 4! "'" 10 • -1 Итак, ' --1Г^"(^^-^) + ^'320 ,„"^^^, l^'^'WI- G)
$ 12] ФОРМУЛЫ ЭЙЛЕРА И ГРЕГОРИ 163 Выражение Ям(!) суммарной погрешности, получаюш;ееся после суммирования G), можно записать в виде Ям (« = - -S- ^2 (/) + О (E - А) Н% где Величина ЕгШ является квадратурной суммой для интеграла в \f"{x)dx, если при вычислении интегралов по элементарным А отрезкам применяется формула прямоугольников A.6): о с оценкой остаточного члена ^a.b^ 24 Следовательно, согласно F.6), имеем < (max IP (а!) I) ^^~4^^' М, В) ^* ^2(Л-J rWrfA: В итоге получаем равенство Ям if) = --^ (I f" W dA: I + О ((В - A) Н% (8) § 12. Формулы Эйлера и Грегори Полученное соотношение A1.8) может использоваться в различных направлениях. Например, его можно представить в виде Rm (f)---lT ^f' (^) - f (^)) + О (E - А) Н% A) После вычисления f'{B) — f'{A) получаем значение главного члена погрешности. Предположим, что достигнутая точность не является удовлетворительной. Запишем A) в виде I{f) = S\iif)-^0{(B-A)H%
164 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. III где S'm (f) = S'm (/) - -^ (Г (В) - Г (А)). Выражение SmQ) является квадратурной формулой с погрешностью 0{(В — А)Н*), т. е. дает лучшее приближение к значению 1(f), чем исходная формула трапеций. Можно попытаться выделить главный член погрешности получившейся формулы. Имеем равенства sjl,Cf) = S4(f). si if) =-^{fia,-i) + f (a,)) - ^ if (a,) - Г (a,-i)). Величину s^if) будем рассматривать как приближенное значение интеграла Подставим в разность /,(Л —•s^(f) представление f{x) в виде отрезка ряда Тейлора A1.3) при 1 — &. Как и в § II, соберем коэффициенты при значениях Р'Н——5—~j' После суммирования по q получим ni)-SU) = ~\^Hf^'\^^^^]\ + 0({B-A)H% Выражение в фигурных скобках является квадратурной формулой прямоугольников для интеграла в |Р(л;)йл; = Р(В)-РЧ^). А Таким образом, имеем / (Л - S1, (Л = -^ (/"> (В) - f<3) (Л)) + о ((В - А) Н% Мы получили выражение остаточного члена квадратуры Sm (Л1 а также новую квадратурную формулу / (Л - sli (/) - sli (Л - ^ (Г (В) - /' (Л)) + ш (^"' (^) -1''' (Л))
§ 121 , ФОРМУЛЫ ЭЙЛЕРА И ГРЕГОРИ 165 С остаточным членом О {(В — А)Н^) и т. д. Продолжая этот процесс, для каждого целого р получим квадратурную формулу Эйлера /(f)-5l?(f), где 5^л? (f) = Si if) - S y^kH" (Г-'> (В) - Г-'^ (А)). B) fc=i Существует следующее соотношение, которому удовлетворяют числа yji rrr = SY/^'- exp х- /=о Обычно принято записывать yj в виде Bj7/1; числа Bj называют числами Бернулли. Оценка остаточного члена квадратуры B) может быть произведена следующим образом. Рассмотрим квадратуру /, (п « < (/)=f (/ Ч-,)+/ Ч)) - S V2.^'* (/*^*-^ К) - Г-" («,-.))• fe=l Подставим в остаточный член ''S(/) = /,(/)-sP(f) представление / (х) в виде отрезка ряда Тейлора Как и в § 2, получим выражение остаточного члена вида "я г^,(П- J К,[х-^^^^,нУ''Нх)Чх; л\ ( ^4—1 "^ ^д\ ., коэффидаенты при младших производных р"{ » 1 при j<2p обратились в нуль. Путем довольно громоздких' вычислений можно установить, / Og-i + aq \ что Кр[х = , Я1 не меняет знака при а^_, <х<а^. Применяя теорему о среднем, имеем: г^Ш^/'^^Чг?) J K,{^-^^^^.ff)dx. C) "«-1
166 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. Ill где flg-i^Sj^^ij" Оказывается, что V. После суммирования C) получим ' /(/)-5^?(Л = -Y2pЯ^''£2p; величина м заключена между (В - А) min fP^ (х) и {В-А) max f"^ ix) \А, В] [А. В] И, следовательно, равна (В — А) f^^^ A,р)> где А^1,р^В. Окончательное представление погрешности: / (/) - S^f (/) = - Ya/^"' (Sp) Н^" (В - А). Для сведения приведем значения 111 1 Y2 — , о > V4 70П ' Ve — on 0/1П ' Ye 12' ^' 720' '^° 30 240' ^^ 1209 600' = ——!—— "^■""^ 47 900 160* При реальных вычислениях использование формул Эйлера несколько неудобно в связи с необходимостью вычисления не только значений функции, но и значений ее производных, В выражении S'^^if) заменим производные Р''-')(Л) и /^B''-')(В) производными интерполяционных многочленов степени / с узлами flo, ..., й; и а^, ..., un-i, соответственно. При /=2/j—3 и I = 2р—2 после проведения промежуточных преобразований мы получим формулы численного интегрирования Грегори Ом (/) = S^ (/) + Я2 рА (V*/ (ам) - (- 1 )* А*/ (ао)). где 1 ft _/ 1^*+' Г х(х-1) ...(x-k) , Р*-(-1) J l^TTYl '^^^ iB частности, ч И' *'^~~'24' НЗ — — 720" • ^* 160"' 863 _ 275 60 480 • Рб ^ 24 192 " й- ' ft— ' й_'9 ft_3 Pi—~ 19 • Р2— 2?' Рз—~20"' Р'' R — _ 863 _ 275 РЗ fin 4ЙП • Рб
§ 131 ПРАВИЛО РУ11ГЕ ПРАКТИЧЕСКОЙ ОЦЕНКИ ПОГРЕШНОСТИ 167 Главный член погрешности квадратуры Грегори I (f) i=i G'm {f) есть р,„я'+Ч/"+'Чв)-(-1)'+'Г'>(Л)). Задача В предположении, что сказанное ранее верно, доказать справедливость последнего соотношения Поскольку реальные подынтегральные функции имеют различный характер поведения производных в различных частях отрезка интегрирования, то в современных стандартных программах численного интегрирования обычно применяются различные способы интегрирования с автоматическим выбором шага (см. §§ 17, 18). Поэтому область применения формул Эйлера — Грегори сузилась по сравнению с периодом, предшествующим применению ЭВМ. Однако они находят себе приложение при интегрировании функций, заданных таблично, вычислении неопределенных интегралов, при решении интегральных уравнений Вольтерра и в других задачах, где существенно, чтобы значения подынтегральной функции вычислялись именно на равномерной сетке. § 13. Правило Рунге практической оценки погрешности Мы получили соотношение A1.6) и ряд его следствий, на основании которых можно судить о величине главного члена погрешности. Однако непосредственное вычисление интеграла 1 /Cm = -^ J /""* (Ф @) (Ф' @)"^' dt, A) О характеризующего главный член погрешности, довольно обременительно. В практической работе обычно идут по несколько иному пути. Зададимся некоторыми М\ и М2, Mi <i Mq и произведем дважды численное интегрирование с разбиением отрезка интегрирования на части [ф (^) , ф(^)] и [ф(^), ф(^-)]. соответственно. В результате получим приближенные значения интеграла S^iAf) " ^мЛ!)- Согласно A1.6), имеем /(П-5д,,(/) = /(„Л1Г'" + Рд,, iif)-s^^(f) = K^Mr + P^, где рд, = о(Л1~'"). Предположим Km Ф 0. Если бы в этих соотношениях отсутствовали величины р^^ и р^, то получилось бы два уравнения с двумя неизвестными /(f) и Km, которые можно
168 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ ГГЛ HI было бы определить; в противном случае можно получить лишь некоторые приближения к ним. Исключая /(/), получаем соотношение для определения Km' 5м. (/) - Sm. (/) = Kj^Mr - Af-"•) + Рм. - Рм, Отсюда таким образом, погрешность квадратуры SM^if) может быть представлена в виде + Р. /Ш-5^,(/) = /^.Л1Г + Рл,,= _, ■^мЛ^)~'^м, Ш _|_ Рм,-Рм, Первое слагаемое можно вычислить. Если оно является главным членом погрешности, то можно считать, что /(/)—5мгA)^ z\, и использовать величину Z\ как оценку погрешности. Оценка погрешности через величину z\ носит название правила Рунгв. Чтобы z\ было главным членом погрешности / (/) — Sm, (f), имеющей порядок Af2"", необходимо выполнение условия Рмг ~ Рм, z„ — Если, например, Afa-^ MiX, где Л> 1, то о 22 = —; (^ + 0{МП = 0{МГ), и требуемое условие выполняется. Если имеется более сильная оценка для величин р„, то соотношение /(f)—Sj^ (/) « zi будет выполняться при более слабых предположениях о соотношении между Mi н Мг. При вычислении однократных интегралов типичен случай, когда р^=0(М-'"-'). D) Тогда
^ 13] ПРАВИЛО РУНГЕ ПРАКТИЧЕСКОЙ ОЦЕНКИ ПОГРЕШНОСТИ 169 Предположим сначала Afj/Afi -> 1; согласно соотношению (I + е)™ — 1 ^ em при е -> О имеем (*r-~"(-t-)- Тогда '-''(мг.(-к-.))^°(^)"°A^^Г^^> ''• Таким образом, при условии Afj/Afi ->■ 1 для выполнения C) достаточно, чтобы Мг — Af 1 ->■ 00 при Мг -*■ оо. Пусть Afz/Afi -*■ оо, тогда т. е. для выполнения C) достаточно, чтобы Afi -♦■ оо. Объединяя оценки E) и F), получаем 22 = 0 I max/ , 1——\. Таким образом, в случае D) для применимости правила Рупге достаточно выполнения условий М„ Мг-М,>1. G) Задача. Показать, что при р^у= ©(Af"""*) для применимости правила Рунге достаточно выполнения условия Afi ^ 1. Может случиться, что величина Km, определяемая равенством A), равна нулю или очень мала. Тогда при реально используемых Af сл-агаемое КтМ-'^ не будет существенно больше по модулю, чем рдг, и проводимые нами построения будут выглядеть как довольно сомнительные. В этом случае при оценке погрешности через величину Zi зачастую будет создаваться превратное представление о величине погрешности. Если Zi является главным членом величины КтМ2"^ и 22 = = o(AfJ'"), мы имеем право написать равенство /(/)-(V(n + 2,) = o(Al2-'"). (8) т. е. величина Smj (/) + zi дает лучшее по поряХку приближение к исходному значению интеграла. Существуют различные процедуры вычисления интегралов, опирающиеся на использование правила Рунге. В одних случаях задаются некоторыми Mq в Х> I и последовательно вычисляют Sm^Q) при Affe = [Afo^*], k = 0, 1, ... После каждого вычисления величины Sm/^ if), k> О, определяют соответствующую величину
170 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ (ГЛ. И1 И Проверяют, будет ли выполняться условие \zi\ < е, где е — заданная точность. Если при некотором k = I это условие выполняется, то величину 8м,(!) или 8мЛ!)-\-^\ принимают зй приближенное значение исходного,интеграла. Против этой методики часто выдвигается такое возражение: если значения 8м^ if) при различных k вычисляются независимо, то происходит большой перерасход работы вследствие вычисления большого числа «ненужных» значений 8м^ if)- На самом деле, этот перерасход не является столь катастрофическим, как это кажется на первый взгляд. Объем работы при вычислении каждого значения 8м^ (f) пропорционален Mk ^ ^-^ MqX'^, общий объем работы пропорционален ^ МоХ' = Мо ^'1'_~ ' ~ Afoffj-. (9) Если относить к «полезной» работе только работу по вычислению 8мЛ!)у то доля «полезной» работы будет paBjje отношению МоХ к Л1 о . _ . , т. е. 1 — Л, . Если относить к «полезной» работе также работу по вычислению значения 5л{,_, (/), необходимого для оценки погрешности, то доля полезной работы равна отношению MoX^-]-МоХ'~^ к Мо ^_ ^ , т. е. 1—Х~^. Чтобы нейтрализовать высказывания возможных оппонентов о большом объеме ненужной работы, можно привести следующий довод: возьмем X = 10; тогда доля полезной работы составит 99%. Такой прием обосновывать эффективность метода, подсчитывая высокий процент «полезной» работы, обычно выглядит убедительным, хотя и не является правомерным. Качество метода должно оцениваться по общим затратам, а не долей полезной работы. По-видимому, описанная выше процедура вычисления интеграла не является наилучшей; однако будет поучительно рассмотреть вопрос о правильном выборе параметра X для этой процедуры. Чтобы упростить анализ вопроса, сделав его возможным, будем считать что погрешность R/^^{f) удовлетворяет условию R^{f) = К^М'""; тогда г* в точности равно К^М^'". Пусть k — наименьшее целое, для которого \Кт\{МаХ'^)~"'<е. Последнее соотношение эквивалентно неравенству Отсюда (\Кт\\] m
§ 131 ПРАВИЛО РУНГЕ ПРАКТИЧЕСКОЙ ОЦЕНКИ ПОГРЕШНОСТИ 171 Это соотношение удобнее записать в виде -(W)-bf/Wf' где, как обычно, {у} = у — [у]- Общий объем вычислений, согласно (9), пропорционален 1 / I К_ I \ f "* ГЛГГГ \ МоЯ* '-^ — II т '•Лк-Г"\ 'Ч ■-чу - (^ «у. / ■Ч От величины к зависит второй множитель \Кп JW^'e gW- '-т поскольку ничего не известно о величине l/fml, то нужно сделать уточнение постановки. Первый возможный путь — пот^)ебовать минимальности по к величины max g{X) = gi (Я) =■ Непосредственное исследование показывает, что величина gi{X) принимает наименьшее значение 4 при Я = 2. Другой путь — это исследование статистики поведения величины §(Я). Статистика отмечает следующий факт: если мы зададимся произвольным Я > 1 и из различных независимых источников получим некоторые числа у, то величины {log,y} будут асимптотически равномерно распределены на [О, 1]. Величина записывается в виде im т \ Задаваемые нами значения точности е нельзя считать случайными, поскольку мы привыкли задавать их в определенном виде, например е = 2"', е = 10"" или е = 0,5 • Ю-'. Значение Мо также нельзя считать случайным вследствие наличия подобных привычек. Однако величина V\ Km I может
172 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. 111 рассматриваться как таковая, поскольку Km характеризует главный член погрешности различных задач. Поэтому будет естественно предположить, что величина у равномерно распределена на [О, 1]. Тогда e2W = M(gW) 1 ll-B dy = '-Т In Я,' Непосредственно проверяем, что наименьшее значение ег{Х), равное е, достигается при X = е. Возникает нопрос, какому подходу отдать предпочтение. Если мы имеем дело с большим числом задач, то при прочих равных условиях будет более разумным второй, статистический подход. В данном случае имеем таблицу значений я. 62 W i,s 4,5 3,699 2 4 2,886 2,718 4,300 2,718 3 4,5 2,730 4 5,333 2,886 8 9,143 3,848 16 17,667 5.772 Отсюда 1.075. gjB) ?2(e) = 1,062. Мы видим, что при замене точки экстремума одной функции gi{X) на точку экстремума другой значения функций изменяются несущественно. Наиболее предпочтительными значениями X являются 2 или е, однако в данном случае не столь существенно, какое из этих двух значений следует выбрать. Хотя X ^ е статистически более предпочтительно, А. ^ 2 является традиционным и имеет некоторое преимущество в отношении накопления вычислительной погрешности. Традиционно при вычислении s-кратных интегралов при переходе к большему числу узлов это число увеличивают в 2' раз, что соответствует Я ^ 2'. Мы видим, что при s = 1, 2 этот выбор приемлем по отношению к статистической оценке, а при s > 2 становится менее удачным. Другой путь пспопьзования правила Рунге заключается в следующем. Производим интегрирование с относительно небольшим числом узлов Ml и Мг и затем определяем величину Km- В одномерном случае обычно берут Afj/Mi = 2. Затем из уравнения |/(т|Л1-'п = е определяем-требуемое число М = Мз и осуществляем интегрирование с Мз отрезками разбиения. Затем контролируем точность результата, применяя правило Рунге (если оно является законным) по результатам расчетов с Mq и Мз узлами. Если при данных Л^г и Мз применение этого правила является сомнительным, то с целью получения представления о погрешности производим расчет еще при каком-либо числе отрезков разбиения М4. В случае если точность оказывается неудовлетворительной, по результатам Sm, и Sm, -пересчитываем новое значение Km и затем новое требуемое число отрезков разбиения М = М^. При выборе оптимальной стратегии этого
$ 131 ПРАВИЛО РУНГЕ ПРАКТИЧЕСКОЙ ОЦЕНКИ ПОГРЕШНОСТИ " 17» алгоритма надо иметь в виду следующее: может быть, стоит завышать значение М по сравнению с решением уравнения \Кт\М~^= г, чтобы избежать лишнлх пересчетов. Сформулируем правило выбора критерия практической оценки погрешности. Пусть и — решение задачи, Ып — получаемые приближения, lim ц„==ы. За погрешность приближенного peri-* оо шения принимается некоторое выражение Vn, удовлетворяющее условию 1"п.—"I при п-*оо. Очевидно, | f п | '^ | «п — и |. в рассматриваемом случае задачи численного интегрирования за меру погрешности, удовлетворяющую этому условию, мы можем принять величину Zi, если только Z2 = o(zi). Однако соотношение J(f) — Sm@~^i является лишь асимптотическим, а применяется при конкретных Mi и Afa; поэтому в особо ответственные? случаях прибегают к способам проверки его реальной выполнимости. Например, в описанном выше случае, когда последовательно вычисляются величины Sm^ (f) при Afj = MqX\ имеем SM,(f)-SM,_,(f) = = (/(/)- Sm,_, («) - (/ if) - Sm, if)) = Если число узлов настолько велико, что член о{МТ'^) существенно меньше, чем Кт{'^'^ — О^Г", то СО, 5м,(П-5м,_,Ш КЛ^'"-1)МТ По близости величины т к X~"^ можно судить о возможности ограничиться при оценке погрешности величиной zi. Прн решении одной задачи предъявлялось требование обеспечить высокую точность и дать гарантию, что эта точность действительно достигается. Вследствие некоторой специфики задачи применение стандартных программ было невозможно и применялась интерполяционная квадратурная формула (см. § I), соответствующая т = G, с дроблением отрезка интегрирования па части. Последовательно производились вычисление интеграла при числе отрезков дробления Af* = 2* и оценка погрешности по величине zf, однако требуемая точность пе достигалась даже при очень большом числе узлов. Была сделана попытка проверить применимость асимптотической оценки по поведению величин соь Оказалось, что величины coi быстро приближались к значению 'Л- Возникло предположение, что в программе вместо квадратуры, соответствующей порядку сходимости m = 6, по ошибке стоит
174 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. ИГ квадратура, соответствующая порядку сходимости m = 2; так оно р оказалось. В другом подобном случае величины at группировались вблизи значения ^/з вместо того, чтобы стремиться к значению 2"*. Попытки отыскать ошибки в программе оказались безуспешными. Оказалось, что подынтегральная функция интеграла f (х) dx имела вид g{x)l^x-{-6, где б>0 очень о малое, а g(x)—гладкая. При разбиении отрезка интегрирования на равные части для такой функции погрешность действительно ведет себя как М-^, по при очень больших М. При реальных М она ведет себя как М~'' и, следовательно, величины ш должны быть близки к 2""''. В этом случае проверка применимости правила Руиге по признаку ац-^2'^ была крайне полезной: оценка погрешности по правилу Рунге оказывалась примерно в 20 раз меньше действительного значения погрешности, и если бы не была предпринята такая проверка, результат вычислений имел бы недопустимо большую ошибку. Приведем пример удачного применения правила Рунге. Вычислялась серия из большого ^числа однотипных интегралов, причем в каждом случае требовалась определенная гарантия малости погрешности. Было решено вычислять эти интегралы по первой из описанных выше процедур, с оценкой погрешности по правилу Рунге. Чтобы избежать недоразумений, подобных описанным выше, было выбрано несколько десятков типичных интегралов, проведены вычисления и выведены на печать таблицы значений ац. 'Величины coi довольно хорошо сходились к пределам, нз чего был сделан вывод о применимости правила Рунге при решении задач данной серии. § 14. Формулы Ромберга Если подынтегральная функция достаточно гладкая, то погрешность квадратурной формулы может быть представлена в виде Rfлi!)=liD,{f)M-^'^ + г{M), A) где г, < ... <ii, г(М) = о(м"'0. Например, в предположении ограниченности /(^'"+2)(д;) погрешность ф"ормулы трапеций, согласно A2.2), представляется в виде «м (/) = - S Y« (Цг-)'"(!"'-" т - Г-" (А)) + Обычно при гладкой подынтегральной функции «2 — Jj = ... = h — h-i = s,
§ И] ФОРМУЛЫ РОМБЕРГА 175 где S или 1, или 2. Предположим, что произведено вычисление Sm(/) при значениях М = Mq, ..., Mi. Мы имеем равенства ^ (/) = 5л,, if) + 2 D, if) М7'* + г {М,), j = 0, ...,1. Образуем линейную комбинацию этих соотношений с некоторыми коэффициентами Cj, потребовав, чтобы ic, = l. B) Получим соотношение /(/) = 2 c,s^ (/) + 2 Д, (D 2 с.мр + 2 с/(МЛ. /=о ' "Ч k=\ \/=о ' ' J 1=й ' ^ " Предположим, что выполняются равенства 2с,.М7'* = 0 при k=\,...,l; C) /=о J ' тогда / / /(f)=2c;SM,(/)+2c,r(M,). D) Если величина ^CiriMA пренебрежимо мала, то можно по- 1=0 ложить /(f)-2c/SM,(/). E) Такая квадратура называется формулой Ромберга. Система соотношений B), C) образует систему из /-}- 1 линейных уравнений с /+1 неизвестными, н поэтому есть основания ожидать, что она имеет решение. Обратим внимание на связь между задачей решения этой системы и задачей интерполяции. Пусть, например, как для формулы трапеций. Перепишем это соотношение в виде Qi (М-') = Sm (/) + г (М), где Q, {у) = l{f)-^ D^y\ F) ft=i Из рассмотрения F) видно, что задача нахождения /(f) может формулироваться следующим образом. Заданы приближенные
176 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. Ml значения многочлена Qi{y) при у = Мо^, .,., МТ^ требуется определить значение Qi{0) = /(/). Согласно интерполяционной формуле Лагранжа (§ 2 гл. И), имеем От,сюда Qm = yiC,Qi{y,), где c,= Y[j^, у, = МТ\ G) и следовательно, / / t I (/) _ Q, @) = V c,Q, (г/;):= 2 c,Sm if) + S с;г (М,). I=Q /=0 ' /=0 Мы получили то же соотношение D), причем одновременно получили в явном виде значения коэффициентов Cj. Приближения E), которые мы получили, представляют некоторые квадратурные формулы. • Пусть для определенности Su — формула трапеций, / = I, Mi = 2Мо. Согласно G), имеем 1 J^ _ 1 4 fo— j_2^— -3' "' ,_/1\2"' Тогда E) имеет вид ^^D^(^) + ¥К^ + т)+1^(^ + ^^+ ••• +Ь'^^^)^ (8) гд? Н = {В — A)/Mq; таким образом, в правой части мы получили формулу Симпсона. Пусть 1 = 2, Afi = 2Afo, Af2 = 4Afo. Тогда со = -7г-, С| = ——, тО У 64 Эта квадратура шестого порядка точности совпадает с квадратурой F.4) при ■Од — Qq-i^H, если для вычисления интегралов по элементарным отрезкам интегрирования применяется формула B 10). Точно так же квадратуру (9) можно получить, если прибавить к квадратуре- Симпсона с Mi = 2Ма отрезками разбиения ее уточнение по правилу Рунге при Мг = 2AJi.
14] ФОРМУЛЫ РОМБЕРГА 177 Применение правила Ромберга дает некоторые преимущества по сравнению с непосредственным применением составных квадратур. Например, пусть мы задались какой-то квадратурой, вычислили и выдали на печать значения 5^j2»(/)i ^ = 0, .... /, но нужной точности еще не достигли. Тогда можно попытаться получить приближение к интегралу, применив правило Ромберга по некоторой совокупности значений 5д^2«(/), 'M„V '(f), и для контроля точности применить это правило по совокупности значений Наиболее распространенная стандартная программа метода Ромберга устроена следующим образом: задаются некоторым Mq и последовательно вычисляют приближенные значения интеграла по формуле трапеций / (/)«« S^j (/) при Мд отрезках разбиения: Mk^ M(i•2^^. Целесообразно вести вычисления по формуле Ми A) 5мЛ/)=тЯ-,(/) + В-А Ми S'(' 2/-I Ми /=1 (В-Л)), При каждом k после вычисления Sm^ (/) последовательно вычисляют ^Mk (/)> Mft-H) (/) по рекуррентной формуле s^l if)=5Й1"'(/) + ~{st,' (/) - 5^l!!. @). . Таким образом, последовательность вычислений определяется схемой сС) -sii! :B> .(/) г и) ■ ш Sm, fjj ~CI
178 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ 1ГЛ П1 Вычисления значений 5!и^(/) обычно продолжаются до тех пор, пока при некотором k не окажется mm\S'^J)-S%\_^{f)\<e. Задача. Показать, что 5у (/) есть результат применения правила Ромберга к значениям 5!i',(/).....s<->^_^^,(/). в частности, величина SjJ {/) совпадает с результатом вычислений по фор- муле Симпсона, а 5J^' {/) — по формуле (9). Метод Ромберга широко распространен в западных странах, в частности, он является одним из наиболее рекомендуемых в системах стандартных программ фирмы IBM. § 15. Эксперименты и их обсуждение Рассмотрим один пример применения результатов § 1^. При решении задачи последовательно вычислялись некоторые приближения Sa(j с числом узлов Mk = 2^ Погрешность решения оценивалась по близосТчИ последующих приближений \5мк ~ ^^k-i \- Оказалось, эта величина стремится к нулю очень медленно и реальный порядок сходимости, по-видимому, 0(M~^). В то же время конкретные условия решения задачи требовали применения метода с порядком погрешности 0{М~^); в данном случае под конкретными условиями мы имеем в виду следующее: требуется решение большой серии задач при заданном ограничении на время решения; это определяет максимальное число операций, допустимое для вычисления отдельной задачи серии. Естественно было произвести уточнение по правилу Рунге, совпадающему с уточнением по Ромбергу при / = 1, предположив, что Тогда соотношение A4 5) принимает вид / (f) «=' Sm^ = 25mj — 5mj_, . A) Погрешность решения оценивалась по разности последующих приближений I 5м|; — 5а('^_ J . Однако она также стремилась к О, как М~\ и желаемого ускорения сходимости не получилось. Поэтому требовался более тщательный теоретический анализ погрешности. Он показал, что погрешность приближенного реше-
§ 15] ЭКСПЕРИМЕНТЫ И ИХ ОБСУЖДЕНИЕ 179 КИЯ качественно ведет себя, как погрешность при вычислении I интеграла Г/(х) dx по квадратуре о м для f{x) = g(x)\nx; ^(а;) —гладкая, g@)#0. Иначе говоря, задача вычисления этого интеграла была выбрана как модельная задача. Можно показать, что в этом случае Подставив Mfe = 2*, получим с /f\ < с /f>_ Д1 logg Affe-i , Dj (Di log;Mk I Di] ^,о(-^у^^ф!^,о1^). Это соотношение соответствует экспериментальному убыванию величины Smi^ — Sм^_^, как l/Mk- множитель log2 Мб изменяется много медленнее, чем \/Mk, и его наличие трудно обнаружить Образуем величины имеем Sm^ if) = Hf)— "мй' ~ ~мГ + ' Mk~ A) ,f. _T/f\— 2Д1 loga Mk _ 2Di _L Д, loga Mfe-, ^ Dj Таким образом. По отной1ению к приближениям S/Jif) выполняется соотношение A4.1) при /=1. Мы имеем основания применить правило Рунге — Ромберга. Образуем приближения SJS', (/) = 2S{i*, (/) - S^',_, if) = 4Sm, if) - 4S,M,_. (f) + Sm,_, if).
180 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ (ГЛ. Ill Для ЭТИХ Приближений имеем /( '(f)-s^l(f) = o(^-^^y Точно ту же квадратуру S^if) можно было бы получить следующим образом: напишем равенства / (/) = Sm, if) + ^' '^g; ^^+■^ + r (МЛ, i = k-2, k-l, k. Подберем C/ и составим линейную комбинацию этих равенств, чтобы получить соотношение / (П = 2 c,s^ {п + 2 с,г {Мн-д. /=о " ' /=о Теоретический аналлз показывает, что в случае вычисления рассматриваемого интеграла выполняется соотношение /?мш=-^^^+1+^^^+^+о(^^1^): B) Возника^ет мысль использовать это соотношение для дальнейшего повышения порядка точности квадратур. Однако прежде, чем пытаться повышать порядок точности, используя такое асимптотическое соотношение, полезно проверить, выполняется ли оно с приемлемой точностью при реально допустимых значениях М. Для подхода к этому вопросу есть два пути. Можно постараться подобрать модельную задачу с известным ответом, близкую к рассматриваемой. Тогда после проведения расчета мы будем иметь в распоряжении приближенное значение Sm и ошибку Rm = I — Sm- Может случиться, что имеются какие-то предположения о характере поведения этой величины, например, что \м const • М"". C) В таком случае можно подсчитать для некоторой последовательности Mh значения M'hRm^ и посмотреть, стабилизируются ли эти величины с ростом М. Если не имеется предположения о характере поведения погрешности в данной задаче, то можно применить следующую методику.
15] ЭКСПЕРИМЕНТЫ И ИХ ОБСУЖДЕНИЕ 18t Возьмем координатную плоскость In Af, In f-r-^j (рис. 3.15.1); нанесем на нее точки (In Мь, \п-7-=—г). Если эти точки рас- положены хаотически, то, значит, числа Мь не настолько велики, чтобы в погрешности выделился главный член. Предположим, что асимптотическое равенство C) в данной области изменения параметра М выполняется с большой точностью. Из C) следует, что 1 ■т In М; In после имеем: R м дифференцирования dln\ ^м rflnM •^ т. D) Заметим, что операция дифференцирования асимптотических равенств, вообще говоря, незаконна. Согласно D), в случае,, когда C) выполняется достаточно точно, точки Mfe, In-j-p—rV получае- hM, (,„ \R Рнс. 3.15.1. Mb мые в результате эксперимента па ЭВМ, должны лежать на плавной кривой, наклон которой стремится к т. Близость наклона этой кривой к постоянному характеризует точность выполнения асимптотического равенства Rm '^ const•М-"^. Если наклон кривой резко меняется, то, значит, еще нет основание применять правило Рунге. В частности, случаи /?А, ^ const • -^^-гг- и Rm~ const М практически неразличимы при таком рассмотрении, потому что ■1 .rfin оба раза R м 'dlnM -* 1 при М—*-оо. Проверку справедливости предположения о характере поведения погрешности можно осуществлять и таким путем. Если
182 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ 1ГЛ. III справедливо равенство ^м-м т 1 E) то „ „ с A-я-'") С другой стороны, если F) выполняется при М '^ Mq и Sm —* Л то будет выполняться и E). Поэтому вместо проверки практической выполнимости E) можно производить проверку практической выполнимости F), в частности, при помощи изучения Графиков функций g{M) = {S^fк — Sм)M"^ или расположения точек С" "ft"' "'ftl в рассматриваемой задаче точки G) при X = 2 лежали па плавной кривой с наклоном примерно I. Отсюда был сделан вывод, что рассматриваемый метод имеет первый порядок сходимости. Для уточненных значений ^д]' расположение точек имело тот же характер. Такое непопятное поведение погрешности побудило к рассмотрению модельной задачи и построению нового метода / (/) « 5]^' (/). Так как точки G) и (8) лежали на плавных кривых, то были основания надеяться, что выделение и устранение главного члена погрешности указанным путем приведет к увеличению точности. Чтобы надеяться на увеличение точности при выделении и устранении членов —^^-тй и -щ- в главном члене погрешности формулы /(D'^S^M^f)' нужно быть уверенным, что они действительно являются главными при употребляемых значениях М. Для этой цели ^ыло построено множество точек ("■'°ж=ж)' Для практически достижимых в условиях этой задачи значений М в расположении этих точек не наблюдалось никакой «плавности» и закономерности. Это означало, что надежды на дальнейшее повышение точности для этого метода являются необоснованными. На рис. 3.15.2—3.15.5 изображены графики зависимости погрешности от числа узлов при вычислении различными методами интегралов от функций с типичными особенностями. Л^ — общее
151 ЭКСПЕРИМЕНТЫ И ИХ ОБСУЖДЕНИЕ 18J ЧИСЛО узлов интегрирования, Rn — погрещность. Численное интегрирование производилось с помощью стандартных программ интегрирования с автоматическим выбором шага (см. § 18). На графиках Л^ — общее число узлов, Rn — погрешность интегрирования; графики, отмеченные буквами Ли, соответствуют расчетам, где для вычисления интегралов по элементарным отрезкам -^3 /?. Рнс. 3.15.2. Применялись формулы Лобатто с k узлами; график, соответствующий формуле Лобатто с тремя узлами, совпадающей с формулой Симпсона, помечен С; отрезок интегрирования [О, 1]. Из рассмотрения рис. 3.15.4 особенно четко видно, что формулы более высокого порядка точности могут оказываться менее эффективными по сравнению с формулами низкого порядка точности. Из рассмотрения этих рисунков также видно, что при малых Л^ графики погрешности могут иметь довольно сложный вид и не являться графиками гладких функций; в последнем случае применение правила Рунге для практической оценки погрешности является неоправданным. Полезно указать на следующую практически важную деталь. Если решение задачи содержит какие-то неисследованные особенности, ухудшающие сходимость методов, то лучше сразу выделить простейшую модельную задачу, содержащую эти особенности, и провести выбор метода и проверку применимости
-iq \R,\ k S в 7 6 5 3 г f 0 7 Ло^ьрЛ f(x\-me-""' 2 3 Рис. 3.15.3. 7 logj/V rfa/'-lnx ^ Рис. 3.15.4. 7 -J log^/V
§ 161 ВЫЧИСЛЕНИЕ ИНТЕГРАЛОВ В НЕРЕГУЛЯРНОМ СЛУЧАЕ 185 различных асимптотических критериев на этой задаче. Этот путь обычно приводит к более быстрому пониманию существа вопроса и избавляет от необходимости проведения многочисленных экспериментов на самой исходной задаче. В частности, достигается l\ 0- -0,5 J_ 8 Рис. 3.15.5. ЭКОНОМИЯ при Программировании задачи, в машинном времени и упрощается исследование за счет возможности построения более представительных графиков поведения погрешности — мы имеем возможность получить больше точек G), (8), поскольку для простой задачи их получение менее трудоемко. § 16. Вычисление интегралов в нерегулярном случае Существенную часть реально встречающихся подынтегральных функций составляют функции с особенностями у них или у их производных, или функции, производные которых очень велики. Если такой нерегулярный характер поведения подынтегральной функции не вызывается колебательным характером
186 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. IH поведения, неплохой результат дают стандартные программы интегрирования с автоматическим выбором шага, которые будут обсуждаться в § 17. В случае малой серии интегралов с особенностями обращение к этим стандартным программам может оказаться способом решения задачи с наименьшими затратами. Вычисление большой серии интегралов с особенностями может потребовать привлечения внимания исследователей более высокой квалификации. Укажем ряд приемов, которые могут оказаться полезными при рассмотрении этого вопроса. 1. Выделение весовой функции. Пусть вычисляется интеграл ь \f{x)dK, где а ц. b могут быть и бесконечными. Представим подынтегральную функцию в виде i{x)=^ g(x)p{x), где р{х) — достаточно простая, а g{x) — гладкая. Далее применяем какой- либо из рассмотренных ранее способов вычисления интегралов с весом. Рассмотрим некоторые примеры. I Пусть вычисляется . ^ . Представим f{x) в виде -; функция —j==^ является гладкой. Функ- цию —. можно рассматривать как весовую. Этой весовой функции соответствует квадратура Эрмита. Пусть вычисляется f{x)dx, rjs.&f{x) может быть представ- 0 лена в виде g(x)x^^, где— 1 <а< 1, g'(j;)—.гладкая, g'(O) =?^о. При вычислении интеграла по формуле трапеций с постоянным шагом Я= М~' погрешность стремится к нулю медленнее, чем М'^. Один из возможных способов — обращение к квадратурам Гаусса, соответствующим данной весовой функции. 2. Можно пойти по пути разбиения интеграла на части и вычисления интеграла по каждой части при помощи пострдений из § 1. Представим интеграл в виде м чн М в=1 (?-1) Н М чп / = 5]/,. /,= J gix)x<'dx, Я = - Заменим g{x) на интерполяционный многочлен Р(„ W = g ((</- 1) Я) + (. - (, - 1) Я)-<^М).:1М£:^!Ш1.
§ 16] ВЫЧИСЛЕНИЕ ИНТЕГРАЛОВ В НЕРЕГУЛЯРНОМ СЛУЧАЕ 187 получим Л- (9-1) я vo+l , , va+2 Суммируя по 9 правые части A), получим {квадратуру для вычисления исходного интеграла. В ряде случаев будет удобнее положить giqH)=iqH)-'^f(qH) и, таким образом, получить квадратуру, имеющую вид I^IiD{q,H)f{qH). B> Задача. Для квадратуры B) получить оценку погрешности const • max | g" (х) I М~^. [0. П: А Далее будут рассмотрены более простые по виду способы вычисления интегралов с особенностями. Описанный выше способ аппроксимации интеграла по значениям функции на фиксированной, в частности, равномерной сетке обладает определенными преимуществами, например, при решении интегральных уравнений путем сведения к решению системы алгебраических уравнений. В некоторых случаях, важных для приложений, необходимая точность уже достигается, когда g{x) заменяется на отрезках разбиения на постоянную. В этом случае полагаем ч ч j g{x)p (х) dx^ g (?,) J p (x) dx, и квадратура для вычисления исходного интеграла приобретает вид 1 М "q jgix)p(х) dx^^g(Q J p(X)dx. C) 0 - - fl=l a,_,
188 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. III Пусть вычисляется интеграл I ' = J b^ + x^ *'*• * ~ "^■"°^- о Задача. Показать, что при вычислении интеграла по формуле трапеций с постоянным шагом flj — а^-\ ^ Н = Af-' погрешность оценивается через const. min(-i^,-^). D) При aq — Uq-i ^ Н квадратура C) приобретает вид м в=1 где {q-{)ff^^g^gH. Задача. Получить оценку погрешности const • max I g'(*) I Л1~'. [0. И В рассматривавшихся выше случаях коэффициенты квадратур записываются в виде интегралов J Pi(x)p{x)dx, где Pi (д:):—некоторые многочлены; эти интегралы вычисляются в явном виде. Для ряда классов задач, где эти интегралы не вычисляются в ^вном виде, может оказаться разумным найти ^ти интегралы при помощи численного интегрирования. Эта дополнительная работа оправдывается, если получившиеся формулы используются многократно, например, при вычислении большой серии интегралов, при вычислении кратных интегралов как повторных (см. гл. V), при решении интегральных уравнений. 3. Пусть теперь вычисляется I Ia>if) = j fix)exp{i(ux)dx, о где (О — большое, ^(д;) — достаточно гладкая; будем рассматривать функцию ехрA(йд;) как весовую. Представим интеграл в виде М qH / = 2^«' ^"^ ] fix)exp{i(^x)dx, для вычисления интегралов /, применим квадратуру типа E.2).
§ 16] ВЫЧИСЛЕНИЕ ИНТЕГРАЛОВ В НЕРЕГУЛЯРНОМ СЛУЧАЕ 189 Задача. Для этого способа интегрирования получить оценку погрешности [0. И где Dn не занисит от ш. 4. В ^(екоторых случаях подынтегральную функцию можно в представить в виде f{x) = G(x) +g(je), причем J G{x)dx бе- л рется в явном виде, а g(x) —гладкая. Пусть вычисляется интеграл I=jfix)dx, f(x) = -^. E) о Возьмем G(jc) = lnje. Тогда / > Х^\П X ffW = -T+ir; I величина \ \ g" (x)\dx будет конечна, и поэтому погрешность о 1 вычисления интеграла Г g (х) dx по формуле трапеций с постоян- 0 ным шагом а, — a,j.,i = М~' имеет порядок 0(м~^. Чтобы погрешность формулы Симпсона имела порядок 0{м~), следует взять G(jc) = (l — ^c^)lпJC, В случае /(л:) = (jc^ + й^)"*ехр jc, Ь — малое, целесообразно взять О (л:) = (Выч. / B)) {х - W)-' + (Вы^. / (z)) (л; + 6/)-'; достигаемое здесь расширение области аналитичности подинтег- ральной функции особенно эффективно (C.8), D.10.1)) в случае использования формул Гаусса. 5. Другим способом устранения особенности подынтегральной функции является замена переменной интегрирования. При замене переменных дг = ф(/), ф@) = 0, фA)= 1 исходный инте- 1 грал I =\]{x)dx преобразуется к виду о 1 \g{()dt, F)
190 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ (ГЛ. 1Г1 где За счет множителя ф'@ происходит устранение особенностей подынтегральной функции в отдельных точках. Произведем в интеграле E) замену переменной х = t^^, тогда получим Г Л*-'In/., о 1 при й>2интеграл \\g"{t)\dt конечен, и следовательно, по- 0 Грешность формулы трапеций имеет порядок 0{М-^). С увеличением k растет порядок производных g^KO» Д-^я которых инте- I грал \ \ g^'^'^ (i) \ dt ограничен, и поэтому можно применять квад- 0 ратуры все более высокого порядка точности. Однако если k — очень большое, то производные функции (t) хотя и конечны, но очень большие; поэтому должна соблю- аться определенная пропорция между величиной k и числом узлов Л^. Необходимость соблюдения осторожности при употреблении очень больших k видна хотя бы из следующего. Постоянный шаг tg — tg-.\=-jr в интеграле F) соответствует узлам интегрирования й<; = Ф ("S") = (~^) ^ исходном интеграле; поэтому при больших k ис- х„ x,g x,g пользуется мало значений подынтегральной функции в правой части отрезка Р , , (рис. 3.16.1). <p(t)'-t, м-20 g_ j^a^ ^ц yjjjg видели Рис. 3.16.1. в § 10, К повышению скорости сходимости при вычислении интегралов от функций с особенностями приводит также оптимизация распределения узлов интегрирования. 7. В некоторых случаях приходится идти по пути сочетания некоторых из описанных способов. Пусть вычисляется интеграл 1 , \ g{^) ■*^° ^хр {тх) dx, о где (О —большое, g(л:)—гладкая, ^(О):,^ О, |а,< 1. Наличие мно- 1 1 t ♦ I I
§ 151 ВЫЧИСЛЕНИЕ ИНТЕГРАЛОВ В НЕРЕГУЛЯРНОМ СЛУЧАЕ 191 жителя ехр(/(ол:) требует выделения его как весового. Наличие множителя jc" требует принятия специальных мер для интегрирования в окрестности точки х = 0. Замена переменных x=((>(t) в данном случае является неприемлемой, поскольку для соответствующей весовой функции ехрAтф(/)) невозможно вычисление в явном виде коэффициентов интерполяционных квадратурных формул. Приемлемым здесь является jiyTb разбиения отрезка на неравные части, соответствующие оптимальному распределению узлов при вычислении интеграла от функции х", и применение на каждой части интерполяционных квадратурных формул E.2), соответствующих весовой функции exp(i(DJe). В случае интегралов типа \ g (х) х~'^ s\n шх dx при а> 1, g(x) о гладкой, g'(O) =7^0, такой способ будет неприемлем, поскольку в окрестности х = О неинтегрируемая функция x~^^ не аппроксимируется многочленами. Здесь целесообразно разбить исходный е 1 интеграл на части Г и Г, где е порядка —; для вычисления о е второго интеграла разумно применить процедуру, только что описанную выще. В первом интеграле функция sin соде не играет роли сильно осциллирующего множителя, поскольку при таком выборе е она имеет там конечное число колебаний; поэтому этот интеграл можно вычислять, например, распределив узлы интегрирования .соответственно оптимальному распределению для функции §@)(йл:'-°, аппроксимирующей подынтегральную при малых ых. 8. Для полноты изложения упомянем метод Ромберга. Мы уже рассматривали возможность применения этого метода при вычислении интегралов от функций с особенностями на'примере вычисления интеграла от функции \ g{x)\nxdx. Погрещность о формулы трапеций с постоянным шагом при вычислении интеграла I g{x)x^^dx для g'(x) гладкой, g @) =7^ О, — 1 < а <! 1, о представляется в виде DiA^-'-« + D2A^~^~" + .,.; таким образом, имеются основания для применения процедуры Ромберга. 9. Решение ряда задач сводится к вычислению сингулярных интегралов типа /(a)-Ji^^.,
192 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. Ш где а е(Л,В), g{a) Ф 0. Интеграл понимается в смысле главного значения, т. е. как предел _ ,а-ъ В lim e->o\J x — a J x — a I ^A a+t Интеграл может быть записан как сумма интеграла по отрезку, симметричному относительно точки а, и интеграла от гладкой функции по оставшейся части. Для простоты предполагаем, что ь первый интеграл преобразован к виду ^ ^ dx. Если gi^x) -ь удовлетворяет условию Гельдера в точке дс = О, т. е. |g(-<) — —J?@) 1^ ^|>^!". а > О, то последний интеграл равен несингу- ъ лярному интегралу е W ~ S \— >() ^^ g частности, если о g{x) — гладкая, то новая подынтегральная функция-^-^^^^— ■ является гладкой. • В ряде случаев, например при решении интегральных уравнений с сингулярными ядрами, возникает следующая ситуация. Значения функции g(x) задаются на некоторой фиксированной сетке. Исходя кз информации об этих значениях, требуется вычислять значения интеграла /(а) при различных а. Если g(x) достаточно гладкая, то здесь можно поступить следующим образом. Разбиваем отрезок [Л, В] на части: [Лд, Л,],..., [Лд,_,, Лд,], А^ = А, Aj^ = B. На каждой из частей I/4,_i,Л,] приближаем g(x) интерполяционным многочленом Lt(x). Исходный интеграл заменяем суммой интегралов J X— i Ux. V. Интегралы iq вычисляем в явном виде. Если а е (/4,_i, Л,), то соответствующий интеграл iq следует рассматривать как сингулярный. Если а = Aq, то следует объединить интегралы i, и i,+i (расходящиеся) в один сингулярный ■q . . _ I L-'' (x) при X< Aq, £"^=1 L''+^(x) при x>A„
§ !71 ПРИНЦИПЫ ПОСТРОЕНИЯ СТАНДАРТНЫХ ПРОГРАММ 193 Заметим, что для существования этого интеграла как сингулярного обязательно выполнение условия z.^л„)=L''м„+,). Получившиеся интегралы вычислим в явном виде. Задача. Пусть отрезок интегрирования разбит на равные части длины Я и на каждой части функция g{x) аппроксимируется при помощи линейной интерполяции. Таким образом, исходный интеграл аппроксимируется суммой интегралов L J 7^а ^^' где Н = {В — А)М-*. В предположении ограниченности Ig^'^J^)! получить оценку погрешности 0(М-'1пМ). § 17. ПринциНы построения стандартных программ с автоматическим выбором шага Из рассмотрения примера 1 в § 10 видно, что интегралы от функций с особенностями типа дс'' хорошо вычисляются методами интегрирования с переменным шагом, если узлы интегрирования распределены оптимальным образом. По-видимому, столь же хорошо будут интегрироваться функции с особенностями друхих типов. Поэтому представляется заманчивым строить стандартные программы численного интегрирования так, что для любой функции распределение узлов является оптимальным или близким к нему. В § 9 даны наметки того, как можно было бы построить распределение узлов, близкое к оптимальному, после исследования поведения подынтегральной функции на редкой сетке. Однако в случае резко меняющихся функций, например функций типа л:'', реализация этих наметок приводит к недостаточно удовлетворительным методам. Если первоначальная сетка, на которой исследуется подынтегральная функция, частая, то сильно загружается память ЭВМ; если она редкая, то не удается хорошо аппроксимировать оптимальное распределение узлов на участках резкого изменения подынтегральной функции. Поэтому при построении стандартных программ интегрирования приняты несколько иные процедуры распределения, узлов интегрирования, обеспечивающие лучшее приближение к оптимальному распределению узлов для функций с особенностями. Рассмотрим некоторые из них. Для вычисления интегралов по элементарным отрезкам разбиения [a,_i,ag] выбираются: квадратурная формула /,(/)«^s^|;z)yf(^^^+^s^^/) A) 7 и. с. Бахвалов
194 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ (ГЛ. 111 И мера (§ 4) погрешности aq~aq-\ Y^ ,/1^-1 + 1, р,(/)= 2 Пусть вычисляется -S^//(^^^+^S^^^) /=1 в А B) Первая процедура, которую естественно назвать горизонтальной, определяется заданием параметров р, а<; 1, Ао п ео. Полагаем ei = еор. Предположим, что каким-то образом уже вычис- лено приближенное значение интеграла f{x)dx. Программа располагает в каждый момент времени некоторым значением Л^, с которым надо начинать считать оставшуюся часть интеграла. Вычисляем величину ?«(/), соответствующую отрезку [а,,«а,-|-/г^]. Если оказалось P(j(/)^ ео, то вычисляем приближенное значение I f(x)dx по формуле A) и полагаем a,j+i = а, -f А,. Мы полу- "ч чили приближенное значение величины J / {х) dx. В случае е, <p,(f) полагаем hq+\= hq, в противном случае полагаем /г ,,=:. —. Мы готовы к следующему шагу. Если оказалось pq{f)>-го, то принимаем ahq за новое значение величины hq и возвращаемся к исходной позиции: вычислено значение интег- 017 рала jfix)dx и задан шаг hq. Начальные условия для приме- нения процедуры': q = 0, \f{x)dx = Q, ho По процедура должна также иметь блок окончания работы: если ■оказалось, что aq-\-hq> В, то следует положить hq = B — а,. Установилась практика брать о = -^.
§ 171 ПРИНЦИПЫ ПОСТРОЕНИЯ СТАНДАРТНЫХ ПРОГРАММ 195 Другая процедура, которую можно назвать вертикальной, определяется заданием числа ео и заключается в следующем. Пусть на каком-то шаге возникает необходимость вычисления d интеграла по отрезку разбиения [c,d]: f{x)dx; вычисляется с величина р(/), соответствующая этому отрезку. Если она оказалась мепьще ео, то этот интеграл вычисляется по соответствующей формуле A) и программа переходит к следующему справа отрезку разбиения. В противном случае отрезки [c,{c^d)/2] и [{с -\- d)l2,d] объявляются отрезками разбиения и программа обращается к вычислению интеграла по левому из этих отрезков. В начале работы программа обращается к вычислению в исходного интеграла f(x)dx. Некоторым недостатком этой А процедуры является необходимость запоминания отрезков разбиения, интегрирование по которым на данный момент времени не произведено. Распределение узлов, осуществляемое этими процедурами, не является асимптотически оптимальным в смысле, определяемом в § 9, по следующим причинам: величина pqif) не есть главный член оценки погрешности квадратуры A), а, как правило, лишь некоторая грубая, завышенная по порядку оценка для него; отрезки разбиения могут принимать лишь довольно редкий ряд значений; для первой процедуры они имеют вид hoa'^, а для второй—{В — АJ~'^. Рассмотрим некоторые моменты, связанные с практическим использованием описанных выше процедур. Чтобы в отдельных случаях сделать распределение узлов более близким к оптимальному, иногда величины Pq(/), соответствующие отрезкам разбиения, сравнивают не с ео, а с еоА^, где у специально подбирается. На первоначальном этапе применения ЭВМ сложилась традиция производить сравнение величины p,i(f) с величиной Eohq, т. е. брать у^1- Оказалось, что для резко меняющихся функций получающееся распределение узлов было далеко от оптимального, а в случае функций с разрывами программа не могла сосчитать интеграл. В самом деле, пусть, например, (■ О при X < с, f^'^^^l 1 при х>с. Если при каком-то q PqU) содержит одновременно значения f в узлах, где / = О и / = 1, то величина pq{f) имеет порядок Л,, и поэтому нет оснований надеяться, что неравенство
196 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. HI будет выполняться при малых А,; программа будет осуществлять дробление шага до машинного нуля. Если функция меняется на малом участке очень резко, шаг будет мельчиться неоправданно сильно. Это обстоятельство было отмечено пользователями, и после теоретического анализа было принято полагать •у = О, если к противному нет особых причин. В случае резко меняющихся функций следует также иметь в виду, что программа может не заметить участка резкого изменения функции. Пусть р(/) = 0, если /(л:) =/"«(л:)—многочлен степени s, и пусть реальная подынтегральная функция есть fix) = PAx) + g{x), где g{x) практически отлична от О лишь на малом отрезке, например, S W =--Т= ехр Г ' ] 2яе \ 2е / i 2яе (рис. 3.17.1). Для определенности обратимся к первой из описанных выше процедур. Если отрезок разбиения [a,_i,a,] удален от точки С, то р(/) ?к piPs) = О, и поэтому программу, будет увеличивать шаг. При подходе к точке С шаг может оказаться настолько большим, что окрестность, где g(x) существенно больше О, окажется заключенной между узлами. Тогда р(/) будет близко к О и на отрезке, содержащем точку С. В результате в качестве значения /(/) мы получим значение /(Ра); ошибка этого приближенного значения близка к 1. Для контроля точности можно было бы попытаться произвести интегрирование с другим значением ео; однако с большой вероятностью получился бы тот же результат. Не следует думать, что этот недостаток свойствен только методам интегрирования с автоматическим выбором шага. Если производить вычисление этого интеграла по формулам с постоянным шагом Н, то при Н-^ V^e все равно может оказаться, что ^(л:)» О во всех узлах интегрирования и мы получим приближенное значение /* « ЦРа). Производя численное интегрирование при нескольких шагах и оценивая погрешность по правилу Рунге, можно прийти к неправильному выводу, что прибли- Рис. 3.17.1.
§ 17] ПРИНЦИПЫ ПОСТРОЕНИЯ СТАНДАРТНЫХ ПРОГРАММ 197 женное значение интеграла /* л; /(Р.ч). В целом можно сказать, что в случае алгоритмов интегрирования с автоматическим выбором шага возможность получения подобных неправильных выводов несколько больше. При составлении стандартных программ всегда приходится балансировать между двумя крайностями: гарантии требуемой точности для любой подынтегральной функции или быстрого вычисления интеграла с нужной точностью для большинства предъявляемых к решению задач. По-видимому, можно говорить о каком-то принципе неопределенности по отношению к методам высокой эффективности: дальнейшее повышение скорости работы должно сопровождаться уменьшением надежности. Чтобы избежать «проскакива- пия» областей резкого изменения функции, м'ожно предусмотреть в программе наличие отрезков, где шаг интегрирования дробится принудительно. Например, в описание одной из стандартных программ, рассматриваемых в § 18, входят еще концы некоторого отрезка [а, р]. Если отрезок разбиения [Яд-ь flq] пересекается с [а, р], то следующий отрезок разбиения выбирается но более сложному правилу. В качестве [а, р] следует задавать некоторый отрезок, где подынтегральная функция резко меняется. Обратим внимание на выбор значения а. Пусть для гладкой функции 1(х) P(f)=cs р, j_2EZl±^'^ 1 (,^ _ ,^_,).+. + о {(а, - «,-,Г'). C) Для понимания механизма изменения шага предположим, что /<^'(x)—кусочно-постоянная. В области постоянства !'■''> (х) имеем p{f) = Cs\f^'Hx)\{a,-a,-,r+\ Рассмотрим случай р < a'+^. Пусть для шага А", с которым мы приступаем к интегрированию в данной области постоянства производной, выполняется соотношение Cj|/(«)(x) | (/i°)«+' ^ ei. Тогда шаг будет укрупняться каждый раз в a-^ раз, пока величина р(/) не станет больше ei. Поскольку при шаге, в a~^ раз меньшем, было р(/) ^ ei, то интегрирование будет осуществляться с наименьшим шагом h = h^^a^^, для которого Св|/(")(х) |/i»+' > ei. Точно так же, если для начального в этой области шага выполняется соотношенне Са|/''''(д:) I (/1°)^+'> 80, то шаг станет наибольшим из шагов h'^a'', для которых Св|/<^>(д:) 1/1"+'^ 80. Если, как мы предполо"жили, —!-= р < (j-'-l-'_ то во может оказаться, что, в зависимости or поведения функции при меньших х, в рассматриваемой области выбираются различные шаги. В то же время мы видели, что шаг интегрирования желательно распределять так, чтобы оценка погрешности на всех отрезках разбиения интервала интегрирования была примерно одинаковой. Исходя из сказанного, мы делаем вывод о желательности употребления р ^ a^+^. Рассмотрим этот случай. Можно указать шаг h = haa^ такой, что eoa'+'<c,|f<^'U)U'+'<eo.' D)
198 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ III Если оказалось, что ei<cJ/<^'(^)U^+'<eo. E) то при интегрировании по рассматриваемому отрезку будет выбран именно такой шаг. Однако при eoa^+'<c,|/'^'WU-'+'<e, F) программа выработает следующий шаг, равный /j/a. Для этого шага, вследствие F), окажется ео < р(/), и поэтому шаг h/a будет признан непригодным. Программа возьмет шаг, равный h, для него выполняется F); ноэто.му интегрирование по текущему отрезку будет закончено и как исходный шаг для дальнейшего будет принят шаг h/a. Таким образом, фактическое интегрирование происходит с шагом h и на каждом шаге делается попытка произвести интегрирование с шагом h/a. Если вычисления с шагами h. и h/a независимы, то на каждом шаге будет удвоенный объем работы. Неравенство E) равносильно неравенству log„,+, е, > log^,^, I /<»' (X) I -f log^,^, (.^й^+') -f k > log^,+,Eo. , G) Величина (log ,, , |/'■''(;c) I] равномерно распределена па [О, 1], согласно сообщавшемуся нами на стр. 171 факту о равномерности при любрм а распределения {logo g] значений величии g, возникающих из независимых источников. Можно показать, что вероятность события: неравенство G) выполняется при некотором целом k, равна log ^^fi. Если неравенство G) не выполняется, то при a' + ^ ^ р выполняется F); следовательно, F) выполняется с вероятностью' 1 — log ^^fi- Таким образом, для используемой процедуры интегрирование производится с шагом ft, определяемым условием D), причем математическое ожидание затраты работ на шаге пропорционально 1°?а5+|Р + 2A- log„.+ lP) = 2 - log„,+ ,p. Мы получили количественное выражение среднего возрастания затрат при Р > а"+'. Это выражение показывает желательность выбора р = 0"+'. Равенство р(/) = сД;<«)(;с) I (а, — 0,-1)" + ' при /<*'(.»:) =5^ const является асимптотическим. Поэтому для некоторых классов задач проводилось исследование поведения рЦ) при реальных не очень малых с, — fl^-i- Там, где реальный порядок убывания p{f) оказывался иным, величина р, соответственно, изменялась. Как и в случае интегрирования с постоянным шагом, возникает вопрос практической оценки погрешности. Обратимся сначала ко второй процедуре, имеющей -более простое описание. Как и ранее, проводим рассмотрение на примере кусочно-постоянной 1^^Цх). Шаг интегрирования в области постоянства /'"Ч^) для этой процедуры определяется условием; это наибольший пшг ft вида E — /4J"'', для которого Cs\f'Ux)\h'+^<zo. (8) Очевидно, что для такого максимального шага выполняется соотношение eo2-*^+"<.JP'U)|A-'+'.
§ 171 ПРИНЦИПЫ ПОСТРОЕНИЯ СТАНДАРТНЫХ ПРОГРАММ 199 Произведем интегрирование с некоторым eg < е^. В области, где старый шаг интегрирования будет уже непригоден и поэтому произойдет дробление шага не менее чем вдвое. В области, где eo2-<^+"<cJf<"WU^+'<eo'. дробления шага интегрирования не произойдет. Таким образом, при g2~*^+''<eg может случиться, что дробление шага интегрирования произойдет лишь па части отрезка интегрирования, или вообще не произойдет. Из сравнения результатов расчетов с е^ и Cq мы не получим информации о величине погрешности интегрирования в той области, где дробление шага не произошло. При е;<ео2-<^+" (9) шаг дробится всюду; однако отсюда не следует, что сравнение результатов расчетов с Ео и любым eg, удовлетворяющим (9), дает надежную гарантию точности результата. Пусть eg2-<'+"<^+"<e^<eg2-'*^+''; в области, где ранее было eg2'<^+"<cJf<^'(;c)U'+'<8g, A0) произойдет дробление шага в I раз; в то же время в области, где ранее ео2-'^+" < с, I f<^' (х) I /1^+' < 8^2' <'+". A1) произойдет дробление шага в Z+1 раз. Пусть погрешность интегрирования с параметром Ео складывается из двух слагаемых первое слагаемое равно сумме погрешностей по области, где выполняется A0), а второе — по области, где выполняется A1). Погрешности интегрирования с Eg запишем, соответственно, в виде R' (f) = К' (^) + ^?' (^)- *0 ^0 ^0 Предположим, что для гладкой f{x) погрешность квадратуры A) имеет вид: Y„/(«.)("-£Zl_t^) («, - «,-,)"+' + о ((а, - а,_,)"-^'). Если выполнены все условия, обеспечивающие в § 11 существование главного члена погрешности, то при уменьшении шага интегрирования по некоторой области в 2^^ раз погрешность интегрирования уменьшится в 2'"' раз. Соответственно, будем предполагать, что выполняются соотношения К' ^f) ~ ^! <f) 2""'. R^' С^) ~ ''?^ <П 2-"*'+". A2) ^0 ^0 ^0 о
200 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ. HI В предположении справедливости A2) имеем /(/)--Seo (/) = <(/) + <(«■ A3) I(f)-S ,(f)==Rl (fJ-"Ч/?^ (П2-""+'». A4) Исключая неизвестную величину 1(f), получим 5 - U) - S, (/) = л' (/) A - 2- + ЛМ1 - 2-" <'+"). A5) "о *о S ^0 Правая часть A5) не пропорциональна ни правой части A3), ни правой части A4), и мы ие имеем возможности получить главного члена погрешностей R (f) к R ,(f). Если п1 очень велико, то правая часть A5) близка к погрешности f^ei^U)- Однако употребление этого выражения для оценки погрешности выражения Sj. (/) вряд ли имеет смысл, поскольку интересно оценить погрешность более точного приближения S , (f). В случае eg = 2~"'eQобласть, где выполняется A1), вырождается, и поэтому/?? (/) = = 0. Тогда / (/) - S (П = Л' (f), L{f)~ S , if) = /?' if) 2-"' и имеется возможность применять правило Рунге для оценки погрешности. Довольно сложный Дополнительный анализ показывает, что в предположении непрерывности f''''(-*). при введении в алгоритм требования уменьшения максимально допустимого шага пропорционально ej,' "*"'*, проводимы^ выше рассуждения можно обосновать. Обратимся к первой процедуре выбора шага. Для определенности предполагаем р = a'+^, хотя проводимые далее рассуждения остаются в силе при любом Р < 1. Если мы умножим D) на Х'+', то получим еоЯ^+'а^+' < с,| /<" {х) \{lhr+^ < г,к'+К Отсюда следует, что при одновременном умножении ео на X'+^ и ha на Я шаг интегрирования всюду изменится пропорционально: умножится па X. .Поэтому, если выполняются все предположения из § 11, суммарная погрешность интегрирования изменится примерно в Я" раз. Таким образом, имеем соотношение I{|)~Sl^l,^^{f)^[I{f)~Sl'^{f)y^. A6) где Sg (f)— результат интегрирования с начальным шагом Н при значении е параметра точности на шаге. Мы можем использовать соотношение A6) для оценки погрешности по принципу Рунге при численном интегрировании с автоматическим выбором шага. Итак, мы получили соотношения между параметрами схемы, необходимые для возможности применения правила Рунге для оценки погрешности. Заметим, что изменение начального шага ha в о* раз, где k — целое, при фиксированных остальных параметрах метода не приводит к существенному нз.ченению погрешности результата: за счет уменьшения шага в а раз или увеличения в 1/а раз программа очень быстро выйдет на шаг, удовлетворяющий условию e„2-<^+"<cJ/<*)(jc)|A^+'<e„.
§ 18] СТАНДАРТНЫЕ ПРОГРАММЫ ЧИСЛЕННОГО ИНТЕГРИРОВАНИЯ 201 § 18. Стандартные программы численного интегрирования Описания стандартных программ обычно состоят из следующих частей: целевое назначение, обращение к процедуре, особенности применения, описание метода, тело процедуры, тестовые примеры. Приведем для примера отдельные части описаний реально работающих процедур численного интегрирования на языке Алгал. Так как основные принципы построения программ вычисления одно- и многократных интегралов примерно одинаковые, будет приведена одна процедура вычисления кратных интегралов. 1. Процедура INT 120. Обращение к процедуре имеет вид Z: =п/Л/Г120 (A,B,F,P,I,X). Формальные параметры процедуры REAL А — нижний предел интегрирования; REAL В—верхний предел интегрирования; REAL PROCEDURE F — процедура- функция без параметров, задающая подынтегральную функцию 1{х). INTEGER Р — условное число, принимающее значение 1 или 2 в зависимости от применяемой квадратурной формулы; если Р = \—применяется формула Гаусса, если Р = 2 — формула Симпсона; INTEGER I — число, задающее набор узлов, по которому будет сосчитан интеграл; количество узлов N определяется процедурой по^ правилу: N = 21, если счет ведется по формуле Гаусса; N = 21+1, если счет ведется по формуле Симпсона. В случае Р = 2 число / может быть любым, большим О, в случае Р = 1 может принимать только следующие значения: /=1,2,3,4,6,8,12,16,24,32,48; REAL X — аргумент функции f(x); REAL Z — вычисленное значение интеграла. Процедуры INT 110 и INT 111 предназначены для вычисления интегралов типов (а) и (б): в в (а) I / (х) dx, (б) 1 / {х) cos (^х + ф) dx. А А 2. Процедура INT 110. Обращение к процедуре имеет вид Z: =INT 110 (X, А, В, R0, FI, Е, F. L). Формальные параметры процедуры: REAL X — аргумент функции f{x), REAL А — нижний предел интегрирования; если Он равен —оо, то нужно поставить произвольное отрицательное А А '^ — 1013 такое, что | f {х) dx мал; REAL В — верхний предел
202 ЧИСЛЕННОЕ ИИТЕГРИР0ВА?1ИЕ [ГЛ HI интегрирования; если он равен оо, то нужно поставить про- 00 извольное положительное В ^ 10'^ такое, что \ fix)dx мал. в Верхний предел интегрирования В всегда должен быть больше нижнего А; REAL R0 и FI — параметры р и ф из осциллирующего множителя cos (рх + ф); при вычислении интегралов типа (а) формальные параметры R0 и FI следует положить пулями; REAL Е — задаваемая точность вычисления интеграла; приближенное значение интеграла отыскивается с погрешностью в Е 1 + ifM dx REAL PROCEDURE f —процедура-функция без параметров, задающ,ая подынтегральную функцию Цх); LABEL L — метка, на которую произойдет уход из процедуры INT ПО в случае, когда нельзя сосчитать интеграл с заданной точностью, или если пользователь в обращении к процедуре INT НО в фактических параметрах задаст нижний предел А больше верхнего В; REAL Z — вычисленное значение интеграла. Особенности применения. 1) Если подынтегральная функция имеет на отрезке интегрирования пикообразную особенность (см. рис. 3.17.1), то разумнее пользоваться описываемой далее процедурой ШТ 111. 2) Величина Е характеризует абсолютную погрешность приближенного значения интеграла, если оно меньше единицы, и относительную в противном случае. Возможны случаи, когда пользователь задаст слишком большую точность, которая не может быть достигнута для данной подынтегральной функции. Тогда на печать выдается фраза «заданная точность не может быть достигнута», и произойдет уход из процедуры по метке L. 3) Пользователь должен иметь свой блок, помеченный меткой L, в котором предусмотрена работа программы в случае отказа. Например, простейший блок У: := 1/0 вызывает останов машины. 3. Процедура INT 111. Обращение к процедуре имеет вид Z: = INT III (X, SI, Л, В, R0, FI, ALFA, BETA, TAU, EPS, E, El, F,L). Формальные параметры процедуры, не определенные ранее в описании процедуры /ЛТ 110: INTEGER SI — условное число, позволяющее выдавать промежуточные значения счета интеграла; SI может принимать значения только О или 1; если SI^O, то выдач не будет; REAL ALFA — начало участка отрезка интегрирования, который нужно проходить с принудительным шагом (начало особенности); REAL BETA — конец участка интегрирования, который нужно проходить с прг1нудитсльным шагом (конец особенности); REAL
§ 18] СТАНДАРТНЫЕ ПРОГРАММЫ ЧИСЛЕННОГО ИНТЕГРИРОВАНИЯ 203 TAU — принудительный шаг, с которым нужно идти на отрезке [а, р], где функция имеет особенность; REAL EPS — величина допустимой абсолютной погрешности вычисления интеграла на шаге; REAL Е\—оценка абсолютной погрешности, с котором сосчитай интеграл, возможно несколько завышенная. Особенности применения. 1) Если подынтегральная функция f(x) имеет пикообразную особенность (см. рис. 3.17.1) в некоторой точке на отрезке интегрирования, то целесообразно окрестность этой точки (обозначим ее [а, р]) пройти с принудительным шагом x(TAU). Необходимо, чтобы a(ALFA) было меньше ^{ВЕТА); если пет участка интегрирования, который нужно пройти с принудительным шагом, то формальным параметрам а, р, т можно присвоить любые значения, но обязательно положить р < а. 2) При вычислении интеграла пользователь должен задать значение абсолютной погрешности вычисления интеграла на шаге e{EPS) и значение погрешности вычисления интеграла на всем интервале Е; если нет никакой информации о целесообразном выборе значения е, то разумно задать е = Е. 3) Если пользователь задаст параметр S/^1, то в процессе счета будут выдаваться на печать само число SI и приближенное значение интеграла при значениях параметра EPS, равных е е е, -tqq-i -1232' •••■> выдач столько, сколько просчетов по данному отрезку, пока не будет достигнута заданная точность Е. Описание методов интегрирования в случае интегралов типа (а). Бесконечная прямая, по которой нужно считать интеграл, делится точкой М h<i 2 луча; имеем оо оо —оо j f{x)dx= j 1{х)йх- I l{x)dx. — оо М М Если есть особенность, то М = а, в противном случае М ^ 0. Счет по бесконечному лучу происходит следующим образом Луч делится па отрезки Д, длины lAi|=2, ..., |Дп|=2''. Начало отрезка Д| совпадает с точкой М, оо кокец — либо с точкой М + 2, если считается f (х) dx, либо с точкой М — 2 м — оо для интеграла f (х) d^. Таким образом, М ±00 оо ^ fMdx^y^ j f {х) dx. 1=1 На каждом отрезке Д^ интеграл считается с автоматическим выбором шага по формулам Лобатто Обозначим значение интеграла на отрезке Д, через /,, а абсолютную погрен1пость, с которой сосчитан интеграл, через £, Сосчитаем последовательно интегралы по отрезкам Д1, Д1+1, Д1-1-2. Счет интеграла
204 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ ГТ"Л HI по бесконечному лучу прекращается, если выполнены следующие усповня: О^ТТП П Г^-^ " "^Т7 i Г7 г<-с- A) Пусть (+2 2£ft<£ 1 + t=I >+2 2/ft B) тогда делается вывод, что интеграл по бесконечному лучу сосчитан с задан- > + 2 ной точностью Е и равен /' =^ 2 /* (если интеграл надо считать но всей бесконечной прямой, то по лучу интеграл считается с точностью £/2) Если условие B) не выполнено, то величина е (точность на шаге) делится на 128 и счет по бесконечному лучу начинается сначала, при этом интеграл на каждом отрезке Д, считается с более высокой точностью Вновь полученное значение интеграла обозначим через Р Если mm B^*. |/^-/'|)<£A + |/Ч) (£л н i соответствуют второму просчету), то интеграл сосчитан и равен Я, в противном случае е снова делится на 128, и весь процесс начинается сначала. Если на луче нет особенности и два последовательных значения и и /j+i равны нулю, то счет обривается без проверки условий A). Теперь перейдем к описанию метода численного интегрирования на конечном отрезке Д = [а, Ь\ Счет по конечному отрезку Д ведется по квадратурным формулам Лобатто с семью узлами Заменой переменной л: = а + + F — a)i отрезок Д переводится в единичный отрезок [0,1] Рассмотрим отрезок \р, р + /i] ^ [О, 1] На этом отрезке интеграл заменяется соответствующей квадратурной формулой и подсчитывается соответствующий квадратурной формуле контрольный член р = |/@1 Если Р<-6^. C) то интеграл по отрезку \р, р + Л] считается вышсленныч. Пусть р-)-/г<1, тогда перейдем к следующему частичному отрезку \PъP\Л-h^\, pi = p + h, hi=m\n(h, I —pt), 128F-^ если г- < р, и Л] = min BЛ, 1 — Pi), если ^^ 128 F-а)' Если -г—— ^ р, то переходим к вычислению интеграла по отрезку \р, Р + "о" • ^1о^кет сл>читься, что условие C) не выполняется ни при каком Л < Н, где Я = 2-^(р + 2-^*) (величина, близкая к машинному нулю; данный вь.бор Н произведен с учетом разрядности в машине БЭСМ 6), в этом случае предусмотрен уход иа процедуры по метке L с предварительной
§ 18] СТАНДАРТНЫЕ ПРОГРАММЫ ЧИСЛЕННОГО ИНТЕГРИРОВАНИЯ 205 выдачей информации р и Л Процесс вычислений начинается при Лвач = 1, Рнвч = О н продолжается до тех пор, пока интеграл не будет вычислен на всем отрезке [0,1] В случае задания особенности [а, р] для каждого частичного отрезка [р, p + h] происходит проверка пересечения отрезков [а, Р] и [р, р + h]. Если это пересечение не пусто и очередной шаг Л > т, то Л полагается равным т Процедура INT 120 при Р = 1 ориентирована на вычисление интегралов от аналитических функций. Процедуры INT НО и INT 111 несколько уступают ей в случае очень гладких функций и существенно превосходят ее для негладких функций. Отметим некоторые особенности последних двух процедур. Тела процедур INT НО и INT Щ отличаются несущественно. Если положить е = £ и а > р, то эти процедуры работают одинаково. Наличие упрощенного варианта INillO имеет целью облегчить обращение в случае малых серий задач. Наличие усложненного варианта INJ" 111 дает возможность существенно уменьшить объем вычислений в случае больших серий интегралов и вычислять интегралы от функций с пикообразными особенностями. Возможность уменьшения объема вычислений в случае больших серий интегралов реализуется следующим образом. Выбирается типичный (обычно самый неблагоприятный) интеграл серии, Б процедуре INTIW задаются 5/= 1, Е — равным или меньшим требуемой точности, е = ео — очень большим. В результате вычислений будут получены приближенные значения интеграла, соответствующие просчетам е = во, 602-* 802"*"; /• = 7 в случае интегралов типа (а), й = 5 в случае интегралов типа (б). Из рассмотрения этих результатов делается вывод, при каком е = 802-*' достигаетея требуемая точность Если при этом значении е получается точность, существенно большая требуемой, то иногда стоит произвести также отладочные просчеты со значениями 8 = ео2~', ..., 8о2-(''-''. Тогда в совокупности будут получены результаты просчетов при 8 = 8о, 8о2-', ..., среди них выбираем макс^имальное 8, соответствующее требуемой точности. Далее вычисляем всю серию интегралов при полученном значении 8 и очень большом Е, например, Е = 10'*; большое значение Е гарантирует, что просчет по всему отрезку будет производиться только один раз Многократные интегралы можно вычислять с помощью указанных выше процедур вычисления однократных интегралов, если транслятор допускает рекурсивные процедуры. Например, интеграл 1 /VI 1 /V\-x' \ /=JM exp{ld{x + y))dy]dx о \ о /
206 ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ [ГЛ III записываем в виде 1 I=\lAx)dx, о где 1,{х)= [ expA0(x + i/))di/. и оба интегрирования производим численно. Подынтегральная функция интеграла 1\{х) —гладкая, и этот интеграл удобно вычислять с помощью любой из указанных процедур. Функция h{x) имеет неограниченную производную в точке х = 1, и по- 1 этому при вычислении интеграла Г/, (л:) dx нецелесообразно о применять процедуру INT 120, ориентированную на вычисление интегралов от гладких функций. Отметим одно обстоятельство На первый взгляд казалось бы естественным вычислять интегралы по элементарным отрезкам по формулам Гаусса, более точным, чем формулы Лобатто при том же числе узлов, формулы Гаусса и были заложены в основу первых стандартных программ интегрирования с автоматическим выбором тага. Однако практика интегрирования показала следующий их недостаток в случае резко меняющихся функций Формулы Гаусса не содержат среди узлов концов отрезков [р, р + Л]; если 1 вычислять интеграл ехр (—Лх) dx при большом А, то все узлы формулы Гаусса при применении ее ко всему отрезку [О, 1] могут оказаться в области, где подынтегральная функция ничтожно мала; программа прекратит интегрирование, выдав приближенное значение, равное 0. Для формул, содержащих концевые точки, также возможна аналогичная ситуация, например в случае 1 интеграла х ехр (— Ах) dx при большом А, однако она встречается зна- 0 чительно реже Если формула интегрирования по злгментарному отрезку содержит концевую точку, то значение функции в этой точке может использоваться для вычисления интегралов по обоим отрезкам, которым она принадлежит. Поэтому, в случае формулы Лобатто с п + 1 узлом и формулы Гаусса с п узлами на элементарный отрезок приходится одинаковый объем вычислений; в то же время формулы точны для многочленов одинаковой степени 2п—1. Вторйе преимущество формулы Лобатто заключается в следующем. По (п+1)-му узлу этой формулы мы можем получить выражение разделенной разности п-го порядка, т. е получить оценку для производной /(">; в случае формулы Гаусса можно получить оценку лишь для производной /<"-''. В результате этого pej.ibHoe распределение узлов формулы Лобатто оказывается более близким к оптимальному,
§ 18] СТАНДАРТНЫЕ ПРОГРАММЫ ЧИСЛЕННОГО ИНТЕГРИРОВАНИЯ 207 4. Процедура INT2\. Предназначена для вычисления интегралов по 5-мерному прямоугольному параллелепипеду ^f{X)dX, Q = [a,<x,<6„ .... as<-«s<*s]. а л == уХ\, ..., Ks). Обращение к процедуре имеет вид Z: = INT 21 E, А, F, X, EPS, Р). Формальные параметры процедуры: INTEGER 5 — кратность интеграла; ARRAY Л[1 :25] — массив, задающий область Q: Л[1] = а,, A[2] = b^ Л[25—1] = as, Л[25] = й^; REAL PROCEDURE F — процедура-функция без параметров,задающая подынтегральную функцию /; ARRAY X [1:5]—аргумент функции f; REAL EPS — величина допустимой абсолютной погрешности вычисления интеграла на шаге; REAL Z — вычисленное значение интеграла; LABEL Р — метка, на которую произойдет переход из процедуры INT2\ в случае, когда заданная точность £'Р5 не может быть достигнута. Описание метода. Заменой переменных Xi = ai + (bt — a^)ti, /=1, .... 5, данный 5-мерный прямоугольный параллелепипед переводится в единичный куб G='[0<^,<1, ,.., 0</5<1]. 't = itb '■■, ts), и интеграл вычисляется по этому кубу. Обозначим через Ps якобиан при такой замене: Ps = (^i — fli) ... Fs — <^s)- В основу метода положена пара кубатурных формул C[ + h cs + h J ... J g{t)dt'^h^l^,=Ql q = l,2. ci-h cg-h I I Для вычисления интеграла J ... \ g{t)dt вычисляются Qf и Q^, 0 0 соответствующие кубу G, и проверяется условие Ps\Qf-Q^<^. D) Если это условие выполнено, то за приближенное значение интеграла по G принимается значение, сосчитанное по кубатурной
208 ЧИСЛЕННОЕ .ИНТЕГРИРОВАНИЕ 1ГЛ П1 формуле Q^, являющейся линейной комбинацией формул Qf и Q^. Если условие D) не выполняется, то куб G разбивается HJa 2^ равных кубов и описанный алгоритм применяется к каждому из этих кубов. Процесс дробления продолжается до тех пор, пока условие D) не будет выполнено. Если при делении шага h пополам наступит такой момент, когда Л^ станет машинным нулем, то счет прекращается. Кубатурные формулы 2, для различных S имеют следующий вид: 1) S = 2: 2? = Л, S g(ci + iah, C2 + jah)+ . m+i/i=i m+i/i=i in.1/1=1 22 = Bi 2 g (ci + ia/г, Ca + jah) + т+1/И1 + B2 2 g{ci+m,C2+m+B3 2 g(ci+iyh,C2+iyh) + m,i/l=i ■ + B4 2 giC[ + ivh, £2 + У v/г), m. I /1=1 m+i/i=i где a = 0,658149897623035910, p = 0,549119831921783496, Y = 0,894427190999915878, V = 0,316227766016837933, И, = 1,06136206790541224, ^2= - 0,234973179016523356, ^3 = 0,173611111111111111. B, = 3,99942795838189963, 82 = - 6,29803906949301074, 83 = 0,12400793650793650:. 64 = 3,17460317460317460, Формула Q^ точна для всех многочленов степени ^5. Формула QI точна для всех многочленов степени ^7. 2) S = 3: 2? 8 225 D4g(Ci, С2, Сз) + 1'1.1/1.1*1=1 + 10 2 ^ (^1 + ^^^ ^2 + Й, сз + Щ], I'1+1/1+1 ft 1=1
§ 181 СТАНДАРТНЫЕ ПРОГРАММЫ ЧИСЛЕННОГО ИНТЕГРИРОВАНИЯ 209 \i\.\ Л. I* 1=1 М1 + 1Л+1*И1 Th= 2 g(Ci + г/г, C2 + jh, Cj) + M I. I /1=1 + 2 gici+ ih, C2, C3 + kh)+ 2 ir (ci, C2 + //г, (?з + feA), 111, I ft 1=1 • I/Lift 1=1 Формулы Q\ и Q^ ТОЧНЫ для всех многочленов степени ^5. Формула Q\ точна для всех многочленов степени ^7. Дополнительная литература к главе III 1(8), II [21]; §2:1(8,11,12], II [21, 33]; §3: I [8], 11B1,47], 111E]; §5: 1[17], III [27]; §8: II [33]; §9, 10: II [3], 111(9,11,49]; §12: 1A, 11]; § 14: III [53]; §§ 17, 18: II [3, 36], III [9, 11].
Глава IV ПРИБЛИЖЕНИЕ ФУНКЦИИ И СМЕЖНЫЕ ВОПРОСЫ § I. Наилучшие приближения в линейном нормированном пространстве Рассмотрим следующую задачу. Имеется элемент / линейного нормированного пространства 52. Требуется найти его нан- п лучшее приближение линейной комбинацией S Cigi данных 1=1 линейно независимых элементов g\, .,., gn^^. Это означает: п найти элемент 2 (^iSt такой, что 1=1 /-2с?яЛ = А= inf \f-^c,g, Если такой элемент существует, то он называется элементом наилучшего приближения. Теорема 1. Элемент наилучшего приближения существует. Доказательство. Вследствие соотношений I / - I c\g, \\-\f-Xc]g, <\t(c\- cf) g, II < 11 a] - c] III g, II 1=1 1=1' функция F,{c,, ..., c„): / - ^■ ^ <^iS, является непрерывной функцией аргументов C/,np:i любом f^^. Пусть lieII —эвклидова норма'вектора с = (с,, ..., с„). Функция ^^o(ci, ..■; c„) = l|Cigri+ ... +c„gr„|| непрерывна на единичной сфере ||с||= I и, следовательно, в некоторой ее точке (ci, ..., с„) достигает своей нижней грани F по сфере, f =7^ О, так как равенство F =\\c^gi -{•... -\- CngnII = О
НАИЛУЧШИЕ ПРИБЛИЖЕНИЯ В ЛИНЕЙНОМ ПРОСТРАНСТВЕ 211 Противоречит линейной независимости элементов g\,..., gn- Для любого c = {ci, .... Сп) ф @ 0) справедлива оценка l|Cigi+ .... +C„g„|| = /='o(c, С„) = = lkll/^o(^....,-^)>lkllF. Пусть у > 211/1 Функция Fj,(fi^ с^ непрерывна в шаре IIсII^Y и, следовательно, в некоторой точке шара (с°, ..., с°) достигает своей нижней грани по шару F°. Имеем F° ^ ^F/@ 0) = 11/11. Вне этого шара ^/(Ср ••-. ^п)>\Ы^+ ••• +С„?„||-|1/11> ' Таким образом, >fiia__ii/ii=ii^ii^p. F F,{c„..., c„)>Fo = F,(c?, ..., с") при всевозможных Ci, ..., Сп. Теорема доказана. Элементов наилучшего приближения, вообще говоря, может быть несколько. Теорема 2. Если пространство Я строго нормировано, то элемент наилучшего приближения единствен. Доказательство. Предположим противное, т. е. что существуют два элемента п fx^ib ii=^a.ijgi '=1 такие, что ||/-f, || = 11/-/2!! = А. Очевидно, Л =7^ О, поскольку иначе f\=f = J2. Кроме того. /- fi + i. < \f-ii iiiiM, = A 2 ' 2 Поскольку является линейной комбинацией элементов gu .... ёп, то ^ _±LZli2. ^д вследствие определения Л. Вместе с предшествующими соотношениями это означает, что И - f. ■ f - Ы| 1-и\ I \\t-u 2 Вследствие предположения строгой нормированности пространства ~ =а ' ~ ■ Если а.ф\, то f= ''^^"'^ , f является линейной комбинацией g', gn и поэтому Л = 0. При а=1 имеем /i -/2 и приходим к противоречию с допущением /i ф /г-
212 ПРИБЛИЖЕНИЕ ФУНКЦИЙ И СМЕЖНЫЕ ВОПРОСЫ (ГЛ. IV Задачи. I. Доказать, что гильбертово пространство строго нормировано. 2. Доказать, что пространство Lp (О, I) с нормой ll/lli^ = j/ ^\f(x)\Pdx строго нормировано при 1<р<оо. 3. Доказать, что пространство Li к пространство непрерывных функций С ([О, I]) с нормой ||/|1с'=тах|/(*)| не являются строго нормированными. § 2. Наилучшее приближение в гильбертовом пространстве и вопросы, возникающие при его практическом построении Для гильбертова пространства задача нахождения элемента наилучшего приближения формально сводится к решению системы линейных уравнений. Наиболее простой способ получения этой системы следующий. Коэффициенты а,- элемента наилучшего приближения реализуют минимум выражения II i=\ II \ г=1 i=.i Приравнивая нулю производные по Re а,- и Ima<, получаем искомую систему уравнений для определения а,-. Вследствие су- шествования элемента наилучшего приближения эта система имеет решение. Построим эту систему и исследуем вопрос об единственности ее решения несколько иным способом. Пусть Н — линейное подпространство гильбертова пространства 52, /e52. Поставим задачу найти элемент ho^H, наилучшим образом приближающий /, т. е. элемент йо, для которого ||/-Йо11= inf 11/-Й11., Лемма 1. Пусть в Н существует элемент йо наилучшего приближения к f. Тогда разность f — ho ортогональна ко всем элементам подпространства Н. Доказательство. Предположим, существует элемент h\^H, для которого if — ho, hl) = aф 0. Поскольку вместо й] можно взять А,/||й,||, то предполагаем ||Й1||=1. Рассмотрим элемент йг = йо + aftj -^ Н. Имеем II/ — ЛаiP = (f — Йо — ahi, / — Ао — аА,) = ^(f — h(j,f — Ло) — а(Л„ / — йо) — а(/ — Ао, й]) + аа(А,, Ai),
§ 21 НАИЛУЧШЕЕ ПРИБЛИЖЕНИЕ В ГИЛЬБЕРТОВОМ ПРОСТРАНСТВЕ 213 НО (А,, / —Ао) = (/ —Ао. А,) = а. Поэтому отсюда получаем ||/-A2lP = ||/-AolP-aa-aa + aa = ||f-AolP-aa<||/-AoiF. Мы прищли к противоречию с предположением, что Aq —элемент наилучшего приближения. Лемма 2. Если (f — Aq, А) = О для любого he Н, то Ао — элемент наилучшего приближения. Доказательство. Для произвольного h^H имеем ||/-А|р = (/-Ао + Ао-А. /-Ао + Ао-А) = = {f-ho,f-ho) + {ho-h,f-ho) + + (/ ~ Ао. Ао — А) + (Ао — А, Ао — А), так как Ао — he.H, то второе и третье слагаемые обращаются в нуль, согласно предположению леммы. В итоге имеем 11/-А|Р = 11/-Ао1Р + 11А-Ао1Р, A> следовательно, II/ —А|р > ||/— AolP при кфк^. Так как гильбертово пространство строго нормировано, единственность элемента наилучшего приближения вида a\g\-\-..~ ...-\-a.ngn следует из теоремы 2 § 1. Другое доказательство следует из лемм 1, 2: если Ао — элемент наилучшего приближения, то (/ — Ао, А) = О при А е Я, тогда, согласно (I), любой элемент h Ф ho, h^H не является элементом наилучшего приближения. Вернемся к задаче наилучшего приближения / комбинациями п "^ aigi линейно независимых элементов g\, ,.., gn. Эти ком- бинации образуют линейное подпространство Я. Если элемент п 2 o.igi осуществляет наилучшее приближение, то, согласно 1=1 лемме 1, выполняются соотношения (/- 2 а.-^ь ?/1 = О при /=!,...,«. B> Поскольку элемент наилучшего приближения существует, то отсюда следует существование решения системы B). С другой стороны, если соотношения B) выполнены, то п п \ f—'^^aigi, '^^Cjgjj = Q
214 ПРИБЛИЖЕНИЕ ФУНКЦИИ И СМЕЖНЫЕ ВОПРОСЫ [ГЛ. IV при любых С/, иначе!/—2йг^м AJ^Onpn любом А е/У; согласно п лемме 2, такой элемент 2 o,igi является элементом наилуч- 1=1 шего приближения. Предположим, что система B) имеет решение фи ..., Ьп), отличное от (дь ..., а„). Тогда элемент - п g= ^bigi также является элементом наилучшего приближе- 1=1 ния и, вследствие его единственности, п п S aigi-= 2 big г, i=i i=i предположение, что а; ф bt при некотором i, противоречит линейной независимости элементов gi. Таким образом, мы показали, что система B) всегда имеет и притом единственное решение. Ее можно переписать в виде п llaiigi, gj) = {f, g,), /=1, ..., /г; . C) 1=1 Итак, коэффициенты, соответствующие элементу наилучшего приближения, можно найти, решая невырожденную систему C). Матрица , G(g,, ...,g^) = [{gi,g,)] называется матрицей Грамма системы элементов. При исследовании свойств матриц Грамма полезно использовать формальное равенство /г. \ G{gu'---,gn.) = [ ■■■ (STi gn). \ gn I Задача. Доказать, что G (g , ffrt)>0, причем G (gi, ..., ffre) = О тогда и только тогда, когда g , gn линейно зависимы. Доказать неравенство G {gi gn+iX G {g, gn) {gn+u gn + i). Пусть g — наилучшее приближение к f. Тогда, согласно лемме 1, имеем {f — g,h) = 0 при h^H; подставляя в A) Jta = g и Л = 0, получаем f\f = \\f-gf + \\g\?. ортонормирова обретает пид а, = if, Ml). " D) Если элементы gi образуют ортонормированную систему {gi, gj) = 6(_/, то система C) приобретает пид
§ 21 НАИЛУЧШЕЕ ПРИБЛИЖЕНИЕ В ГИЛЬБЕРТОВОМ ПРОСТРАНСТВЕ 215 Тогда наилучшее приближение записывается в форме п И имеется следующее удобное представление величины \\f~g\f: \\f-g\?=^\\f\f-\\g\? = i},f)-{liaigi, ^aig)\ = Vi=i г=1 У = (/. Л - i ciiafii., = (/./)- i I ai P = (/,/)- i I {/, gi) p. I. /=i 1=1 i=i Поскольку II f — ff IP ^ 0, TO из равенства ii/-ffip={/>/)-ii{/,ffi)p i=l следует, в частности, известное неравенство Бесселя (/./)> Si (Л го р. 1=1 Если исходные элементы не образуют ортонормированной системы, то их можно ортогонализовать при помощи рассматривавшегося в главе II алгоритма ортогонализации. Задача вычисления совокупности коэффициентов aj = (f,Sj), / = 1, ... ..., М, при относительно большом М часто возникает как вспомогательная при решении более сложных задач. В качестве модели изучения способов вычисления aj рассмотрим задачу вычисления интегралов ь а, = (/, Qi)=\^ U) Q, U) Р U) dx, р {х)>0, а где действительные многочлены Q](x) образуют ортонормироваиную систему в пространстве со скалярным произведением Ь (f,S)= \ f{x)g(x)p(x)dx Интегралы aj можно вычислить приближенно, по формуле Гаусса (§ 3, гл. II), соответствующей данной весовой функции Ь N а q—\ Если f — Многочлен степени /, то f(x)Q,(x)—многочлен степени / + / Поскольку формула Гаусса точна для многочленов степени 2N—1, то формула E) точна, если j{x) — многочлен степени 2N — j — 1.
216 ПРИБЛИЖЕНИЕ ФУНКЦИИ И СМЕЖНЫЕ ВОПРОСЫ [ГЛ. IV При решении одной задачи требовалось вычислить несколько тысяч интегралов типа ь ai= j f(x)Qi{x)p{x)dx, /=0. .... М. Попытки применения программ интегрирования с автоматическим выбором шага или формул E) не привели к успеху. Анализ задачи показал, что ее решение при независимом вычислении интегралов aj требует неприемлемых затрат времени ЭВМ. Узким местом задачи в данном случае была высокая трудоемкость вычисления значений функции f(x). Поэтому был принят следующий путь. Интегралы а,- разбивались на группы (оо. .... а„_), (а„^ + ,. .... a„J (Ч_,-Ц. ••-. Ч> М. Для каждой группы определялось число Л^,, достаточное, чтобы интегралы этой группы вычислялись по формуле E) с требуемой точностью. Затем для интегралов каждой группы одновременно вычислялись приближения 4'^^=^<'К<0^Д40- «7=1 Каждое значение !\Х.Ч вычислялось только один раз для элементов всей группы. Оказалось также, что при этом появляется дополнительный выигрыш машинного времени за счет одновременного вычисления значений всех многочленов Q:yx^4 в одной точке при помощи рекуррентных соотношений. Выбор разбиения коэффициентов aj на группы производился с учетом трудоемкости вычисления значений функции f(x). В другом подобном случае оказалось наиболее выгодным с позиций экономии машинного времени такое разбиение не производить, а взять N, соответствующее им, и с этим значением N произвести одновременное вычисление всех интегралов. Объем вычислений сократился примерно в 100 раз по сравнению с исходным методом. Вследствие уже упоминавшейся привычки оценивать эффективность метода по доле полезной работы заказчики некоторое время возражали против применения описанной выше процедуры, ссылаясь на то, что при малых /' интегралы вычисляются со «слишком высокой» точностью, н поэтому производится много ненужной работы. Исполнители убедили их в высокой эффективности метода при помощи упоминавшегося выше довода о доле полезной работы: при вычпслении всей серии интегралов предлагаемым методом объем вычислении лишь на 20% больше, чем в случае вычисления интеграла им по формуле E), следовательно, доля полезной работы около 80%. Довод был признан убедительным, и метод приняли к реализации. Если функция f(x) плохо приближается многочленами, то можно прибегнуть к следующей процедуре- вычислять все интегралы одновременно при помощи алгоритма интегрирования с автоматическим выбором шага, причем узлы интегрирования брать во всех интегралах одними и теми же, такими же, как для «самого плохого» интеграла ам. Конечно, для реализации этого алгоритма стандартная процедура интегрирования с автоматическим выбором шага уже непригодна, и требуется написание новой программы. Другой резерв — зто Не вычислять непосредственно всех значений функции f(x), а определять некоторые из них путем интерполирования по уже вычисленным значениям.
§ 2] НАИЛУЧШЕЕ ПРИБЛИЖЕНИЕ В ГИЛЬБЕРТОВОМ ПРОСТРАНСТВЕ 217 Рассмотрим одну задачу другого рода, прн решении которой в определенном смыс/Ге используются проводимые выше в этом параграфе построения. Требуется построить интерполяционный многочлен степени N—1с узлами интерполяции х'^, ..., xj^; эти узлы являются нулями многочлена Qn(x) степени М из ор- тонормированной системы многочленов" {Qn(x)}, соответствующей весу р{х). Например, в главе II шла речь об интерполяции по нулям многочленов Чебышева. Будем отыскивать интерполяционный многочлен в виде линейной комбинации W-I Pa/-iW=2 a,Q,{x). При т, п <. N многочлен Qm{x)Qn(.x) имеет степень не выше 2N — 2. Поэтому квадратура Гаусса с N узлами точна для этого многочлена N Ь S ^'Ят Ю Qn (^П = I Qr. М Qn М Р W dX = б„_. F) 4=1 а Таким образом, векторы при т< N образуют ортонормированную систему относительно скалярного произведения (у. 2)=2DJ'z/,2,; G) « поэтому вектор f = (f(*:f). •••. f{x'^)) может быть разложен по этой системе векторов: N-1 где d, = if, <?/). Многочлен будет искомым. в гграктических вычислениях используются чаще всего весовые функции р(х)= , на [—1,1] и р{х) = 1. В первом случае ортогональные У I ~ х'' многочлены и квадратура Гаусса известны в явном виде (многочлены Чебышева, формула Эрмита), во втором известны ортогональные многочлены и имеются достаточно обширные таблицы узлов и весов квадратур Гаусса.
218 ПРИБЛИЖЕНИЕ ФУНКЦИЙ И СМЕЖНЫЕ ВОПРОСЫ [ГЛ. IV § 3. Дискретное преобразование Фурье Пусть f(x)—периодическая функция с периодом 1 — может быть разложена в ряд Фурье оо f{x)= 2 а, ехр Bяг^л:), A) лричем оо S |aJ<oo. B) q=—oo Рассмотрим значения этой функции на сетке из точоч Xi = l/N, где /, N — целые, Л^ — фиксировано, и обозначим f(xi)=fi. Пусть ^2 — ci\=kN, ft —целое; тогда QiXi — qiXi = = kNxi = ki, kl — целое и, следовательно, exp Bя/^|Л:) = exp {2niq2x) " C) в узлах сетки. Поэтому, если функция f{x) рассматривается лцшь на сетке узлов Xi, в соотношении A) можно привести подобные члены /г = S А^ ехр {2niqxi), D) G=0 где оо S= —00 Если с самого начала бьчла задана функция, определенная только на сетке, то на этой сетке ее можно также представить в форме A). Действительно, такую функцию можно продолжить на всю прямую, доопределив ее между узлами сетки путем линейной интерполяции. Для непрерывной кусочно-дифференцируемой функции выполняется B), и поэтому после приведения на сетке подобных членов получим D). Определим скалярное произведение для функций на сетке: N-\ if.g) = Jf^flgl- 1=0 Множитель \/N введен для согласованности получаемых соотношений с непрерывным случаем: если f{x) и g{x) — непрерывные функции на [О, 1], то 1 if.g)-*jf{x)g{x)dx о при iV,=ioo.
§ 31 ДИСКРЕТНОЕ ПРЕОБРАЗОВАНИЕ ФУРЬЕ 2ia Функции g, (х;) = ехр Bя/^л;;) при 0^q<N образуют орто- нормированпую систему относительно так введенного скалярного произведения. Действительно, W-1 (ёг Si) = irS ^^Р B"' Чт^ ') ■ /=о При q ф ]', суммируя геометрическую прогрессию, имеем (а „ ч __ ' ехр Bя( (д -/))-! _ г. ехр12ш-^-^|- 1 Поскольку {§,, g,)^l, то в итоге имеем (ёч,ё1) = \-1 при 0^q.j<N. E) Умножая D) скалярно на gj, получим равенство Ai = (f, g^/)= дг5]/гехр{-2п1№), F) г=о очевидно, Л/ -^ Яу = J f (л:) ехр {— 2nijx) dx а при N-^oo и / фиксированном. Однако это не означает, что /(л) » 2 Л/ехрBя//л;). Посмотрим, почему это соотношение неверно. Пусть для простоты k IW =2 о.; ехр {2ш}х), -к где 2k < yv. Из D) получаем представление для коэффициентов Aj'. Ifl/ при 0</<fe, О при k < j < N — k, a/_jv при N~k^j<N. Таким образом, правая часть этого неверного приближенного
220 ПРИБЛИЖЕНИЕ ФУНКЦИИ И СМЕЖНЫЕ ВОПРОСЫ (ГЛ. IV равенства есть It -I S Я/ ехр {2яг/д:) + ехр Bя1"ЛГл:) 2 и/ ехр {2я//х). Она совпадает с /(л;) в точках Xi, но далека от нее вне этих точек. Заменой переменной суммирования s'^s-}-k в определении А^ убеждаемся, что А^^ = А^^, если q^— q^ = kN, где, k — целое. Воспользовавшись равенством C), перепишем D) в виде ft= S A^exp{2niqxt). G) -W/2<l7<W/2 Если /(jc)—достаточно гладкая, то величины |aj| с ростом / убывают быстро, и поэтому Ад »aq при малых q; кроме того, тогда величины Aq и а, малы njfjH больших q. В итоге есть основание надеяться на справедливость приближенного равенства fW« S ДдехрBя/^л;) . (8) ВО всех точках х. Напомним, что это приближенное равенство обращается в равенство в точках сетки. Способ аппроксимации функции правой частью (8) носит название тригонометрической интерполяции. Соотношение G) называют конечным или дискретным рядом Фурье, а коэффициенты Ад — дискретными коэффициентами Фурье. Игнорирование установленного нами факта о равенстве функций ехрBя1^1л;) и ехрBяг^2'^) в узлах сетки при qi — q^^^kN часто является источником получения неверных соотношений. При решении одной инженерной задачи потребовалось определение первой собствспной частоты колебаний конструкции. Было принято решение написать нестационарное уравнение, описывающее процесс колебаний, вывести на печать график и из рассмотрения графика определить частоту. Соответствующее уравнение, которое мы будем условно обозначать х" = F(x), решалось методом конечных разностей. Для контроля надежности результата производился повторный расчет с вдвое более мелким шагом. Графики кривых, полученных в результате расчетов, совпадали с точностью 10%. Однако из сравнения с экспериментом оказалось, что полученная частота отличается от истинной в десятки раз. Причина недоразумения заключалась в том, что график решения строился с шагом XIN, существенно большим периода колебаний решения задачи. Решение было близко к функции const • ехр Bя1G/), где qlN близко к четному числу 2ft. Поэтому как на сетке с шагом l/iV, так
'31 ДИСКРЕТНОЕ ПРЕОБРАЗОВАНИЕ ФУРЬЕ 221 и на вдвое более мелкой с тагом 1/B,V) получался график одной и той же функции const ■exp{2ni{q — 2kl\!)t). В другом случае несоответствие со здравым смыслом возникло при расчете диаграммы направленности антеииы. Предпринимавшиеся попытки найти ошибку в программе, методе решения или физическом описании задачи ие приводили к положительному результату. Объяснение оказалось тем же: график сильно колеблющейся функции выдавался на очень редкой сетке. На рис. 4.3.1 сплошной кривой изображен реальный график сечения диаграммы, пунктиром — график, который строился путем интерполяции полученных расчетных значений х н противоречил эксперименту. Существует соответствие между задачей приближения функций линейными комбинациями многочленов Чебышева и тригонометрическими многочленами. Пусть на отрезке [—1, 1] функция f{x) приближается линейными комбина- 2 dfTj (х). Замена пе- Рис. 4.3.1. циями 2j Я/J 1=0 ременных х = cos t сводит исходную задачу к задаче приближения функции f{cost) линейной комбинацией т—1 т—\ S ajTj (cos 0=2 Я; cos (jt). !=^Q /=o Справедливо равенство (f. g). J /1-л:2 J ' — I • a = (cos9)g{cos9)de = (f. gJ Следовательно, задача наилучшего приближения f(л:) в норме, соответствующей скалярному произведению {/, g)\, эквивалентна задаче приближения f(cos9) в норме, соответствующей скалярному произведению {/, ^J. Точно так же существует соответствие в случае задач интерполяции и наилучшего приближения в равномерной метрике. Задача интерполирования функции ( 2/ - 1 \ многочленом по узлам л:/ = со$1я^'2—I — нулям многочлена Чебышева Тт{х) — после такой замены сводится к задаче интерполирования функции /{cos 9) при помощи тригонометрического многочлена V а; cos {jt) по узлам tj = я равномерную сетку. 2/-1 2N образующим
222 ПРИБЛИЖЕНИЕ ФУНКЦИИ И СМЕЖНЫЕ ВОПРОСЫ (ГЛ. IV § 4. Быстрое преобразование Фурье Осуществление прямого и обратного дискретных преобразований Фурье является составной частью решения многих задач. Непосредственное осуществление этих преобразований по формулам C.4), C.6) требует 0{N^) арифметических операций. Рассмотрим вопрос о возможности сокращения этого числа операций; для определенности речь пойдет о вычислении коэффициентов Aq по заданным значениям функции. Идея построения алгоритмов быстрого преобразования Фурье опирается па то, что при N , составном в слагаемых правой чаСти C.6) можно выделить группы, которые входят в выражения различных коэффициентов Aq. Рассмйтрим сначала случай Л/^ ;Di;D2, iOi, /Ог ¥= 1. Представим q, /, лежащие в пределах 0^ q, j •< N в виде q = qi-\- piq2, j = h + /f'2/1. где 0 ^ ^1, /i < pu 0 ^ qz, /2 < pi- Имеем цепочку соотношений Aq = A D-1, ^2) = 4" S f' ^^^ (~^^^ IV" p,-i p,-i ^'ir It Ъ /ь+Р./.ехр^-2яг —^ . /,=0 i,=a Из равенства И предыдущего соотношения получим где 1т=0 Л<" (^„ /2) = у- S ^''+''='''^Р (-2''^' ^) ■ Pi ^J'"-"=" -* р, Непосредственное вычисление всех ЛО (^i, /2) требует 0{р'\р^ арифметических операций, а последующее вычисление A{q\, ^2) еще 0{р^р'^ операций. Следовательно, при р,, ^02 = О (V^Л/) общее число операций будет 0{N'l^). Точно так же при N = = Pi ... Рт строится алгоритм вычисления совокупности значений Aq, для которого общее число операций не превосходит CN {р^-{-...-\-Рт), здесь С — абсолютная постоянная. Выпишем" соответствующие расчетные формулы для наиболее употреби-
§ 4) БЫСТРОЕ ПРЕОБРАЗОВАНИЕ ФУРЬЕ 223 телыюго случая pi = ... = Рт = 2. Представим числа q, j в виде ^q,2'-\ j= S/V+.-.2"-'. fc=l m=l где Qk, /m = 0, I- Величину gj2~'^ можно представить в виде r /r-m+l \ m=\\ fe=l / где s — целое, равное сумме всех слагаемых /7t/ . <Tk+m-r—2 У которых k-\-m — r — 2^0. Очевидно, exp (- 2я/ -^) = exp (- 2яг (-^ - s)). Поэтому W-I A(qi qr) = A, = j^ ^ //exp(- 2яг-^-) = I I 1 V 1 V . /,= 0 /,=0 После перегруппировки слагаемых имеем 1 (ки слагаемых имеем A{qu .... 7л) = у5] exp (- 2яг7,2-^ 2]'?ft2*~'l X X|4^S ехр(-2я//,_,2'-5]'?''2'~']х... V /г_,=э \ fe=i / \ /,=0 / / Это соотношение можно записать в виде последовательности рекуррентных соотношений Л('")(^1, .... q^] /„,+ , jr) = I / т s = 1- S exp -2яг/„2-';^,2*-' X ,^=0 V fe=l / X ^'^'''Ч'?!, .... qm-ь !,n, •••. Уг). m=l, .... r.
224 ПРИБЛИЖЕНИЕ ФУНКЦИИ И СМЕЖНЫЕ ВОПРОСЫ (ГЛ. IV где А^'ЧЧ! qr) = A{q^ q,). Переход от каждой совокупности /К™-') к совокупности Л'"»' требует 0{N) арифметических и логических операций; всего таких шагов г, поэтому общее число операций 0{Nr) = 0{N\og^N). Вычисление при помощи этой совокупности соотношений дает выигрыш в отношении накопления вычислительной погрешности по сравнению с формулами C.6). Определенные удобства имеются также при вычислении значений экспонент, входящих в расчетные формулы. При вычислении величин ЛС") используются значения ехр{—Зж'/З"""), /=0, 1, .... 2*" — 1; в частности, при т = 1 это 1 и —I. Для вычисления значений /}<'"+'' потребуются еще значения ехр{—2я172-'"~') при нечетных /, удовлетворяющих неравенству О ^ / < 2""+'; их можно вычислять через уже известные величины, в частности, при помощи соотношений (/п^2): ехр (- 2я« i±l 2-Л + ехр (- 2я1 ^ 2-Л ехр (- 2я,72-—) = —5^ , \ ,-J ^ , 2соз(я2 ) где в свою очередь при /п ^ 1. в ряде случаев удается еще уменьшить число операций в некоторое число раз. Один из таких случаев уже упоминался нами выше:, была дана с,1к / ^v ^ я B/ — 1) вещественная функция /(/) =g{cos/), известная в точках //=—^-„т^^——; требовалось найти коэффициенты интерполяционного многочлена 2 А] cos it. /■=0 Другой случай — Л^ четно, заданы значения функции iV/2-J 2 Aj sin 2я/д( /=i в точках xi = IjN, О < / < N12; ищутся коэффициенты А]. Задача. Требуется найти коэффициенты Cj' произведения двух много- членов N-1 \ /N-\ \ 2ЛГ-2 2И 2*/ = 2 4x1. /=0 / \ /=0 / /=0 Показать, что для этого достаточно 0{N \0g2N) операций.
$ 5] НАИЛУЧШЕЕ РАВНОМЕРНОЕ ПРИБЛИЖЕНИЕ 225 § 5. Наилучшее равномерное приближение Если норма в линейном нормированном пространстве определяется не через скалярное произведение, нахождение элемента наилучшего приближения существенно усложняется. Рассмотрим типичную задачу, встречающуюся, в частности, при составлении стандартных программ вычисления функций. Пусть Л — пространство ограниченных вещественных функций, определенных на отрезке [а, Ь] вещественной оси, с нормой ||/|| = sup|/(^)|. [а.Ь\ Ищется наилучшее приближение вида п Qn (х) = 2 ajX^- 1=0 Согласно теореме 1 из § 1 существует элемент наилучшего при* ближения, т. е. многочлен Q°(jc) такой, что EJf) = lf-Qn<\\f-QA при любом многочлене Qnix) степени п. Такой многочлен Q^ (л;) называют многочленом наилучшего равномерного приближения. Далее будут установлены необходимые и достаточные условия того, чтобы многочлен являлся многочленом наилучшего приближения для непрерывной функции. Теорема (Балле Пуссен)-. Пусть существуют п + 2 точки JCo <! ■ • ■ <! JCn+i отрезка {а, Ь] такие, что sign ((/ [xi) ~ Qn{xi)){-1)') = const, т. е. при переходе от точки х,- «: следующей точке x,+i величина f {х) — Q„ {х) меняет знак. Тогда Enif)>li= min \f{x,)-QJXi)\. A> /=0 n+l Доказательство. В случае ц-=0 утверждение теоремы очевидно. Пусть ц > 0. Предположим противное, т. е. что для многочлена наилучшего приближения Q°(x) llQ^-/|| = ^„(/)<f^- Имеем sign (Q„ (X) - Q« (x)) = sign ((Q„ (x) - f (x)) - (Q° (x) - f (x))). В точках xi первое слагаемое превосходит по модулю второе; по- -STOMy sign{Qn{Xi) — Q° (Jc,)) = sign (Q„(-V/)—/(^^0)- Следовательно, 8 H. C. Бахвалов
226 ПРИБЛИЖЕНИЕ ФУНКЦИИ И СМЕЖНЫЕ ВОПРОСЫ [ГЛ. IV многочлен Q„(jc) —Q^W степени п меняет знак п+1 раз. Получили противоречие. % Теорема Чебышева. Чтобы многочлен Q„(х) был многочленом наилучшего приближения непрерывной функции f{x), необходимо и достаточно существование на [а, Ь] по крайней мере т = п-{-2 точек Хо<. .-.<. Хп+[ таких, что f{xt)-QAxi) = a(-lY\\f-Qj, i:=0, ..., n+1. а=1 (или а= —I) одновременно для всех i. Точки Л'о, ..., х„+\, удовлетворяющие условиям теоремы, принято называть точками чебышевского альтернанса. Доказательство. Достаточность. Обозначим через L величину II/ — Qnll. Применяя (Г), имеем 1 = ц<£„(Л. но En{f)<\\f-QA = L вследствие определения величины Enif)- Следовательно, £„(f) = ^ L, и данный многочлен является многочленом наилучшего равномерного приближения. Необходимость. Пусть данный многочлен Qn{x) является многочленом наилучшего равномерного приближения. Обозначим через r/i нижнюю грань точек xs^[a, b], в которых \f{x)—Qn{x)\=^L; из определения L следует существование такой точки. Вследствие непрерывности f(x)—Qn{x) имеем \f(yi)—Qn{y\)\ ^ L- Для определенности далее рассматриваем случай f{yi) — Яп{У[) = -|-^- Обозначим через //а нижнюю грань всех точек х^(у[,Ь], в которых f{x)— Q„{x) = —L, последовательно через ук+1 обозначим нижнюю грань точек х ее ^(Ук, Ь], в которых f{x)— Qn(x) = (—1)''/-, ... Вследствие непрерывности f{x)— Qn{x) при всех k имеем f{yk+i)-Qn{yk+i) = (-y)''L. продолжаем этот процесс до значения ут = b или Ут такого, что \f{x) —Qn{x)\ <::L при ут<х^Ь. Если ш^п + 2, то утверждение теоремы выполнено. Предположим противное. Вследствие непрерывности f{x)—Qn{x) при любом k (l<k^m) можно указать точку Zh-\ такую, что \f{x) — — Qn(x)\ <. L при Zfe_i ^ X <.Ук\ положим Zo = о, Zm = Ь. Согласно построению на отрезках [Zi_i, 2,], г := 1 т, имеются точки, в частности, точки //,-, где }{х) —Qn{x) = (—l)^~^L, и нет точек, где f{x) — Qn{x) = (—l)^L. Положим m-l V {X) = П {Z, - X), Qi [х) = Q„ [х) + dv W. d > О,
§ 51 НАИЛУЧШЕЕ РАВНОМЕРНОЕ ПРИБЛИЖЕНИЕ 227 И рассмотрим поведение разности / (х) - Qi {X) = / (х) - Q„ (х) - dv (х) на отрезках [2j_i, гЦ. Для примера обратимся к отрезку [zq, Zj]. На [zo,z\) имеем v(x)>0, и поэтому f(x)-Qi{x)^L-dvix)<L. В то же время f{x)— Qn{x) > —L на [zq, zj], поэтому при d достаточно малых, например, при mln \!(x)-Qn(x) + L\ '^"^^i— max low I [г., 2,1 на [zo, z\) имеем f{x)-Q'Jx)>-L. Кроме того, |f(^,)-Q^B.)l = |/(^.)-Q„(^.)j<^. Таким образом, \f{x)-Qi(x)\<L на этом отрезке при достаточно малом d. После проведения аналогичных рассуждений относительно остальных отрезков мы сможем указать малое do такое, что на всех отрезках выполняется неравенство \f{x)-Qi'ix)\<L- v(x) и, следовательно, Q^'(x) являются многочленами степени п. Получилось противоречие с предположением, что Qn{x) — многочлен наилучшего приближения, а m < п + 2. Теорема доказана. Это доказательство теоремы Чебышева н рассматриваемый в § 7 итерационный метод получения многочлена наилучшего равномерного приближения имеют характер тупика в общей структуре нашего курса: методы исследования и сами результаты никак не используются в дальнейших построениях. Однако они Интересны как типичный пример рассмотрения задач математического программирования — нового, быстро развивающегося раздела прикладной математики. Теорема единственности. Многочлен наилучшего равномерного приближения непрерывной функции единствен. Доказательство. Предположим, что существуют два многочлена степени п наилучшего равномерного приблин^ения: Q'nix)^Qlix). |/-Q^|| = ||/-Q^|| = ^„(/).
228 ПРИБЛИЖЕНИЕ ФУНКЦИИ И СМЕЖНЫЕ ВОПРОСЫ [ГЛ. IV Отсюда О^ +0^ Vi II f - оЧ1 II / - о^ II Поэтому многочлен х также является многочленом наилучшего равномерного приближения. Пусть Хо, .... jc„+i — соответствующие этому многочлену точки чебышевского альтер- «анса. Тогда = En{f), 1 = 0 n+1. или Так как |Q*(JC;)—f(jc^)|<£^(f), Л = 1,2, то последнее соотношение возможно лишь при Два различных многочлена степени п Ql^{x) и Q\{x) 'совпадают в п + 2 точках. Мы пришли к противоречию. Задача. Функция /(д() = sin 100д( приближается иа [О, я]. Найти <390 (*). § 6. Примеры наилучшего равномерного приближения 1. Непрерывная на [а, Ь] функция f(x) приближается многочленом нулевой степени. Пусть sup f(x) = f {xi) = М, inf f{x)=f (Xi) == т. la. b] la, b] Многочлен Qo{x) = (M-\-m)/2 является многочленом наилучшего приближения, а Х[, Хч — точками чебышевского альтер- нанса. Задачи, а) Доказать, что наилучшее приближение нулевой степени имеет тот же вид, если \(х) не обязательно непрерывна. б) Построить пример функции и соответствующего многочлена первой <;тепени наилучшего равномерного приближения так, чтобы среди точек че- ■бышевского альтернанса не было а и 6. в) Построить пример функции (естественно не непрерывной), для кото- юой многочлен наилучшего приближения не удовлетворяет условиям теоремы Чебышева. 2. Выпуклая на {а, Ъ\ функция \{х) приближается многочленом первой степени Qi {х) = ац + fli-f. Вследствие выпуклости i{x) разность /(х) — {а^-\-а\х) может иметь только одну внутреннюю точку экстремума. Поэтому точки а. b являются точ-
■§61 ПРИМЕРЫ НАИЛУЧШЕГО РАВНОМЕРНОГО ПРИБЛИЖЕНИЯ 229 нами чебышевского альтернанса. Пусть d — третья точка альтер- нанса. Согласно теореме Чебышева, имеем равенства f{a) — {aQ+aia) = aL, f (d) — (flo + a,d) = — aL, f{b) — (aQ + aib) = aL. Вычитая первое уравнение из третьего, получим f(b) —f(a) = = ai{b — о). Отсюда находим а^ = 1_ -' ^^^ определения неизвестных d, L, ао, fli и а = ±1 получено всего три уравнения. Однако следует вспомнить, что точка d является точкой экстремума разности f{x) — (ao + fliJC). Находим значение d; если f{x) дифференцируема, то уравнение для определения d будет f'{d)—<2i = 0. Теперь определяем оо, например, из уравнения, ■получающегося сложением первого и второго уравнений. Геометрически эта процедура выглядит следующим образом (рис. 4.6.1). Проводим секущую через точки (о, f{a)), (й, /(b)). Ее наклон равен oi. Проводим параллельную ей касательную ■к кривой у = f{x), проводим прямую, ■проходящую посередине между этими прямыми. Задача. f{x) = |*|. [а. 6] = [-1. 5]. Построить многочлен наилучшего равномер- «ого приближения первой степени. - 3. Функция f{x), удовлетворяющая условию f("+*)(jc) ^0, прибли- Рис. 4.6.1. жается на [а, Ь] многочленом наилучшего приближения степени п; требуется оценить величину Cn(f). В § 9 гл. II мы имели оценку погрешности интерполяции ло узлам многочлена Чебышева а + Ь Ч , Ь — а (n[1k-~\) )• а именно. \f{x)- Р, {X) I <(тах I f'"+" {X) \) jl~(nTx)i {а.Ь\ (I) Отсюда следует неравенство £„(f)<(maxir"W|)-&^ [а.Ы 22"+'(«+1I ' Пусть Qn{x)—многочлен наилучшего равномерного приближения. Вследствие теоремы Чебышева разность f(jc)—Q„(jc)
230 ПРИБЛИЖЕНИЕ ФУНКЦИИ И СМЕЖНЫЕ ВОПРОСЫ [ГЛ. IV обращается в нуль в (п + 1)-й точке yi, ..., уп+i- Поэтомумно- гочлен Qn{x) можно рассматривать как интерполяционный с узлами интерполяции r/i, .... Уп+i. Согласно B.3.1), имеем представление погрешности интерполирования /(x)-Q„W = f'"^'4S)^^. где (о„+1 (х) = (jc — г/,) ... (jc — уп+i), t, е [й, Ь]. Пусть тах|(й„+, {jc)|==|(u„+i(a;o)|. (а. Ь] Имеем ' En(f) = \\f{x)-Qn(x)\\> (min|r^"W|)fmaxJ^±!^). Га. ft] \ [а. Ь] 1« + W / >\f{Xo)-QЛXo)\=\f'^'■'Чt(x,))\-^^:l^> Согласно B.8.6), max I м„+, (х) р> „2п+1— • [а, Ь] ^ Отсюда следует оценка £.№>(ftlr"Wl)^&^. B) Таким образом, если \(^-^^'^{^х) сохраняет знак и меняется не очень сильно, разность между погрешностью многочлена наилучшего приближения и интерполяционного многочлена по нулям многочленов Чебышева несущественна. Задача. Доказать, что в рассматриваемом случае чебышевский альтср- нанс содержит точки а и 6. 4. Рассмотрим задачу нахождения многочлена наилучшего приближения степени п в случае, когда ^ (х) = Р„+, (х) = flo + • • • + a„+,Jc""*"', а„+, Ф 0. Тогда f*''"*'''(x) = a„4.i (п + 1)! и оценки сверху A) и снизу B> для £«(/) совпадают; Таким образом, многочленом наилучшего приближения оказывается интерполяционный многочлен С1п{х) при узлах интерполяции a-Vb . Ь — а /яBА!—1)\ - , ,, ^*=-Т- + -Т-^°М 2ЙТТГ]' *=1"-- «+!•
4 6] ПРИМЕРЫ НАИЛУЧШЕГО РАВНОМЕРНОГО ПРИБЛИЖЕНИЯ . 231 Можно получить другое представление этого многочлена наилучшего равномерного приближения QЛ^) = я...(x)-a„„V,(^-(_";^>)iij^. C) Действительно, выражение в правой части является многочленом степени п, поскольку коэффициент при л;"+' равен нулю; точки JC; =—^ 1 2—COS^;-р, I = О, .... п, максимума модуля разности Рп+1 — Qn(x) образуют чебышевский альтернанс на [а,Ь]. 5. Пусть f(x) нечетна относительно (а + й)/2 и непрерывна. Для определенности будем говорить об отрезке [—1,1]. Условие нечетности означает f{x)=—f(—x). Покажем, что здесь многочлен наилучшего приближения любой степени нечетен, т. е. записывается в виде суммы нечетных степеней х. Действительно, пусть Qn(x)—многочлен наилучшего приближения для f(x). Имеем \f{x)—Qn{x)\^En{f). После замены х на —х и умножения выражения под знаком модуля на —1 получим \-f{-x)-(-QA-x))\<EUf), иначе \f{x)-{-Qn{-x))\<EAf)- Следовательно, многочлен —Qn{—x) также является многочленом наилучшего равномерного приближения. Вследствие теоремы единственности имеем Qn(x)= —Qn{—x), что и требовалось доказать. 6. Пусть требуется приблизить х^ на [—1,1] многочленом наилучшего приближения первой степени. Предшествующим результатом можно воспользоваться двояко. Один путь: поскольку искомый многочлен наилучшего приближения будет нечетным, то его достаточно отыскивать среди многочленов Qi{x) = а\Х. Второй путь: поскольку для данной задачи многочлен наилучшего приближения второй степени оказывается многочленом первой степени, то исходная задача эквивалентна задаче построения многочлена наилучшего приближения второй степени. Последняя задача наилучшего приближения многочлена многочленом степени, на единицу меньшей, уже нами рассматривалась. Задача. /(*) четна относительно середины отрезка приближ^ия [—1, \\. \{х) = ](—х), и непрерывна. Доказать, что многочлен Qn (х) наилучшего приближения четен. Задача, ^(х) = ехр(д(') приблизить на [—1, I] многочленом наилучшего приближения третьей степени. Из рассмотренного выше вытекает, что этот многочлен имеет вид Ло + fla-*'- Задача эквивалентна задаче наилучшего приближения /i(y)=expy на [О, 1] многочленом аа + а^у (см. п. 2).
232 ПРИБЛИЖЕНИЕ ФУНКЦИЯ и СМЕЖНЫЕ ВОПРОСЫ [ГЛ. IV 7. Довольно распространен случай, когда достаточно получить хорошее приближение к функции и не обязательно искать наилучшее равномерное приближение. Для простоты рассматриваем случай приближения на отрезке [—1, 1]. Разложим функцию f{x) в ряд по ортогональной системе многочленов Чебы- шева f(x)^IidiTi{x). /=0 Часто отрезок этого ряда |//r/W невысокой степени обеспечивает неплохое равномерное приближение. Иногда бывает затруднительно вычислить явно коэффициенты d}, но зато известно разложение Тейлора оо / W = 2 ajxl, сходящееся при \х\ ^ 1. Тогда может быть полезен следующий метод (называемый телескопическим) .- Выбирают некоторое п такое, что погрешность формулы f{x)^PAx)==Iiaixl является достаточно малой. Затем приближают многочлен Р„ (л;) многочленом его наилучшего равномерного приближения Pn-i{x). Согласно формуле C), P,.^{x) = PAx)-a,T„(xJ^-". Поскольку |r„(jc)| ^ I на [—1, 1], то |Я„_,{л:)-Р„(л:I<|а„|2'-", далее приближают многочлен Pn-i{x) его многочленом наилучшего равномерного приближения Рп-2{х) и т. д.,- понижение про-- должается до тех пор, пока погрешность от таких последовательны* аппроксимаций остается малой. Рассматриваемый прием можно описать еще следующим образом. Разложим многочлен Рп{х) по многочленам Чебышева PAx)=tdiTi{x).
4 6] ПРИМЕРЫ НАИЛУЧШЕГО РАВНОМЕРНОГО ПРИВЛИЖЕНИЯ 233 Введем обозначения Qm{x)= 2 (itTfix) при/и^п. Всякий миого- член Qmix) является многочленом наилучшего равномерного ттриближения степени т для многочлена Qm+[(x), при этом fm{Qm+l)=IIQm4.1-Qmll = |rfm4..|. 'D) Это следует, например, из формулы C) или непосредственно из теоремы Чебышева. Отсюда вытекает, что Qn-[(x) = Pn-i(x), Qn-i{x) = Рп-2{х) и т. д. Таким образом, существо описанного метода заключается в следующем. Исходная функция приближается отрезком ее ряда Тейлора Рп{х). Затем многочлен Р„(дс) раскладывается по многочленам Чебышева и отбрасывается несколько последних членов разложения. Так как \Рп(х)-Рт{х)\< 2 \d,\, /=m+l ТО общая оценка погрешности \f{x)-P,n(x)\<max\f{x)-P„{x)\+ S I d, |. Рассмотрим задачу приближения arctgJf на — tg-^, tg-^ с точностью 0,5-10"'. Для достижения такой точности при аппроксимации отрезком ряда Тейлора требуется положить jc' . jc' х'' , х' x^^ arctg а; « д: --3"-Ь-д---тг +-д---ур. После трех шагов приближения многочлена многочленом его наилучшего равномерного приближения на единицу меньшей степени получим многочлен Ре (х) = 0,9999374* - 0.3303433*' -+- 0,1632823*', также обеспечивающий требуемую точность. Отметим, что здесь из-за нечетности исходного многочлена показатель степени на каждом шаге уменьшался на 2. 8. Иногда вместо теоремы Балле—Пуссена для оценки величины En{f) снизу удобнее использовать следующий результат: Теорема. Пусть f{x) приближается на [—1, 1], Qn+i{x) = a„+iX"+^+ ... +ао, тогда En{f)>\an+i\2-''-\\f-Q, п+\ I
234 ПРИБЛИЖЕНИЕ ФУНКЦИИ И СМЕЖНЫЕ ВОПРОСЫ [ГЛ. IV Доказательство. Если Q^ — многочлен наилучшего приближения к функции /, а Qe к функции g, то <\Qlnix)-fix)\-\-\Qiix)-gix)\^EJf) + E^ig), Отсюда следует, что Em{f-\-g)<Em(f) + Em(g). Полагая ni = n, g^^Qn+i — f, получим Вследствие C) имеем EAQn^i) = \an+i{2-\ Таким образом, En(f)>En(Qn+,)-EAQn+l-f)>\an+^l2-'^-\\f-Qn+l\\. E> Теорема доказана. Рассмотрим пример получения двусторонней оценки для Enif). Пусть f{x)=^diTj(x). у=о положим Очевидно, у=о llf-Q«+ill< 2 И,\; согласно D), £n(Qn+i) = Mn+i !• Обращаясь к первому из неравенств E), получаем оценку Enif)>\dn+i\- 2 Idyl. y=n+2 В TO же время очевидно, что En(f)<\\f-Qn\\< 2 Myl = M«+il+ 2 \d,\. I=n+1 y=n+2 При |dn+il> 2 My I из сравнения этих оценок можно полу- /=п+2 чить двустороннюю оценку для E„(f).
^ Г) ИТЕРАЦИОННЫЙ МЕТОЛ 235 § 7. Итерационный метод построения многочлена наилучшего равномерного приближения Обычно многочлен наилучшего равномерного приближения отыскивается каким-либо итерационным методом. Описываемый ниже алгоритм состоит в получении последовательных приближений к точкам чебышевского альтернанса и соответствующих этим точкам многочленов, сходящихся к многочлену наилучшего равномерного приближения. В дальнейшем предполагается, что приближаемая функция непрерывна и не является многочленом степени п, т. е. En(f) ¥= 0. Пусть имеются некоторые приближения к точкам чебышевского альтернанса *о< ... <**^,. Построим многочлен 1=0 удовлетворяющий в этих точках соотношениям fW)-Q« (*?) = (-')'£*. A) где £* — некоторая неизвестная величине. Получились уравнения 2 а* (*?)' + (-!)'£*= К*?) (^) /=о относительно « + 2 неизвестных а*, .... а*, £*. Покажем, что определитель этой системы отличен от нуля. Предположим противное; тогда однородная система уравнений Q* (*,) + (-1)' £* = 2 1/ (*?)' + (- О' £* = О /=о имеет ненулевое решение. Если у этого решения £* = О, то хотя бы одно из а! отлично от нуля; ненулевой многочлен Q*(*) степени п имеет л+ 2 нуля; пришли к противоречию. Если £* Ф О, то хотя бы одно из о? также отлично от нуля, тогда ненулевой многочлен Q„{x) меняет знак между каждой парой точек **, **^i, т. е. имеет не менее п+ 1-го нуля; опять получается противоречие. Введем обозначения * в процессе итераций фиксируется некоторое qa в пределах 0<qa<l. За ж* при k>0 принимаем точки, принадлежащие отрезкам [*fz], *?+!]. 1 =0, ..., /I + 1, н удовлетворяющие в совокупности условиям а) '^^tna^x^^J/?^4*?)l>l^*''l+'?o(ll^r'(*)|-l £"-'!). Y) |Л^~'(х?)|>|£*"'1 при «=0 /1+1.
236 ПРИБЛИЖЕНИЕ ФУНКЦИИ И СМЕЖНЫЕ ВОПРОСЫ [ГЛ. 1\Г Множество таких точек не пусто и может быть построено, например, следующим образом. Возьмем произвольную точку ** такую, что |/гГ'(**)|>|я*-Ч + *о(|/гГ'(*)||-1 £*-'!); так как правая часть этого выражения не превосходит У?*~'{*)|, то такасг точка существует. Если E^^~^ = О, то требуемым условиям удовлетворяет совокупность, состоящая из точки ** и любых п + 1 точек из ж*~' *n+i При £*"' ФО все I Л*"'(*?"') I ^ ^' рассмотрим отдельно случаи: а) . x*e[*i7'.x*-']. б) ** е [**7i> *п+1]' в) **е К"'. **;!]• в случае а) полагаем ** = х , ^ хГ при /гГЧ*о-')«Г'«)>о. **zj при /?S-'(*S"')«n~'(*5)<o ае б) полагаем ■«*+i = **. X*-' при /?*-'(*«;!)««~'W+i)><'. *?;! при /?*-'(*«;!)««"'(*«+i)<o Обратимся к случаю в); пусть х" ^[х^-\ х1-\], где 0<io<«: если /?*"'(**)/?*"'(*?,~')>0, то положим х1 = х\ *? = *{="' при г¥ч"о: если же /?*"'(**)/?*"'(*?.+'i)>^' положим *^^^., = х*. *? = *?-' при i^io+l. _ ь Во всех случаях полученные совокупности точек *^ удовлетворяют уело* ВИЯМ а), Р), Y). Если не известна дополнительная информация о положении искомых точек чебышевского альтернанса, то в качестве xj часто берут точки экстремума многочлен Чебышева о а + Ь , Ь — а I n-\-\ — i\ , . , , Задача. Пусть f{x)—многочлен степени «4-1. Показать, что при таких начальных приближениях х^ многочлен Q„(x) окажется искомый многочленом наилучшего равномерного приближения.
i 7) ИТЕРАЦИОННЫЙ МЕТОД 237 Если функция f(x) близка к четной или нечетной относительно середины отрезка, то может оказаться удобным взять в качестве л^ точки экстремума многочленов Чебышева соответствующей степени. В случае построения многочленов наилучшего приближения для большой серии функций f{A,x), зависящих от параметра А, иногда оказывается удобной следующая процедура, основанная на предположении, что точки чебышевского альтернанса Xi являются гладкими функциями параметра А: после нахождения этих точек для некоторых значений А\ Am начальные приближения при других значениях А определяются интерполяцией. Теорема. Пусть maxlf'"(*)r=A^/<<» при / = 0 « + 2. la.b] Тогда для описанного итерационного процесса выполняется соотношение If - Q*II <£„(» +const <7* при q<\. При этом IIQ* — Q„ I ^ О, где Q^ —многочлен наилучшего равномерного приближения. Доказательство. Разность f — Q^ обращаетси в нуль в некоторых точках 1/*,..., t/*^i вследствие перемены знака при переходе от каждой точки л* к точке Xj^i- Поэтому Q„(*) является интерполяционным многочленом для f (х) с узлами интерполяции t/j,..., t/*^, е [а, 6]. Согласно B.3.1) и B.17.5), при х^ [а, Ь] имеем здесь Q*(x) = (x-t/f)...(x-t/*+,). Е,. Sj^t". *Ь Так как | (Q* (;с))'К ^ (rt + 1) F — а)", то получаем оценку \(D4r\V\<M (^-Д)" I ч F - а)"+' „ !(/?„(*)) |<М„+1 -^ + Af„+2 ^^^2I =^2 при всех к. Запишем систему соотношений A) в виде где ф* (**) = (—о' в точке *J. Образуем разделенную разность по точкам *01 •••> *п+1 "''' обеих частей:
238 ПРИБЛИЖЕНИЕ ФУНКЦИЙ И СМЕЖНЫЕ ВОПРОСЫ [ГЛ. IV Поскольку разделенная разность по (п + 2)-м узлам от многочлена степени п равна О, то вместо R^ можно поставить Л„ '; получим или Раскрывая выражение разделенной разности, имеем ^*=2;-йМ^. C) '=» i](-l)'d? где Величины ^n~'(**) при i = 0, ..., «+1, /г — фиксированном имеют чередующиеся знаки из-за способа выбора точек **; величины rf* также имеют чередующиеся знаки. Поэтому соотношение C) записывается в виде 1=0 где ''?=kn/(|V]i)>o- n+l Очевидно, ^hi = l. Из выполнения условия Y) "РИ выборе точек *J сле- 1=0 дует, что |««"'(*?)|>1^*~'1 "Р" '=0 «+!• Поэтому из D) получаем • и*|>2л?и*-'1 = |£*-Ч E) 1=0 Если Q*~' не является искомым многочленом наилучщего равномерного приближения, то точки Xq *n+i "^ образуют чебышевский альтер- нанс и, согласно условию а), |/г*-'(*?I>1^*"'1. ' хотя бы при одном /, лежащем в пределах 0^/^л+ 1. Тогда вместо E) получим \Е \>\ Е \. Могло оказаться, что £==0, однако вследствие последнего неравенства при всех /!>1 имеем | £* |^ | £'|>|£''| ^0. По-
i n ИТЕРАЦИОННЫЙ МЕТОД . 239 iTOMy при любых k'^l и о^ I ^« можно написать цепочку соотношений ll£'l<2|£4 = I/?M*'+.)-'?*W)l< Этсюда получаем, что при fe^l, 0^i</^«+l справедливо **-*J>*f+,-*f >е>0, где е=2-!—1; сроме того, IJC* — JC^ ^ 6 — а, поэтому F-«)-"•+" <|d*|<e-(''+'>. Этсюда следует, что р-(п+1) 1=0 2 е- где d не зависит от ft и i. Из выполнения условия а) следует, что хотя бы при одном р, О ^ р < « + 1-, выполняются неравенства 1/гГЧ4I>1^*-'1+^оA1'?Г'||-1^*-'1). Обращаясь к D), с учетом F) получим |£*1> 2 л?|£*-Ч+л*(|£*-Ч + ?о(|1/га-'|-1 £*"'!)) = = |£*-'l + /.^(|/?^'|-|£*-4)>l£*-4 + d?o(i/?M-l£*-4).G) Так как £„ (f) ^|| ^*~'|1, то отсюда следует неравенство En{f)-\E''\<(\-dq,)iEn{f)-\E''-4). и поэтому о< £„ (О - I £* I < A - dqo)" (En (f) - I £° I). I £* I = £п (f) + О (9*). Из G) также следует, что II/?*-'!-|£Ч<(^9оГ'A Я* 1-|£*-'D; отсюда им^м II/г* II = £„(/)+ 0(9*). (8) Мы доказали справедливость первого из утверждений теоремы. При практическом отыскании многочлена наилучшего приближения обычно производится дополнительное смещение из точек *;, предложенных нами ранее, с тем, чтобы каждая из величин l^^-'^x*)] была по возможности больше, а условия а), Р), y) не нарушались. Далее будет доказано второе утверждение теоремы. Заметим, что по существу сам факт сходимости Q„(x) к Q„ (•<) не имеет практического интереса. Многочлен наилучшего приближения строится с целью применения
240 ПРИБЛИЖЕНИЕ ФУНКЦИИ И СМЕЖНЫЕ ВОПРОСЫ (ГЛ. IV его в дальнейшем для вычисления значений функции. Если вместо него получается многочлен Qn(x), для которого [Q* — f |) »£„(/) = ||Q„—/1|, то по отношению к поставленной Цели совершенно неважно, близки ли многочлены <?*(*) и Q„(*). Фиксируем « + 1 различную точку Хд, ..., л-д е [а, Ь]. Пусть S* — точка с координатами (Qn(*o)> •••• Qni^n))- Покажем, что S^-^S^ (Q„ (ха.) Qn (хп)) при /г ^ оо. Предположим противное, т. е. предположим, что существует подпоследовательность /г (/)-> оо, для которой p(S*</'. S)>Y>0 (9) при всех /. Здесь р — обычное евклидово расстояние. Величины [Q*(*()| равномерно ограничены вследствие неравенства |Mjf)-Q5W|<Oi. Следовательно, множество точек S "* лежит в конечной части (л + 1)-»ир- ного пространства н является компактом; поэтому из последовательности S**" ■можно выделить подпоследовательность S "'""", сходящуюся к некоторому гределу So = {.bo, .... Ьп) при т->оо. Интерполяционный многочлен степени « для Q* (ж) при узлах интерполяции X Хп совпадает с ним самим; обращаясь к формуле для нитерполя- кноннвго многочлена Лагранжа, имеем где Так как Q**^*'""^.^^ при т->-оо, то из соотношения A0) получаем (=0 равномерно на [а, Ь] при т-х». Имеем IIQ„-ni<|Q„-Q^'"""| + iQS'^""»-/|- При т->оо первое слагаемое стремится к нулю, согласно (И), а второе "К Enif), согласно (8). Поэтому iQn-fl<En{f). ;ти многочлена в По теореме об единственности многочлена наилучшего равномерного при- «ближення имеем
§7] итерационный метод 241 Следовательно, Q*('('"''(x,)^Q„(x,) = Q„(x,) при всех L Это означает, что S </('"'*->. S, и приходим к противоречию с (9). Таким образом, установлено, что S ->^S при /г-> оо. Тогда нз A1) следует, что Q* (дс) -> Q„ (*) равномерно на [а, Ь]. Теорема доказана. Может возникнуть вопрос: зачем берется flo < 1. Может быть, лучше всего брать Gо = 1; тогда и оценка (8) будет лучше и, по-видимому, итерационный процесс будет сходиться быстрее. Вопрос о выборе значения да для каждого конкретного класса требует проведения экспериментальных расчетов Трудоемкость рассматриваемого алгоритма складывается из работы по решению системы B) и работы по выбору точек х^. Работа по определению точек АС/ зависит от сложности вычисления значений функции f{x). Если значения f{x) вычисляются относительно просто, то разумно взять qa побольше. Также следует иметь в виду, что на начальных этапах приближений мы все равно находимся далеко от искомого решения, и поэтому допустимы некоторые «загрубления алгоритма» с целью уменьшения трудоемкости первых итераций. Например, описанный выше алгоритм иногда модифицируется следующим образом. Поставим в соответствие каждому натуральному т некоторое ajm: О < Шт < 1 и совокупность Mm точек отрезка [а, 6J: j/|", ..., j/" („). При этом налагается требование, чтобы при т-*-оо число точек у^, попадающих в любой отрезок [а\, Ь\] сг [а, Ь\, стремилось к бесконечности и чтобы Шт-»-!. Алгоритм приближенного нахождения многочлена наилучшего приближения состоит в последовательном построении многочленов Р^ (*), ■удовлетворяющих условиям: среди точек у?* можно выбрать п + 2 точки !/"< ... <1/7 такие, что знаки /(y^^ — Р^ (l/к) в последующих точках различны н Многочлен Р^ (*) берется в качестве начального приближения для нахождения многочлена Р'^ («)• Алгоритм итераций для нахождения Р^ {х) в точности такой же, как описанный нами алгоритм нахождения многочлена наилучшего равномерного приближения, когда многочлены рассматриваются на всем отрезке [а, 6]. Отличие состоит лишь в том, что точки ** выбираются среди точек множества Mm- Одним из распространенных является случай, когда Mm — множество точек максимума многочленов Чебышева Л1^: (/;* = а + Ь , Ь —а I 1 — 1 \ „, „, V „ , , = —2 ' 2—<^°^1" IvTmT^n") "° ^'"^ ^ ^'' "*" ' ''Д^^-Р —Ч^" лые; тогда выполняется соотношение М^^ сг М^^р при этом чаще всего берут s = n+l и р = 2. Конечно, мы еще не дали полного описания стандартной программы отыскания многочлена наилучшего равномерного приближения. В частности, точки ж J можно определять или путем рассмотрения таблицы всех значений f (х) — Q^{x) в точках множеств Mm или каким-то более быстрым, на менее надежным способом; не указан также способ выбора значений Шт.
.242 ПРИБЛИЖЕНИЕ ФУНКЦИИ И СМЕЖНЫЕ ВОПРОСЫ [ГЛ. IV. § 8. О форме записи многочлена Одна из стандартных программ наилучшего равномерного приближения была отлажена в случае приближения многочленами невысокой степени и включена в пакет стандартных программ. Однако при практическом приближении многочленами высокой степени в ряде случаев оказывалось, что программа останавливается, не дав нужного приближения, или работает недопустимо долго, так что вычисления приходится прекращать. На первый взгляд казалось, что причина неудачи в большой вычислительной погрешности при решении системы уравнений G.2). Поэтому вместо непосредственного решения этой системы было решено определять f* из G.3). Теперь, вследствие G.2), становятся известными значения Qni'^f}' ^^ значения Q„(*), необходимые для получения последующего приближения, можно получить по интерполяционной формуле Лагранжа Q'nU)='^QU'^)<^iix), a>,(x)= Д \_'',. (I) 1=0 I Ф i.O<Kn *'■ */ После окончания процесса последний из полученных многочле«ов Р„ (дг) = = Q*(*) расписывался в обычной форме Рп (х) = ао+ aix+ ... + ОпХ^ и на печать выдавались значения {«/} " «« = llf„W-H*)||. Однако оказалось, что такое решение проблемы не является удовлетворительным. В ряде случаев обнаруживалось бо./|ьшое расхождение значений f(x) и значений Рп{х), вычисляемых по схеме Горнера. Pn(x) = ao + x{ai+xia2+ ... -f дс(а„_,+ л;а„).. .))• Причина этого заключалась в том, что величины |aj| были очень велики и поэтому имели большую абсолютную погрешность. Оказывается, что для многих функций рост суммы Л„ = п = 2 I Я/1 является неизбежным при повышении точности при- /=о ближения функции многочленами. Ниже показано, что скорость этого роста связана с аналитическими свойствами приближаемой функции. Предположим, существует последовательность мнo^oчлeнoв п (т) Я"* (х) = S afxi.
^8] О ФОРМЕ ЗАПИСИ МНОГОЧЛЕНА 243 удовлетворяющих условию \f(x)-Px)\^2-'" на [-1, I], • . B) при этом Р^{х) — не обязательно многочлены наилучшего равномерного приближения; предположим, что коэффициенты этих многочленов растут не очень сильно: п (т) lm=Ii\aT\<M2'"", 0<<7, 1<М. C) Теорема. Пусть последовательность многочленов Я"'(дг) удовлетворяет соотношениям B), C). Тогда функция f{x) может быть аналитически продолжена в открытую область ком- плексного переменного Оф,, фо = я 24-2 (определение этой области будет дано ниже). Доказательство. Рассмотрим многочлены Q'"B) = P'"(z)-P'"''(z); вследствие B) имеем I Q™(*) 1<1 f W -/'"WI+ 1 И*)-/'"'"■'W 1<з.г-", п (т) \Р'"(г)\< 2 |«ГН'т "РИ \г\<1. Поэтому \Q"^{г)\<\P"^{г)\ + \P"^-Uг)\<lm-^ + lm<2M2f"^ при | 2 1 < 1. ЛевГма. Пусть g{z) аналитическая в круге |г|^ 1, причем ]g(z)\^ Mi на границе круга и \g{z)\^ Mi на отрезке [—1, 1]. Тогда в этом круге |gB)|<Aff/">'P(^>-'Af^<2/"><P(^>; D) здесь ф(г)—угол {ненаправленный), под которым из точки г ^= х-\-iy виден отрезок [—1, I]. Доказательство проведем для точек полукруга К\: 1тг^0. Рассмотрим функцию ^w (г) = D Ф (z) - l) In М, + B - -| ф B)) In М2 - 1п-| g B) |. На отрезке [—1, 1] фB) = я и поэтому а/ = 1п М,-1п |gB)|>0; E) на дуге круга фB) = — и поэтому • su = |nM2-ln|gB)|>0. F) Вследствие равенств In | g (i) | = Re In g (г), ФB) = аге(|^)=1т1п(|^)
244 ПРИБЛИЖЕНИЕ ФУНКЦИИ И СМЕЖНЫЕ ВОПРОСЫ [ГЛ. IV G> функции ln|gB)| н фB)—гармонические по переменным х, у; следовательно, w{x,y)—гармоническая, и поэтому ее нижняя грань в Ki достигается на границе. В соответствии с E) и F) это означает w(x,y) ^ О в /(t. Отсюда 1п I g(z) I < (-| ф B) - l) In iW, + B - |-(р B)) In М,. Потенцируя это неравенство, получим D). Применяя эту лемму для оценки IQ^Ca) |, получим I О- B) I < C. г-Г"''-" BAi . 2П'-'""'" < ЗЛ^2('^'""'-'^'■'^' ^) " Обозначим через Оф открытую область, ограниченную дугами, из точек которых отрезок [—1, 1] виден под углом ф (см. рис. 4.8.1). Поскольку функция 2q + \ —{2q + 2)— убывает с ростом ф и из всех точек области Gm отрезок [—1, 1] виден под углом, не меньшим ф, то неравенство G) выполняется во всех точках множества G™. Пусть фо — решение уравнения Bi;+l)-B<7 +2)^-^ = 0. (8> 2<7+1 ,, т. е. Фо = я - JLO' Возьмем произ- / вольное ф1 >фо. Верно очевидное неравенство |P'"B)|<|P°B)|-f m + SI/"* B)-/>*-' BI = А=1 Рис. 4.8.1. = |P°B)|+2lQ*B)|. Вследствие G) для всех точек областп G„ получаем " Bti+l-[2q+2)ll-)m |P'"B)|<max|P°B)|-f 2 ЗЛ1.2^ "-^ =M(<Pi). Сф, 4=1 Величина Af (ф]) конечна, поскольку при ф1 < фо коэффициент при т в показателе отрицателен. Таким образом, при z е G^^ равномерно по m выполняется оценка |Р'"B) |^ Л1(ф1). Напомним одно известное утверждение: пусть функции fm(z) апалитичсские в относвязной открытой области G и равномерно ограничены по модулю: |/тB)|^С, пусть последовательность значений fm(z) сходится на некотором множестве значений z^G, имеющем предельную точку г» s G, тогда последовательность /m(z) сходится к функции /(г), аналитической в G, |/B)|^С. В рассматриваемом случае это означает, что последовательность многочленов Р'"(г) сходится равномерно к некоторой функции h(z), аналитической в Gф^. В свою очередь отсюда следует, что функция f(x), опреде^1епная на [—I, 1], продолжаема как
S 81 О ФОРМЕ ЗАПИСИ МНОГОЧЛЕНА 245 аналитическая во все точки открытой области G^. Вследствие произволь- иости ф1 > фо она также продолжаема во все точки открытой области G^ . Теорема доказана. Какие практические следствия вытекают из этой теоремы? Если число а записывается в системе с плавающей запятой с t двоичными разрядами, то его погрешность может оказаться больше |а|!^~'~*; в худшем случае, когда погрешности коэффициентов а'р одного знака, погрешность значения п (т) являющаяся следствием этих погрешностей, может превзойти величину /п (т) \ Чтобы качественно представить характер влияния этой погрешности, будем считать, что число т, входящее в B), C), и число разрядов t велики. Пусть функция f(x) аналитична в некоторой области Оф„ и не аналитична ни в какой области Оф при ф < фо. Пусть до соответствует этому фо, согласно (8), т. е. <7о = о /1° ~ "\ • Возьмем произвольное д <. Яо', если предположить, что для всех т выполняется неравенство lm^2''"^, то, согласно теореме, f(z) будет аналитична в соответствующей области Оф при ф -< фо и получается противоречие с предположением о свойствах функции f{z). Таким образом, будут встречаться сколь угодно большие т, для которых 1т ^ ^ 29"»; следовательно, при неблагоприятном стечении обстоятельств ошибка от округления значений ау* может оказаться более 2'^"^2~^-^. В то же время нельзя рассчитывать на оценку погрешности, лучшую B). Для суммарной погрешности от замены f{x) на Р^^(х) и от ошибок в коэффициентах многочлена мы не можем предложить оценки погрешности, лучшей е(т) = j_ 29m2-«-i +2-™. Уравнение для точки экстремума функции e{m): е'^(т) = д\п2' 2"^2-'-' - In2 • 2"'^ = 0. 1 t Отсюда 2'" = f—j''"*'' 2'"*"'; подставив это значение в выражение 8(т), получим 8(т) = A)^ 2"^2-' + A)"^ 2"^ = Q t 9+1 /2\,+ 1 г, (?+1
46 ПРИБЛИЖЕНИЕ ФУНКЦИИ и СМЕЖНЫЕ ВОПРОСЫ [ГЛ IV Следовательно, при вычислениях иа машине с / разрядами нельзя надеяться на получение приближений к значениям функции существенно более, чем с , . разрядами. Например, для функции f (;с) = ■ , „ ; , нижней гранью ф, при которых f{z) аналитична в области G^, будет ф" = 2 arctg0,2; соответствующее значение <? -f, 1 « 3,2. Таким образом, на машине с 60 двоичными разрядами мы в лучшем случае можем рассчитывать на получение приближений к значениям функции примерно с 20 верныки двоичными разрядами. Эти рассуждения побуждают к отысканию иных простых форм записи и вычисления значений многочленов. Мо^но привести следующий довод об исключительности подобной обстановки: обычно приходится приближать функции целые или такие, особенности которых лежат далеко за единичным кругом; тогда из проведенных выше рассмотрений такие удручающие выводы не следуют. Формально это верно; однако такого рода функции часто, являясь целыми аналитическими, имеют очень быстрый рост при росте мнимой части у аргумента. Хотя для таких функций величины In остаются равномерно ограниченными по^п, они могут принимать столь большие значения, что величина |/п|2~'~' окажется существенно больше требуемой точности Примером подобных функций может служить функция ф (л) = ехр (iXxi^) dt в случае больших X. о • Обратимся к форме записи многочленов наилучшего приближения в виде суммы значений многочленов Чебышева Pn{x)='^djTj(x); (9) ямеем -1 Поэтому я J УГГТ2 «^ \б„_„ при п' + пг'>0. 1 /.^..=15;,.,Р J^..=24+i-4>i;^/- Воспользуемся неравенством Коши — Буняковского i,\d,\=±i-\d,\^l/l±i).f±di]==\/(n+i)±di /=о /=а г \,/=о У \/=о У г /=о
§81 О ФОРМЕ ЗАПИСИ МНОГОЧЛЕНА 247' Отсюда заключаем |м,|<^|(«+.)_/^ dx. Для последовательности аппроксимирующих многочленов п Таким образом, величина 21 ^/1 растет не быстрее Y^^ - Поскольку l^nljc)!^!, то ошибка в значении многочлена, являющаяся следствием ошибок в а„ не превзойдет величины порядка 1 2 I ^/lJ~'==0(V'rt 2~').При реальных вычислениях, как правило, не используются приближения функции многочленами очень высоких степеней и поэтому такая оценка погрешности оказывается приемлемой. Конечно, не обязательно представлять многочлены, приближающие функцию в виде линейной комбинации (9) многочленов Чебышева. В зависимости от конкретной обстановки иногда удобнее представлять многочлен как линейную комбинацию многочленов какой-либо другой ортогональной системы, например, многочленов Лежандра. Мы рассмотрели систему многочленов Чебышева вследствие наибольшей простоты рекуррентных соотношений для вычисления их значений. Остановимся на вопросе практического получения представления приближающего многочлена в форме (9). Можно с самого начала искать приближения к многочлену наилучшего приближения в виде /=0 и определять коэффициенты dj из линейной системы уравнений, соответствующей G.2): пользуясь каким-либо устойчивым алгоритмом решения линейных алгебраических систем. Другой путь, при котором многочлен наилучшего приближения получается в виде A), мы уже описали. Однако не следует думать, что после получения многочлена в форме A) можно записать многочлен в обычной форме, а затем перейти к представлению (9). Если величина An велика, то после записи в форме ао + ... + anX'^ многочлен Рп{х) приобретает"
248 ПРИБЛИЖЕНИЕ ФУНКЦИИ И СМЕЖНЫЕ ВОПРОСЫ [ГЛ. IV большую погрешность. По отношению к дальнейшим преобразованиям она является неустранимой, и поэтому представление многочлена в форме (9) также будет содержать эту погрешность. Переход от A) к (9) можно осуществить непосредственно, мимуя обычную фчрму записи, следующим образом. Вследствие свойства ортогональности системы функций Тп(х) с весом 2/(п У \ — у^ ) имеем 1 1 QnM ^ 2 Г Qn(x)T,(x) 1 Г QnM ^ 2 Г а„ = — . dx, а, = — . dx. в рассматриваемом случае QnT,(x) многочлены степени ие выше 2п. Поэтому формула Гаусса — Эрмита с (п-|-1)-м узлом для вычисления этих интегралов будет точной: п+1 п+\ "o=7rrrS«"(^«+')' ^/ = 7TtS«"(^«+')^K+i) A0) При />0; здесь *''+••=^«^("-2тЫг)' необходимые'значения Q„(j/'+i) вычисляем по формуле A). Заметим, что в процессе итераций возможна и такая комбинированная процедура: по заданным узлам JC*, .,., jc„^.i многочлены Q*(x) ищутся ранее описанным способом в виде A). Затем при помощи соотношений A0) они представляются в виде (9), который используется с цел1^ю более экономного отыскания точек jc*"*"'. Дадим окончательные рекомендации по вычислению значе-" НИИ многочлена Рп{х) на [—1, 1] безотносительно к вопросу о наилучшем приближении функций. Пусть в обычной форме этот многочлен записывается в виде 2 fl/Jf' и погрешность порядка (Slfl/I 2~' является допусти- /=о \/=о / мой. Тогда имеет смысл воспользоваться схемой Горнера Р„(д;) = ао + ^(а1 + ^('-- + Jc(a„-i + Jca„) ...))• В противном случае этот многочлен следует получать в виде PAx)=^d,T{x). Для уменьшения числа действий при вычислении значений Рп{х) целесообразно поступить следующим образом: полагаем rfj dj — rf/+j Do = do 7г^ D, -'о — "о 2~' '-'i 2~ при /=1, .... rt-2, D„_, = -^. u„=-^
5 8) о СПОСОБАХ ВЫЧИСЛЕНИЯ ЭЛЕМЕНТАРНЫХ ФУНКЦИЙ 249" При необходимости вычислить Рп(х) находим у = 2х, Un-i = = yvn + Dn-i, затем последовательно Vn-2, .... VQ = Pn{x) по рекуррентной формуле ua = yVh+i — Уа+2 + D^. Известно, что вычислительная погрешность такого алгоритма есть О (« (min («, 7=г )) (max (Р„ W)) 2-'). Задача. Проверить, что действительно Оц = Рп(х). § 9. О способах вычисления элементарных функций Многочлены наилучшего приближения часто используются для приближения функций, возникающих из эксперимента или в результате сложных вычислений в случае, когда не имеется никакой дополнительной информации об нх свойствах. Если такая информация имеется, то иногда целесообразнее другой вид приближающей функции. Например, в случае элементарных функций имеется большая информация об их аналитических свойствах, позволяющая резко сократить объем вычислений. Рассмотрим одну из стандартных программ вычисления Inx. Число х представляется в виде х = 2^Х, где -r-^^f^l, т. е. р-двоичный порядок числа; далее 1п jc = р Jn 2-f In Jf. Для вычисления In Jf используется ряд X -I \2ft+i '"^ = 2Е2ГТт(т+т) При -n-^Jf^ 1 его члены убывают быстрее 3~*, в то время как для простейшего ряда Г. ._.й-1 In X^'^^^^^iX-l)" ll!=0 убывание порядка 2 */*. Для ускорения сходимости полагают Х = у/Х и вычисляют 1п 1/ с помощью рЯда ' — 1 \2ll! + l -' = 'lnTT(j^] fc=0 множитель X подбирается из условия, чтобы величина и= max \-^^—[ была наименьшей. Это дает ^ = |^2 и и < 0,172; расчетная формула приобретает вид ^.= (p-i-)ln2-f2»5;^< In. о=-^-7= . V^x + 1
50 ПРИБЛИЖЕНИЕ ФУНКЦИИ и СМЕЖНЫЕ ВОПРОСЫ [ГЛ. IV Для уменьшения числа учитываемых слагаемых в выражении /,„!., 'j'* Jim 2r -f" 1 OHO заменяется многочленом наилучшего приближения или близким к нему миогочлеиом на соответствующем участке изменения v. В рассматриваемом случае формула (п « « (р - 0,5) 1п 2 + о B,000000815 + 0,66644506902 + 0,415054254о<) имеет погрешность не более 3 • 10''. В ряде машин в основу стандартных программ вычисления значений элементарных функций положены предстдрления этих функций в виде цепных дробей или аппроксимация дробно-рациональными функциями. Например, функцию tg X можно вычислять, пользуясь представлением в виде цепной дроби 1 — 3-х' другой распространенный способ — дробно-рациональное приближение вида Например, приближение ехр X » /'n(Jc)-QmW \2{х^+ 10)-f jc(jc'-f 60) \2(х^+ Щ-х{х^ + Щ обеспечивает точность 9-10 ' при | л; К—„—. Трудно представить все многообразие приемов, элементы которых используются при создании стандартных программ вычисления значений элементарных функций. В частности, используемые методы сильно зависят от разрядности машин, предъявля'емых требований точности, длительности выполнения элементарных арифметических операций. Рассмотрим один прием такого рода. Этот прием выделен в основном с целью еще раз обсудить вопрос о вычислительной погрешности Простейшие элементарные функции удовлетворяют рекуррентным соот- ношениям вида Пх)^Р(ПО{кШ (I) тде функции F я G легко вычисляются, O^G'{x), O^G {x)^qx при 0< <JC^«o. '7<Ь Воспользовавшись п раз этой записью, получим f(x) = F_(F{...{F{f{G{G{...(G{x))...). B) п раз п раз Положим Gn{x) = G(G(...{G[x))...), п раз Fn(x) = F{F{...{F{x))...). п раз
«91 О СПОСОБАХ ВЫЧИСЛЕНИЯ ЭЛЕМЕНТАРНЫХ ФУНКЦИИ 25Г При помощи записи B) задача приближения f{x) на отрезке [О, хо] сводится к задаче приближения на меньшем отрезке [О, Gn(x„)], где G'n(xn) ^ д^Ха. За счет малой длины отрезка высокая точность приближения достигаете» при значительно меньшей степени -аппроксимирующего многочлена. Укажем ряд еоотпошений вида A) 'ехр jc=fexpyj , cosjc = 2fcos-^) — 1, sin jc = 2 f sin-^j у 1 — (sin YJ , tg jc 2tg^ 1 \2 » etgJC = -5-1 ctg 4 ЧгЬ arctgjt^=2arctg 2 I 2 ctg-ij l+Zl+x» arcsin x = 2 arcsln —. . Наиболее привлекательной по своей простоте выглядит рекуррентная формула для ctgJC. После отыскания и = ctg-^ можно вычислить 2 "-| . , .u, л- , .в л -. U-] и-\ и и и и Некоторые из этих формул довольно сложны и их применение не всегда будет разумно. Из приведенных построений вытекает следующая схема вычисления значений функций. Находим некоторую аппроксимацию f(x) на [О, Gn(xo)], например, многочленом или отношением двух многочленов. Последовательно вычисляем Gt{x) = G (к), G, = G (G, (х)) Gn(x) = G {Gn-i (х)). приближенное значение f* » f (G^ (х)), f 1 (П = F (Г) Fn (/•) = F (Fn-i (/•)) и полагаем f{x) « Fn{f*). 3 a Д Я'ч a. Предположим, что вычисления производятся без округление и что на отрезке (О, G„(xi))] функция f{x) приближается отрезком ряда Тейлора из <7 членов. Доказать, что при малых е можно выбрать взаимно согласованные п и q порядка 0(К1пA/е)), при которых погрешность приближений к значениям }{х) на [О, хо] не превосходит е. На примере функции ехр х обратим внимание на опасность нежелательного роста вычислительной погрешности при вычислении значения fn(/*). При помощи равенства ехр х = 2'' ехр X, где " = [1^2-]' ^={¥Т}''
252 ПРИБЛИЖЕНИЕ ФУНКЦИИ И СМЕЖНЫЕ ВОПРОСЫ [ГЛ. ГУ задача сводится к вычислению значений функции ехр х на отрезке [О, In 2]; здесь { } — знак дробной доли. Имеем равенство ехр X = (ехр -|г)^ - (... («р ("^jj^ • • • )'• Как бы ни вычислялись значения ехр -^, они будут округлены и их погрешность может превзойти число 2 (t — разрядность чисел в Э^ВМ). г. ' ( ^Y" Вместо точного значения lexp -^1 мы получаем приближенное значение l(exp-q^j + ej . Согласно формуле Лагранжа {^f — у^ =/V^'^~'(у, — i/j) где у лежит между i/i и у^. Поэтому в рассматриваемом случае погрешность равна 2'^в Цехр -—^ + ej , где |ё|<е. Последний множитель не менее 1, и таким образом, погрешность может оказаться более 2"-'-*. К стандартным программам обычно предъявляется требование точности значений функций порядка 2"'. Поэтому при больших п такая величина погрешности является неприемлемой. В рассматриваемом примере уже с первого взгляда видны резервы повышения точности. IT / Л-\2 Число Uj = lexp-^l в двоичной системе записывается в виде 1, О ... О .,. Таким образом, из t разрядов п—k+\ тратятся на запоми- n—k раз ванне информации, которая и так известна. Поэтому есть надежда, заменив эту информацию на существенную, повысить точность вычислений. Чтобы избавиться от запоминания этих известных двоичных знаков, введем в рассмотрение функцию v{X) =ехрХ—1. Соотношение A) для этой функции имеет вид o(J[') = о 1-^ 11 2-f г (-^) 1. Значения о(-^) не превосходят 2'-". Если они будут известны с погрешностью 0B~"~'), то погрешность значения v(X) а, следовательно, ехр Х = I + v(X) окажется величиной порядка 0{n2-^). Мы предоставляем читателю проверку справедливости этого утверждения. По той же причине непригодна рекуррентная формула cos jc = 2 Icos-^j — — 1. Вместо непосредственного вычисления но этой формуле следует положить и(х) = 1—COSJC и вычислять сначала значения функции и{х), пользуясь рекуррентной формулой и (х) = 2и (-—j B — и (у|1. В случае функции 1п X вместо простейшего соотношения In Л ^ 2 In Vx следует взять ln(l-f x)=21n/l-f ^=). I \+fl + xl Подобная потеря точности возникает всегда, если одно из чисел /@) (как в случае ехр х) или lim Gn (х) (как в случае In х) конечно й оТлично от нуля.
^10] о СКОРОСТИ ПРИБЛИЖЕНИЯ ФУНКЦИИ РАЗЛИЧНЫХ КЛАССОВ 253 Задачи. I. Провести подобные построения в случае f{х) = атссовх. 2. Убедиться, что рекуррентные соотношения для вычисления sin X, tg X, ctg X, arctg x, arcsin x не нуждаются в подобных преобразованиях. 3. Пусть значения элементарных функций вычисляются в машине с плавающей запятой с t двоичными разрядами, i — большое. Предположим, что порядки чисел, употребляемых в машине, не ограничены (таких машин не бывает, но ограничения на порядок чисел в современных ЭВМ таковы, что конечностью максимального порядка часто можно пренебречь). Доказать, что в случае аппроксимации f(x) на [О, Gn(JCo)] отрезком ряда Тейлора длины q, при подходящем выборе п и q (порядка УТ) и подходящей форме записи соотношений (I), можно указать алгоритмы вычисления указанных выше элементарных функций со следующими характеристиками: объем вычислений О (УТ), ошибка приближенных значений О (/^< /2') *). § 10. О скорости приближения функций различных классов Приведем сведения о скорости приближения многочленами и дробно- рациональными функциями Rn{x) = bo+ ... Ч-М" в зависимости от аналитических и дифференциальных свойств приближаемых функций. Речь пойдет о приближении функций, заданных на [—1, 1] многочленами и дробно-рациональными функциями, и приближении периодических с периодом 2л функций тригонометрическими многочленами и тригонометрическимл дробями. Соответственно, определяем норму llfll,= sup \f{x)\, llflU= sup \f(x)\. [Q. 2я1 В теоретических исследованиях обычно рассматривают следующие типичные классы функций: С,{М, [—1, 1]), (г — целое)—класс функций, у которых на отрезке [—1, I] производные f<'>, / = О, ..., г—1, непрерывны, производная f^'^ кусочно-непрерывна и ЦЧ'Ц^^М при /^0, ..., г; Яг(М, 2л) —класс функций, имеющих период 2л и удовлетворяющих тем же условиям на производные; A(M,G) —класс функций, допускающих аналитическое продолжение с отрезка [—1, 1] в открытую односвязную область комплексного переменного G и удовлетворяющих в G условию \f(z)\^M; А (М, Л, 2я) — к.;^асс функций, периодических с периодом 2л, допускающих аналитическое продолжение в область |1тг|<Л и удовлетворяющих там условию |/(z) I ^ М. Через Эп будем обозначать эллипсы с суммой полуосей Я > 1 н с фокусами в точках вещественной оси [—1, 1]. Положим a(G)= sup Я, Зн^О *) Часть рассмотрений этого параграфа принадлежит С, А. Усову.
254 ПРИБЛИЖЕНИЕ ФУНКЦИИ И СМЕЖНЫЕ ВОПРОСЫ ГГЛ IV иначе a(G)—это сумма полуосей наибольшего из эллипсов Эй, принадлежащих замкнутой области G (рис. 4.10.1). Существует одно и только одно конформное отображение с неподвижными точками —1 и 1, при котором область G отображается на внутренность эллипса из семейства Эя. Значение Я, соответствующее этому эллипсу, обозначаем P(G). Введем обозначения: 'я (/) — величина погрешност» наилучшего равномерного приближения тригонометрическими многочленами ?'„W = ao + п + 2 (''/ <^°5 /■* + */ sin jx), tn = Ш \\f-T„ lb; Рис. 4.10.1. '■fi {П ~ величина погре'шности наилучшего равномерного приближения ра- ао -Ь ... + а„х" циональиыми функциями Rn{x) ■ Inf II/ - RAu Ч e„(/) =|/— L^L где aJ, (л) — интерполяционный многочлен степени п с чебышевскими<узлами интерполяции cos ш = О п; Тд(/)<=|/—rUL, где 7"^ — интерполяционный тригонометрический мво- гочлеи степени п с узлами интерполяции 2я/ V - 2« -t-l ' / = 0 2п: Рп (/) — величина погрешности наилучшего . равномерного приближения тригонометрическими дробями п % + S (''у "^"^ /* + */ ^'" ^*) < М Г • 1 + 2 ('^г ^°' /* + */ S'" /*) Справедливы следующие оценки. Для функций классов Сг{М, [ — 1, 1]): En{h = o(^~). e„(/) = o(-l2;5-). г„{!) = о{~г); для функций классов Я^ (Ai, 2я):
§ 101 о СКОРОСТИ ПРИБЛИЖЕНИЯ ФУНКЦИИ РАЗЛИЧНЫХ КЛАССОВ 255 для функций классов А (М, G). £„(П = 0(М(а@)Г''). A) е„ (/) = О (Ai Ft (G))-"), г„(П=О(М(Р@)Г''); для функций классов Л(М, Л, 2я): 'п(П = 0(Л1е-2'"'), т„Ш = 0(Ме-2''"), Pr.(/) = 0(Aie-2'"'). Аппроксимация тригонометрическими рациональными функциями п а^ + 2 (''у '^"s ^* + */ ^'" '■*) «Г(-) = ^^ 1 + 2 (<^/ '^"^ ^'^ + ''у ^'" ^*) /=| бывает целесообразна, когда периодическая функция продолжается аналитически в область комплексного переменного, отличную от полосы |Im2|:^/i. Большинство приближаемых функции оказываются аналитическими; из приведенных оценок видно, что наилучшее равномерное приближение таких функций не дает выигрыша по порядку погрешности по сравнению со случаем интерполяции по узлам Чебышева. Если область аналитичности — один из эллипсов Эн или в периодическом случае полоса (Im2(^/i, то при наилучшем рациональном приближении, объем вычислений примерно вдвое больше, а выигрыша в порядке оценки «ет. Если область аналитичности функции имеет существенно другой вид, то приближение рациональными или тригонометрическими рациональными функциями может дать выигрыш. Особенно большой выигрыш получается в случае a(G) = 1. Именно, пусть /(х) аналитичиа -/|- во всех точках отрезка [—1, 1], кроме конечного числа точек, и удовлетворяет условию Гельдера с некоторым X > 0; 1/(^,)-^Ы1<си,-.,^ • ''"'^-'■"•'• На рис. 4.10.2 приведен пример области аналитичности, соответствующей такому случаю. Тогда про величину £п(/) можно лишь сказать, что £п (/) = О (и-"). а = а(Х)>0. В то же время Наилучшее приближение рациональными функциями /?п(х) практически получить трудно, так как Яп{х) нелинейно зависит от большого числа параметров. Поэтому иногда целесообразно применять некоторые комбинированные способы, где число параметров, от которых функция зависит нелинейно.
256 ПРИБЛИЖЕНИЕ ФУНКЦИЙ И СМЕЖНЫЕ ВОПРОСЫ (ГЛ. IV существенно меньше. Иногда целесообразно использовать приближения вида: Рп {Рт («)). Рп, Рт — многочлены, Рп(х) (Qm {x))^ ' Рп и Qm — многрчлены, п = ml. PniRmix)) —Рп —многочлен, Rm — рационэльная дробь. Погрешность наилучшего приближения такими функциями будем обозначать, соответственно, if), Гпт if), епт (/). Рассмотрим случай, когда граница области G — аналитическая кривая. Тогда для функций классов А {М, G) при a(G) > 1 справедливы оценки: при т^у (G) 1п п enm (П < £nm Ш = О (Л^Р (О)-"); при m^ti(G) In п rnm{f) = 0{Mfi{Gr''). Рис. 4.10.3. Если a(G) = 1, но все точки интервала (—!, 1) являются точками аналитичности (рис. 4.10.3), то при ш 5» x{G)^nn справедлива оценка rn■m^f)=0{мl,{GГ^'^), 6(G) >1. § П. Интерполяция и приближение сплайнами Способ приближения сплайнами интересен прежде всего отношением к нему. Одни считают его универсальным методом решения проблем, стоящих перед численным анализом, и ищут применения ему в самых различных направлениях, другие рассматривают его как очередную дань переменчивой математической моде. По-видимому, истина проходит где-то посередине; в настоящее время область применения этого метода непрерывно растет. Для определенности будем говорить о приближении функции f{x) на отрезке [О, 1]. Отрезок разбивается на части: Обозначим это разбиение через А. Назовем сплайном 5д {f, х) порядка т функцию, являющуюся многочленом степени т на каждом из отрезков [xn-i, Хп]: S\{f,x) = Pnm{x) = a„a+---+^nmX'" при а:„_1<а:<а:„, A) и удовлетворяющую условиям непрерывности производных до порядка т—1 в точках х^ ^n-i- * PZ{Xn) = P%.m{Xn) B) при k = 0, ..., m—1, tt=l, ..., N — I.
5 II] ИНТЕРПОЛЯЦИЯ и ПРИБЛИЖЕНИЕ СПЛАЙНАМИ 257 Всего имеется в распоряжении Q = N{m-\- I) неизвестных flnm, соотношения B) образуют систему из (Л/—\)т уравнений. Другие уравнения для коэффициентов получаются из условия близости к приближаемой функции и из некоторых дополнительных условий. Рассмотрим простейшую задачу приближения линейными сплайнами (т = 1). Тогда общее число Q свободных параметров равно 2Л/. Поставим вопрос построения сплайна S\{f, х), совпадающего с f{x) в точках Xq х^; получится система уравнений Pnl{Xn-\) = f{Xn-l), П=1, .... N, Pn\iXn) = f{Xn), tt=l, .... N. Эта система распадается на системы уравнений относительно коэффициентов отдельных многочленов PnliXn-\)='(^no-h ^п\Хп-\= f (Xn-l), Рп\ {хп) = OnQ + a„iXn = / (Хп); отсюда находим flni = if (Хп) — f {Xn-i))l{x„ — a:„-i), многочлен Pni(x) является многократно рассматривавшимся интерполяционным многочленом первой степени с узлами интерполяции Хп-\, Хп- Этот сплайн S\{f, х) возникает также из рассмотрения следующей задачи. Рассмотрим множество 5i непрерывных функций s{x), удовлетворяющих условиям I sixn) = f{xn), n = 0,...,N. I,{s)=j{s'{x)Lx<<^. о Поставим задачу найти функцию Si{x) е Si, реализующую inf /,(s). Мы ищем функцию с наименьшей нормой Ц s' ||^^, т. е. в каком-то смысле наиболее гладкую функцию семейства S[, совпадающую с Да:) в точках х„. Уравнение Эйлера для этого функционала имеет вид s"{x) =0. Таким образом, Si{x) линейна на каждом из отрезков [jc„_i, Хп] и, следовательно, Si(x) = Siif,x). Этот подход к приближению функции, при котором естественным образом возник сплайн S\(f, д:), может быть развит в следующем направлении. Q Н. С. Бахвалов
258 ПРИБЛИЖЕНИЕ ФУНКЦИИ и СМЕЖНЫЕ ВОПРОСЫ {ГЛ. IV Приближающая функция ищется среди пространства функций большей гладкости. Рассмотрим, например, множество $2 функций s(x) с непрерывной первой производной, удовлетворяющих условиям S (Хп) = / (хп), п = 0, ..., N, /2 (S) = J is" {x)fdx < оо. Q Ищется функция S2{x)^S2, реализующая inf/2(s). Уравнение ssSi Эйлера для этого функционала s(^'(a:) = 0, т. е. S2{x) = P^{x) = = Qno + йщХ-]-ап2Х^-{-а^х^ на отрезках [.>c„_i, JC„]. Число параметров йпк, подлежащих определению, равно 4^^, число условий ЗЛ^— 1: 2N условий Ргз{Хп) = Рп^иАХп) = !{Хп) C) к N — I условие непрерывности первой производной Р'пз{Хп) = Рп+\.з{Хп) D) в точках Xi, ..., Xn-i. Недостающие условия получаются как естественные краевые условия в точках Хп- Чтобы не отсылать к соответствующему разделу вариационного исчисления, выведем эти условия независимо. Предположим, что минимизирующая функция S2{x) существует и является многочленом третьей степени на отрезках [Xn-i, Хп]. Пусть i\{x) бесконечно дифференцируемая, ^Uo)= ... =Ti\{Xfi) = Q. E) Положим F{t)=j{s'^{x) + ti\"ix)rdx = о 1 г I = J (s^' (л:)J dx + 2t j s'^ (x) i\" (x) dx + f j (т)" {x)f dx. 0 0 0 Поскольку, no предположению, F@>F@), TO F'{0) = 2 ^ s'i{xU"ix)dx = 0. 0 представим величину B = F' @)/2 в виде 5 = bi + ... + bjv, bn^ \ s'i{xW{x)dx= \ F!^{x)r^'{x)dx,
§ II] ИНТЕРПОЛЯЦИЯ и ПРИВЛИЖЕНИЕ СПЛАЙНАМИ 259 И произведем в выражении для й„ дважды интегрирование по частям. Получим «я Ьп = { Р^^ (X) Ц (Х) dX + (Р'^ (Х) V {Х) - Р'^' {X) Т1 {X)) l^» . Вследствие E) и равенства Р<^ (х) = О имеем Ъn = P':c,{x)r{{x)l'^ . *п—I После суммирования по п получим JV-I 5 = PjV3 A) V A) + S (PnZ (Хп) - Pl+U 3 (Хп)) V (J^n) - Ph @) Tl' @). n=I Заметим, что мы не имели права производить интегрирование по частям непосредственно в исходном интеграле В, поскольку неясен вопрос о дифференцируемости Зг{х) в точках Xt, ..., jcj»_i. Так как 5 = 0 при произвольной г]{х), удовлетворяющей E), то отсюда получаются недостающие N -j- 1 уравнения Пз@) = Р;^зA) = 0, Р':1з{Хп)-Рп+иг{Хп) = 0, F) и = 1, .... Л^-1. Рассмотрим вопрос о разрешимости и о практическом решении системы уравнений C), D), F). Для удобства введем в рассмотрение величины Mn = S2{x„). Поскольку функция S2{x) линейна на [хп-и Хп], то S? (х) = Мп-, ^^^ + М„ *~^;"-' на [д:„_ „ х„]; здесь h„ = Xn — Хп-\. Из этого соотношения и условий можно получить, что S, {X)=р,^ {.X)=л1„-1 ^'"-f + Мп ^" "б^;-'^' + G) Условия
260 ПРИБЛИЖЕНИЕ ФУНКЦИИ И СМЕЖНЫЕ ВОПРОСЫ (ГЛ. IV образуют уравнения - h-;:, Fn • (S) кроме того, имеем условия иначе Afo = 0, Mfj=0. После подстановки Л/о = 0 и М^ — 0, соответственно, в первое и последнее уравнение G) получим систему CM = d (9) N — 1-го уравнения с N — 1-м неизвестным: М = {Ми ..., M^.{f, d = id, d^.if. Элементы С(,/, i, /=1, ..., Л/— 1 матрицы С, согласно (8), задаются соотношениями Сц JlL б при j = i— 1, 3 при 1 = 1, h (+1 при / = /+1, 6 о при |i —/|> 1, а элементы dj столбца d соотношениями В главе IX будет показано, что эта система решается «методом прогонки» за 0{N) арифметических действий. После нахождения Mj по формуле G) определяем многочлены Рпъ{х). Задачи. 1. Доказать, что решение системы (9) удовлетворяет неравенству 3 max I М„ I < ; 7— max \dn\\ 1<п<ЛГ-1 ""П "п 1<п<ЛГ-1 I < п< W получить отсюда однозначную разрешимость системы C), D), F). 2. Пусть 5д (/, ж)—сплайн, соответствуюш,[1й решению системы (9). Доказать, что Из справедливости этого утверждения вытекает единственность минимизирующей функция Si{x).
S in ИНТЕРПОЛЯЦИЯ и ПРИБЛИЖЕНИЕ СПЛАЙНАМИ 261 При рассматриваемом подходе получаемый сплайн совпадает с f(x) во всех узлах и естественно назвать такие сплайны интерполяционными. Часто известна дополнительная информация о поведении f{x) в точках а: = О, х=1. Например, может случиться, что конечной целью является решение некоторого дифференциального уравнения с граничными условиями Г@) + аИО) = р, r{l) + \f{l) = 6. Тогда вместо естественных граничных условий, порождающих уравнения Мо = Ms = О, надо поставить эти граничные условия. Рассмотрим случай, когда значения функции f(x„) заданы с погрешностями. Существует ряд естественных подходов к приближению таких функций, порождающих сплайны. а) Пусть известно, что заданные значения /п и точные значения f(Xn) удовлетворяют соотношениям \fn-f{'Cn)\<b. Можно поставить задачу следующим образом. Найти непрерывно дифферен- I цируемую функцию s{x) с {$")'' dx<oo, реализующую inf/2D) в классе о функций, удовлетворяющих условиям |«(<л)—/nl^S. Практическое получение решения этой задачи довольно трудоемко. Поэтому иногда удобнее поставить задачу отыскания inf/j(i) среди функций, удовлетворяющих условию: N ^is(xn)-fny<c{M+\)b^ A0) п=0 * б) Известно, что разности fn — f{x„) являются случайными величинами с дисперсией б. В этом случае также можно минимизировать h{s) при уело- вин A0); с = 0A) выбирают исходя из задаваемого доверительного уровня. Часто левая и правая части A0) равны в точке минимума h(s}. Поэтому обычно вместо исходной задачи рассматривают задачу безусловной минимизации по ^ и £ функционала J, (X, S) = /з (S) -f X[ 2 (S (хп) - fn? -c{N-\-\) бЧ. \rt=0 / Рис. 4.11.! соответствует некоторому конкретному случаю приближения при Af = 100 и с = 0,9. При каждом фиксированном X величина ;(Я,)= infyj(A„ s) s определяется с помощью решения системы линейных уравнений. Для нахождения inf/(X) применяется какой-либо метод минимизации функций од- к ной переменной (см. гл. VII).
262 ПРИБЛИЖЕНИЕ ФУНКЦИИ И СМЕЖНЫЕ ВОПРОСЫ 1ГЛ. IV Иногда (иэ предшествующего опыта или из соображений здравого смысла) известно примерное значение Я,, соответствующее точке безусловного экстремума, Я, »Хо; и тогда ограничиваются минимизацией функционал» /2{А<), S). в) Еще один подход к приближению сплайнами состоит в следующем. Заданы приближения /j к значениям функции f{Zj), / = 1, ..., М. Исход» Рис. 4.11.1. из какой-то априорной информации о приближаемой функции, разбивают отрезок (О, I] на части [jco,ЛГ]], ..., [хя-иХп], где //< М. Приближение отыскивается в виде сплайна 5д (f, х), минимизирующего функционал 2р/(^(М-^(*/))'' § 12. Энтропия и е-энтропия Условно можно говорить, что всякий объект задается двоя* кого рода информацией: 1) информацией о некотором множестве, которому он принадлежит, и 2) информацией, указывающей данный объект среди элементов множества. Например, конкретный многочлен степени т задается: 1) ин» формацией о том, что это многочлен степени т, 2) таблицей его коэффициентов. Нашей целью явится обсуждение вопроса о минимальном количестве информации, необходимой для задания элементов множеств. Вообще говоря, для задачи приближения функций более традиционным и приспособленным к реальным вычислениям является способ задания функции при помощи таблицы ее значений. Однако рассмотрение вопроса именно о минимальном количестве информации позволяет выработать более общий взгляд на рассматриваемую проблему. Пусть множество G, элементы которого требуется задавать, состоит из Л^ различных элементов g\, ..., gN, и пусть эти элементы задаются совокупностью из п двоичных знаков
^ 12] ЭНТРОПИЯ И е-ЭНТРОПИЯ 263 £/1 г/„ = о, 1. Для возможности однозначного задания gk^G необходимо, чтобы число элементов N не превосходило числа таких совокупностей. Всего таких совокупностей 2"; поэтому необходимым условием однозначности является N ^ 2". С другой стороны, при Л/' ^ 2" мы можем поставить в соответствие каждой совокупности yi, ..., уп натуральное число /■=1 + 22"-^ A) При изменении ух, ..., Уп число / пробегает все значения от 1 до 2"; элемент gj будем задавать совокупностью уи .... уп, определяющей /, согласно A). Величину log2Af называют энтропией H{G) множества G. Минимальное количество двоичных знаков, необходимое для однозначного задания элементов множества G, будем обозначать /(G); через у будем обозначать наименьшее целое, не меньшее у. Мы видели, что минимальное количество двоичных знаков, нужное для задания элементов О, равно наименьшему целому п такому, что N ^ 2", следовательно, /(G) = iSiriV = W4G). B) Задачи, 1, Доказать неравенства Л| JG/ <logj<7-t- max /(G/), C) /(G, X ... XG^X^-'fO/). D) /=i здесь X — знак прямого произведения, т. е. элементами Gi X ... X О, являются совокупности (g', ..., gf) при g' е Gj. 2. Привести конкретные примеры, где в C), D) имеют место равенство или строгое неравенство. 3. Загадывается целое число от О до 1000. Отгадывающий может задавать вопросы, на которые будет получать ответы «да» или «нет». Доказать, что 10 вопросов достаточно для угадывания, а 9 нет. 4. Имеется Л^ ящиков, одинаковых по виду, из них N—I, равных по весу, а один тяжелее остальных. Разрешается производить п взвешиваний на весах без гирь. Доказать, что при л ^ 3" можно гарантировать отыскание более тяжелого ящика, а при yV > 3" нет. 5. Имеется N ящиков, одинаковых по виду, любые два из которых раз- ■ личиы по весу. Оценить порядок минимального числа п взвешиваний на весах без гирь, при котором возможно упорядочивание ящиков по весу. Ответ, и -^ logs N\ при N ->■ оо. Пусть теперь G состоит из бесконечного множества элементов. В частности, в соответствии с B). никакого фиксированного конечного числа двоичных знаков недостаточно для однознач^ яого задания элементов из G.
264 ПРИБЛИЖЕНИЕ ФУНКЦИИ И СМЕЖНЫЕ ВОПРОСЫ [ГЛ. IV Однако можно ставить вопрос о минимальном количестве информации, необходимом для задания элементов из G с точностью е в метрике некоторого метрического пространства F, которому принадлежит G. Предполагается следующий способ задания элементов g ^ G. Элемент g определяется некоторой совокупностью из двоичных знаков у], ..., г/„; совокупности У\, ..., уп поставлен в соответствие элемент fy^ у^^ F, для которого р(/у| у^, g)^e. Через /e(G;f) будем обозначать минимальное количество двоичных знаков, достаточное для задания элементов из G таким способом. Пусть Ф — метрическое расширение F, т. е. метрическое пространство, содержащее F своим подмножеством, такое, что для любой пары элементов /i, f2^ F выполняется равенство pfifv /2)=рф(/1' Q; здесь нижний индекс означает пространство, которому соответствует метрика. Поскольку всякий способ приближения элементов g элементами из F является также способом приближения элементами из Ф, то /e(G; Ф)</е@; F). E) в дальнейшем считаем пространство F фиксированным и иногда опускаем в обозначениях соответствующий индекс. Лемма 1. Пусть элементы f] (n^F образуют е-сеть для множества G. Тогда J,(G; fXlog^JV. Доказательство. В соответствии с условием леммы каждому элементу g е G можно поставить в соответствие некоторый элемент fj^F, для которого p(g,/j)^e. Пусть у\, ... ..., Уп — совокупность двоичных символов, соответствующих /, согласно A). Задание совокупности у[ уп определяет элемент fj, для которого p{g,fi)'^e.. Лемма 2. Пусть G'czG. Тогда Jg(G'] Ф) </e(G; Ф) при любом Ф. Доказательство очевидно. Множество элементов G' называют г\-различимым, если расстояние между двумя любыми его элементами более ri. Лемма 3. Пусть G' czG, G' — 2в-различимо и состоит из М элементов. Тогда \^^<,J,{G; Ф). еде Ф — любое расширение F.
§ 121 ЭНТРОПИЯ и е-ЭНТРОПИЯ 265 Доказательство. Для доказательства достаточно показать, что \og2N^J,(G'; Ф). F) Тогда, воспользовавшись леммой 2, получим требуемое неравенство. Согласно определению способа задания функций g, неравенство /е(<5';Ф)^л означает следующее. Существует М^ < 2" элементов ф1 фм ^ Ф, удовлетворяющих условию: любому g ^G' соответствует некоторое ф^, для которого Pф{g,<fj) ^ :^ е. Различным gi, gh е G' не может соответствовать один и тот же элемент ф^; предположив противное, получим противоречие, вследствие цепочки неравенств: 2e<P^.(g„ §й) = Рф(ё[,. ёк)<Рф{ег Ф,) + Рф(бй, Ф;)<2е. Таким образом, число элементов N множества G' не более М, JV<M<2'' = 2^B<o'-*>. Мы получили F) и доказали лемму 3. Введем в рассмотрение величину /e(G) = inf/,(G; Ф); Ф нижняя грань берется по множеству всевозможных метрических расширений Ф пространства F. Беря нижнюю грань по Ф в утверждениях лемм 1—3, получаем, соответственно: 1) JAGX\og2N, 2) /e(G')</e(G). 3) [Б1Гл^</е@). При помощи этих лемм и следствий можно получать оценки «верху и снизу величин Ji(G;F). г-энтропией Hg{G) множества G называется log2A^8(G), где jVe(G)—число элементов покрытия G минимальным числом множеств диаметра е. Если G — компакт, то известно, что H,(GXJAGX[H,(G)]+\, где нижняя срань берется по всевозможным метрическим расширениям Ф. Рассмотрим примеры. 1. f — вещественная ось, G —множество точек хе[0, 1], р(хи X2) = \xi — X2\.
266 ПРИБЛИЖЕНИЕ ФУНКЦИЙ И СМЕЖНЫЕ ВОПРОСЫ [ГЛ IV Положим ^г = ['2^]' Точки 6, Зб, ..., {2Ме—^)г образуют в-сеть. Поэтому / Согласно определению Л^^, имеем (Л^'е — 1Jе < 1, поэтому в' =^ {N^ — 1)"' > е. N^ точек О, 2е', ..., 1 образуют 2е-разли- чимое множество и, согласно лемме 3, В итоге мы получили равенство г /e(G) = /,(G; ^) = log2(-^). 2. Задача. F — s-мерное эвклидово пространство точек P(xi Xs), p{Pi,P2) равно некоторой норме вектора PiPi, G — множество точек, принадлежащее шару р(Р, 0) ^ Лз < оо и содержащее внутри себя шар р(Я,0)^Л1^0. Доказать асимптотическое равенство /е (G) =^ sloga-^ + 0A). 3. G — множество непрерывных функций g{x), определенных на [О, 1] и удовлетворяющих условию g(^) = О и условию \g{Xi) — g(x\)\^\x2—x^\, Положим p(/l, /2)= sup I/,@-/2 (О I. 10, и Наиболее широкое пространство, в котором можно искать приближения ml функциям рассматриваемого класса, — это пространство всевозможных функ* цнй, определенных на [О, 1] Обозначим его через F. Положим, и = I — 1 — I, что означает пе< \^{п+ ^)г. Покажем, что Ig, (G, F) == п. Сначала получим оценку /g (О; F) ^ п. Очевидно, е' = — > е; поставим в соответствие каждой совокупности двоичных знаков у[ у„ непрерывную функцию g,, „ {*), определяемую соотношениями Offj, 1, @) = о. 2) на отрезке [(;—1)е', /е'] ff„ „ (ж) линейная, причем 1, если уу =-= I, если у. = 0. Поскольку производная (8у,...,у {x)Y кусочно-непрерывна, то К Уп^'^У=[-и 'оДнзя {8у^ у„М)' КУ 8у, yJ'^)-Sy, У„Ы = ! К УпЧ"'' G>
§ 12] ЭНТРОПИЯ и е-ЭНТРОПИЯ 267 воспользовавшись G), получим \Sy, l/„(^2)-ffj,, j,„(^l)|<I^2-*l|- Итак, функции §■„ „ (ж) принадлежат рассматриваемому классу. Возь- ■мем две различные совокупности (у! у1) и (у? у1)- Очевидно, существует j<n, для которого у, =у, при £</, а yj =5*= уу. Функции g I I (х), 1=1, 2, обращаются в О при ж = 0; при О !^ ж !^ (/ — 1)8' »| Уп их производные совпадают вследствие G). Поэтому они совпадают всюду при 0:^ ж!^ (/— 1) е', в частности, в точке {/—1)е'. На отрезке [(/— 1)е', /в'], согласно G), производная разности этих функций постоянна и равна по модулю 2,-Поэтому ,в' g f I {/е') -g 2 2 O'e') = {±2)dx=± 2e'. y^ "n У\ Уп (,J,)e' Это означает, что pig \ I, f 2 2'1>2е'>28. \ У\ Уп У\ Уп) Таким образом, мы имеем в распоряжении 2" 2е-различимых функций. Сле- донательно, n^lAG\F). (8) Перейдем к оценке сверху. Положим в" = —-г—г и рассмотрим все- возможные непрерывные функции fy^..,^y (ж), y^, ..., У„==0, 1, определяемые соотиошеннями: fy^ j/„W = ° "Ри 0<-^<в"; «а отрезках [(/—1)е", /е"] функция линейная, причем если у. . = 1, если у,_,=0. Поскольку е'' + «е"=1, то этн соотношения определяют f„ (ж) на всем отрезке [О, I]. Покажем, что множество этих функций образует е"-сеть. С этой целью для каждой функции g{x)eG укажем некоторую функцию fy у (ж), удовлетворяющую условию p(g, fy у )<е". Будем определять значения t/i, ..., у„, содтветствующие такой функции, последовательно: заметим, что значения f„ „ (ж) на [О, /е"] определяются только значениями у,,..., «/у.;- Пусть мы уже указали У|, ..., у,^ такие, что ' |ffW-fj/, j,„W|<e" (9) для о ^ ж ^ /е. При / = I указывать такие значения не требуется, поскольку для всех функций расматриваемого класса на [О, г"] имеем \8M-fy^ y^H\-\gM\ = \g(x)-g@ |<ж<е". (^. ^.w)'={_;;
268 ПРИБЛИЖЕНИЕ ФУНКЦИЙ И СМЕЖНЫЕ ВОПРОСЫ [ГЛ. IV Таким образом, исходное предположение для проведения построения по индукции выполнено. Покажем, что при выборе _( ». ^^^" ?((/•+1)е")>/^_ ^^__ ^Jje"), '' 1 О- «^-" Sdi+i)") </,, у^_^ ,„(/е"). соотношение (9) выполняется и на отрезке [/е", (/+ 1)в'П. Рассмотрим случай, когда yi положено равным 1; мы можем написать соотношение \g{x)-g ((У + I) е") I < |дг - а + 1) е"|. Отсюда 8{x)>g((i+\)e'') + (x-(j+l)e")> >{fy,.--yj-^ .„0е") + {дг-/в")}-в" при /е''<л:<(/+ 1) е"' Выражение в фигурных скобках, по определению^ есть fy у у {х); таким образом, мы получили gix)>fy^ yj t/J^^-e" "Ри /е"<дг<0+1)е". С другой стороны, имеем g(x)^g(ie") + {x-je"), полгтавляя x=je" в (9), получим 1^., .,_, yjin-g(ie")\<e'', следовательно, 8 (-) < {fy, yj_, .„ (/в") + (х- /е")) + е" . g (х) < fy^^ ..., у^ у^ {х) + е" при /е" <*<(/+!) е"; в итоге имеем I ^ (^) - fy,. .... у,..... у„ W I < е" на Не", (j + I) е"]. Аналогично разбирается случай, когда t/i = 0. Мы продвинулись еще на один шаг в построении требуемой функции fy,,..., »„ (дг). Таким образом мы сможем дойти до конца отрезка. Так как е" ■■ —-j—r ^ е, то построенное множество из 2" функций образует е-сеть. Эти функции принадлежат исходному множеству Q. Поэтому на основании леммы 1 имеем /e(G;f)<rt. A0> Объединяя эту оценку с (8), получаем /e(G; F)~n ^-1. Заметим, что элементы построенной выше е-сети принадлежали самому исходному множеству G. Задачи. 1. Пользуясь этим замечанием, показать, что в рассматриваемом случае Je(G) = n.
§ 12) ЭНТРОПИЯ И е-ЭНТРОПИЯ 269 2. G — пространство функций с {г—1)-й непрерывной производной, определенных на [О, а] и удовлетворяющих условиям / @) = ... = /(^-') @) - О, I f(^-'» (X,) - /(^-'> (;.,)!< ^ i4 I дг2 — Х[\ при Xi, Х2 е [О, а]; пусть пространство F и метрика те же, что и в предшествующем примере. Величина J^ (G; F) является функцией от параметров е. А, а. Доказать, что г она является функцией от безразмерной комбинации д ]/^А/е т. е, /е (G; F) = ф (а [^ж] . 3. Доказать, что \п^{у) = \пу + 0.{1) при у -*■ 00. 4. G — пространство аналитических функций А(М, Q), Р (/, g)= sup I f - gr I, l-i. 1] a(Q)>l (определение A{M, Q) см. в § 10). Доказать, что 10g2^E(G)~2lOg2 10g2 —. & Дополиительиая литература к главе IV §§ 3, 4: II [12], §§ 5-7: II [38], § 10: II [И. 43], III [23]; §-11;.II [1], III [63]; § 12: II [4, 6], III [30].
Глава V МНОГОМЕРНЫЕ ЗАДАЧИ Вопросы приближения, интерполирования, численного интегрирования и дифференцирования функций одной переменной, как видно из предшествующего, разработаны достаточно подробно; на основе результатов теоретических исследований в настоящее время созданы довольно развитые системы стандартных программ решения одномерных задач. Значительная часть результатов теоретических исследований для' одномерного случая переносится автоматически на случай функций двух-'и более переменных, однако при этом часто появляются практически недостаточно эффективные методы. При теоретических построениях задачи разбивают на классы, например, класс задач вычисления интегралов от функций с ограниченными производными, и затем проводят исследования, связанные с этими классами задач. Конечно, принимаемое описание не всегда (скорее даже редко) хорошо описывает класс реально встречающихся задач, однако скорости современных ЭВМ таковы, что, несмотря на грубость описания одномерных задач, удается решать большинство из них, пользуясь стандартными методами, разработанными в результате теоретических исследований. В случае двух и большего числа переменных принимаемое в теоретических исследованиях описание задач также часто оказывается неудачным. Трудоемкость решения задач резко возрастает с ростом размерности решаемых задач, и поэтому, как правило, не удается разработать стандартные методы решения широких классов многомерных задач со столь же высокой точностью, как в одномерном случае. Некоторым положительным фактором является следующее обстоятельство. Многомерные математические задачи обычно возникают из описания сложных процессов. Обычно эти описания уже являются довольно грубыми и поэтому значительно реже предъявляется требование решения этих задач с такой же высокой точностью, как в одномерном случае. Например, трсбо-
S и МЕТОД НЕОПРЕДЕЛЕННЫХ КОЭФФИЦИЕНТОВ 271 вания к точности решения уравнений газовой динамики существенно ниже требований, предъявляемых к решению уравнений баллистики и небесной механики. Не следует думать, что решение многомерных задач является почти безнадежным делом. В настоящее время основное отличие от одномерного случая, пожалуй, состоит в том, что многообразие многомерных задач требует привлечения к их исследованию специалистов более высокой квалификации. Изучение узких классов многомерных задач и повышение скоростей ЭВМ, конечно, будут иметь следствием создание стандартных методов решения задач определенных классов и снижение требований к квалификации. § 1. Метод неопределенных коэффициентов Решение ряда многомерных задач часто сводится к решению следующих элементарных задач. В некоторой области s-мерного пространства G заданы точки Р[, ..., Pn и значения функции f в этих точках. Требуется: 1) получить приближение к значению функции f{P); 2) получить приближение к значению некоторой производной S)f функции в точке Р; 3) вычислить интеграл I{f)=\!{P)p{P)dP; здесь р{Р) — весовая функция. Простейшим способом решения этих задач является способ неопределенных коэффициентов. Пусть из каких-то соображений нам известно, что функция \{Р) хорошо приближается линейными комбинациями Потребуем, чтобы такая линейная комбинация совпадала с ДЯ) в заданных узлах: SB,0,(P,) = f(P,), q=\,...,N. A) Предположим, оказалось det || 0j(Pq)|| =р^ 0; тогда матрица l|cOj(Pq)|| имеет'обратную А = llfljqll и решение A) записывается в виде N Bi=Iia,J(P^). B) <7=1
272 МНОГОМЕРНЫЕ ЗАДАЧИ [ГЛ. V Функция N /=1 совпадает с f{P) в точках Pq. Подставляя В, из B), получим иное представление g(P): g(P) = ^z,(P)f{P,), где 2,(P)=2a;,0,(P). C) G=1 /=1 Такая форма записи интерполирующей функции является аналогом записи интерполяционного многочлена в форме Лагранжа. Как и в одномерном случае, можно надеяться, что при удачном выборе узлов Pq и функций 0j(P) будет мала погрешность в приближенных равенствах: fiP)^g{P)='^z,{P)f{P,), D) S>f (Р) - ^g (Р) = S ^г, (Я) / (Я,). E) <7=1 /(/)-/(^)--=2с,/(я,), F) где здесь ^ — некоторый оператор дифференцирования. Как отмечалось в главе II для одномерного случая, при неудачном выборе большого числа узлов интерполирования погрешность приближенного равенства D) может оказаться катастрофически большой. Поскольку приближенные равенства E), F) являются следствием приближенного равенства D), то может быть большой и ошибка в приближенных равенствах E), F). Поэтому применение соотношений D), E), F) требует обоснования и выяснения условий законности использования. § 2. Метод наименьших квадратов При построении g(P) мы добивались равенства с функцией f{P) в Л' точках. Функция g{P) содержит большое число параметров, и поэтому у нее есть определенная свобода, чтобы сильно отличаться от f{P) вне этих точек. Повышение качества приближения может достигаться различными способами. Рассмотрим первый из них, называемый методом наименьших квадратов. Приближение ищется в виде g(P) = is/a),(P), ;=1
§ 21 МЕТОД НАИМЕНЬШИХ КВАДРАТОВ 273 где п <. N; параметры В/ определяются из условия min Ф{g), где, например, Ф(я) = Ф(в„ .... Bn) = IiP,{g{P,)-f(P,)r = <7=1 <7=1 \/=1 / В основе метода наименьших квадратов лежит следующее соображение. Малость величины Ф(^) обеспечивает близость g{P) и /(Я) в точках Я,; при п <^ N функция g{P) содержит относительно мало параметров и поэтому у нее меньше возможностей отличаться от f(P) вне узлов по сравнению со случаем n = N. - Числа pq>0, называемые весами, подбирают в зависимости от плотности распределения точек Рд-, если значения f{Pq) содержат случайную ошибку, то их выбирают также в зависимости от дисперсии ошибок измеряемых значений. Там, где точки Рд распределены плотнее, числа Pq берутся меньше; значениям f(Pq) с большей дисперсией ошибки ставят в соответствие меньшие значения Pq. Наши рекомендации выглядят довольно неопределенными, поскольку нельзя предложить общего правила, пригодного для всех задач. Для конкретных классов задач принципы выбора Pq к п вырабатываются с учетом специфических свойств задач на основе статистических критериев и численного эксперимента. Приравнивая нулю производные -^д-. получим систему линейных уравнений для определения By. /■=1 di, = ^p,(^i{P,)(^,{P,), B) <7=l di^^p,(i>i{P,)f(P,). G=1 Числа Bj *»ожно находить, непосредственно решая указанную систему или минимизируя каким-то образом функцию Ф. Преобразуем A) п п Ф(В. Вп)= S diiBiBj-2^diBi + do, i. 1=1 /=I
274 МНОГОМЕРНЫЕ ЗАДАЧИ [ГЛ. V где N <7=1 п Так как Ф(В1, ..., Вп) ^0, то квадратичная форма 2 diiBiBj не- отрицательна; это свойство используется в ряде стандартных программ метода наименьших квадратов. Выражая Bj из B) через dj, а затем через f{Pq), получим следовательно, 5(/') = 22,(Р)/(Р,), C) где га 2, (Р) = 2 a^qM, (Р). 1=1 Воспользовавщись C), можно получить также формулу численного дифференцирования S)f « S)g_ и квадратурную формулу /(/)-/(Я). § 3. Метод регуляризации В основе метода регуляризации непосредственно лежат соображения о сглаживании аппроксимирующей функции. Наиболее распространенной формой метода регуляризации является следующая. Приближение отыскивается в виде ^(P) = isyM;(n коэффициенты Bj выбираются из условия минимума выражения Ф{l,g) = Ф{g) + l'V{g), Л>0. A) Функционал '*¥{g) подбирается из следующего условия: если значение этого функционала невелико, то функция g обладает определенной гладкостью. Например, W{g) может быть некото-, рым приближением к интегралу \ \gradgiP) fdP, В приложе- 0 ниях распространен случай « = Л/, на котором мы далее и остановимся. Пусть минимум Ф(?1.,.ё') достигается при некоторых Bi, ..., Bn и_ g4P)=IiB)^iiP).
4 4] ПРИМЕР РЕГУЛЯРИЗАЦИИ 275 Рассмотрим крайние случаи: к = 0 и X очень большое. Имеем равенство ф @. g) = 2 Р, B 5/сй/ (Р,) - f (р,)). Если det II (uj (Р,) II =7^ О, система A.1) имеет решение, и на ее решении правая часть этого равенства обращается в нуль. В то же время выражение Ф@, g) всегда неотрицательно; таким образом, нижняя грань достигается на значениях S,-, являющихся решениями A.1). Тогда g°(P) совпадает с интерполяционным многочленом с узлами интерполяции Р,-. При больших к в функционале Ф(k,g) определяющим является второе слагаемое, нижняя грань которого достигается на гладкой функции. Следовательно, есть какие-то основания ожидать, что при промежуточных значениях к функции g^{P) будут гладкими и в то же время не очень сильно отличающимися от приближаемой функции в заданных узлах. Наши рассуждения выглядят довольно расплывчато, однако при такой общей постановке задачи приближения функции без конкретного указания системы функций coj, распределения точек Pj и класса рассматриваемых функций вряд ли можно сказать что-либо более определенное. Подобные грубые «физические» соображения часто помогают при конструировании новых методов решения задачи в условиях недостаточной информированности о самой задаче. Ниже на конкретном примере будет объяснено существо эффекта, достигаемого за счет применения регуляризации. § 4. Пример регуляризации Пусть f(x) — действительная, периодическая функция с периодом 1; известны некоторые приближенные значения f, величин f{Xq) при Хд = qh, q = 0 Л/ — 1; Nh= I. Ошибки приближенных значений f, — f(x,) = d, — независимые случайные величины с математическим ожиданием, равным нулю, и дисперсией d^. Требуется получить таблицу приближенных значений производных f'{Xg). Погрешность оценивается в норме, соответствующей скалярному произведению {f.g)=[^Jgg,y. Далее f, рассматривается как периодически продолженная. Для нахождения производной используем простейшую формулу численного дифференцирования f'ix,)^2)u=^'^';J''-\ A)
276 МНОГОМЕРНЫЕ ЗАДАЧИ [ГЛ. V Предположим, что функция f{x) достаточно гладкая и шаг h настолько мал, что при отсутствии ошибок в значениях функции погрешность формулы численного дифференцирования г (X.)--"""'-""-' B) пренебрежимо мала. Ошибка в значении производной предста- вима в виде Здесь и далее знак приближенного равенства означает равенство с точностью до величин порядка погрешности формулы B). Имеем равенство М||У?|Р^М||г|Р=м(^('^Л'Г^]- ^ G=0 ■' N-1 „=0 Согласно указанным выше свойствам случайных величин d^, имеем MVp = ^'^-7- C) Тогда получаем М II ^? IP = A/2c?V2,- иначе среднеквадратичное значение нормы ошибки равно Nd IY2. ^\ы видим, что погрешность приближенной формулы A) растет с уменьшением h=\/N\ в то же время для малости погрешности в предположении отсутствия ошибок в исходной информации B) требуется достаточная малость h. Чтобы выяснить пути уменьшения погрешности, произведем более детальное исследование. Пусть Лу — дискретные коэффициенты Фурье (д. к. Ф.) функции / (Xq): f{Xq)° 2 A''.exp{2nijx^), -N/2 < / < W/2 /ly — Д. К. Ф. функции fq. Величины aj = Aj — A'j будут д. к. Ф. функции dq = fq — f (хд). Имеем d - 2 а/ехрBш-М). D) -NI2<KNI2 N-\ Uj-^h ^d exp (- 2л/ул;^). 4=0
S 4] ПРИМЕР РЕГУЛЯРИЗАЦИИ 277 Чтобы вычислить д. к. Ф. для Гд, применим оператор 21 к функции ехр BпЦхд): ехр Bn<7jc,+ i) -- ехр BяGл:,_,) ,■ sij, 2пШ S) ехр B^7*,) =■ 2Л ~ Л ^^Р С^пЦх^). Применяя оператор 3) к обеим частям D), получим г,=- 51 ^^^а;ехрBш7.,). -Np< KNP Воспользуемся равенством Парсеваля: -^v/^<^<^v/2 Отсюда следует, что -W/2</<W/2 Имеем". ыы заменили dp на dp, воспользовавшись действительностью ошибок dp. Таким образом, N-1 N-1 M\ai\' = h' 2 expBmi(Xp-XgnM(dgdp) = h' 2 d4p.g = hd\ q, p=0 7, p=0 Таким образом, М||.|р= ^ (iiB|^)%d^ E) -W/2</<W/2 Возьмем некоторую функцию p,(/) и положим /**(*)= 2 -4> (i) ехр BnGjt), -W2</<W2 /1J= 2 /l,n(i)expBm7Jc„). -JV/2</<W/2 При заданных значениях fq можно вычислить коэффициенты Aj, а следовательно, и величины /^. Пусть г^ — составляющая погрешности формулы численного дифференцирования, являющаяся следствием наличия ошибок dq\ Аналогично E) имеем -W/2 <KNI2 если ^/(;(,)«^Р (;(,). M||r'4f<Mllr|p. F) то имеет смысл .положить f'(Xg)Ki Sif^. Для выполнения первого из соотношений F) существенна близость коэффициентов Фурье функций f(x) и f^(x); для выполнения второго — малость ц(У) при больших /'.
278 МНОГОМЕРНЫЕ ЗАДАЧИ [ГЛ V Попробуем прибегнуть к сглаживанию функции /, при помощи метода регуляризации. Рассмотрим функционал ФЧ{l.g)=h"^ {g, - и?+^'h';s' (^^^^)'. 9=0 <г=о где gN = eQ- При g^ = g{Xq), g{xg) гладкой, величина I стремится к интегралу \ (g'(x)Ydx; условие, что этот интеграл о невелик, гарантирует определенную гладкость функции g(x). Таким образом, есть какие-то основания считать, что функционал Ф* (X, g) удовлетворяет требованиям, накладываемым на функционалы метода регуляризации. Определим сеточную функцию g^ из условия минимума функционала ФНХ, g) и положим Посмотрим, что является аналогом такой регуляризации для случая функций непрерывного аргумента. Пусть f{x)= 2 A°]expi2ni}x), /=-оо g^ (х) — функция, реализующая минимум функционала Ф. {К g)=^jig ix) - f (л^)J dx + X^j ig' ix)f dx. 0 0 Уравнение Эйлера для этого функционала Непосредственной проверкой убеждаемся, что функция °° *" . ^' W = S 1 + (LniY ^^Р B"'^^) является решением этого уравнения. Произведем сравнение g\{x) и f{x) для малых Х. Если Я2я/•< 1, то коэффициенты а] Фурье этих функций ) i п^п)' ^ "^^ близки между собой. Если X2n/i» 1, то коэффициенты Фурье функции gj'(х) много
?4] ПРИМЕР РЕГУЛЯРИЗАЦИИ 279 меньше коэффициентов Фурье функции f{x). Таким образом, регуляризация равносильна на языке техники некоторой «фильтрации»: несущественно искажая гармоники с малой частотой колебания, она сильно ослабляет гармоники с большой частотой. Если требуется еще меньше исказить амплитуды А'} тармоник с малой частотой и сильнее «отфильтровать» высокочастотные колебания, то следует рассмотреть функционал I 1 Фп {К g)=j{g (Х) - f ix)f dx + X''^ J (g(") (X)f dX . 0 0 Уравнение Эйлера для этого функционала ^V4(-i)"(g-f) = o. отсюда g'M- S Л", i оо 1 + (\2щ) .2п ехр {2nijx). Рассмотрим графики множителей ^^ ; при \П<-^^ и п—*оо эти множители стремятся к 1 и, таким образом, при больших п амплитуды соответствующих гармоник искажаются все Рис. 5 4.1. меньше и меньше. В то же время при | /1 > -уг- эти множители стремятся к О и, таким образом, соответствующие гармоники умножаются на все меньшие множители (рис. 5.4.1). Таким об- " 1 разом, при и—+00 и yY "^ целом gl (х) -> g^ (х) = 2 А°1 ехр Bniix).
280 МНОГОМЕРНЫЕ ЗАДАЧИ 1ГЛ. V Вернемся к дискретному случаю. В выражение Ф1'(А,, g) величина gq входит только в слагаемые Имеем систему уравнений относительно значений gq в точке экстремума "ЗА -^ = (Sq -fq)-jr {g, + l - 2gq + gq-l) = 0. G) Матрица системы G) относительно неизвестных gq совпадает с матрицей положительно определенной квадратичной формы Л;-1 JV-1 G=0 (/=0 поэтому определитель ее отличен от нуля и система G) имеет, и притом единственное, решение. Пусть fq= 2 A,expi2niiXq); -N/2 < / < W/2 будем отыскивать периодическую функцию gj в виде 4 = 2 А) ехр Bnijx). ^ -NI2KKNI2 ' Сначала вычислим оператор второй разности от функции ex[)BniiXq): б^ехр {2nijXq) = ехр Bni/\+i) — 2 ехр Bпг7\) + ехр Bя1/\_,) = = (ехр Bnijh) — 2 + ехр (— 2т]к)) ехр BnilXq) = = B cos Bn//i) — 2) ехр Bя1Д<,). откуда 6^ ехр Bni}Xq) = — 4 sin^ {n'jh) ехр {2nijXg). (8) Подставим представление fq а gq в виде суммы Фурье в G), преобразуем вторую разность b^gq с учетом (8) и приведем подобные члены: 2 (А)-А,+ 4^2 (^f А)) ехр Bnijxq) = 0. -NI2<KNI2 Это равенство будет удовлетворяться при \ Л, ^^^^,^smnih_J
§ 51 СВЕДЕНИЕ МНОГОМЕРНЫХ ЗАДАЧ К ОДНОМЕРНЫМ 281 Таким Образом, -NI2KKN/2 l+^f''y ^ j Множитель 1 1 + W / sinnj/i Y убывает с ростом /. Мы видим, что регуляризация с использованием функционала Ф^ (К g) также приводит к ослаблению высших гармоник функции. По аналогии с функционалами ФniKg) можно осуществлять регуляризацию с помощью функционалов в=0 G=0 Решение системы G) и систем линейных уравнений, возникающих при минимизации функционалов Фп(К g), можно получить за 0{n'N) арифметических операций «методом прогонки» решения периодической сеточной краевой задачи (§ 3 гл. IX). По сравнению с регуляризацией с помощью функционалов Ф^ (Я, g) при п > 1 часто более удобна «-кратная регуляризация с помощью функционала Ф?(Я, g): гармоники ехрBя17*) в этом случае умножаются на Преимущество такой последовательной регуляризации состоит в простоте алгоритма, несколько меньшем объеме вычислений (порядка O(nN)) и меньшем влиянии вычислительной погрешности. В случае рассматриваемого примера можно пойти и по такому пути регуляризации: произвести дискретное преобразование Фурье (если возможно — быстрое), найти коэффициенты Фурье Aj, заменить нулями Aj, соответствующие гармоникам с высокой частотой, и затем произвести обратное преобразование Фурье. § 5. Сведение многомерных задач к одномерным Выше рассматривались способы решения многомерных задач, в (Которых не используется дополнительная информация о распределении точек, где известны значения функции. Во многих случаях расположение этих точек носит регулярный характер; если рассматриваемая функция задана
282 МНОГОМЕРНЫЕ ЗАДАЧК [ГЛ. V аналитически, эти точки можно выбирать по желанию. При удачном расположении точек осуществление операций приближения, интерполирования, численного дифференцирования и интегрирования функций многих переменных может быть сведено к последовательному осуществлению этих операций над функциями одной переменной. Большинство таких случаев укладывается в следующую схему. Заданы значения функции на некоторой совокупности узлов. Можно произвести некоторую замену переменных, после которой значения функции f(i/i у») будут заданы на совокупности узлов Q, обладающей следующими свойствами; совокупность узлов Q распадается на «i совокупностей узлов Qi, ... ..., Qn, так что большинство совокупностей Qm, содержит достаточно много узлов, Qj„ лежит в гиперплоскости i/, = i/y''^ m, = = 1 n,, совокупность узлов Qm, в свою очередь распадается на совокупности узлов Qm,m,i nt2=l, ..., n2(mi), со свойствами: большинство совокупностей Qm.mj содержит достаточно много узлов, совокупность Qm,mj ЛСЖИТ В ПЛОСКОСТИ J/j = y^'i У2 ^^ = УР"'', в СВОЮ очередь Q^^ распадается на совокупности узлов Qmim,m, И Т. Д. Инзче можно сказать, что все узлы могут быть записаны в виде (уГ'. ^2"'^'--. У? ■■■'"')> A) где l<mi<n,, 1 ^mA^ttftCm,; ..., «А-,) при k>l. Очевидно, в виде A) может быть представлена произвольная совокупность узлов, однако нами накладывается дополнительное условие, чтобы совокупности Qm, ...т^ состояли ИЗ достаточно большого числа узлов. Примерами подобных совокупностей могут служить совокупности, представленные на рис. 5.5.1, 5.5.2. Случай, соответствующий рис. 5.5.2, удовлетворяет наложенным выше требованиям относительно полярной системы координат. Рассмотрим задачу вычисления значения некоторого оператора Mp')-^f'^ '^\у:,...,у:), частный случай п = ... = г» = О соответствует задаче интерполирования. Возьмем какую-либо формулу вычисления производной ё*''*(у°) по значениям функции в узлах yfn
§ 51 СВЕДЕНИЕ МНОГОМЕРНЫХ ЗАДАЧ К ОДНОМЕРНЫМ Подставляя 283 8{yd = f'°-'' Чу.у1'""У% получаем f^'^ ^КУг •••• Л- i^D'^r-'^- Чу?' У% •••. У% B) Задача дифференцирования функции s переменных f(yi, ..., ys) при помощи этого равенства сводится к задаче дифференцирования функций f(i/f', У2, •••. у^ на единицу меньшего числа переменных. Значения этих функций известны на сетках Qmii удовлетворяющих тем же условиям, что и исходная сетка. Рис. 5.5.1. Рис. 5.5.2. При каждом «1 выберем некоторую формулу вычисления производной ^''■''(Уг) по значениям функции в узлах ^f''"=: rrC-J п, (m,) Подставляя сюда e=f-'"^ '^Ч^/Г'. i/.. Уз A аналогично B) получаем
284 МНОГОМЕРНЫЕ ЗАДАЧИ 1ГЛ. V Воспользовавшись этим соотношением, из B) получаем ^('- ^ч^: у':)- « 2 оЫ 2 D'".'"»^"-'^ '^КуТ^' у7^'"^> у1 у':)] И Т. Д. Последовательно осуществляя этот процесс, получим в итоге некоторую формулу численного дифференцирования f'^ ^^Чг/? У^^'^ 2 /)'"''''f' D'".'"»... 2 D-". -./«'.-.«(j/-, J/-, -,), C) где f(° °'^f. He следует пугаться, что в правой части стоит сумма слагаемых по всем узлам: на самом деле одномерные формулы численного дифференцирования и интерполирования, на основе которых получена формула C), содержат относительно мало узлов. Точно таким же образом строятся формулы численного интегрирования. Пусть вычисляется интеграл /о= j fiyi ys)dy , dy^. a Его можно представить в виде h(yu У2) = J 1г(Уи Уг, y^)dy^ h-iiy i/s-i) = = J hiyu ••-. ys)dy,. Здесь <ЛУ1 Уе) = \{У ys\ Go —Проекция области G на ось у и Ga(^i, . ...^л) —сечение множества G плоскостью У1 = у\, ..., //ft — Ун. Воспользуемся какой- либо квадратурной формулой для вычисления первого из этих
§ 5) СВЕДЕНИЕ МНОГОМЕРНЫХ ЗАДАЧ К ОДНОМЕРНЫМ ■ 285 интегралов mi=l Задача вычисления исходного интеграла свелась к вычислению интегралов размерности, на 1 меньшей. Полагаем теперь п, (т,) fa 2 D"! '"'/(//p. уГ- в итоге получаем "l ('"l) m, = l m„=l 2 o"' ""'fiuT' уГ' Ч E) В одномерном случае для всех операций численного анализа были получены оценки погрешности через производные рассматриваемой функции. Посмотрим, какие оценки погрешности являются следствием этих оценок для многомерных задач. Значение некоторого оператора от функции приближается значениями других операторов, причем погрешность этой замены можно оценить, согласно формулам оценки погрешности одномерных формул. Однако эти новые значения сами уже содержат ошибки; поэтому в суммарную погрешность эти ошибки войдут с некоторыми множителями. Обратимся к задаче интегрирования; пусть / С//'"" ... u"^^ "A-iW "kC", '"k-i) = у, П'"\ '"ft/ (u'"i ,., u'"i '"ft'i-LP^-' Последовательно подставляя в равенство n, /o= 2/)'"■/, иГ') + ^"
286 МНОГОМЕРНЫЕ ЗАДАЧИ (ГЛ. V выражения ![, 1^ получаем цепочку соотношений mi=l = £0+2 D-"' £' + S D^-^^/^Cf/r. ^2"""') = ••• m,=I \ mi=l '/ m|=l \ mj=l x[-"[ Д ^'"' '"'fiyT' у7^ '"')]•••]]• где mi=I >ni=l mf=I «1 '»2('»i) ... + S D""' S D'"»'"» ... mj=l mj=l '^s-^{"Ч '"s-i) S £>"' '"^-£m7'...,m,_,. F) Из последнего равенства видно, что погрешность аппроксимации может оказаться существенно больше, чем в одномерном случае, если коэффициенты D*"' "* большие. Формально сведение многомерной задачи к одномерной носит одинаковый характер и в случае задачи численного дифференцирования (интерполирования) и в случае численного интегрирования. Однако между этими задачами есть такое существенное различие: задача численного дифференцирования (интерполирования) чаще ставится как задача нахождения оператора от функции по значениям на некоторой заданной совокупности узлов Q. Для задачи интегрирования более типично наличие возможности распоряжаться выбором узлов. Рассмотрим один пример подобных построений. Цель этого рассмотрения — указать на необходимость внимательности при выборе вспомогательных одномерных формул численного дифференцирования и на практическую важность оценки остаточного члена. Пусть значения функции f{Xi,X2) известны в узлах сетки (mi/i,/ИгЛ). Требуется вычислить значение f^^^^{0, О). Выпишем простейшую формулу численного дифференцирования функции одйой переменной
§ 5\ СВЕДЕНИЕ МНОГОМЕРНЫХ ЗАДАЧ К ОДНОМЕРНЫМ 287 Вследствие формулы Тейлора f(x + h) = f(x) + rix)h-\-rix + Qh)-Y. 0<е<1, имеем Поэтому можно написать f. (Л, 0) — f, (О, 0) h h,., @. 0) = '^'^' 'Г''' - /^.^ т, 0) т ■ G) В свою очередь возьмем какие-либо аппроксимации производных t^^(h, 0), f^^@, 0); имеем равенства: /.,№'.0)= ""'г""'"-?.,..(/■. е./.)|. f..(o,o)="'''°'-"°'-'>+f.,..(o.e,4|. После подстановки в G) получим f /л пч_ ИА./')-/(A.O)-f@, 0) + f(o. -/») / «.дс, ^"> "^ ~ А» "~ - h\., (^^' 0) т - т ^,:.. (О' в.'^) - т ^.х, С»- в^'»). (8) При построении аппроксимации без одновременного учета остаточного члена можно было бы прийти к неверному заключению, что величина f{h,h)-f{h,0)-f{Q,0) + f@, -h) А» является хорошей аппроксимацией значения fx^x,^^^^)• Соотно- .шение (8) можно переписать в виде и@. 0) = fa/»)-fao)-^f(o.oL-f(o.-/,) _^^^^^(о_ 0)^ ^(,^^ Таким образом, если не обращать внимания на возможность возрастания погрешности за счет умножения на большие множители D'"'■■■'"*, то можно получить аппроксимацию с конечной погрешностью, в данном случае аппроксимирующую не требуемую производную, а выражение fx^xS^^ ^) + /хх (^' ^)* Важным для приложений является случай, когда узлы образуют некоторую сетку в узком понимании этого слова, иначе, множество точек вида (i/Г'' •••' ^Г*) при m^ = \, .,., N^\ ...\ m^=\,...,N^.
288 МНОГОМЕРНЫЕ ЗАДАЧИ [ГЛ. V На рис. 5.5.3 изображено такое расположение точек в случае S =: 2. Тогда при осуществлении многомерных операций численного дифференцирования (интерполирования и интегрирования) разумно использовать одинаковые формулы для аппроксимации промежуточных величин. Имеется в виду, что, например, , , ^ формулы D) должны иметь '.'.'. . '. ! вид ^_Х^Г'. •••.//^ir') '"к Рис. 5.5.3. (9) т. е. Z3'"'■■■'"* зависят только от т^. Правая часть E) тогда приобретет вид 2 ... i D'". ...о'"^/(//Г'..... уГО- При построении такой квадратуры мы неявно предполагаем, что область интегрирования — прямоугольный параллелепипед с ребрами, параллельными координатным осям. Такие формулы численного интегрирования (интерполирования, дифференцирования) называют прямым произведением соответствующих одномерных формул численного интегрирования (интерполирования, дифференцирования). В § 13 будет приведен более сложный пример прямого произведения квадратуры по отрезку на квадратуру по сфере. В случае применения таких аппроксимаций оказывается, что остаточные члены аппроксимации в правой части F) в значительной мере компенсируются. В том же самом примере при применении формул вида (9) получится аппроксимация с ,^ п\ f(ii, h)-f (О, ii)-f {ft, Q) + f {0,0) с погрешностью 0(h). В случае задачи интегрирования возможна такая ситуация: при гладкой подынтегральной функции может оказаться, что промежуточные интегралы 1к(Уи ■■■, Цк) не обладают достаточной гладкостью. Пусть вычисляется интеграл по единичному кругу / = j J f (i/i. </j) dyi I di/, -1
§ 61 ОЦЕНКА ПОГРЕШНОСТИ ПО РАВНОМЕРНОЙ СЕТКЕ 289 при fiHu У2) гладкой; если f (±1,0)=?^0, то функция л A/1)= J f A/1. 2/2) ^«/2 имеет неограниченные производные в точках ±1, и поэтому при численном интегрировании по переменной i/i следует применять специальные приемы вычисления интегралов от таких функций — переменный шаг, выделение особенностей и т. д.; целесообразнее-записать этот интеграл в виде 1 2я /= rl,{r)dr, {[{>')= f{rcos(f, г sin if) d<f. о О Подынтегральная функция внутреннего интеграла периодическая и имеет смысл применить квадратуру C.3.16) 2" п-1 |г(ф)^Ф-^5]^(-^)- т=0 При Г малом производные функции / по переменной ф содержат малый множитель г; поэтому при малых ф иногда выгоднее взять число п поменьше. Для вычисления интеграла по переменной г можно применить любые из рассматривавшихся ранее квадратурных формул, в частности формулы Гаусса, соответствующие весовой функции г. § 6. Оценка погрешности численного интегрирования по равномерной сетке Чтобы проиллюстрировать конкретные способы получения оценок погрешности описываемых выше методов, рассмотрим случай вычисления интеграла по единичному кубу: I I / = J .. • J / {xi, ..., Xs)dxi ... dx^. 0 0 Предположим, что подынтегральная функция принадлежит классу Cr(A)^Cr^...r^(Au ..., As) функций f(Xi, ..., Xs), у которых производные f r^-liXu ..., Xs) непрерывные, a производные / г^,(д:1, ..., х^) кусочно-непрерывны "к и* удовлетворяют условиям f ri^[xu ..., Xs) ^Ak. Будут pac- сматриваться квадратуры, являющиеся прямым произведением 10 и. с. Бахвалов
290 МНОГОМЕРНЫЕ ЗАДАЧИ [ГЛ. V одномерных квадратур. Положим IsiXi, .... Xs) = f{Xi Xs) и h (-^1 Xk) = j ... j / {xi, .... Xs) dx^+i ... dx, 0 0 при /г = 0 s— 1. Имеем неравенства 1 ■ 1 (/ft)/J< j • • • J I f^r^ {x X,) dxk+i • ■ • dx.^Ak. Для вычисления интегралов h-iixu ..., Xk-i)= j hiX[, ..., Xk)dXk 0 применим какую-либо составную квадратурную формулу C.6.4) с п = Гк при постоянном шаге а,, — aq-i = Hk = Nk^: 1 J /ft(л:,, .... Xk)dXk Ny m^ ?ft=i /=i Согласно C.6.6), ее погрешность не превосходит и, следовательно, не превосходит D{r^AJ^'^'^'^. Для такой квадратурной формулы сумма модулей коэффициентов весов квадратуры оценивается величиной не зависящей от Л^^. Обращаясь к E.6), можно написать оценку остаточного члена /?=£Ч i D'<-f I; 0"^ I; D"£L+ ... г7,=1 =1 4:F=l
§ ei ОЦЕНКА ПОГРЕШНОСТИ по РАВНОМЕРНОП СЕТКЕ 291 Отсюда |/?|<|£*'l + fi'm^|£j + fi'fl^max|£^,,J+ ... B) В рассматриваемом случае £j~'..,^_, —погрешность квадратуры A) при некоторых значениях дс,, ..., **_,, оцениваемая через D{r^Ai^N-^k. Подставляя эту оценку в правую часть B), получим оценку Do(r) определяется через величины fi* и D{rh). Полученная оценка погрешности зависит от выбора конкретных квадратурных формул и числа отрезков разбиения по различным осям. S Займемся минимизацией множителя 2 A^N~'^'^ за счет выбора значений Nk при фиксированном общем числе узлов, пропорциональном величине Ni ... Ns=Q. Составим функцию Лагранжа Ф=t\N;'' + ЦN,...N^-Q). Приравнивая нулю производные Фы^, получим систему уравнений откуда Уравнение A^i ... Ni, = Q переписывается в виде ПD^)"'*=« ИЛИ где fe=i 1 отсюда Ш^={~о) • Подставляя значение XQ в выражение для Nk, получим [ A^r.Q'-\4''k 10»
292 МНОГОМЕРНЫЕ ЗАДАЧИ (ГЛ. V Тогда '^"-"=Mi)'- ^fe"ft и, следовательно, величина 2 ^k^k'^'^ ^^^ть О (("л-) )• Рассмотрим частный случай: Г) = ... = rs = го, Ai = ... ... = As = Ao. Тогда т = -Г+ ••• +-7- = Т- « ^' = ^о.Та- КИМ образом, рассматриваемые квадратуры обеспечивают оценку погрешности О {AoN~'^°'^). У реальных подынтегральных функций порядок ограниченных производных Го часто оказывается не очень большим и поэтому при больших S такая оценка скорости сходимости оказывается плохой. Иногда удается несколько улучшить порядок оценки, если, как в одномерном случае, оценивать погрешность не через ограниченные производные, а через те производные, которые интегрируемы. Однако, как правило, и у таких оценок скорость стремления к нулю оказывается малой. Возникает вопрос об оптимальных квадратурах на классах многомерных функций. Так как ни для каких реальных классов функций такие квадратуры неизвестны, мы ограничимся оценкой снизу погрешности оптимальных квадратур. § 7. Оценка снизу погрешности численного интегрирования Напомним постановку задачи оптимизации квадратурных формул на классе функций. Пусть приближенное значение интеграла вычисляется по формуле N / Ш = J f (Р) Р {Р) dP « 5л, (/) = S D,f{P,). а /=| Величина называется погрешностью квадратуры, величина — погрешностью квадратуры на классе функций F, величина W^(,F)= inf RAF) — оптимальной оценкой погрешности квадратур на классе F; квадратура (если такая существует), на которой эта нижняя грань достигается, называется оптимальной. Мы будем предпо-
§ 7] ОЦЕНКА СНИЗУ ПОГРЕШНОСТИ ИНТЕГРИРОВАНИЯ 293 лагать выполненным условие: существует некоторый куб AeG, в котором р{Р)^\'> 0. Теорема. WN{Cr{A))>d{A, г, A)yN-'. где d(^,r,A)>0. Доказательство теоремы осуществляется следующим образом. Будет показано, что для любой совокупности узлов Р[, ... ..., Pn можно построить функцию fp р (Р) рассматриваемого класса С г (А), обращающуюся в нуль во всех этих узлах и такую, что I{f)^ d{h.,r,A)yN~^. При этом постоянная d > О не зависит от точек Р\, ..., Pn- Тогда для любой квадратуры с этими узлами R,{CriA))>\l{fp^ Р.)-|^Л. рЛП- = V{h, ,J|>d(A,r.^)YA^-'. Величина /?^(Сг(Л)) оценена снизу постоянной, не зависящей от узлов квадратур Pj и весов Dy, поэтому и ее нижняя грань Wt,'{Cr(,A)) по множеству всевозможных квадратур также оценивается снизу этой постоянной d{h.,r,A)yN~^. Таким образом, доказательство теоремы сводится к построению соответствующей функции fp р (Р) для каждой совокупности точек Р Рд,. Для простоты выкладок будем проводить построения для случая, когда А — единичный куб О :^ ЛГ),... ,Xs ^ 1, Л, =:...= = As = Ло. Положим ttft = [BA^f''^*] + 1 и разобьем куб А на П[...Па Прямоугольных параллелспипедов Пт = Пт ...т : т. — 1 Шл —^ <л:й<-Г-. 0<mft<rtft, /2 = 1, ...,s. ««. Пусть ф(л:) бесконечно дифференцируема на прямой {—оо, оо), причем ф(л:) = 0 при л:^0 и х^.1, 0<ф(л:Х1 при 0<je<l. Пусть г= max rj, g = max B' max | ф<'> {x) \). O^J<r [0,1] Из определения чисел n^ имеем
294 МНОГОМЕРНЫЕ ЗАДАЧИ (ГЛ. V перемножив эти неравенства и воспользовавшись равенством — + ••• Ч =1| получим Г) Га 2Л/<П1 ... п,<2*+'Л^. A> Построим функцию /р. P,iP) = foiP) следующим образом. В тех параллелепипедах Пт, которые не содержат внутри ни одной из точек Pi, .... Pj, положим А А МР)=-^ЩуЛ^{п^Ч-{п1,-1)). B> Во всех остальных точках положим /в(Р) = 0. Функция /о бесконечно дифференцируема внутри каждрго параллелепипеда Пт и обращается в нуль вместе со всеми производными на границе каждого такого параллелепипеда. Следовательно, она бесконечно дифференцируема во всем пространстве —оо < JCi, ... ..., Xs<i оо- Из ее построения также следует, что она обращается в нуль со всеми производными во всех узлах Р), ..., Р.у. Оценим снизу значение I{fo). Воспользовавшись неравенством P(")^Y> после замены переменных Х/^ =— — получим цепочку соотношений I ^ g{2N) здесь p(jc„ ..., x,)Ao{g{2NY) ' Дф(ял —(nife—l))d^:i ... djc,> 0 0 fe=I Каждая точка Pj может находиться внутри только одного из параллелепипедов Пт. Следовательно, по крайней мере в rii.. .rig — N параллелепипедах Пт функция fo отлична от тождественного нуля и определяется равенством B). Согласно A), имеем Л^ ^ («i ... rts)/2, и поэтому таких параллелепипедов не менее («i ... Пв)/2. С учетом C) получаем оценку f/f ч-^  ••• "s di{r)Aa\ _d(A, г. Л)у. ...
§ 8] ОБ ОПТИМИЗАЦИИ ОЦЕНКИ ПОГРЕШНОСТИ 295 здесь d(A. г, Л)=А1£Ь11. Поскольку функция fo бесконечно дифференцируема, то для доказательства ее принадлежности рассматриваемому классу достаточно оценить ее производные в тех точках параллелепипедов, где она отлична от нуля. В этих точках имеем Поскольку 1Ф1<1. k<'^^|<g-2-'/ при //<г, то отсюда следует оценка \К-,\<шг{^)''■ Р> Согласно определению П/, имеем 2 < п/ < 2 {2Ny"l. Поэтому (-^)''<BЛ/Л/^/<BЛГ)^ <Л при о ^/j ^ Tj. Обращаясь к E), получаем оценку 1/ j, I "l при О ^ /j ^ fj. Таким образом, построенная функция принадлежит рассматриваемому классу, для нее выполняется неравенство D) с постоянной d(A,r,A), не зависящей от узлов интегрирования, она обращается в нуль во всех узлах Pf, таким образом, способ построения требуемой функции для любой совокупности узлов Pi, ..., Pn указан. Замечание. Построенная нами функция обращается в нуль в узлах Р], ..., Р^ вместе со всеми ее производными. Поэтому ту же самую оценку снизу мы получили бы для класса всевозможных квадратурных формул по значениям функции и ее производных в N точках. § 8. Об оптимизации оценки погрешиости на более широких классах способов интегрирования В § 7 производилась оценка снизу погрешности квадратур, т. е. формул интегрирования ПП^'^одр,). /=1
296 МНОГОМЕРНЫЕ ЗАДАЧИ (ГЛ. V где узлы интегрирования Pj и веса Dj не зависят от конкретной подынтегральной функции. Для многих задач практически более эффективны способы интегрирования, где последующие узлы интегрирования выбираются в зависимости от информации об уже вычисленных значениях функции, например, способы интегрирования с автоматическим выбором шага (§§ 17, 18 гл. III). Пусть имеется какой-то способ интегрирования, где информация о подынтегральной функции учитывается лишь в виде информации об ее значениях в отдельных точках. Этот способ определяется заданием первого узла интегрирования, правила, по которому отыскиваются последующие узлы, и способа вычисления приближенного значения интеграла. Таким образом, всякий такой способ укладывается в следующую схему: задается некоторый узел Р] и функции Q, = 0,(Qi, ..., Q,_,; I/, i/,_r), q = 2, ..., N, ■S/vCQi Q/v; Уи •••. Уы)- Здесь Qj — точки области G, у,, Sf, — числа. При приближенном вычислении конкретного интеграла последовательно вычисляют величины /(Р,). Р2 = Ф2(Р.; /(Р.)), /(Рг). Рз = Фз (Р„ Ръ f (Р.), / (Рг)). / (Рз). • ■.. / (Pn) и затем полагают I{f)^S„{Pu ••■, Pn; /(Pi). •••■ ЦРы))- Поскольку точка Pi задается вместе с заданием функций Ф; и Sn, зависимость этих функций от Pi можно было бы опустить. Так же, как в случае квадратурных формул, можно определить погрешность метода при вычислении данного интеграла Яы(П = П!)-5^{Р, Р^; ДР,), .... f(P^ погрешность метода на классе подынтегральных функций И оптимальную оценку погрешности на множестве всевозможны.'с методов интегрирования Z^{F)= inf R^{F). Pr i>2 '^n-Sn Теорема. Пусть класс функций F—выпуклый, центрально симметричный компакт с центром симметрии f ^0 и все функции этого класса равномерно ограничены. Тогда оптимальные оценки погрешности на множествах всевозможных квадратурных.
ОБ ОПТИМИЗАЦИИ ОЦЕНКИ ПОГРЕШНОСТИ 297 формул и всевозможных способов интегрирования совпадают: Условие выпуклости класса F означает, что вместе с любыми U,h^-P этому классу принадлежат также все функции fi6+ + /2A—б) при О < 6 < 1. Условие, что класс является центрально симметричным с центром симметрии ^ ^ О, означает, что вместе со всякой функцией f этому классу принадлежит также функция —f. В частности, все классы С, (А) являются классами, удовлетворяющими условиям теоремы. Наметим ход доказательства теоремы. Возьмем произвольное т) > 0. Согласно определению 2w(F), можно указать способ интегрирования, для которого S^(F)<Z^(F)+Ti. ^'1 &=VA,</, При Pi, Фа Фи, соответствующих этому способу, положим = Ф^(Р?, ...,Р;_,;0,...,0). Обозначим через У множество точек (W-f-1)-мерного пространства (Уо-Ур ■■■. г/у) = = ('@,/(Р?) ^{Р\)) при / S f. Согласно свойствам класса F, множество точек У — центрально симметричное с центром симметрии в начале координат, замкнутое и лежит в конечной части пространства (рис. 5.8.1). Пусть Do = sup уо. {\ ^/v)"'' Вследствие замкнутости Y точка (Do, 0 0) принадлежит У и существует соответствующая ей функция /о s F, для которой Ufo)=Oo. fo(P?)= •■■ =/оЮ = 0- Из теории выпуклых множеств известно, что через всякую точку границы множества можно провести опорную плоскость; напомним, что опорной плоскостью называется плоскость, проходящая через некоторую точку границы множества и такая, что по одну сторону от этой плоскости нет точек множества. Пусть уравнение этой опорной плоскости N S(i'o-Oo)+S«/y/ = 0- yo'-V^,y, Рис. 5.8.1.
298 МНОГОМЕРНЫЕ ЗАДАЧИ 1ГЛ V Предоставляем читателю самому убедиться, что среди всех опорных плоскостей, проходящих через точку (Do, 0 0), существует такая, для которой Со ф 0. Уравнение этой опорной плоскости можно записать в виде /=1 Плоскостью, симметричной этой плоскости относительно начала координат @ 0), будет плоскость Вследствие симметрии тела У относительно начала координат эта плоскость также будет опорной к телу У. Тело У находится между этими плоскостями, и поэтому для всех точек тела N /=1 <D„ вспоминая смысл координат j/j, перепишем это соотношение в виде /(/)-210^/(Я^) <Do /=1 при всех / S F. Мы получили квадратурную формулу с оценкой остаточного члена /?л(^)^ Do. Следовательно, выполняется неравенство fl7^(F) = inf/?^(F)<Do. Применим исходный алгоритм к вычислению интегралов /(±/о). Вследствие условия \Лр\ = й при всех / последовательно будем получать значения узлов и значения функций в них: ±/оЮ = 0. Я2 = Ф2(Р?: ±/(/1)) = = Ф2(Я?;0) = Р°, ±fo(P§) = 0..... ±fo(Pj;,_,) = 0, Pn = Ф/v (^'и .... P"w-.: ± fo {РЪ- • • •' ± fo (^'w-i)) = = Ф^(Я?....,Р^_,;0,...,0) = Р^^. ±fo(P°,)=0. В результате в обоих случаях приближенное значение интеграла будет положено равным величине S'==S{Pl....P\; ±fo(P?)..... ±fo(Pi;,)) = S(p«..... Р°^;0 о). В то же время /(±/o)=±Do. поэтому |/(W-50| + |S''-/(-Ml>l(/(fo)-S») + (S''-/(-M)|=2Do. Следовательно, для одной из функций ±/о ошибка приближенного значения
§ 81 ОБ ОПТИМИЗАЦИИ ОЦЕНКИ ПОГРЕШНОСТИ 299 ие менее D^. Это означает, что Do ^ Rn(F)\ мы имеем цепочку соотношений ^w (PX'^N {F)<D^^R^(FXZ^ (F) + Ti. вследствие произвольности т) отсюда заключаем, что W^(F)^Z^{F). Множество всевозможных способов интегрирования содержит в себе множество квадратурных формул, поэтому нижняя грань погрешности по множеству всевозможных способов не больше, чем нижняя грань по множеству квадратурных формул Z^(F)KW^(F). Таким образом, , W^(F) = Z^(F). Классы функций, рассматриваемые в различных направлениях теории численного интегрирования, всегда удовлетворяют условиям доказанной теоремы; на основании этого, казалось бы, можно сделать вывод, что рассмотрение способов интегрирования более общего вида не дает преимущества по сравнению с рассмотрением квадратурных формул и поэтому является нецелесообразным. С позиций прикладной науки такой вывод является неправильным. Приведем соображения в обоснование этого высказывания. 1. Возможно, что реально встречающиеся классы функций просто не являются выпуклыми. По-видимому, типичным классом функций, встречающихся в приложениях, является класс кусочно-аналитических функций. Обратимся к одномерному случаю. В случае выпуклости класса функций полусумма двух функций класса также принадлежит этому классу. Полусумма функций, имеющих / точек, где нарушается аналитичность, может иметь. 2/ точек с нарушением аналитичности. Таким образом, класс аналитических функций, имеющих не более заданного числа / точек нарушения аналитичности, не является выпуклым. Если число точек нарушения аналитичности не ограничено сверху, то класс функций не является замкнутым: предел последовательности кусочно-аналитических функций с неограниченно растущим числом точек нарушения аналитичности может оказаться функцией, не являющейся кусочно-аналитической. 2. Выше производилось сравнение методов интегрирования по верхней грани погрешности на классе. Однако возможна следующая ситуация. Два метода имеют одну и ту же погрешность на классе, в то же время на большинстве функций класса один из методов имеет меньшую погрешность. Ясно, что этот метод является более предпочтительным, и сравнение методов по верхней грани погрешности на классе в данном случае не дает общей картины.
300 МНОГОМЕРНЫЕ ЗАДАЧИ [ГЛ V § 9. Метод Мойте-Карло При Построении квадратурных формул мы всегда получали вместе с формулой оценку ее погрешности на некотором классе функций. Например, для формулы трапеций была получена оценка погрешности вида consi-AiN'^ на классе функций со второй производной, ограниченной постоянной Лг; здесь Л^ — число узлов интегрирования. Такого рода оценки погрешности называют гарантированными оценками погрешности на классе функций. На основании этой оценки можно гарантировать, что погрешность приближенного значения интеграла не превосходит определенной величины для всех подынтегральных функций из рассматриваемого класса. При таком подходе, как оценка погрешности метода на классе, в случае оценки погрешности конкретного интеграла мы ориентируемся на величину погрешности в случае интегрирования «худшей» функции рассматриваемого класса. Для ряда классов функций эта оценка погрешности на классе настолько плоха, что не дает никакой надежды на получение приближенного значения интеграла с требуемой точностью. Например, согласно теоремам из §§ 7, 8, не существует методов с оценкой погрешности на классе функций С^ 1(Л,...,Л), лучшей dAN'^'^ (здесь s — кратность вычисляемого интеграла). Предположим, что требуется гарантировать оценку погрешности, меньшую 0,01 dA. Тогда число узлов должно удовлетворять неравенству dAN'^'^^0,0\ dA, иначе Л/>-100^ Поскольку вычисление каждого значения подынтегральной функции требует обычно большого числа арифметических операций, уже при 5 = 6 такое требование на число узлов оказывается практически невыполнимым. Мы оказались в положении, когда нет возможности вычислить значение интеграла с гарантированной оценкой погрешности 0,01 dA. Один из способов разрешения создавшегося противоречия состоит в более детальном описании классов подынтегральных функций. В частности, при рассмотрении задачи вычисления интегралов, возникающих при решении интегральных уравнений с помощью разложения в ряд Неймана, возникли новые классы подынтегральных функций и соответствующие им теоретико-числовые методы интегрирования, остающиеся вне нашего рассмотрения. Другим выходом из создавшейся обстановки является отказ от получения строгой, гарантированной оценки погрешности и получение оценки погрешности лишь с определенной степенью достоверности. В частности, при конструировании стандартных программ интегрирования в § 17 гл. III мы пошли по пути отказа от строгой оценки погрешности: погрешность оценивалась через разность результатов вычисления
« fl] МЕТОД МОНТЕ-КАРЛО 301 приближенного значения интеграла при различных значениях параметров. Одним из методов приближенного вычисления значений интегралов, при котором погрешность оценивается ие гарантированно, а лишь с некоторой степенью достоверности, является метод Монте-Карло. Пусть требуется вычислить приближенное значение интеграла I{f)=jf{P)dP. Предположим, что каким-то образом удается получить N случайных, попарно независимых точек Рь ..., Pjv, одинаково распределенных в G с плотностью распределения р{Р), \ p(P)dP = l. Положим Случайные величины S/ (f) попарно независимы и одинаково распределены: Mst{f)=\-^p{P)dP = I{f) 0 где Dm = l[^)-{I{t)f. Положим N /=1 Вследствие указанных свойств величин S/(/) имеем N N 1 /=1 DE;,(/)) = ^2D(s/(/))=^£'(n.
302 МНОГОМЕРНЫЕ ЗАДАЧИ (ГЛ. V С вероятностью 1 — ц выполняется неравенство (неравенство Чебышева) \SAn-n!)\<Y^- A) Полагая т) = 0,01, получаем: с вероятностью 99% выполняется неравенство Еще лучшая оценка получится в предположении, что точки Pj не только попарно независимы, но и независимы в совокупности. Тогда, согласно центральной предельной теореме, случайная величина Sf, if) - / (/) VdJJW распределена асимптотически нормально с функцией распределения у "^^y^^ikl'^^-^y V2n Вероятность того, что случайная величина с такой функцией распределения не превосходит по модулю значение у > О, асимптотически равна 00 Таким образом, при Л^ больших с вероятностью, близкой 'к ро{у), выполняется неравенство \SAf)-fif)\<y}/-^JP-. Полагая у = 3 и у = 5, получаем, что неравенства |5Л/)-/(ПКЗ|/^ и |5ИП-/(/I<5-/^ выполняются, соответственно, с вероятностями 0,997 и 0,99999. Сформулированные выше утверждения называются иногда правилами «трех сигм» и «пяти сигм», соответственно. В правой части этих оценок стоит неизвестная величина Д(/) = /(у)-(/(/))^;
§ 9) • МЕТОД МОНТЕ-КАРЛО 303 попытаемся оценить ее на основании информации о вычисленных значениях f(Pj). Согласно определению D{f), имеем D(f) = M{s,if)-I{f)r. Поскольку SN{f) « /(Л. то D{f) « /(Л. где l{f) = M{s,{f)-^SAfW. Проведем более аккуратные рассуждения. Так как М {S, (П - S^ if)) = Ms, (f) - MS, (f) = /(/)-/ (Л = 0. TO l(f) = D(s,{f)-S,{f)). Имеем N Si(f)-S„(f) = Sf{f)-j^'^Si(f) = s,{f)(l-^)--l^Yi''^f^' отсюда получаем В итоге /(/) = (! —YjDif), и таким образом, D{f) = -jj^tA{s,(f)-S,(f)f. На основании закона больших чисел можно показать, что с большой вероятностью выполняется приближенное равенство N М {S, (/) -S,{ПГ ^^^{s,if) - 5д, (f)Y. /=1 Из последнего соотношения делаем вывоД| что с большой вероятностью выполняется приближенное равенство D{f)^D^^Hf), где N При ii{G) = 1, р{Р) = 1 приведем схему применения метода Монте-Карло. Пусть 1—г\ — уровень надежности, с которым желательно получить приближенное значение интеграла, Е—
304 МНОГОМЕРНЫЕ ЗАДАЧИ (ГЛ V заданная точность. Определяют у из равенства оо у Последовательно, при «= 1, ... получают случайные точки Р„ и вычисляют величины /„(П, ^n{f), dn{f), D^if), пользуясь рекуррентными соотношениями tnif) = tn^Af) + f(Pn) tnif) Snif)- dn if) = rf„-, if) + TT^ if iPn) - s„ if)r, Dnif)- n— I dnd) и величину Начальные условия рекурсии: tdf) = Siif) = fiPr), dAf) = D,{f) = 0. Задача. Проверить, что D^ (f) = О*"' {(). Если оказалось, что Кп ^ Е, то вычисления прекращаются; полагают /(/) « Sjv(/) и считают, что с вероятностью 1—ii выполняется неравенство |/(/) — Stfif)\^ Е. Заметим, что в действительности неравенство \l{f)—5;^(/)| ^£ выполняется с вероятностью, несколько меньшей 1 — ц, хотя и очень близкой к ней. Часто в руководствах по использованию метода Монте-Карло говорится следующее. Метод Монте-Карло является универсальным методом вычисления интегралов высокой кратности. Порядок оценки скорости сходимости метода Монте-Карло oil/YV) не зависит от размерности интеграла, в то время как порядок гарантированных оценок скорости сходимости существенно ухудшается с ростом размерности. Для метода Монте-Карло при каждом п имеется эффективная оценка погрешности через величину YDn{f)/n, и таким образом, вычисления прекращаются ровно в тот момент, когда достигнута требуемая точность. Отнесемся осторожно к этому заявлению и рассмотрим различные соображения «за» и «против» метода Монте-Карло,
^ 10] ПРАВОМЕРНОСТЬ НЕДЕТЕРМИНИРОВАННЫХ МЕТОДОВ 305 § 10. Обсуждение правомерности использования недетерминированных методов решения задач Часть пользователей предубеждена против метода Монте- Карло вследствие того, что малость погрешности метода обеспечивается лишь с некоторой вероятностью, и вследствие этого отрицает правомерность его использования. Выше мы уже обрисовали картину, складывающуюся при вычислении интегралов очень высокой кратности, как картину почти полной безнадежности получения приближенного значения интеграла с гарантией малой оценки погрешности. Поэтому применение метода Монте-Карло вызвано обстановкой, когда трудно надеяться на получение приближенного значения интеграла с гарантированно малой оценкой погрешности. Заметим, что даже описанные в главе III стандартные программы вычисления однократных интегралов не дают полной гарантии малости погрешности в случае произвольных гладких подынтегральных функций; кроме того, при решении всякой задачи возможны ошибки в постановке задачи, в программе: и т. д. В силу этих и ряда других причин редко можно дать стопроцентную гарантию малости погрешности результата расчета по отношению к реальной модели; некоторая вероятность ошибочности результатов вычислений имеется в любом случае. Все это подчеркивает, что полный отказ от метода Монте- Карло только из-за его вероятностной природы является неоправданным. С другой стороны, при использовании метода Монте-Карло нужно учитывать следующие отрицательные эффекты. Для применения способа Монте-Карло необходимо иметь в распоряжении последовательность независимых точек Pj с заданным законом распределения. Обычно пользователь располагает датчиками случайных или так называемых псевдослучайных чисел, которые выдают последовательности случайных чисел, равномерно распределенных на [О, 1]; при помощи преобразований таких случайных величин получают случайные числа с требуемыми законами распределения. На первых ЭВМ датчиками случайных чисел были некоторые приборы, например, использующие явление радиактивного распада, которые выдавали последовательности случайных величин, иногда даже удовлетворявшие требованию независимости в совокупности. Однако такие приборы работают с малой скоростью, и поэтому с увеличением скорости работы ЭВМ от них отказались. Вместо датчиков случайных чисел используются датчики псевдослучайных чисел — некоторые программы, выдающие последовательности чисел, которые рекомендуется рассматривать как случайные. Использование датчиков псевдослучайных чисел явилось
306 МНОГОМЕРНЫЕ ЗАДАЧИ [ГЛ. V Прогрессивным шагом, позволившим широко применять вероятностные методы. Однако при использовании этих датчиков нужно всегда иметь в виду, какими свойствами обладают последовательности чисел, выдаваемые этими датчиками. Например, некоторые датчики псевдослучайных чисел вырабатывают последовательности чисел, которые .можно рассматривать лишь как попарно независимые, а не как независимые в совокупности, В этом случае будет неправомерно пользоваться оценками погрешности, основанными на центральной предельной теореме. Пусть методом Монте-Карло вычисляется интеграл /(Л = I • • • J fix x,)dXi ... dx,. о о предположим, что в качестве узлов мы хотим выбрать последовательность независимых равномерно распределенных точек единичного куба. Если датчик псевдослучайных чисел выдает последовательность |i, ... чисел, равномерно распределенных на [О, 1], то естественно попытаться в качестве узлов интегрирования взять точки (li, ..., Is), (Is+i, .... I2O. ••• Для законности применения неравенства Чебышева нужно выполнение предположения о независимости распределения любых точек Pj, т. е. независимости распределения совокупностей (^(/-l)s+l' •••• l/s)' (l(i-l)s+l> •••> hs)- При увеличении s это условие накладывает все более жесткие требования на дач-чик псевдослучайных чисел. Известно много реальных примеров неудачного применения метода Монте-Карло в случае больших s, вызванных следующей причиной. При использовании метода и оценке погрешности делались допущения о тех или иных статистических свойствах псевдослучайных чисел, в то время как эти предположения на самом деле не выполнялись. В результате делался вывод о малости значения погрешности, который на самом деле не был справедлив. Таким образом, опасность применения .метода Монте-Карло заключается больше не в вероятностном характере оценки погрешности, а в том, что вероятностная оценка погрешности производится зачастую в предположении о свойствах датчиков случайных чисел, которые на самом деле не имеют места. К числу достоинств метода Монте-Карло относят независимость порядка оценки погрешности от размерности вычисляемого интеграла. Однако рассуждая только о порядке сходи.мо- сти метода, можно не заметить следующую немаловажную деталь. Мы получали оценку погрешности приближенного значения интеграла вида \ SAf) - I if) К const ■У'ЩШ-
§ 111 УСКОРЕНИЕ сходимости МЕТОДА МОНТЕ-КАРЛО 307 Типичным для практики является требование малости относительной погрешности приближенного значения интеграла, что в данном случае означает требование малости величины \I(t)\V^ ' Статистика реально предъявляемых к вычислению интегралов показывает, что величина V^D(/)/|/(/)| имеет тенденцию к резкому росту с ростом размерности интегралов. В качестве иллюстрации приведем интеграл 1 I /(/,)=! ... |ехр(-32(л;?+ ... + xl))dx, ... dx^, о о для которого VD{fs) ^^ 1П^/2_, Поэтому практическая трудоемкость метода Монте-Карло существенно возрастает с ростом размерности интегралов (при одинаковой относительной погрешности). При действительном вычислении многократных интегралов методом Монте-Карло перед непосредственным применением метода зачастую с целью уменьшения величины Y^ihl\Hf)\ проводится довольно кропотливое исследование свойств подынтегральной функции, преобразование интеграла с помощью замен переменных и других приемов. § 11. Ускорение сходимости метода Монте-Карло Рассмотрим некоторые приемы повышения практической эффективности метода Монте-Карло. 1. Сюда относится, в частности, представление f{P) в виде f{P) = F{P) + g{P), где F{P) интегрируется в явном виде и содержит в себе все резко меняющиеся компоненты f(P), а g{P) — плавно меняющаяся функция с небольшой дисперсией. Иногда область интегрирования разбивают на малые подобласти и в каждой части в качестве F{P) берут некоторый интерполяционный полином с узлами в этой подобласти. 2. Описанный в § 9 вариант метода Монте-Карло содержал как свободный параметр функцию р{Р) — плотность распределения узлов интегрирования. Из оценки погрешности видно, что погрешность тем меньше, чем меньше разброс значений функции f{P)lp{P). Таким образом, подходящий подбор
308 МНОГОМЕРНЫЕ ЗАДАЧИ [ГЛ V функции р{Р) также приводит к уменьшениюдисперсии. Мы рассматривали случай, когда все узлы Pj имеют одинаковую функцию распределения р{Р)\ в ряде случаев оказывается целесообразным выбирать узлы интегрирования каждый со своей функцией распределения Pi{P). Широко распространенным частным случаем этого приема является следующий. Исходный интеграл представляется в виде суммы интегралов m Iif)--ll{P)dP = ^Ii{f). Ii{f)= jf{P)dP, 1=1 1,5 N представляется в виде Л^ = Л^,+ ... +N„, и каждый интеграл /;(/) вычисляется по методу Монте-Карло с Ni узлами интегрирования. Обратимся к случаю вычисления интеграла от функции, изображенной на рис. 5.11.1. При непосредственном вычислении исходного интеграла в случае р^1 имеел? Dif) = 1/4. Если G, = [О, 1/2], Сг = = [1/2, 1], то при любых Ми Л^2 ¥= О оба интеграла Ii{f), а следовательно, и исходный интеграл будут вычислены точно. Конечно, это очень редкий случай, когда исходную область интегрирования удалось разбить на части, где подынтегральная функция постоянна; однако если все-таки удается разбить ее на части, где функция меняется мало, то можно получить существенное увеличение точности при том же объеме вычислений. Рассмотрим случай, когда при вычислении каждого из интегралов /;(/) узлы интегрирования Р/, /= 1, ..., Ni, имеют равномерную плотность распределения p, = nf' в области G-, приче.м любые два узла (как принадлежащие одной области, так и принадлежащие различным областям) распределены независимо; здесь [X; — мера области G;. Произведем сравнение описанного метода с исходной схемой метода Монте-Карло, если в последней узлы интегрирования распределены равномерно и попарно независимы. Тогда для исходной схемы метода ^^ O.i Рис. 5 11.1.
§ 11] УСКОРЕНИЕ СХОДИМОСТИ М'ЕТОДА МОНТЕ-КАРЛО 309 Монте-Карло p(P) = ji-'. DS^if) = D{f)M-\ где (i — мера области G, D(f) = n/(P)-(/(/)J. За приближенные значения интегралов Ii(f) принимаются величины Соответственно, имеем MS'(/) = //(П. DS\f) = Di(f)Nr\ где Dt(f) = lxih{P)-{It{f)f. Положим m /=i при попарной независимости распределений любых двух узлов Рп И Pq величины S (f) также попарно независимы, и поэтому MSAf)=IiMs4f) = i{f), 1=1 -1 l=\ /=1 Рассмотрим задачу минимизации дисперсии D E^{!)) за счет выбора значений Л^ь • • •, Л^т при фиксированном общем числе узлов N = N\ + ... + Mm- Введем в рассмотрение функцию Ла- гранжа приравнивая нулю ее производные по Л^г, получим систему уравнений — Dj(/)A^r — Л,^0; решая эту систему уравнений совместно с уравнением Л/' ^ yVi + • ■ • + ^т, определяем требуемые значения Л^;. Здесь и далее, как обычно, мы пренебрегаем тем обстоятельством, что значения Ni должны быть целыми.
310 МНОГОМЕРНЫЕ ЗАДАЧИ [ГЛ V Покажем, что при Л^^ = Л^ц/ц"' имеет место неравенство D{SAf))<D{SAf)h Лемма. Пусть | — случайная величина. Тогда при лю- ^ом а M(g-aJ>M{|-M|J=D|. Доказательство предоставляется читателю. При Ni = Л^|Л;(х-' можно написать цепочку соотношений -05j, (/) =-^^ = 11 ^ (jif (Р) - / (/)J dP = о т -здесь через M;g(P) обозначается математическое ожидание g{P) при условии, что точка Р распределена равномерно в Gi. Обращаясь к A), на основании леммы получаем неравенство т 05л, (« > S Ж ^^['^^^ ^^^ " ^^ ^^^'^ ^^^^Г ' но М/ (fi/^ (Р)) = /, (f), М, (ji,/ (Р) - /, if)? = Di if), и поэтому правая часть последнего неравенства совпадает -с D(S^{f)). Таким образом, требуемое соотношение D(S;v (/)) ^ ^D(S^{f)) доказано. Разбиение области интегрирования на части с целью уменьшения дисперсии метода Монте-Карло широко используется, в частности, при обработке естественнонаучной информации. Пусть ^требуется определить водосодержа- лие снега в бассейне некоторой реки. При непосредственном применении метода Монте-Карло выбиралось бы независимо, с равномерной плотностью распределения несколько точек, где производилось бы измерение количества водосодержания на единицу поверхности. Участки поверхности с однородными природными условиями (высота над уровнем моря, уровень облачности, залесенность, ориентация склонов гор, осадки, господствующее на- лравление ветра) характеризуются примерно одинаковым водосодержанием. Поэтому удается добиться существенного повышения точности, разбивая бас- .«ейн на части с од!10родными природными условиями.
§ 12] КВАДРАТУРНЫЕ ФОРМУЛЫ СО СЛУЧАЙНЫМИ УЗЛАМИ 311^ § 12. Квадратурные формулы повышенной точности со случайными узлами В случае гладкой подынтегральной функции разбиение области интегрирования на части приводит к увеличению порядка скорости сходимости. Пусть вычисляется интеграл 1 1 /(/)={ • • • J / Ui x,)dxi ... dxs. о о Положим М = п" и разобьем исходную область интегрирования на равные кубы Пт"- П ^ ^ ^ П В каждом кубе выберем случайную точку Рт- Считаем, что ее плотность распределения — постоянная, равная л«, и случайные точки в любых двух кубах выбираются независимо. Положим SAt) = ^ S f(^m). 1 m,=l '"Г В данном случае условие Л^( = Л^(Х;(х"' выполнено. Поэтому, согласно доказанному выше соотношению, имеем причем М5л, (Л = /(/). Уточним оценку дисперсии в предположении, что функция f(P) удовлетворяет условию Липшица с постоянной А по каждой из переменных. Справедливо равенство п п Проведем грубую оценку величин Df(P;„); имеем равенство Mf{Pm) = 0,n= \ n'fiP)dP; I'm на основании теоремы о среднем am = f {Рт), Ще Рт S Пт, И поэтому Mf{Pm) = f{Pm).
312 МНОГОМЕРНЫЕ ЗАДАЧИ (ГЛ. V В то же время M-^i + Aj Xs + A,) — f{xi, ..., д:^ = ={/(^i + Ai X,+ Л,) —/{д:,+ Л, д;,_, + Д,^„ х,)) + + if (х, + ^1 Jf.-i + As-i. X,) — — f (Х, + Al, • ■ •, ^s-2 + Д«-2. Xs-i, Xs)) + . . . •■• +{f{^;i + Ai. X2 Xs)—f(xi, ..., Xj)). Отсюда следует, что для функций рассматриваемого класса |/(x, + Ai, •••. х, + Д,)-/(х х,)|<Л(|Д,[+...+|А.1). Если точка Рт принадлежит Пт, то каждая из ее координат отличается от соответствующей координаты точки Рт не более чем на «-'. Поэтому из последнего неравенства следует оценка _ \f(Pm)-fiPn^)\<Asn-^ при Рт^Ит И, следовательно, \f(Pm)-o„\^Asn-K B) Всякая случайная величина | удовлетворяет неравенству |M|[<sup[|[. Следовательно, D(f(P„)) = M(f(Pm)-a„J< sup (f{P„)-a„r^(^Y. с помощью этой оценки заключаем, что правая часть A) не превосходит величины Asy _ (Asy -"-'■Ctr Обозначив общее число узлов п' через Л^, получаем оценку DSAfX-^' C) Отсюда на основании неравенства Чебышева (9.1) заключаем: с вероятностью 1—г\ выполняется неравенство Полученная оценка погрешности по порядку лучше, чем оценка погрешности метода Монте-Карло. Мы получили оценку погрешности по вероятности; оказывается, для рассмат-
§ 121 КВАДРАТУРНЫЕ ФОРМУЛЫ СО СЛУЧАЙНЫМИ УЗЛАМИ 313 риваемого метода можно получить и гарантированную оценку погрешности. Умножая B) на /г~^ получае.м неравенство 4^f(P^)- \fiP)dP ^ As „.+ 1 Величина 5n(/) — /(/) может быть представлена в виде cyMMbL таких слагаемых S (-^fiPm)- { f{P)dP\. Суммируя оценки для этих слагаемых, получим \S,{f)-I{f)\<^ = ^- Сопоставляя с теоремой из § 7, заключаем, что рассматриваемый метод имеет гарантированную оценку погрешности, оптимальную по порядку на рассматриваемом классе. Возникает вопрос, можно ли улучшить на этом классе оценку дисперсии C). Метод Монте-Карло и другие способы интегрирования, подобные рассматриваемому, где приближенное значение интеграла зависит от некоторых случайных параметров, называют недетерминированными. Пусть Sn{P) — приближенное значение интеграла /(/), получаемое при применении некоторого недетерминированного способа вычисления интеграла. Теорема (без доказательства). Существуют d\{r,A), di > О, удовлетворяющие следующему соотношению. Для любого способа вычисления интеграла, где информация о подынтегральной функции используется лишь как информация об ее значениях в N точках, найдется функция f^Cr{A), для которой \sAf)-nm>^'^ D) с вероятностью d^; здесь, как и ранее, — ^ 1-... Н , 5jv (/) — приближенное значение интеграла. Очевидно, что следствием неравенства D) является неравенство которое, в частности, означает, что оценка C) не может быть улучшена по порядку. Теорема (без доказательства). Можно указать способы интегрирования, для которых имеет место гарантированная
3D МНОГОМЕРНЫЕ ЗАДАЧИ 1ГЛ. V оценка погрешности м. одновременно \SAf)-nO\<^^^j^ MS ds (г. А) л^ (Л = /(/). l^D5;v(/)<^^ для всех f ^ С {А). Мы построили выше такой способ при Г] = ... = г^ = 1. Идея построения таких способов состоит в разбиении исходной области интегрирования на малые части и вычислении интеграла по малой части при помощи некоторой «случайной квадратурной формулы». Обратимся к классу функций C^г г^(А А). Так же, как и выше, в каждом кубе П^ возьмем по случайной точке Р„. Обозначим через Р'„ точку, симметричную Я„ относительно центра куба; положим Точки P„, P„ Распределены равномерно в рассматриваемом кубе; поэтому M(^f(P™)) = M(-;^f(P;))= \f{P)dP. Отсюда следует, что М«„Ш= I f(P)dP; суммируя эти соотношения, получаем равенство MS^ if) = 1 if). Как и выше, имеем m^ "'^=1 f«, ''>i=l Обозначим через Р„ центр куба П^,; вычитая постоянную под знаком дис- лерсии, получаем равенство р {fiPm) + fiP'm)) _р if(P„)-2fiP„) + f{Pl))^ ^^^ При фиксированной точке Р„ = (дс, x^'j введем в рассмотрение функцию a(t) = f (JSlZlAIl + ^1 - (mi - 1/2) ^ nts - 1/2 Xs-{ms-\m Л
$ 121 КВАДРАТУРНЫЕ ФОРМУЛЫ СО СЛУЧАЙНЫМИ УЗЛАМИ 31S Очевидно, e{^) = f{P;n). e@) = f(P„i g{-i) = f{Pl). Выразим вторую разность через вторую производную: f{P^)-2f(P^) + f{P'„) = g{i)-2g{Q) + g{~\)=g''{Q), |в|<1. Непосредственным дифференцированием убеждаемся, что / m,-l/2\/ т.-т\ J, /=i Так как (*j, ..., x^) ^ Пд,,\то Поэтому m, - 1/2 I 1 n 1^ 2« \8"{t)\<^ при М1<1. \f{Pn.)-^f(Pm) + f{Pm)\^As 2 "^ 8« <^ГТ- G> Ha основании этого неравенства имеем ^^n,m<MWl- Подставив эту оценку в правую часть E), получим Отсюда опять с помощью неравенства Чебышева (9.1) имеем с вероятностью I ~г\. Для рассматриваемого способа интегрирования можно получить также гарантированную оценку погрешности 0{AN~^^^). В самом деле, соотношение G) означает, что значение величины s^(f) при всех P„, принадлежит отрезку Следовательно, этому жо отрезку принадлежит и ее математическое ожидаг ине, равное j f{P)dP. п„
316 МНОГОМЕРНЫЕ ЗАДАЧИ Отсюда заключаем, что при всех Р^ величина Ггл V «т(/)- j fiP)dP As' не превосходит длины этого отрезка, равной —^-—. Таким образом, (П -J f{P)dP < Лs^ 4п'+' Суммируя эти неравенства по т, получим оценку погрешности Из сравнения с формулировками теорем об оценках снизу гарантированных и недетерминированных оценок погрешности видно, что в случае класса СB, . .Ti{A, ...,А) построенный способ имеет оптимальные по порядку оценки скорости сходимости и гарантированные, по вероятности. § 13. О выборе метода решения задачи Обсудим схему решения одной задачи, где оказалось выгодным использование методов Монте-Карло такого рода. Требовалось вычислить серию интегралов / (а,, а2, пз) = J / {Р; cti, а2, Пз) dP при различных значениях параметров «i, «г, «з. Область интегрирования G содержалась в единичном трехмерном кубе; при этом условие принадлежности точки к области G задавалось громоздкой системой неравенств. Было ясно, что нельзя произвести замену независимых переменных так, чтобы область интегрирования G приобрела стандартный вид, где было бы возможным применение квадратурных формул высокого порядка точности. Поэтому пришлось вне G продолжить f нулем и рассматривать исходную задачу как задачу вычисления интеграла 1 I 1 / (а,, Пг, Пз) = I J ^ (^; «!■ °2' °з) ^^i <^Хг dx^. 0 0 0 где r,D , \ f (Р\ ai, а2, а^) при Р s G. \ (Р\ а,, а2, аз) = -^ . 10 П1 при Р фО. Подынтегральная функция оказалась теперь разрывной. Для вычисления интеграла были применены формулы прямоугольников и Гаусса. С целью контроля точности проводились расчеты с различным числом узлов интегрирования; оказалось, что результаты расчетов медленно устанавливаются (сильно меняются при изменении числа узлов), что указывает на малую точность получаемых приближенных значений. При непосредственном применении ме»
§ 131 о ВЫБОРЕ МЕТОДА РЕШЕНИЯ ЗАДАЧИ 317 тода Монте-Карло установление получаемых приближенных значений было еще хуже. Поэтому было принято решение применить для вычисления описанные выше способы уменьшения дисперсии путем разбиения области на части. Были опробованы оба описанных выше способа. Область интегрирования О ^ ti, ДГ2, Хз ^ 1 разбивалась на равные кубы со стороной 1//г и далее применялись оба метода, рассмотренные в предшествующем параграфе. Как и в случае других квадратур, исследовалось установление результатов вычислений. Оказалось, что оба метода могут обеспечить требуемую точность вычислений при приемлемых затратах машинного времени. Во многих случаях вычисление интегралов высокой кратности или большой серии интегралов удается осуществить лишь за счет устранения повторения одинаковых вычислений. Решение рассматриваемой задачи представлялось сначала бесперспективным вследствие большой трудоемкости проверки условия принадлежности узла Р обласги G; на5<ождеиие каокдого значения f(P,а\,а2,аз) требовало существенно меньшего объема вычислений. Так как все интегралы вычислялись по одной и той же области, то было принято решение применить следующий алгоритм. Куб О ^ Jti, Х2, Хз ^ 1 разбивался на кубики со стороной \/п; в каждом кубике выбиралась случайная точка Р„ и проверялось условие принадлежности P^<=G, координаты всех точек Рfa'^ G были записаны в памятп ЭВМ. Далее все интегралы серии заменяли суммами 5] -^М^т-. «1. «2. «з) с одними и теми же узлами. Отказ от проверки условия P^<sG при вычислении каждого интеграла привел к снижению требований на затраты машинного времени примерно в 100 раз. Другим фактором, позвалившим резко снизить затраты машинного времени, оказался следующий. Подынтегральная функция имела вид g(xi, a,)A(JCr. ■«2. Xi, «1. «2. «з), где вычисление каждого значения функции h требовало относительно малого числа элементарных операций ЭВМ по сравнению с вычислением каждого значения функции g. Поэтому была применена следующая схема вычислений. Все интегралы 7(ai,a2, «з), соответствующие одному и тому же значению параметра ai, вычислялись одновременно; благодаря этому каждое значение g(X\,a\) вычислялось при вычислении всей серии интегралов только один раз. Такая организация работы позволила довесги затраты машинного времени при решении рассматриваемой задачи до приемлемых размеров. Анализ хода решения задачи, проведенный после окончания вычисления серии, показал на ряд неиспользованных возможностей, которые предоставили бы дополнительные удобства как исполнителю, так и заказчику. С целью уменьшения затрат машинного времени заказчик старался уменьшить число М совокупностей значений параметров (а;, Oj, щ\, при которых требовалось вычислить значение интеграла. Наиболее трудоемкую часть при вычислениях составляло вычисление значений функции g{x\,a\). Поэтому общие затраты машинного времени были пропорциональны не числу М, а числу различных значений а,. Таким образом общие затраты времени могли бы быть снижены также за счет удачного выбора совокупности (а j, а2, а.\ В рассматриваемой задаче имелся еще один неиспользованный резерв повышения точности. Трудоемкость рассматриваемого метода пропорциональна произведению числа различных значений а на число различных значений координат Х\ узлов интегрирования. Узлы интегрирования выбирались
318 МНОГОМЕРНЫЕ ЗАДАЧИ [ГЛ. V случайно, и поэтому число различных значений Xi было очень большим. Для уменьшения этого числа можно было бы пойти, например, по следующему пути. Аппроксимировать исходный интеграл по формуле прямоугольников m где I / fa,, 02, Оз; -^—^—j =11^ ("i- «2, ct3, -^—^—, Х2, Xjj dx, dx^, о о и метод Монте-Карло с разбиением области интегрирования применять только для вычисления интегралов /(а,, «2, аз; JCi). Другой подход к решению задачи: разбить отрезок [0,1] на отрезки \— , — , на каждом отрезке выбрать случайную точку g, и положить m 7(а,, 02, «з) « — ^ ^ («1. «2, пз; Iq). Оба указанных выше метода имеют худшую скорость сходимости по сравнению с примененным методом, однако у этих методов вычисляется существенно меньше различных значений функций g(X\.a,\). Из последних рассуждений видно, что при вычислении больших серий интегралов (как, впрочем, и в случае больших серий других задач) часто больший эффект достигается не за счет повышения качества метода при решении каждой из задач серии, а за счет лучшей организации вычислений. При применении процедуры, описанной в § 5, вычисление интеграла высокой кратности как бы сводится к вычислению большого числа интегралов меньшей кратности. Поэтому при вычислении интегралов высокой кратности иногда можно использовать указанные выше резервы повышения эффективности в случае вычисления серий интегралов. Обратим внимание на следующую опасность, возникающую при одновременном получении результата сразу по всей серии задач. Предъявляемая к решению совокупность задач соответствует какому-то реальному явлению. Может случиться, что ранее явление не «обсчитывалось» на ЭВМ и предъявленная математическая модель не является удовлетворительной. Тогда в случае одновременного решения задач (!ерии все результаты вычислений окажутся бесполезными. При последовательном решении задач можно уже после получения первых результатов обнаружить рассогласование математической модели с общей картиной явления. Такое рассогласование типично при решении новых задач и обычно оно устраняется не сразу, а после большого числа
^ 131 о ВЫБОРЕ МЕТОДА РЕШЕНИЯ ЗАДАЧИ 319 пробных просчетов и совместного обсуждения модели заказчиком и исполнителем. Исполнитель имеет основания быть заинтересованным в обсуждении постановки задачи. Если исходная постановка задачи окажется неразумной, исполнителю придется потратить много времени на выбор нового алгоритма и написание новой программы. Участвуя в обсуждении, исполнитель может уяснить себе возможные варианты изменения постановок задач и предусмотреть их при составлении программы решения задачи. В связи с этим при решении задач новых типов особенно важно, чтобы программа подразделялась на отдельные функциональные блоки, поддающиеся независимому изменению. Часто столкновение исходных позиций заказчика (обсчет подробной модели) и исполнителя (минимальный объем работ) приводит к построению упрощенной модели явления, быстрый обсчет которой позволяет решить вопрос о целесообразности рассмотрения более сложной модели. Рассмотрим другой пример, относящийся к организации работы по выбору метода интегрирования в случае кратных ин- тегралвв. Обычно вычисление интегралов по сложной области сводят к вычислению интегралов по области, являющейся прямым произведением областей простейшего вида: отрезков, параллелепипедов, лучей, бесконечных прямых, кругов, сфер, шаров и т. д. Для таких стандартных областей имеется достаточно совершенных методов интегрирования, и после такого сведения можно применить процедуру, описанную в § 5, или какую-либо аналогичную ей. Пусть вычисляется интеграл ^ ^^^ ^ И I fixuX2,X3)dXi dx2 dx3. 9 9 9 Его удобно записать в виде 2 Hf)=l j g{l, <i^)d(f>dl. 1 S, где 5]-^единичная сфера, da — элемент ее площади, g{l, <Л)= Pfiltiii, 1<Л2, /сОз), (О = (<й„ ©2, ©з), ©2 4- <Й^ 4- ©^ = I. Предположим, что решено вычислять интеграл при помощи квадратур, являющихся «прямым произведением» квадратур по отрезку [1, 2] и по сфере Si.
320 МНОГОМЕРНЫЕ ЗАДАЧИ (ГЛ. V Под прямым произведением квадратуры 2 п jhiDdi^'^dihUt) A) 1 7=1 И квадратуры т J р (со) d(o «. ^ k^p ((О,) B) S, «=1 здесь понимается квадратура 2 п т I S, (=1 «=1 Исследуем зависимость погрешности интегрирования от способа интегрирования и от числа узлов. Для исследования поведения погрешности численного интегрирования по оси / выберем какую-то «базовую» квадратуру по единичной сфере та Jp((o)dcD-\]fe°p(coO); C) S, «=1 требуется, чтобы число узлов то было мало и в то же время выражения та G{1)= I g(I, @) d(o И GO (I) = 2 frOg(/, @°) S, <F=I имели одинаковый качественный характер поведения по /. Например, можно попытаться взять в качестве C) квадратуру 2я Р ((D) ^@ ^ -^ ^ Р (<й,, @2. Щ)у где суммирование производится по 6 точкам пересечения единичной сферы с координатными осями Х\, Х2, Хз- Предположим, что для вычисления интеграла по оси / принято решение применить или формулу Гаусса, или формулу Симпсона. Последовательно применяя формулы Гаусса jhiDdi^y^dX^ /=1
$ 13) о ВЫБОРЕ МЕТОДА РЕШЕНИЯ ЗАДАЧИ 321 При п = til, «2. ... узлах, получаем некоторые величины GX='^^d';iG\ri). Точно так же при числе узлов п = п\, П2, ... получаем приближения по формуле Симпсона S -. Из рассмотрения поведения всех этих величин можно усмотреть значение предела Р, к которому они стремятся. Далее при каждом п среди всех приближений gI и S > ^ "ь ti't^n вы- ' "г берем приближение Г„, обеспечивающее лучшую точность, и введем функцию Ф/(«)==1Г„-/«| погрешности численного интегрирования по оси /. Точно так же фиксируется некоторая базовая квадратура по переменной / (часто это квадратура Гаусса с двумя узлами) и строится функция ф(о('га) погрешности численного интегрирова- «ия по сфере со. Предположим, что суммарная погрешность есть /? = ф;(п) + ф(о(т). Если значения функции / вычисляются независимо, то трудоемкость метода пропорциональна пт. Минимизируя пт при заданном требовании на точность ф;(п)-|- + Фй)()=^е, получаем искомые значения числа узлов По и m,i. В зависимости от того, какой квадратуре — Гаусса или Симпсона отвечает данное п, выбираем соответствующую квадратуру. В случае сомнений в правомерности использования этой методики остается возможность проверить правильность результата, проведя дополнительное интегрирование с несколько отличными от «о и то значениями пит. Приведем типичный пример подобной организации выбора способа интегрирования по каждой из осей в случае большой серии интегралов по единичному s-мерному кубу. По каждой из осей применяется формула Гаусса, при выборе числа ее узлов по каждой из осей в качестве базовых квадратур по остальным осям берутся квадратуры Гаусса с двумя узлами. Дробление числа узлов по каждой рассматриваемой оси продолжается до тех пор, пока разность между двумя последующими приближениями не станет менее e-s-'. После определения таким образом нужного числа узлов п<«', соответствующего каждой оси, производится вычисление интеграла с nW узлами по каждой из осей. Вследствие некоторой ненадежности описанного алгоритма обычно производится проверка правомерности его применения в случае данной серии интегралов: выбирается достаточно представительная подсерия интегралов, и для нее результаты 11 Н. . Бахвалов
322 МНОГОМЕРНЫЕ ЗАДАЧИ [ГЛ. V расчетов по данному алгоритму сравнивают с результатами расчетов при несколько измененных значениях числа узлов по осям. В одной из стандартных программ многомерного метода Гаусса число узлов п''^ по каждой оси выбирается по описанному выше способу, а затем производится просчет, соответствующий этим п^'\ и контрольный просчет с несколько измененными значениями «<''. Дополнительная литература к главе V I [8], II [20, 21]; §§ 1-4: II [23, 24, 45], П1 [24, 25, 33, 34, 35,44, 45]; § 4: III [4]; § 7: III [10]; § 8: III [13]; §§ 9-12: II [5, 13,26]. Ill [10, 61]; § 13: II [14].
Часть II ЗАДАЧИ АЛГЕБРЫ И ОПТИМИЗАЦИИ Глава VI ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ К численным методам алгебры традиционно относят численные методы решения систем линейных уравнений, обращения матриц, вычисления определителей, нахождения собственных векторов и собственных значений матриц и корней многочлена. При формальном подходе решение этих задач не встречает затруднений: решение системы можно найти, раскрыв определители в формуле Крамера; для нахождения собственных значений матрицы достаточно выписать характеристическое уравнение и найти его корни. Однако эти рекомендации встречают возражения со многих сторон. Так, при непосредственном раскрытии определителей решение системы с т неизвестными требует порядка т\т арифметических операций; уже при m = 30 такое число операций недоступно для современных ЭВМ. При сколько-нибудь больших т применение методов с таким порядком числа операций, как показывает следующий подсчет, будет невозможно и в обозримом будущем. Рассмотрим гипотетическую ЭВМ с параллельным выполнением операций, занимающую объем V и состоящую из элементов, каждый из которых представляет собой куб со стороной Д. Естественна предположить, что время, затрачиваемое элементом для выполнения какой-либо элементарной операции, ие менее Д/с. где с = 3-10* м/сек — скорость распростраиеиия света, максимальная из известных скоростей передачи информации. Тогда общее число элементарных операций, которое данная ЭВМ может осуществлять за 1 сек, оценивается сверху через Vc/Д*. При V' = 1 км' и Д = 10-8 еж (порядка радиуса атома) эта величина равна З-Ю^'. В то же время 1001 = 10'".= --. Таким образом, вычисление^определителя порядка 100 по явной формуле будет невозможно и в дальнейшем. Другой причиной, по которой эти классические способы неприменимы даже при малых т, является сильное влияние округлений при вычислениях на окончательный результат. Уже
324 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ ГГЛ. VI при гп = 20 при вычислениях на современных ЭВМ типична аварийная остановка по причине переполнения порядка чисел; даже если такая остановка не происходит, результат вычислений часто далек от истинного значения из-за влияния вычислительной погрешности. Точно так же обстоит дело при нахождении собственных значений матриц с использованием явного выражения характеристического многочлена. Методы решения алгебраических задач разделяются на точные, итерационные и вероятностные. Классы задач, для решения которых обычно применяются методы этих групп, можно условно назвать, соответственно, классами задач с малым, средним н большим числом неизвестных. Изменение объема и структуры памяти ЭВМ, увеличение быстродействия ЭВМ и развитие численных методов приводит к смещению границ применения методов в сторону систем более высоких порядков. В настоящее время точные методы обычно применяются для решения систем до порядка 10\ итерационные— до порядка 10^. § 1. Методы последовательного исключения неизвестных Рассмотрим задачу решения системы Ах = Ь; здесь А = = ['^ii\ — матрица размерности тУ^т, detЛ =7^ О Метод решения задачи относят к классу точных, если в предположении отсутствия округлений он дает точное решение задачи после конечного числа арифметических и логических операций. Если число ненулевых элементов матрицы системы имеет порядок т^, то для используемых в настоящее время точных методов решения таких систем требуемое число операций имеет порядок т^. Поэтому для применимости точных методов необходимо, чтобы такой порядок числа операций был приемлем для данной ЭВМ; другие ограничения накладываются объемом и структурой памяти ЭВМ. Оговорка об «используемых в настоящее время методах» имеет следующий смысл. Существуют методы решения таких систем с меньшим порядком числа операций; однако они не используются из-за сильной чувствительности результата к вычислительной погрешности. Наиболее известным из точных методов решения систем линейных уравнений является метод исключения Гаусса. Рассмотрим одну из его возможных реализаций. В предположении, что
§ 1] МЕТОДЫ ПОСЛЕДОВАТЕЛЬНОГО ИСКЛЮЧЕНИЯ НЕИЗВЕСТНЫХ 325 Ли ф о, первое уравнение системы S «i/>J/ = a<.m+i. f=l, ..., /п, A) делим на коэффициент а\\, в результате чего получаем уравнение m Затем из каждого из остальных уравнений вычитается первое уравнение, умнол^енное на соответствующий коэффициент а^^. В результате эти уравнения преобразуются к виду /=2 <^/ = «1.т+.. t = 2, .... /п. "Первое неизвестное оказалось исключенным из всех уравнений, кроме первого. Далее в предположении, что а\^ Ф О, делим второе уравнение на коэффициент «22 ^ исключаем неизвестное х% из всех уравнений, начиная со второго, и т. д. В результате последовательного исключения -неизвестных система уравнений преобразуется к треугольному виду х, +Д^а[,Х/ = а^ ,„^,. i=l, .... т. B) Исключение Xj происходит в результате следующих операций: 1) деления t-ro уравнения на ojf', 2) вычитания i-ro уравнения, умноженного на а'^^'.из уравнений с номерами k=i-\-\, .., ,.., т. Первая операция равносильна умножению системы уравнений слева на диагональную матрицу 1 Ci («'.гТ 1J
326 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ Vf вторая операция равносильна умножению слева на матрицу 1 С, = 1 а,+1 1 1 J-1 где Oft = — ai~k при i < k^m. Таким образом, система B), получаемая в результате этих преобразований, запишется в виде где САх = СЬ. Произведение левых (правых) треугольных матриц является левой (правой) треугольной матрицей; поэтому матрица С — левая треугольная. Из формулы для элементов обратной матрицы следует, что матрица, обратная к левой (правой) треугольной, является левой (правой) треугольной. Следовательно, матрица В = С-' — левая треугольная. Введем обозначение СА = D; согласно построению, все di, = 1 и матрица D — правая треугольная. Имеем :С"'£): BD. Равенство А = BD вместе с условиями Aц= I, i=l, ..., т, образует систему уравнений относительно элементов треуголь- т ных матриц в и D: ^ bijdjfi^ aik. Поскольку bi/^O при/</ и djit = Q при k < j, то эта система может быть записана в виде mln(f, к) 2 bijdjk = aiit C)
§ 11 МЕТОДЫ ПОСЛЕДОВАТЕЛЬНОГО ИСКЛЮЧЕНИЯ НЕИЗВЕСТНЫХ 327 ИЛИ, что ТО же самое, k '^bi,djk = aik при /г</, ^biid,k = aik при i<k; воспользовавшись условием, что все dii = 1, получаем систему рекуррентных соотношений для определения элементов b,j и d,j: N ft-l Hk CLik— Hibijdik при fe<i, dik = ^=J при i < k. D) Вичисления проводятся последовательно для совокупностей <i, A:) = (I, 1), .... A, m), B, 1) B, m), ... ..., (m, 1), ..., (m, m). Здесь и далее в случае, когда верхний предел суммирования меньше нижнего, считается, что вся сумма равна нулю. Таким образом, вместо последовательных преобразований системы A) к виду B) можно непосредственно произвести вычисление матриц 5 и D с помощью формул D). Эти вычисления можно осуществить, если только все элементы Ь,,- скажутся отличными от нуля. Пусть /4ft, Bft, D^ — матрицы главных миноров ^-го порядка матриц А, В, D. Согласно C), Ak = BfiDi^; поскольку detDft=l, detBk=bn ... Ь^к, то detA)i=bii ... bhi. Следовательно, '^^ = ^^^ det^o=l. Итак, для осуществимости вычислений по формулам D) необходимо и достаточно выполнение условий detAk^O, k=l m—1. E) Осуществление этих вычислений потребует {2т^ — Зт^ 4- fti)/6 умножений, столько же сложений и т(т— 1O2 делений. Введем обозначение Cb = d={dl,m+^ dm,m+i)^- Поскольку С"'= = 5 и СА = D, то справедливы равенства Bd = Ь, Dx = d. Таким образом, после разложения матрицы исходной системы на произведение левой и правой треугольных матриц А = BD решение исходной системы сводится к последовательному
328 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ. УГ решению двух систем Bd^b, Dx ^ d с треугольными матрицами; это потребует 2т^ — т арифметических операций. Последовательность операций по разложению матрицы А на произведение треугольных и по определению вектора d часто удобно объединить. Уравнения системы Bd = b можно записать в виде C) min A, m+1) ^ f>lld/,m+l = (li,m+\- Следовательно, значения u^-^^n+i мргут вычисляться одновременно с остальными значениями djj по формулам D). Совокупность операций, приводящую исходную систему к виду Dx = d, называют обычно прямым ходом метода Гаусса, а совокупность операций по решению системы Dx := d — обратным ходом метода Гаусса. При вычислениях без помощи ЭВМ велика вероятность случайных ошибок. Для устранения таких ошибок вводят контрольный столбец системы: Лт+2 = (Й1, ffl+2 йт, m+z)^, СОСТОЯЩИЙ ИЗ КОНТрОЛЬНЫХ ЭЛСМСНТОВ урЗВ- нений системы m+1 "l, т+2~ ^ "ir При преобразовании уравнений системы над контрольными элементами производятся те же операции, что и над свободными членами уравнений. В результате этого контрольный элемент каждого нового уравнения должен равняться сумме коэффициентов этого уравнения; большое расхождение между ними указывает на ошибки в вычислениях или на неустойчивость алгоритма вычислений по отношению к вычислительной погрешности. К примеру, в случае приведения системы уравнений Ах = b к виду Dx = d с помощью формул D) контрольный элемент dj, m+z каждого из уравнений системы Dx = d вычисляется по тем же формулам D). После вычисления всех элементов d,j при фиксированном ( контроль осуществляется, проверкой равенства m+1 Обратный ход метода Гаусса также сопровождается вычислением контрольных элементов строк системы. В ряде случаев заранее известно, что условие E) выполнено; например, многие задачи математической физики сводятся к решению систем с положительно определенной матрицей А. Однако в общем случае этого заранее сказать нельзя; возможна и такая ситуация: все й^ХА^^Ф^, но среди величин 6/,^
§ I] МЕТОДЫ ПОСЛЕДОВАТЕЛЬНОГО ИСКЛЮЧЕНИЯ НЕИЗВЕСТНЫХ 329 есть очень малые; при делении на них будут получаться большие числа с большими абсолютными погрешностями. В результате этого решение сильно исказится. Чтобы избежать катастрофического влияния вычислительной погрешности, применяют метод Гаусса с выбором главного элемента. Его отличие от описанной выше схемы метода Гаусса состоит в следующем. Пусть по ходу исключения неизвестных получена система уравнений m Xi+ '^ а\.х. = а\ ^, i=\, .... k, /=1+1 '' ' '• "^^^ lit S <•«, = «? m+i> i = ^ + l. •••. m. /=ft+l ■' ' '• '"+^ Найдем / такое, что \al^i tl'^^^^l^l+i /I» ^ переобозначим Xk+i = xt и Xi = Xk+i; далее произведем исключение неизвестной Xk+i из вс€« уравнений, начиная с А:-f-2-го. Такое переобозначение приводит к изменению порядка исключения неизвестных и во многих случаях существенно уменьшает чувствительность решения к округлениям при вычислениях. Большинство распространенных точных методов решения систем линейных уравнений можно рассматривать как варианты метода Гаусса, отличающиеся между собой лишь некоторыми деталями. Количество арифметических операций для всех таких методов оказывается примерно одним и тем же, однако некоторые варианты метода Гаусса требуют несколько меньшего объема используемой памяти ЭВМ; так при используемой памяти в Ы ячеек методами оптимального исключения и окаймления можно решать системы порядка ^^2 Y^- Метод отражений, несколько отличный от метода Гаусса, удобен однородной схемой вычислений. Часто требуется решить несколько систем уравнений Ах = = bq, q = I, ..., р, с одной и той же матрицей А. Удобно поступить следующим образом: введя обозначения произведем вычисления по формулам D), причем элементы dit, вычислим при i < k ^ т -\- р. В результате будут получены р систем уравнений с треугольной матрицей, соответствующих исходной задаче Dx = dq, dq = (di,m+q ^m.m+qV, <7 = 1 Р\
330 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ. VT затем решаем эти системы каждую в отдельности. Оказывается, что общее число арифметических действий при решении р си- 2 стем уравнений таким способом ^-к- tn^-\-2pin^. Описанный выше прием иногда используется для того, чтобы без существенных дополнительных затрат получить суждение о погрешности решения, являющейся следствием округлений при вычислениях. Задаются вектором z с компонентами, имеющими по возможности тот же порядок и знак, что и компоненты искомого решения; часто из-за отсутствия достаточной информации берут 2 = A 1) • Вычисляется вектор с = Аг и наряду с исходной системой уравнений решается система Аг = с. Пусть х' и г' — реально получаемые решения этих систем. Суждение о погрешности х' — х искомого решения можно получить, основываясь на гипотезе: относительные погрешности при решении методом исключения систем с одной и той же матрицей и различными правыми частями и-х'\\ \\г-г'\\ ; II*'II 11г'|| отличаются не в очень большое число раз. Другой прием для получения суждения о реальной величине погрешности, вследствие округлений при вычислениях, состоит в изменении масштабов, меняющем картину накопления вычислительной погрешности. Наряду с исходной системой тем же методом решается система (аЛ) ж' = рб, а и р — числа; при а и р, не являющихся целыми степенями двойки, сравнение вектороа ж и "S" ж дает' представление о величине вычислительной погрешности. На- Р пример, можно взять а = р = J^2. Для решения систем линейных" уравнений с эрмитовой матрицей А удобен метод квадратного корня. Матрица А представляется в виде А = S'DS, F> где S —правая треугольная, S* — сопряженная к ней, причем все 8ц>0, D — диагональная матрица с элементами da, равными +1 или —1. Матричное равенство F) образует систему уравнений aii = SuSiid,i+ ■■•^<:tSiiSiidii при /</. Аналогичные уравнения при i>] отброшены, так как уравнения, соответствующие парам (/,/) и (j,i), эквивалентны. Отсюда получаем рекуррентные формулы для определения элемен-
^ и МЕТОДЫ ПОСЛЕДОВАТЕЛЬНОГО ИСКЛЮЧЕНИЯ НЕИЗВЕСТНЫХ 331 тов d,i и з,у. da = sign \аа — 2 I «ы Р dkk\, \ '^'^. ''tl^, "P" '^^'- Матрица S HBjjHeTCH правой треугольной, и таким образом, после получения представления F) решение исходной системы также сводится к последовательному решению двух систем с треугольными матрицами. Заметим, что в случае Л > О все d.j = 1 и А= S*S. Если есть подозрение, что реально полученное решение x^ сильно искажено вычислительной погрешностью, то можно поступить следующим образом. Определим вектор 6'= Ь — Л*'. Очевидно, ошибка г' =х — дс' удовлетворяет системе уравнений Аг^ = Ах - Ах^ = ЬК G) Решая эту систему в условиях реальных округлений, получаем приближение гО к г'. Полагаем jc^ = *'-f-/<■>. Если точность нового приближения представляется неудовлетворительной, то повторяем эту операцию. При решении системы G) над компонентами правой части производятся те же линейные операции, что и над компонентами правой части при решении системы A). Поэтому при вычислениях на машине с плавающей запятой естественно ожидать, что относительные погрешности решений этих систем будут одного порядка. Поскольку погрешности округлений обычно малы, то ||ЬЧ1 <. \\Ь\\; тогда \\гЦ\ <С ||дсЧ1, и, по-видимому, решение G) определится с существенно меньшей абсолютной погрешностью, чем решение системы A). Таким образом, применение описанного приема приводит к повышению точности приближенного решения. Особенно удобно применять этот прием, когда по ходу вычислений в памяти ЭВМ сохраняются матрицы В и D. Тогда для каждого уточнения требуется найти вектор b'^ = b — Ax^^ и решить две системы с треугольными матрицами. Это потребует всего ~Atn^ арифметических операций, что составит малую долю от ~^lim^ операций, требующихся для представления маг- рицы А в виде А = BD. Идея описанного приема последовательного уточнения приближений к решению часто реализуется в такой форме. Пусть матрица В близка в каком-то смысле к матрице А, но решение системы Вх = с требует существенно
332 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ (ГЛ. VI- меньшего объема вычислений по сравнению с решением системы Ах = Ь. Решение системы Вх = b принимаем в качестве первого приближения д(' к решению. Разность х — x^ удовлетворяет системе уравнений А(х-х^) = Ь- Ах\ Вместо решения этой системы находим решение системы Вг^ = Ь-Ах^ и полагаем ж^ = ж'-|-»■'. Таким образом, каждое приближение находится на предыдущего по формуле ^п+1 _ j,n 4- fi"' (ft - Ax'^) = (£ - fl-'Л) x'^ + 5"'*. Если матрицы А к В достаточно близки, то матрица Е — В-^А имеет малую норму и такой итерационный процесс быстро сходится (см. § 3). Значительно более редкой, чем задала решения системы уравнений, является задача обращения матриц. Для обратной матрицы X = Л-' имеем равенство АХ = BDX'^ Е. Таким образом, для нахождения матрицы X достаточно последовательно' решить две матричные системы BY = Е, DX =:¥. Нетрудно подсчитать, что общий объем вычислений при нахождении матрицы Л-' ~ 2тЗ арифметических операций. В случае необходимости уточнения приближения к обратной матрице могут производиться при помощи итерационного процесса Xh = Xii-i{2E — AXh-i). Для исследования сходимости итерационного процесса рассмотрим матрицы Gk='E — AXh.. Имеем равенство G, = E-AXk = E- AX.-i {2Е - АХ,^,) = {Е- AX^.^f = G^-u Отсюда получаем цепочку равенств Поскольку G, = Gl_, = Gi_,^... =Gf. Л-' -Xk = А-' (Е - AXk) = Л-'Gft = Л-'Go*, то имеем оценку llл-'-^,ll<iл-'ll|G„r^ таким образом, при достаточно хорошем начальном приближении, иначе, если Ц^ — AXqW < 1, этот итерационный процесб^ быстро сходится. При решении систем больших порядков величины, необходимые в процессе решения системы, не могут одновременно уместиться в оперативной памяти ЭВМ; поэтому встает проблема размещения этих величин в элементах памяти различных уровней н организации процесса вычислений, при котором передача этих величин из одного места памяти в другое по возможности
§ 21 МЕТОД ОРТОГОНАЛИЗАЦИИ 333 меньше замедляла бы ход вычислений. Для решения бтих проблем привлекаются варианты метода исключения, отличающиеся от вышерассмотренных, например клеточные варианты. Мы ие будем заниматься рассмотрением этих важных вопросов, в частности, потому, что оптимальное решение рассматриваемой проблемы часто существенно зависит от используемой ЭВМ. § 2. Метод ортогонализации Запишем систему уравнений Ах = Ь в виде aiiXi+ ... +ai„Xn + ai,m+i=0, ''/«1*1 "Г ••. + Omm*m "г''m. m+l—". Другая запись этих уравнений: ^a^, у) = 0, •■•, (в„, у) = 0, где в^ = — (Оц, ••-, "i, m+i)' ^~(*р •••• -^m' ')■ '^^^^^^^ образом, решение исходной системы равносильно нахождению вектора у с последней компонентой, равной 1, ортогонального к векторам в], ..., а^. Добавим к этой системе векторов вектор Om+i = @, ..., О, 1). Векторы «i «m+i линейно независимы, поскольку определитель матрицы, строками которой они являются, равен определителю матрицы А, предполагаемой невырожденной. Применим к системе векторов («i, ..., a^+i) алгоритм последовательной ортогонализации с нормировкой по норме || и || = У (и, и). Как обычно, строим векторы «1, «1. «2. «2 «m+i. «m+i по правилу «1=0,, «1 = ., ^' . , .... ад,= ft-i V^ "ft = Оь — 7j '^ki^i' ^k ^^ 11 iT* ■ ■ ■ ^^•"^'вие ортогональности и. к векторам . . II ft II w,, ..., «j_, дает уравнения О = («^, w^) = (о,,, «,) — с^^, иначе с^., = (а^, v^} при i<k. Таким образом, ft-i «ft=«ft- SK'M^r 1=1 Последняя координата гт+i вектора Km+i = Bi, •.., Zm+i) отлична от иуля; предположив противное, мы получили бы, что условия («m+I. «i)=<>- '=' «■ равносильные условиям ("m+i»''i)^^'^' '^^'' •••• "*• образуют систему ли* m нейных уравнений 2 "i/*/'^'^' '= ' "*. с ненулевым решением; тогда /=1 определитель исходной системы должен был бы равняться нулю. Таким образом, условия («„.|, *i)'°=0, /=1 т, можно записать- в виде _£]_+ ... +п _£5 ''• 7177+ ••• + «"«1777+ "'.'«+1""^' Отсюда следует, что ( '—, ..., —'^'—) —решение исходной системы. Этот вариант метода ортогонализации, требующий ~т' умножений и делений, -~т' сложений, уступает по точности методу Гаусса. Для уточнения результата поступим следующим образом. Будем отыскивать вектор-
334 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ. VI У = (У1, ..., Ут, 1), удовлетворяющий условиям (а„у) =0, «= 1, .... /п, в виде т+\ /=' Соотношения (а,,у) = О образуют систему уравнений т+\ 2 ^/К> *у) = '^> '■=' "»; кроме того, условие, что (т+1)-я координата вектора у равна 1, дает уравнение m+i ' /=1 здесь и далее (о)* —й-я координ^1та вектора о. Если вычисления производятся без округлений, то, вследствие свойств построенной совокупности векторов, (ai,Oj) = О при (■ <: / и рассматриваемая система имеет вид rfi(ai, f.) ' =0.1 ^1 («2. Ol) + ^2 («2. О2) =0,1 rfl(am, 0))+ .-. +dn{am,Vm) =0,1 rfl (»l)m+l + ••• + rfm+1 (Oni+i)m+l = 1-j Решением этой системы является вектор rf<' = (О, ..., О, ((Vm+i)m+i)'^). При наличии округлений в матрице системы A) выше диагонали будут стоять малые, но отличные от нуля элементы. Запишем получающуюся систему в виде Cd + Dd = g, g =@, ..., 0,1)^; здесь С —матрица системы A), О (а,, Ог) («1> «»з) ••• («1. Om+i)' D = l О О (Ла. Оз) ••• («2. Om + i) -0 0 О ... О Задаваясь начальным приближением d", будем определять уточненные значения d* из итерационного процесса Crf*+' + Drf* = g. B) Это соотношение можно переписать в виде Вследствие малости элементов ^•.aтpицы D норма матрицы ■'—C'^D мала; поэтому (см. § 3) последовательность приближений, получаемых из этого итерационного процесса, сходится очень быстро. Этот прием приводит к некоторому уменьшению влияния вычислительной погрешности. Чтобы еще более обезопасить себя от большого влияния вычислительной погрешности, подобный прием применяют на каждом шаге ортогонализации. При наличии округлений возможно, что {v„v,)¥= О при 1Ф j; поэтому условия (и*, v,)= О при j < k образуют систему уравнений ft-i 1=1 с матрицей, близкой к диагональной. Значения Са( находят из итерационного процесса вида B).
§ 31 МЕТОД ПРОСТОИ ИТЕРАЦИИ 335 § 3. Метод простой итерации Простейшим итерационным методом решения систем линейных уравнений является метод простой итерации. Система уравнений Ах = Ь A) преобразуется к виду х = Вх + с, B) и ее решение находится как предел последовательности *"+' = Вх" + с. C) Очевидно, всякая система х = х-В{Ах-Ь) D) имеет вид B) и при detD^i^O эквивалентна системе A). В то же время всякая система B), эквивалентная A), записывается в виде D) с матрицей D = (£ — В)А-К Напомним определения основных норм в пространствах векторов и матриц. Если в пространстве векторов дс= (Л), ..., Хт)'^ введена лорма ||х||, то согласованной с ней нормой в пространстве матриц А называют норму Наиболее употребительны нормы ЦдсЦ, = тах | х,-1, т 11*112= Si */|. /=1 Согласованные с ними нормы в пространстве матриц: Mlli=max. (i|a„|V E) IM|l2=max lli\ai,\], F) IM lb = -i/ max Кл'А ; G) здесь и далее Яд — собственные значения матрицы D.
336 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ (ГЛ VI Приведем вывод этих соотношений: ^4лс||, = тах с т. е. 2 ацх, I < max/Si Oij I max I Ar/(j<max/S| at/ |jmax| лг/1, L^<maxfSla„ Пусть max/S|a</l) достигается при t = l; для вектора X = (sign (a„) sign (а,„))^ имеем ||jk|Ii =^ 1, lM«lli>|2a,,^f/| = 2|a/,l = (max2|a(/l)l|je||,. Из этих соотношений следует E). Точно так же M«ll2=2|2a//A:/|<2 2|a</IU/l = т. е. \\Ах 2 B I а,/1) I а:, К (max 21 а„ I) 2 I л^/ 11*11, <niax^5]l^'/ Пусть max 2l ^г/1 Достигается при / = /. Для вектора х, у которого лишь одна компонента Ki отлична от нуля, имеем M*||2=2 2a(/Jf/| = 2la,/||A;,| = ' / I ' = B I a/, I Jl jf, 1 = /max ^\ai,\\^\x, (= /max 2 I ацЛЦхЦ^; отсюда следует F). Согласно определению || А ||з, имеем и л м II Лх Из -, /" {Ах, Ах) , /" (А'Ах, х) А 3 = sup -!^г—-г- = sup 1/ ~-^—г-^ = 1/ sup -^-j—'-т-^ . X II* Из лг '^ (*• *) " X (*• *) Матрица ЛМ — симметричная, поскольку (ЛМ)* = Л*(Л*)* = = ЛМ. Пусть матрица В — симметричная, е е^ — ортонормиро- ванная система ее собственных векторов, Ki Хт — соответ-
$ 31 МЕТОД ПРОСТОЙ ИТЕРАЦИИ 337 ствующие собственные значения. Всякий вектор ж представим в виде ^Ciei. Очевидно, поэтому {Вх, х) < (max А^) Ц | с, Р = (max h) {х. х) (8) t t i и {Вх, *)XminA,,)(*, *). (9) В то же время ( *''• *''> =Xi. Из этих соотношений следует, что sup'7*'*?'=tnaxUn. A0) Поскольку (А*Ах, х) = {Ах, Ах)'^0, то все Ка'а'^0; полагая в A0) fi = y4M, получаем sup ' <^'^*' *) I = max I кл'А | = max Адм. Из полученных соотношений следует G). Отметим важный частный случай. Если А симметричная, то Ялм = А,д» = I А-л р, поэтому для симметричной матрицы ||Л|1з = тах|А,!4|. A1) Если Ах = кх, то ||ЛIIЦдсЦ ^ ||Я,лс|| = |Х| 11*11; таким образом, модуль любого собственного значения матрицы А не больше любой ее нормы. Теорема (о достаточном условии сходимости метода простой итерации). Если \\В\\ < 1, то система уравнений B) имеет единственное решение и итерационный процесс C) сходится к решению со скоростью геометрической прогрессии. Доказательство. Для всякого решения системы B) имеем 11*11 ^l|fi|||l*ll + ||c||; отсюда 11*11 A - IISIIX 1к||, или. 11*11 ^ A — l|fi||)~'llc||. Отсюда следует существование и единственность решения однородной системы * = Вх, а, следовательно, и системы B). Пусть X — решение системы B). Из B) и C) получаем уравнение относительно ошибки г" = дс" — X: г-+^^Вг\ A2) Очевидно равенство /■" = 5^. A3) Из A3) следует, что || г" |К|| S |П| Го ||-► 0. Теорема доказана.
338 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ VI Качество итерационного процесса удобно характеризовать скоростью убывания отношения ошибки после п итераций к начальной ошибке Можно гарантировать, что величина Sn ^ е, если ||fi||" ^ е, т. е. при , rt>rte = ln(e-:')/ln(||fiir')- A4) Если существуют постоянные Уаз> Y^a такие, что при хф^ \ TO нормы ||ж||а И ЦдсЦр назывэют эквивалентными. Очевидно, II'-'' lip < Y„p II г-1|„ < Y„p II В t II гО II, < Y„pYp„ II В t II гО ||р. Таким образом, если условие доказанной теоремы выполнено для какой-то нормы, то утверждение справедливо относительно любой эквивалентной ей нормы. Любые две нормы в конечномерном пространстве являются эквивалентными; в частности, нормы Hjtjli, ЦдсЦг, ЦдсЦз эквивалентны между собой вследствие цепочки'очевидных неравенств ll*lli<ll*lb<ll*lb<m||*||,. Лемма. Пусть все собственные значения Ki матрицы В лежат в круге \K\^q, причем собственным значениям, по модулю равным q, соответствуют жордановы клетки размерности 1. Тогда существует матрица Л = D-i BD с нормой ||A||i ^ q. Доказательство. Положим tj = G —max |?i(|. Собствен- \м\<я ными значениями матрицы ц~^В будут t]"'?L,i. Преобразуем матрицу Ti"'fi к жордановой форме £»-'(л)£'= о г,-^^ аг, где а,-, t+i принимают значения О или 1. После умножения на tj получим ''А,, ai2Ti О A = D~'BD = | О А,2 оззЛ
^ 31 МЕТОД ПРОСТОИ ИТЕРАЦИИ 339 Если \ki\ = q, то, согласно условию леммы, a(./+i=0, и поэтому I A,i I +1«(, (+1ЛI = q; если \XiKq, то |i^(l + |a,,,+,TiKmax \Xi\ + \\ = q. 'Таким образом, ||Л||, =тах( |А,( | + | «( j+itil)^7- Утверждение леммы потребуется нам в главе VIII. При доказательстве последующей теоремы мы воспользуемся частным случаем леммы. Теорема (о необходимом и достаточном условии сходимости метода простой итерации). Пусть система B) имеет единственное решение. Итерационный процесс C) сходится к решению системы B) при любом начальном приближении тогда и только тогда, когда все собственные значения матрицы В по модулю меньше 1. Доказательство достаточности. Возьмем произвольное q в пределах max I ?ii I <; 9 < 1. Условие леммы выполнено по отношению к этому q, поэтому существует матрица D такая, что ||A||i<g при A = Z)-'fiD. Поскольку В = DAD-\ то fi" = DAD'^D ... Z)~'Z)AZ)~' = DA"/)"'. Поэтому ||B"|<llz)ii,|iz)-MU''->o и ||*"-Jfi,<||Z)|t,lZ)-4Ui*°-X|,->.0 A5) при n->oo. Если Xj—координатные орты, х = {xi, ..., лг^)^, то *^2^»^f и ll«ll<Su<lP<ll<Blix<ll)li*lli. Поэтому при любой норме имеем l|*»-X||<^2l|X<ll)ll£'ll.l£'-'IU1l*''-x||,->0. A6) Соотношения A5), A6) означают также, что любые нормы погрешности убывают быстрее любой геометрической прогрессии со знаменателем, большим тах|?ч|. Необходимость. Пусть |?l,;|^ 1 и et — соответствующий собственный вектор матрицы В. Тогда при начальном приближении *" = ДС + €€{, с ф О имеем r° = cei и г" = А,Гсе/-/1-0 при п-^оо. Задача. Пусть все собственные значения матрицы В, за исключением простого А,1 = 1, лежат внутри единичного круга и система B) имеет решение X; очевидно, решением системы буду г также все х = X+cei. Доказать, что итерационный процесс C) сходится к одному из таких решений.
340 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ VI § 4. Исследование реального нтерацнонного процесса Если все собственные значения матрицы В лежат внутри единичного круга, то может показаться, что не возникает никаких проблем относительно поведения метода в реальных условиях ограниченности порядков чисел в машине и присутствия округлений. В обоснование этого впечатления иногда приводят следующий довод — возмущения приближений вследствие округлений равносильны возмущениям начальных условий итерационного процесса. Поскольку процесс сходящийся, «самоисправ- ляюшийся», эти возмущения в конце концов затухнут и будет получено хорошее приближение к решению исходной задачи. Однако при решении некоторых систем возникала следующая ситуация. Все собственные значения матрицы В лежали в круге |А,|^ 1/2, а итерационный процесс останавливался после некоторого числа итераций по причине переполнения порядков чисел в ЭВМ. В других случаях такого переполнения не происходило^ но векторы ж", получаемые при вычислениях, не имели тенденции к установлению. Последний случай наиболее опасен. Неопытный пользователь может необоснованно решить, что при условии тах|А,,-|^ 1/2 какое-то определенное число итераций, например 100, заведомо достаточно для получения решения с требуемой точностью. Затем он производит эти 100 итераций и выдает полученный результат за требуемый. Наличие подобных явлений послужило толчком к более детальному исследованию итерационных процессов и формированию новых понятий в теории операторов. Чтобы понять существо явления, полезно построить пример» где это явление прослеживается в явном виде. В качестве модели выберем итерационный процесс, соответствующий двудиа- гональной матрице а р О ... О О а р ... О О О О ... р О О О ... а fio = При возведении Bq в степень п получается треугольная матрица /а" CU"-'P da'-y...\
§ 4] ИССЛЕДОВАНИЕ РЕАЛЬНОГО ИТЕРАЦИОННОГО ПРОЦЕССА 341 С элементами ^"' = ^-'0"-'^-'^-'. Если / = @. .... 0. l)^ то т i=l При п< т последнее выражение упрощается: т II г'Чь = ScrV Г""-" IP Г'= m—1 n = 2 С*| а Г*| р 1" = 2 С1\ а Г*^! р I* = Aа I + 1 Р 1)"- ft=0 fc=0 Рассмотрим случай |а|<1, |а| + 1Р1>1, |Р/A—а)|<1. Пусть <: = <:'' = (О, ..., О, I)''; непосредственно проверяется, ЧТО при таком с решением рассматриваемой системы будет ^ ~\l-a ll-oj ' •••• 1-а/ • очевидно, 00 = (й. при начальном приближении х" = Х" + с° имеем г° = с" и, согласно проводившимся выше построениям, Ik^lb^dal + lpir для п<т. D « л (|а| + |Р|Г"'-«> Выберем ш таким, чтобы число а = ——'—-^-^ превосходило пределы, допустимые в ЭВМ. Из полученных ранее соотношений следует, что Цж"*-'!! > Ь"~'1к ^11г"-'11,-ЦХ^ц,^ ■^ II II" ^ m m '> а; поэтому построенный пример обладает следующими свойствами: норма начального приближения невелика, итерационный процесс сходится при отсутствии округлений и ограничения на порядки чисел в ЭВМ, в реальных условиях итерационный процесс остановится не позднее, чем при п = т — 1 из-за недопустимо больших значений компонент приближений. Итак, требуемый модельный пример построен. Конкретный числовой пример, удовлетворяющий наложенным условиям по отношению к большинству современных ЭВМг а = —1/2, р = 5/4. т = 120. Пусть |Р/A—а)|>1, Ci — 62 = 60°. Тогда для решений xi, jcj систем X, = BoJCi -^ с„ i = 1, 2, выполнены соотношения 1и.-*2|1,=61|Х°|1, = |р|-ЧР/A-а)Гб.
42 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ ГГЛ. VI Если |р/A—а)!"—Очень большое число, то ошибка округления правой части, пропорциональная с", будет иметь следствием недопустимо большую погрешность решения. При |p/{L — а) I >1 и m большом рассматриваемая система является ■одним из важных модельных примеров так называемых плохо обусловленных систем, о которых пойдет речь в § 13. Обратимся к реальному случаю, когда на каждом шаге вычислений происходят округления. Маловероятно, что присутствие округлений избавит от переполнения там, где переполнение •есть при отсутс'твии округлений; поэтому рассмотрим подробнее случай, когда переполнение не происходит. Вместо дс" реально получаются векторы ж* , связанные соотношениями где р"—суммарное округление на шаге итерации. Отсюда и из C.2) получается уравнение относительно реальной ошибки r'" = *'"—Х: r"'+' = p" + fir'". (I) Выражая каждое г*" через предыдущее, получаем У'^ = р"-' + Br"^-' = р"-' + В (p''-^ + Br"^-^ = = р«-' + Вр«-2 4- ... +B"-V + fiV. B) Как мы видели, норма \Q^^\ при |а|<1, |а| + |р1>' имеет следующий характер поведения: при малых п она имеет тенденцию к возрастанию, при больших п стремится -к нулю. Можно показать, что максимальное значение ф(Во) = maxlfio| п достигается при значении п = По порядка т. При таком характере поведения норм ||fi"|| может возникнуть следующая ситуация. Величина тахЦдс*"] не настолько велика, чтобы происходи- ло переполнение и остановка ЭВМ; в то же время ф(ВJ~' >■ ш, где ш — максимально допустимая погрешность решения. Поэтому при п> По среди слагаемых в правой части B) всегда имеется слагаемое В^'р" "" с нормой ^ш. В результате установление приближений JC " с приемлемой точностью не происходит. п—1 Суммарная вычислительная погрешность Рп = 2 В""'"V может оказаться большой не только из-за большой величины отдельных слагаемых, но и из-за того, что их много. Пусть В симметрична и || В||з = тах | А,в| = А,в < 1, е'— соответствующий Явнормированный собственный, вектор. Рассмотрим модель округлений, когда на каждом шаге pi = ре', р по-
§ 51 ■ СПЕКТР семейства МАТРИЦ 343" рядка 2"'. Имеем равенство Поскольку число итераций берется таким, что ||fi"|| -С I,. а |в"| = (/,в)", то можно считать 1рп1«=—^—р • Таким обра- 1 -xL , 1 зом, если Хв близко к 1, суммарное влияние округлений на шагах итерирования может оказаться довольно большим. Покажем, что такой порядок вычислительной погрешности является неизбежным. Предположим, что вместо_системы C.2) решается система дс = fix-|-с + p^i. Разность X — X решений этих систем удовлетворяет соотношению {X — Х)= В{Х — Х)-{- + рвь отсюда X — Х = {Е — В)~^ pei = (l — кв) pei. Поэтому погрешность порядка (I — Ад) р является неустранимой и возмущение приближений, создаваемое в ходе итераций, сравнимо с неустранимой погрешностью. С целью уменьшения числа итераций при переходе к системе х =^ Вх-{- с стараются получить систему с возможно меньшим значением ||fi||; поэтому можно- привести довольно мало примеров решения задач, где %в, например, больше 0,9999. § 5. Спектр семейства матриц Пусть имеется семейство квадратных матриц {Л,„}; т — размерность матрицы Am — пробегает некоторое подмножества- множества натуральных чисел. Пусть в пространствах векторов Хт размерности т определены нормы ||ж||(т). Точку >, =7^ оо назовем точкой спектра S = S{{Am}) семейства матриц {Am}, если выполняется следующее условие: при любом е > О найдется матрица Am и вектор Хт ¥= О такие, что IMm«m —A,*„||(m)<e||«„i|(„). - A) Соответственно, точку >, = оо назовем точкой спектра семейства матриц, если при любом К найдутся матрица Am и вектор- *т =й= о такие, что \\AmXЛn.)>K\\xJ\^„^. B) Совокупность точек спектра назовем спектром семейства матриц. Если семейство {Am} состоит только нз одной матрицы Ат^ то,' очевидно, тогда спектр семейства совпадает с множеством. Sm собственных значений матрицы Am-
^44 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ. VI Задача. Доказать, что спектр любого семейства матриц — замкнутое множество. Примечание. Часто в литературе спектр семейства матриц определяется несколько ниым способом. Точку X =7*= оо называют точкой спектра семейства матриц, если выполняется следующее условие: при любом е > О найдется бесконечная последовательность матриц Am и соответствующих им векторов Хт ¥= О таких, что 1Ит*т — ^*mll(m) < 8 \\Хт\\ (ту. X = оо называют точкой спектра, если при любом К найдется бесконечная последовательность матриц Л^ и векторов Хт Ф О таких, что \\^mXm\\(m)> К \\Хт\\(т)- Величину Ря, = sup | z \ называют спектральным радиусом матрицы', величину Р = Р {{Лт}) = sup I 2 I ^спектральным радиусом семейства матриц {Am). Очевидно, что рт < 1Ит|1(т). Задача. Доказать, что 5({Л„})=и^'«' C) если А^=А'^ и 1|ж11(т) = 11*11з при всех т. Из справедливости сформулированного утверждения вытекает, что спектр семейства симметричных матриц при норме ||ж||з определяется спектрами матриц семейства. В случае несимметричных матриц сооотношение C) может не выполняться. В качестве модели выберем простейшее семейство несимметричных матриц Am'. а р О ... 0^ Лщ о а р 0 0 0 0 0 0 О а, ?фО. При любом m множество Sm состоит из точки 2 = а и поэтому множество tlSm совпадает с точкой а. Покажем, что мно- т жеству 5 принадлежат также все точки круга \z — а!^|р|. Возьмем произвольное комплексное w, \w\^l. Пусть х^ — вектор с компонентами т I {x^), = wi-'(\
; Б] СПЕКТР семейства МАТРИЦ 345 Справедливы равенства (AmXm)l = а («m)y + Р Um)/ + l = = (a+M^'-'(l--^)-p^ при j<m. Таким образом, {AmXm)l = {a+ N) (*m)/ "^ P — ПрИ BCCX /. Отсюда получаем В то же время W'" т .-/iW'-'('-^)r >1. Таким образом, II АтХп, - (а + М «;„ Из < (:j!;^] || х^ ||з. Так как для любого е > О найдется т такое, что -'pi- < е, то- у т полученное неравенство означает принадлежность точки а + рш спектру семейства матриц {Am}- Поскольку всякая точка круга \z — а|^|р| записывается в таком виде с |ау|^1, то мы доказали принадлежность этого круга спектру 5. Положим Фп= sup ||( Л J" !!(;;,). т Теорема 1. Если р{{Ат} ) = р < оо, го при любом а > р выполняется оценка Ф„</г(а)а'' D) при всех п; здесь k(a) не зависит от п. Доказательство. Пусть D — произвольная матрица с Ш|| < d <; 1- Рассмотрим матричное уравнение X = DX + C. E) Очевидно, 11^1К11^)|||1ЛЦ-||С|К£/||Л||-Ы|С||. откуда ||ЛКA-£/)-'||С||. F>
346 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ VI Система E) является системой линейных уравнений относительно элементов матрицы X. Поскольку X = О при С = О вследствие F), то зта система однозначно разрешима при лю- •бой Матрице С. При С = Е имеем Х = {Е — D)-' и, согласно F), 11(£-лгЧ<A-^г'. G) При любом п справедливо равенство E-D'^ = {E- D)iE + D+ ... +D'^~'), после умножения на {E—D)~ имеем (£-!))"'-(f-Z))~'Z)"=£ + ^+ ••• Ч-Л""'. откуда (£-D)-'-(£+ ... +D"-')i< <|(£-Z))-'||Z)"l<(l-dr'd«. (8) Пусть В— произвольная матрица, р — некоторое число, большее ||В|- «е нормы: ||В||<Р; при | г |>р имеем |г~'в||<1^=й! < 1. Положив в (8) D = z~^B, получим ,£_г-|8г'-^<^"'в)' <(| -Jar'^mr. 00 Таким образом, матричный ряд 2 z-'5' равномерно сходится -1 '=" к матрице {Е — z 'S) в области |2|^р. На основании формулы для коэффициентов ряда Лорана имеем |2|=Р иначе ^"=lir § z4zE - В)-'dz. (9) Элементы матрицы {zE — 5)-* с точностью до знака равны отношениям миноров матрицы zE — S к ее определителю. Поэтому они аналитичны всюду, кроме точек 2, являющихся нулями <ietB£ — В), т. е. вне спектра матрицы В. Следовательно, в (9) мохсно перейти к интегрированию по любому контуру, содержащему внутри себя спектр матрицы В. Возьмем произвольное о>р. Спектры Sm всех матриц Am лежат внутри круга
§ 51 СПЕКТР семейства МАТРИЦ 347" I г I ^ а. Поэтому - ^-=1ЙГ § г'ЧгЕ - А^)-'dz. (Щ |2|=0 Для доказательства теоремы 1 потребуется следующая лемма. Лемма. Если а > р, то А-(а)= sup UzE-AJ-'l^^<oo. |2| = o, т Доказательство. Поскольку а > р, то при |2|=о и любом m detB£ — Ат)ФО и \\{zE — Ат)'Ц\(т)< °°- Допустим, что утверждение леммы неверно. Тогда найдется последовательность {z{q), tn{q)) такая, что \z{q)\ = a, W iq) = || {z (q) Е - А^ (,,)"' {„ (,))->«> при q-*oo. Пусть zo, |2о|= о — предельная точка последовательности z{q). Чтобы не производить дополнительных переобозначений, предположим, что z(^)->2o. Вследствие определения нормы матрицы при любом q можно указать вектор Xm(q), для которого \\{z(q)E — Amlq)) Xm(q)l(m(q))^ —2 W *т (q)\\(m (д))г или, все равно, что 2 II B iq) Е— An (,)) Ут (?) 11(т (<;))< ~аГ{д)'" ^'" («> "<'" (")>* где Ут (q) = B iq) Е— Am (,))"' «m (,)■ Отсюда следует неравенство II ^т <,)9т <,) — г^Ут (q) \\(т (?)) < (| 2 (^) — 2о 1 + -Щ^] II Ут (,) 11<т (,))- Так как ш(^)->оо согласно предположению, а |2(^) — Zo|->0, то отсюда вытекает, что точка Zg с |2о| = а является точкой спектра; мы пришли к противоречию. Лемма доказана. Оценивая норму правой части A0), получаем неравенство lA%l(m)<4i § o''k{o)\dz\ = k(a)a\ |2|=0 Отсюда следует справедливость неравенства D). Теорема 2. Еслир'>1,то ф = sup ф„ = sup II Am l(m) = °°- n п, т Доказательство. Если для данного семейства матриц 4I = оо, то для него утверждение теоремы выполнено.
348 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ. VI Рассмотрим случай, когда ф1 < оо. Для доказательства теоремы 2 достаточно показать, что при любом К существуют т и П, для которых ||Лт||(т)^^- При р > 1 существует некоторое 2е5 с |2|> 1. Возьмем произвольное К и выберем п из условия \z\^^2K. Положим & = К1{пЬ^~^), где Ь = тах(ф1, |г|). Поскольку z — точка спектра, то существуют т и вектор Хщ, для которых II Л^Х^ — ZXm ||(m) < 6II *m ll(m). Очевидно, IЛГ'-'г' {Атх^ - гж J l^, <|| А^ \%;^-' \zib\\x„, l^, < <фГ'-'|^|'б1ж.|и,<&"-'бИ.|и = ^|И.|и,. (II) Справедливо тождество п-\ АщХт 2 Хщ = 2л ^т 2 (АщХ^ ZX^). 1=0 После оценки нормы каждого слагаемого в правйй части при помощи неравенства A1) получим II АщХщ 2 Хт Цт) ^ А || *m Цт.) > откуда 1 Л;;,*^ IU > I Z Г II «;„ 1U - ^ II *;„ ||(;„) = = (| 2 Г - ^) II «;„ IU) > /СИ *т IU . Таким образом, указаны тип, для которых Mm||(m)^/C; теорема доказана. Из утверждений теорем следует, что спектральный радиус семейства операторов во многом определяет свойства итерационного процесса. В самом деле, если р < 1, то, вследствие теоремы 1, нормы ||Лт1(т) равномерно ограничены и следует ожидать устойчивости итерационного процесса к округле'ниям; если же р > 1, то sup [ Л^ i(m) = °° вследствие утверждения п. m теоремы 2 и для некоторых из матриц Am итерационный процесс jc»i+t = АтХ" -\- Ь будет или расходящимся или в достаточной мере сильно чувствительным к округлениям при вычислениях. На основании доказанных теорем нельзя высказать суждения об устойчивости конкретного итерационного процесса к округлениям; при отсутствии четко выраженных связей между элем^тами матрицы Л даже неясно, к какому семейству матриц следует отнести данную матрицу; если проблема выбора семейства {Am) И отыскания его спектра решена, все равно вопрос об устойчивости итерационного процесса остается откры-
^ ei в'-процЕСС УСКОРЕНИЯ сходимости 349 тым. При реальном числе двоичных знаков и фиксированной точности вычислений может оказаться, что медленный рост норм ||Л^||(т) с ростом ШИП предпочтитбльнее их равномерной ограниченности большой постоянной. Таким образом, мы не можем сделать конкретных практических выводов. Однако мы достигли понимания того, что несимметричные матрицы большой размерности обладают новыми, неизвестными нам ранее свойствами. Кроме собственных значений и векторов у этих матриц имеются «почти собственные» значения и векторы, т. е. такие X и у, что By « %у. Из последнего равенства следует, что В^у « Л"у; следовательно, норма ошибки, пропорциональной у, после п шагов итерации возрастает примерно в |Х|" раз. Наличие таких «почти собственных» значений и явилось причиной разбиравшихся нами неприятных эффектов, обнаруженных при расчетах. § 6. б^-процесс практической оценки погрешности и ускорения сходимости Рассмотрим вопрос об оценке погрешности приближенного решения системы уравнений. Если X*—приближенное решение системы АХ'= Ь, то можно написать равенство Л (X* — X) = = АХ* — 6. Отсюда следует оценка погрешности \\Г - Х\\ = 1а-' (АГ -b)l^lA-'\\\\ АХ- -Ы\; эта оценка редко применима из-за сложности оценки ||Л-М1; поэтому при практическом анализе погрешности приближений, получаемых итерационными методами, обычно вместо этой опенки используется рассматриваемая далее нестрогая, но более простая оценка погрешности. Напомним критерий разумности практической оценки погрешности- в" принимается за практическую погрешность приближения х", стремящегося к X при п-*-<х>, если \\v'^-(x'^-X)mx'^-X\\-i•0 при я ^ оо. A) Очевидно, что тогда ||ti"l| ~ \\х^ — Х\\. Рассмотрим метод простой итерации *"+* = Вх" -{- с; для простоты ограничимся случаем, когда матрица В простой структуры (ее жорданова форма диагональна, и поэтому она обладает полной системой собственных векторов). Пусть Xi, i= I т, — собственные значения матрицы В, занумерованные в порядке убывания \Xi\, причем ^i. Ikill = 1 — соответствующие собственные векторы, образующие полную систему.
350 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ Разложим вектор г'^ по базису е^: r'^ = 2^iei- Тогда r'^ = x'^-X = В\'' = 2 CiXUi = с.ЛГе, + О (| Яг Г). (| Здесь и далее выражение «п=Ул + 0(е„) имеет следующий смыс! \1хп — Уп\\ = 0(Ъп) при «->оо. ^ Укажем способ построения приближения к векторт a»'' = ci^[Vi иа основании информации, получающейся в \ощ вычислений. Согласно B), имеем x'^-^ -Х = да^ЛГ' + О (| ^2 Г). *"-'-Х = и»"ЛГ' + 0(|Л2Г), ж" - X = и»" + О (l ^2 Г). Вычитая друг из друга соседние соотношения, получим X'^-X'^-'^W'^{^-%T')^0{\X2T). ^ Отсюда {x'^-X^^-\x'^-X^^-^)^U'^f\l-XTЛ' + 0{\w'^\\K,f), , {Х'^-' -x'^-\x'^-x'^-') = \\w'^f\\-XT'nT' + 0{\W^\\K\% ^^ Положим . W _ (x'^ - x'^-\ x'^ - x'^-') ' (х«-'-х''-2.х''-*''-') • Воспользуемся соотношениями D) и в предположении с, ф О поделим числитель и знаменатель на 11 да" ^|1-ЯГ'|Ч -1 |2 ,-1. Я'«> = ^'"+^(w) ^ " I Ню"!! J Поскольку ||и»"|1 = |с,||Л,Г. ' E) то x<''> = ^, + o(|4ff)- F) Поделив второе из соотношений C) на 1 — (^i"') , получим 1-(лГГ' »-ОТ
в'-ПРОЦЕСС УСКОРЕНИЯ СХОДИМОСТИ 351 Из E), F) следует || г/у" (Я, - Я*,"') 1 = О (U2 Г), поэтому ''""''''"', = и»" + О(I ^2 Г). Отсюда и из B) следует, что X^^-X=V'^+0{\X^\'^), п v""' рде к" = ^; заметим, что, согласно C), F) [!г>''|| = 1 - (^ГО = 1 С] II Я,, 1" + 0A ЯгП- Из этих равенств вытекает, что w" удовлетворяет A), и поэтому его можно принять за практическую погрешность приближения ж". В случае С\ = ... = С; = О, Ci+i Ф О проведенные рассуждения останутся в силе, если \Xi+\\ > |Xi+2|; во всех соотношениях- следует лишь заменить Я,,-, с,, Ci при i = 1, 2 на Xi+i, Ci+i, ei+i. Описанный способ получения оценки приближенного решения называется 8'^-процессом. Если положить у" =X'^ — V'^, то У"^ — Х = 0{\%2\"), И ПОЭТОМУ у", вообще говоря, является лучшим начальным условием для последующих итераций по сравнению с дс"^ Производя время от времени такие уточнения, иногда удается существенно уменьшить общее число итераций . Для справедливости приближенного равенства ж" - X « в" G) необходимо, чтобы в правой части равенства слагаемое С|А,"е, преобладало над остальными. Если это так, то векторы ж"—ж""', ж""' —«""^ приблизительно пропорциональны, и поэтому IU"-'-x"-'. ж"-'-ж")| ^^'^ II ж"-'-х--^ IIII ж"-'-ж" II ■ Таким образом, условие р-п » 1 является необходимым, чтобы проводившиеся ранее построения были сцраведливЫ. Поэтому его можно принять за условие практической применимости G). Например, будет разумной следующая схема метода простой итерации с применением б^-процесса ускорения сходимв£ги. Задаются некоторым малым Г] > 0; если по ходу итераций оказалось, что [j,„ ^ 1 — т|, то вычисляется к" и вектор у" принимается за начальное приближение для последующих итераций. Итерационный процесс прекращается, если Цп > 1 — т| и lb"II ^ е, где е — требуемая точность. Если т| выбрано очень малым, то условие Цп ^1 — т| будет выполняться только после большого числа итераций, ускорение сходимости не будет иметь Честа. При большом т| соотношения, положеиные в основу наших построений, выполняются грубо, и поэтому не исключено, что применение
352 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ И л- v. 6^-процесса сходимости замедлит итерационный процесс. Картина итераций также осложняется наличием округлений, и поэтому описанная выше схема требует практической отработки на большом числе примеров с целью выбора оптимального т| н указания нижней границы значений е, при которых алгоритм применим. Если однородный итерационный процесс подвергается перестройке (в нашем случае, при переходе от ж" к у"), тй иногда полезно проверить, не ведет ли эта перестройка к ухудшению. В качестве критерия целесообразности перестройки можно взять некоторое соотношение, связывающее нормы невязок для ж", у", например неравенство вида ||(£ - В) у" - с|1 < <? Ii(£ - В) ж" - с||. Наше замечание о необходимости указания нижней грани значений е вызывается следующим обстоятельством. Пусть для определенности ki > 0. Уже при вычислении л:" по заданному ж"-' округления могут возмутить результат на величину бж" -с нормой порядка р. Следствием этого может явиться возмущение бе", имеющее норму порядка A — ^i)~'p- Отсюда следует, что в случае е<: (l-^A,i)"'p итерационный процесс может никогда не закончиться. Проведенные построевня показывают, что при реализации метода возни? кает много таких мест, разбор которых требует серьезной математической подготовки и проведения большого числа численных экспериментов. Поэтому, несмотря на «простоту» метода простой итерации, будет вполне оправдан» ным создание стандартной программы этого метода. § 7. Оптимизация скорости сходимости итерационных процессов Рассмотрим простейший итерационный способ решения системы уравнений Лх = 6: X'^+^=X'^ — a{Ax'^ — b). Мы видели, что скорость сходимости такого итерационного процесса существенно зависит от максимального модуля соб- " ственных значений матрицы В = £ — аА. Если Ki, ..., Х„ — собственные значения матрицы А, то max | А,; (В) | = max | 1 — ai; |. i i Из рис. 6.7.1 видно, что при наличии действительных собственных значений различных знаков этот максимум >1 и итерационный процесс расходится. Обратимся к рассмотрению частного случая, когда все Яг > 0. Значения Х; известны крайне редко, однако довольно типичен случай, когда известна оценка для этих чисел: 0<ц^Я(^М<оо при всех /. Скорость сходимости итерационного процесса можно характеризовать величиной р (а) = max | 1 — аЛ j. Рассмотрим задачу минимизации р(а) за счет выбора а.
§7) ОПТИМИЗАЦИЯ скорости сходимости 35» Для нахождения minp(a) удобно обратиться к геометриче- а ской картине (рис. 6.7.2). Очевидно, р(а)>1 при а<0. При 0<а^М'~ функция 1 — аА, н.еотрицательна и монотонно убывает на [ц, Ш] и поэтому р(а)=1—ар,. При М"'< а величина 1 — аМ становится отрицательной и модуль ее растет с ростом котором а = ао момент, когда = -A-аоМ), р(ао) = 1 1 — ао1х| а < tto, то р (а) = 1—ар. > 1 — — аор, = р (ао); если щ < а, то р(а)>| 1 -аМ| = Ма- 1> > Мао — 1 = р (tto). Таким образом, значение а = ао является искомым. Решая «о, От- а; при ненаступит 1 — ао[1 = и тогда Если Рис. 6.7.1. уравнение относительно 2 получим а сюда р(ао) М -ц Мы произвели оптимизацию итерационного процесса частного вида, исходя из наглядных соображений. Па примере систем с матрицей Л > О (здесь и далее неравенство А "> О означает, что матрица А ~ самосопряженная, положительно определена) рассмотрим другие постановки проблем оптимизации скорости сходимости итерационных процессов. Часть полученных результатов может быть применена и к несимметричным матрицам. Всякая система Ах=Ь с deiA^Q, вообще говоря, может быть приведена к виду, где Л > О, умножением на матрицу Л* (как> говорят, симметризована). В самом деле, система А*Ах = А*Ь Рис. 6.7.2.
354 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ. VI эквивалентна исходной, матрица А*А — самосопряженная, так как А*А={А*А)*, и положительно определена, так как {А*Ах, х) = ЦЛдсЦ^ > О при х ф{^. Стараются избегать симметризации, поскольку, как мы увидим в конце параграфа, она часто приводит к ухудшению свойств матриц. Пусть jc" — начальное приближение, и каждое следующее приближение х'^ построено по формуле x'' = x^-Qk-AA){Ax'-b), A) где Qk-\{A) — многочлен степени k—1 от матрицы А. Предположим, известно, что спектр матрицы А принадлежит отрезку [|х, М], где О < |х ^ М < с». Для решения X исходной системы имеем X = X-Qk-y{A){AX-b). Вычитая это равенство из A), получим уравнение для ошибки r'' = r'^-Qk-i{A)Ar' = Pk{A)r^ где Ph{y^) = 1 —XQft_i(X). Матрица Pk{A) симметрична, как функция симметричной матрицы; поэтому sup]^r=||/'ft(^)lb= max \РЛЦ\\ B) введем обозначение o{g)= max \g{h)\. Положим ak= inf o{Pk). Лемма. Справедливо равенство ц<Я.<м1 " ' I I'fel здесь 1 - Ши i^) = PI W = T, (^^-;^ + '-^) (r, ( - ^))-. D) как обычно, Tk — многочлены Чебышева, tk = Tk\—^ _ ). Доказательство. Воспользовавшись соотношением max I Tft(л:) 1= 1, получаем o{PV^ = \tk\~\ Предположим, что существует многочлен Р^ (А.) = 1 — 7-Qa_i (Я) такой, что o{P,)<o{Pl) = \h\-\ E)
§ 71 ОПТИМИЗАЦИЯ СКОРОСТИ СХОДИМОСТИ 355 Рассмотрим многочлен Sa (А.) = Р^ (Л) — Р* (Я). Пусть Вследствие равенства 7"^ (х) = cos (fe arccos х) имеем Pl{K') = i~i)'tr\ Поскольку Х' е [\i, М], то, согласно E), \PA^')\<\tk\~\ отсюда Следует, что sign s,UO=sign pU^O. Точки %^, ..., Я,* расположены монотонно на отрезке [ц, М]; поскольку Sa(A.) меняет знак при переходе от каждой из этих точек к следующей, то Sft(A,) имеет на [ц, М] k корней. Кроме того, Sk {0) = Pl @) - Pfe(O) = 1 - 1 = 0. Л^ы получили многочлен степени k, который имеет k + 1 нуль; следовательно, Sk{K)^0, Р^(Я) = Р^(А), max\P,{X)\==\t,\-\ In. Ml Мы пришли к противоречию с E). Лемма доказана. Упражнение. Пользуясь формулой проверить справедливость равенства Хо = 2 Из этого представления t^ следует, в частности, что Оь = т-гт = и IU, 1 ч < 1 при & > 0. * I <ft I Ch (fe In ко) ^ *^ Ha основе проведенных построений можна предложить несколько типов итерационных процессов. В одном случае задаются последовательностью значений «о = 0<«1<< •••• приближения x'^^ определяют по рекуррентной формуле «"'+' =*"' - Q]-i {A){Ax"i - 6), F) 12«
356 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ. VF где qi = tii^i—n.{. Очевидно, и в итоге 1А1з<сг,„...ст,^_,|/||з. Рассмотрим случай qc^k, т. е. ni=ik. Тогда, обозначив x"i = y, можно записать итерационный процесс F) в виде y^+^ = y^-Ql_,(A){Ay^~b)•, соответствующая оценка погрешности \\y^-Xh^ia,У\\f-Xh. Такой итерационный процесс называют оптимальным линейным к-шаговым итерационным процессом. В частном случае k = 1 имеем, согласно D), 21 —и —ц P4ik)=l-XQl{X) /,= ' М -ц М + ц М-ц 1 ""' Mil — 1-Я, „1 , М-ц М + ц ' М+ц М-ц Таким образом, оптимальный линейный одношаговый итерационный процесс имеет вид оценка погрешности \\y'-Xh<[^=^)\\f-Xh. G) Можно проверить, что коэффициенты многочленов Q\_y{A) быстро растут с k\ вследствие этого при больших k алгоритм вычисления дс", использующий информацию о значениях этих коэффициентов, сильно чувствителен к вычислительной погрешности. Поэтому для вычисления х'^ прибегают к окольным путям. Запишем соотношение A) в виде х' = Р^{А)х'-{Р,{А)-Е)А-'Ь и будем рассматривать его как преобразование :^-^х^. Пусть PW(>,) и РИ(>.) —произвольные многочлены и Р{%) = = P'*'(?v)P<^>(?v); произведем последовательно преобразования,
§ 71 ОПТИМИЗАЦИЯ СКОРОСТИ сходимости 357 соответствующие многочленам Р(*' и Р*^): ;с"» = Р"'(Л)/-(р"'(Л)-£)Л-'&. х''' = Р''' {А) *<" - (Р'^» [А) -Е)А-'Ь. ^^^ Имеем равенства х'" = Р''' [А) Р<" (Л) х' - Р<=" (Л) (Р"' {А) - Е) А-'Ь - -(Р^-' (Л) - £) Л-'& == Р^^' (Л) Р^" (Л) / - (Р'^' (Л) Р"» (Л) - £) Л-'&. Таким образом, последовательное осуществление преобразований (8) равносильно преобразованию, соответствующему многочлену Р{А). Отсюда следует, что при Р{1) = Р("(А,) .. .P^'^'>{X) последовательное осуществление преобразований, соответствующих многочленам Р(''(>.), i = I, ..., k, приводит к тому .же результату, что и преобразование, соответствующее многочлену Для вычисления л;* = ж° — Q^_, (Л)(Лл;° — ft) поступим следующим образом. Разложим многочлен на множители PUx) = {l-ah)...{l-o.tk) и произведем последовательно преобразовапия, соответствующие этим множителям. Если Р(Я)=1 —ah, то Q(A,) = A — Р(А,)) А,"' = = а^, и поэтому эти преобразования имеют вид ^@ ^ x<i-i) ^ Qfe (ЛжС-') - ft), f = 1 ft. • (9) В результате получим л;<*', равное х'^. Нулями многочленов Р°(Я) являются ^1 = {а^)~\ нулями многочленов T^i—-tj^——j являются , М-Ь Ц , М — и яBг—I) . , , h = 2~^-\ 2^°^~^k— ' '"^^ ^■ •Отсюда М + и + (М - [X) COS ■ ^^ При больших k алгоритм вычисления по формулам (9), A0) также неустойчив к округлениям. Вычитая из (9) равен^ •ство X = X — n't [АХ — Ь), получим уравнение для ошибки
358 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ. VI г"' = (£ — afл)/'"''. При наличии округлений оно запишется в виде Последовательно выражая г(') через предыдущие, имеем равенство г(*) = П (£ -0.1 А)rW) + S П {Е-а^А)о'. В этой формуле к г^"^ применяется операторР* (Л) снормой сть = = -т- < I, в то время как операторы, применяемые к р', могут быть с очень большими нормами. При реальных вычислениях для обеспечения устойчивости алгоритм» к округлениям осуществляют «перемешивание» чисел а/-Алгоритм перемешивания в случае /г = 2' заключается в следующем. Последовательно при j = \, ..., I строится «наиболее перемешанная» перестановка чисел, 1, ..., 2^. При / = 1 она состоит из чисел 1, 2. Пусть уже построена перестановка (Ь[~' Ь^^_[Л; следующая перестановка берется в виде(Ь['~', 2^+1—*{"' ^2~'12'+1 — Ьг""''■ ■ •)■ Например, при 1 = 4 эта перестановка имеет вид A, 16, 8, 9, 4, 13, 5, 12, 2, 15, 7, 10, 3, 14, 6, 11). Задаваясь k ==2', строим таблицу чисел bj' ••■> *2' ч производим итерации (9) при значениях а k. nBbi~ l) М + |х + (М-ц)со5—!^-^ '- Зададимся целью построить итерационный процесс, в котором после каждых k операций умножения матрицы А на вектор получается приближение y'' = x<>~Ql_,{A)iAxO-b); A1> согласно D), имеем <^.-ЛЛ)-^(е~т,(^^^^^±^)ц^)а-\ Заметим, что Q^, (Л) = (£ — £) Л"'= О и у'^ = х°. Подставив выражение Q^_,(j4) в (П) и умножив затем обе части на t^, получим-
§ 71 ОПТИМИЗАЦИЯ СКОРОСТИ сходимости 359 Из справедливости этого соотношения при & = п—I, k = n, k = n^\ следует равенство , 2Л ~ (М + ц) £ , 1п+\У ^ М —и "* i^'n-i» — — St /■ 2Л - (М + ц) £ \ ^ 2Л-(М + ц)£ ^ /^ 2Л - (М + ц) £ \ , Многочлены Чебышева связаны рекуррентным соотношением r„+,(*;)-2A;7'„W + 7'„_i(A:)-0. A3) Если подставить вместо х некоторую матрицу, в частности матрицу —~д. _—^^^-^, то это соотношение также будет выполняться. Поэтому матрица в фигурнойр скобке { } нулевая. Вследствие A3) и равенства ^„=Г„(—j^ _ ) имеем ^«+.-2(-1^)^« + ^«-. = 0. A4) Поэтому соотношение A2) может быть преобразовано к виду /«+.!("+' - 2 ( - ^^) иУ^ + и.,у-^ = 4 --t^XAy" - Ь). A5) Мы получили требуемое рекуррентное соотношение. Приведем его к виду, более удобному для практического использования. Вследствие A4) равенство A5) можно переписать как или yn^^ = уп^ аА_, (у« - у->->) - .jjj^ A + (й„@„_,) (Л^" - 6). A6) где tn. @„ = - у-- . Разделив обе части A4) на /„+,, получим , rt М + ц . -
360 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ. VI откуда «>п = —\Г~, • A7) Таким образом, можно рекуррентно вычислять величины со» из A7) и затем векторы у"+^ из A6). Для получения совокупности векторов у', ..., у'^ потребуется произвести п умножений матрицы на вектор, 0{п) умножений векторов на числа, сложений векторов и операций с числами. При этом для всех к, вследствие B) — D), выполняется оценка Wy'-Xlli^lt.r'Wx'^-XWs. A8). Итерационный процесс A6), A7) называют оптимальным линейным итерационным процессом. Это определение имеет следующие основания. Можно показать, что всякое разумное приближение к решению, в ходе получения которого матрица А участвует только в & операциях у.множения на вектор, записывается в виде A). При реализации процесса A6), A7) после каждых k применений матрицы А мы получаем оптимальный результат в смысле B) — C). Из сказанного видно, что по скорости схо-' димости итерационный процесс A6), A7) предпочтительнее,, чем F), Однако иногда от него следует отказываться'в пользу F) из-за соображений экономии памяти ЭВМ. Получим более наглядную оценку скорости сходимости построенных итерационных процессов. Согласно явной фор.муле для многочленов Чебышева, имеем 1 л 1 л ft Тп{х)= ' о ^ . где Xi,2 = x ± 1/V —1 . Если л: > I, то Л, = л:-Ь 1 + V^^ ~1 >1> ^ 0<Л2 = ^—<1. Поэтому при больших п Tnix)-^^, A9)' причем Тп{х)>-^- Отсюда следует неравенство | ^п Г ^2Яо" где Хз= м - ц + У (м--ц j ~ ^ > "> согласно A8), для оптимального итерационного процесса \\y'^-Xi^2X^'^\\x'-X\l Норма ошибки уменьшится по крайней мере в е~' раз, если 2Яо'"^е. Отсюда получаем оценку нужного для такого уменьшения числа итераций n^n, = log,,| = (lnlo)-'ln|-.
5 7| ОПТИМИЗАЦИЯ СКОРОСТИ СХОДИМОСТИ 361 Нетрудно проверить, что V м Для многих задач число М/ц оказывается очень большим; при М/ц->оо имеем таким образом, Для сравнения рассмотрим оптимальный линейный одно- шаговый итерационный процесс, имеющий, согласно G), оценку погрешности "*"-^1Ь<A^)"|1*"-Х11з; отсюда получаем оценку числа итерации 1п Ё «>«2 = (ln^3y) In-- При > 00 имеем 1п-т?— 2-^- и rto ~ тг — In — . Таким образом, в этом сравнении оптимальный итерационный — раз. ^^ Задачи 1. Рассматривается итерационный процесс X — X г-1 _„ lA^i-i a,,{Ax^-^-b), i=l,2, ... Пусть р — нечетное и при веек k совокупности а , ..,, а i^ совпадают с совокупностями Y,_i = 2^M + ^ + (M-n)cos^b^|^^j'', 1=1,..., р\ Проверить, что при всех г = p^^ приближения дс' совпадают с приближениями, получаемыми по оптимальному линейному итерационному процессу. 2. Пусть 2 I 1 а совокупности "° М + ц ' ' V+1' • '"^ir- ••' ^+1
362 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ. VI При каждом k > I совпадают с совокупностями величии у, = 2/м + ц + (М-ц)со8-^Ь^^^)~, 1=1 2К Показать, что для такого итерационного процесса при всех п = 2*+' справедлива оценка '"'-"•< (л;--С-)^-я„-') "•-"•■ U'-xl-U'-x\},o{ii-"). Рассмотрим типичную задачу математической физики, сводящуюся к решению системы уравнений с большим отношением М/|х Пусть в квадрате О ^ ;iCi, ;iC2 ^ 1 решается уравнение Пуассона —Аи = / при нулевых условиях на границе Зададимся сеткой с шагами h = \/1 и напишем систему уравнений, аппроксимирующих дифференциальную задачу: "/, + 1./,-^"/,./, + "/,-!■/. ";,.М1-2"/,./, + "/„/.-1 f А2 ;,2 —'л. л при 0</,, 1г<1; Матрица этой системы положительно определенная и для нее B0> ц = min ki = 8/2 sin2 (■—-] - 2я2, М = max li = 8/2 cos^ (■—) - 8/^, т. е. l/ — . При реально применяемом шаге / = 30 выигрыш в числе итераций довольно большой. В начале этого параграфа было упомянуто, что при симметризации системы ее свойства могут ухудшаться. Действительно, пусть этот процесс применяется к уже симметричной матрице А, т. е. переходим от системы Ах = Ь к системе А^х = АЬ. Если у старой системы отношение максимального и минимального собственных значений равнялось М/ц, то у новой оно будет {М/цJ и скорость сходимости нтерацио!1ных процессов будет Меньше. Примечание. Вследствие A9) при л -> оо имеем со„ =
§ fll МЕТОД ЗЕЙДЕЛЯ 363 Таким образом, при больших п итерационная формула A6) близка к формуле ^г.+ 1=г. + Я-2(г«_г«-1)__^(,+;,-2)(Лг''-б). B1) Если при всех л итерации будут производиться по этой формуле, то при условии 2" = дс", г^ = g^ этот итерационный процесс требует примерно столько же итераций, сколько итерационный процесс A6). § 8. Метод Зейделя Пусть решается система уравнений Ах = Ь, все диагональные элементы которой ненулевые. В итерационном методе Зейделя последовательно уточняются компоненты решения, причем k-n компонента находится из ^-го уравнения. Именно, если х"- = {х'^, ..., x^Y^ то следующее приближение определяется из системы соотношений: а,^Х'^+' + «22^"^' + «23^3 + • • • + fljrnC = ^2. A) '^т\^1 т^ "т2*2 ^ ••• ^ ^^mm^m "т* Систему A) МОЖНО представить в виде Bx'^+^ + Сх" = Ь, B) где а„ О О ... О £^\ 0.2Х ^22 О • • • О Чт\ ^тг ^тЗ Отсюда получаем П+\ D-1 с = *"+ /0 а,2 а,з . 10 0 ^23. \0 0 0 .. S"'&. ... «im •• aim .. 0 x"^^=-B-^Cx'^+B-'b. C) Таким образом, метод Зейделя эквивалентен некоторому методу простой итерации; поэтому для его сходимости при любом начальном приближении необходимо и достаточно, чтобы все собственные значения матрицы —В-^С по модулю были меньше 1. Вследствие равенства det (- В~'С - Щ = det(- S~') det (С + Вк) собственные значения матрицы (—В~^С) являются корнями уравнения det {С + В к) = 0. Таким образом, необходимое и достаточное условие сходимости метода Зейделя можно формулировать следующим
364 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ. VII образом: все корни уравнения ^а„Я а,2 а,з ... а,„ (Jet I ^^^^ "^22^ <22з ■ • • а2т 1 = о Й„]Я йт2Л йотзЯ . . . О-тп^/ ПО модулю меньше 1. Получим более удобные для применения достаточные критерии сходимости метода Зейделя. Теорема. Пусть при всех i q<\. Тогда Il|aj/K<?|aj,-|, Доказательство. Вычитая из B) равенство ВХ + СХ = 6, которому удовлетворяет точное решение, получим уравнение для ошибки D), Пусть II г""*"'III = 1/■"'*'' 1; выпишем /-е уравнение системы D) 1-\ т /=1 /=г+1 разрешим его отилсительно г""*"': г-1 Отсюда где /=1 1=1+i ,n+l l-\ |<а|| r^+Mli+pll г" II,. E> '-1^- '=S иначе это соотношение запишется в виде откуда 1г''+Ч1,<а||г''+Ч1,+р11г''||,. I''"^'lli<-i—■И'-"!!!- Согласно условию теоремы, а + р<G<'. поэтому ^ -<4^^:=g-"l'-/U.? И ||г''+'|1,<-^ 1-а ^ 1 -а 1 -а 1 -а' r''ll,<9l|r'' Отметим некоторые обстоятельства, помогающие иногда при исследовании сходимости метода Зейделя. Если соотношения A) умножить на не-
§ 81 МЕТОД ЗЕЙДЕЛЯ 365 которые множители а' ф О, векторы дс", определяемые из этих соотношений, не изменятся. Таким образом, сходимость метода Зейделя сохраняется при умножении строк матрицы А на какие-либо числа. Если у-й столбец матрицы А умножить на р, = О, а х, поделить на pj, то все величины дс^ разделятся на pj. Следовательно, сходимость метода Зейделя сохраняется и при умножении столбцов матрицы А на какие-либо числа. Задача решения систем линейных уравнений является модельной относительно более сложных задач решения систем не- Рис. 6.8.1. Рис. 6.8.2. линейных уравнений и минимизации функций многих переменных. Для перенесения метода на более сложные задачи важна понять его наиболее грубые, качественные свойства, обеспечивающие ^г сходимость; с этой целью наиболее желательно получить геометрическую интерпретацию метода. Обозначим через Li плоскость При получении 2 ах - ft, = 0. приближения x'Ui' ••'' ^т) ^^ приближения {х'}+\ .... х^+1 XI, ..., х'^) проис- ^, ходит перемещеIие приближения Рис. 6.8.3. параллельно оси Xi до пересечения с плоскостью Lu таким образом, геометрически метод Зейделя состоит в циклическом перемещении параллельно координатным осям Xi до пересечения с плоскостями Li. Рис. 6.8.1—6.8.3 иллюстрируют при m = 2 случаи, когда метод Зейделя сходится, расходится или имеет цикл (как говорят, «зацикливается»). Сравнение первых двух рисунков показывает, что сходимость
366 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ метода Зейделя может изменить характер при перестановке' уравнений. }. Особенно интересная геометрическая картина возникает в случае, когда матрица А—симметричная. Теорема Пусть А — вещественная, симметричная, положительно определенная матрица. Тогда метод Зейделя сходится. Доказательство. При А симметричной имеем Р{у) = (А(у-Х), у-Х)-(АХ, Х) = = (Ау, у) - 2 {АХ. у) = (Ау, у)-2 (Ь, у). Если Л > О, то (А (у — X), у — ^l) > О при у Ф X, и поэтому- функция F{y) имеет минимум, и притом единственный, при у = Х. Таким образом, задача отыскания решения системы Ах = Ь оказалась равносильной задаче отыскания единственного минимума функции F{y)- Одним из методов минимизации функций многих переменных является метод покоординатного спуска. Пусть имеется приближение {х\, ..., х^) к точке экстремума функции F{xi Хт). Рассмотрим функцию f (х,, jc^ х^) как функцию переменной х, и найдем точку х\ ее минимума. Затем, исходя из приближения (х}, х^ л:^) путем Рис. 6 8 4. ,, х^), находим сле- минимизации функции F(^x\, х^, х^, дующее приближение (х\, х', х^, ..., л:^). Процесс циклически повторяется. При уточнении компоненты хд происходит смещение по прямой, параллельной оси хд до точки с наименьшим на этой прямой значением F{x) = с. Очевидно, эта точка будет точкой касания рассматриваемой прямой и линии уровня f(x) = c. Поэтому в двумерном случае картина приближений выглядит как на рис. 6 8 4 Применим метод покоординатного спуска для отыскания экстремума функции F. Обозначим F{y) + {AX,X) = {A{y— X), у — X) через Fo{y). При минимизации по переменной х^ происходит перемещение параллельно оси Хл до точки, где /^ijj=0.
МГТОД ЗЕЙДГЛЯ 367 Следовательно, новое значение Xh определяется из уравнения Fi, = 2(ia,yx,-b^,j = 0. того же, что и в случае метода Зейделя. Таким образом, приближения покоординатного спуска минимизации функции F и метода Зейделя решения исходной системы совпадают. Если дг« ф X, то хотя бы одно из уравнений системы не удовлетворяется, и соответствующее значение р'х^^ (*") ^ 0. Выберем среди таких k наименьшее. Тогда при уточнении компонент л, JCft-i мы остаемся в точке дг", а при уточнении компоненты л:к происходит смещение в сторону меньших значений f (дг),при \точнении остальных компонент значение F{x) не возрастет. Таким образом, F (л:"+') < F {х"), Fq (х«+') < f о («"). и поэтому при X" Ф X. Вследствие D) имеем равенство г"+* =—В-^Сг^. Соотношение F) можно переписать в виде при г" =?ь 0. На сфере ||г"|| = 1 величина (f(f^) непрерывна и поэтому достигает своего наибольшего^ значения фо. Так как Л > О, то всегда ф(г") > О и поэтому фо>0; положим V'qpg = к. Вследствие G) имеем к^ < 1. Очевидно, ф(сг")= ф(г") при любом с ф 0; поэтому фС»"") = ф(»'"/1к"||)-<^ А.2 при любом г". Отсюда получаем неравенство Щ;рт<^'' (8) и таким образом, Fo{x'^)^k''^FM. Из C.8), C 9) следуют неравенства (min Х'а) \\y-X\f,^Fo (у) < (max х'а) \\y-X |g; отсюда получаем оценку скорости сходимости \\X'^-X\\,^ f т1пЯ,д f mlпX^J^ f miaX'^ Теорема доказана.
368 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ. VI ч Из рис. 6.8.5 можно' усмотреть, что метод Зейделя сходится быстрее, если направление осей эллипсоидов близко к направлению координатных осей, т. е. матрица А близка к диагональной. В случае, изображенном на рис. 6.8.4, последовательные приближения смещаются все время монотонно влево и вниз. Такая картина — монотонное смещение отдельных компонент все время в одном и том же направлении характерна для ряда классов матриц. При этом довольно часто монотонное смещение наблюдается именно у .компонент решения, скорость сходимости которых наиболее плохая. В этих случаях для ускорения сходимости прибегают к методу релаксации, который заключается в следующем. После уточнения каждой координаты по методу Зейделя производится дополнн- ' тельное смещение в том же направлении на р-ю часть этого смещения (р необязательно положительно). Таким образом, приближения метода релаксации отыскиваются из соотношения b('J;"V'^^"==^^- (>о) ■ Рис. 6.8.5. Как показала практика вычислений, при Л > О целесообразно брать показатель релаксации р в пределах 0<;р<; I; в случае О < р < 1 метод релаксации обычно называют методом ■сверхрелаксации. На рис. 6.8.4 о — изображения приближений метода Зейделя, * —метода сверхрелаксации при р = 1/4. Например, для уменьшения ошибки в е~* раз при решении системы G.20) методом Зейделя требуется ^ch-4n{&-^) итераций. Если применить метод сверхрелаксации при р=1—ah, со > О, то потребуется ~с(сй)/г~Чп(е'*) итераций. Подбор параметра и в этой задаче требует детального рассмотрения. В частности, во многих случаях оптимальное значение параметра релаксации р определяется экспериментально. Иногда параметр релаксации р выбирают зависящим от пи/. Для случая Л >0 еще раз обратимся к геометрической картине (см. рис. 6.8.4). После уточнения компоненты Xi по методу сверхрелаксации при —1 < р < 1 мы попадаем в точку, лежащую внутри или на границе эллипсоида F{x) = F{x°), Рассуждая так
§ 0] МЕТОД НАИСКОРЕЙШЕГО ГРАДИЕНТНОГО СПУСКА 369 же, как при обосновании сходимости метода Зеиделя, заключаем, что при —1 <р< 1 всегда Fo(*""''') </^о(-«"). если х^ФХ. Задача. Доказать, что при условии \рп\ ^4<1 метод релаксации сходится со скоростью геометрической прогрессии. § 9. Метод наискорейшего градиентного спуска Раопространенным методом минимизации функций большого числа переменных является метод градиентного спуска. Последующее приближение получается из предыдущего смещением в направлении градиента функции F{x). Таким образом, каждое следующее приближение ищется в виде je«+i = je«_6„gradF(x"). A) Приведенное описание не определяет алгоритм однозначно, поскольку ничего не сказано о выборе параметра Ьп. Например, его можно определять из условия минимума величины fU"-6„gradf (*")). B) В этом случае рассматриваемый метод называют методом наискорейшего градиентного спуска, или просто методом наискорейшего спуска. Для функции F{x) = {Ах,х)—2F,ж), соответствующей системе линейных уравнений с матрицей Л >■ О, задача нахождения минимума решается в явном виде. В этом конкретном случае gradf = 2(Лл;-6) и хп+\ = jK« _ 6^2 (Лж" — Ь). Обозначим 26„ через Л„, т. е. положим *"+' = *" —Л„(Лж" —6). C) Пусть ф(Л„) = f (*"+'). Вспоминая, что А = А', вычислим ф'(Л„): = 2 (Лх"+' - 6, -^1^) = - 2 (Лх''+' - Ь, Лх" - Ь). С учетом C) уравнение ф'(Д„) = 0 имеет вид {Ax'^ - ft - Д„Д [М" - Ь), Лх" - 6) = О,
370 откуда ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ Л _ (Ax^^ - Ь, Ах"- - Ь) ^"~" (A(Лx'^-b), Ах"-Ь) ■ [ГЛ. vr D) На рис. 6.9.1 изображено расположение приближений метода наискорейшего спуска и линий уровня функции Fo. Итерационный процесс C), D) называют методом наискорейшего спуска решения рассматриваемой системы линейных уравнений. Пусть 5а с [ц, М]. Теорема. Приближения метода наискорейшего спуска удовлетворяют соотношению ' ^оЮ<A#)"/^о(*°). E) Доказательство. При у" = х" произведем одну итерацию оптимального одношагового итерационного процесса Рис. 6.9.1. уП+1 = у1 . {Ау^ - Ь). Ошибки итераций г^ = у^ — X связаны соотношением 2 F) rfl+l (^-тппг'^)'"- Пусть е\, ... — ортонормированная система собственных векторов матрицы А: Aei = Xiei. Поскольку [i ^ А,^ ^ М, то при всех i выполняются соотношения М-ц М + ц <1 М + ц i^i< М-м. и, таким образом, 2 , I ^ М — [1 G) Пусть r" = 2ci^i. Справедливы соотношения с?.
4 91 МЕТОД наискорейшего ГРАДИЕНТНОГО СПУСКА 371 С учетом G) получаем Поскольку Fo(y") = (/4r", г"), то это означает, что Приближение у"+' можно записать в виде A) Поскольку jc"+* минимизирует функционал F(x) среди всех приближений вида A), то Отсюда следует оценка Fo (*"+') < Fo (»"+') < [wij-J ^0 (*"). а, следовательно, и справедливость утверждения теоремы. Аналогично (8.9) можно пoлyчиtь неравенство \X'^-Xh^ A^)Ут«^-*|Ь- Хотя на каждом шаге метода наискорейшего спуска уменьшение величины Fo{x) заведомо не меньше, чем у итерационного процесса F), мы получили примерно одинаковые оценки скорости сходимости. Однако есть принципиальная разница в этих методах и оценках. Для написания итерационного процесса F) требуется информация о границах спектра ц, М. Для применения методаC),D) такой информации не требуется. Однако у метода нацскорейшего спуска есть следующий недостаток по сравнению с простейшим итерационным процессом F). При нахождении каждого следующего приближения он требует ие одной, а двух трудоемких операций умножения матрицы на вектор. Двукратного умножения матрицы на вектор при каждой итерации можно избежать следующим образом. Обозначим то" = Лдс"—b и перепишем C) в виде *"+' = х" - Д„я;". (8) Умножая «лева на Л и вычитая Ь, получим w'^+^ = w'^ - ^nAw'^. (9) Формулу D) для определения Д„ можно записать в виде . (в>". w") (Aw'^^, w") A0) В процессе итерации запоминаются векторы х", w^^ и на каждом шаге последовательно вычисляются Лш", Дп, x"+^, w"+^. В исходном методе
372 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ ГГЛ Vt наискорейшего спуска C), D) ошибка на шаге итерации равносильна возмущению начального приближения и, поскольку процесс сходящийся, ее влияние должно иметь тенденцию к затуханию. В итерационном процессе (8) — A0) имеется более сложная зависимость между погрешностями последующих приближений, приводящая часто к существенному росту суммарной вычислитель- Hoii погреинюстн с ростом п. Поэтому разумно время от времени прерывать, ход вычислений по формулам (8) — A0) и производить одну итерацию с помощью формул C), D). После такой операции погрешность, являющаяся следствием округлений на предшествующих шагах, по отношению к последующим вычислениям играет роль погрешности начального условия и поэтому имеет тенденцию к убыванию Реальный выбор итерационного процесса должен производиться с учетом имеющейся информации о границе спектра^ объема н состава памяти ЭВМ. Например, при решении сеточных аппроксимаций дифференциальных уравнений в частных производных иногда идут по следующему пути. Проводят вспомогательную вычислительную работу по -возможно более точному определению значений ц и М, а затем применяют оптимальный линейный итерационный процесс. § 10. Метод сопряженных градиентов Этот метод также предназначен для решения систем уравнений Ах = Ь с положительно определенной матрицей А. Пусть х° — начальное приближение к решению. Образуем вектор x'^ = x°-{- Sa</lV°, r°=Ax°-b. (I> 1=0 Поставим задачу минимизации величины F{X'^) = {AX\ x'^)-2{b, л") за счет выбора параметров а,. Имеем равенство Имеем ■^^ = '^'■0 » Лх"-6 = г«-Ь2а,-Л'^'гО, B> 1=0 условия Fa. = 0 образуют систему уравнений (Лх^-й, Л'гО) = 0, / = 0, ..., «-1. C>
§ 101 МЕТОД СОПРЯЖЕННЫХ ГРАДИЕНТОВ 373 Подставляя сюда выражение Л*" — Ь, получим систему линейных уравнений (ЛлУ)+2а,(Л'+'Л Л'/) = 0, j = 0,...,n-l, D) i=0 относительно параметров ао,..., ап~и При заданном начальном приближении х° можно выбрать какое-то п, решить систему уравнений D) относительно неизвестных «i и получить приближение х". Возможны различные пути использования описанного алгоритма. Можно последовательно осуществлять подобные шаги, беря в качестве начального приближения на каждом шаге приближение, полученное из предыдущего шага. Другой"путь состоит в построении последовательности векторов jc" = «о + 2 аМ' {Ах° — Ь), 1=0 минимизирующих F{x) при каждом п. Поставим задачу построить рекуррентное соотношение, связывающее эти векторы аналогично рекуррентным соотношениям оптимального линейного итерационного процесса. Пусть «1, ..., Вт—полная ортонормированная система собственных векторов матрицы А. Представим вектор г° = Лх° — Ъ т В виде г°=2с/в/. Линейная комбинация собственных векто- ров, соответствующих одному и тому же собственному значению, также является собственным вектором, соответствующим этому собственному значению. Поэтому, объединяя слагаемые, соответствующие одинаковым собственным значениям, и выбрасы- ч вая нулевые слагаемые, можно написать равенство г° == S gi'< здесь g, ф О, ?4i ..., ^q — различные собственные значения матрицы А Поскольку собственные векторы, соответствующие различным собственным значениям, ортогональны, то (gj, gj) = О при i ф \. Покажем, что векторы г°, ..., Ai-^i^ линейно независимы. 0-1 Пусть это неверно; тогда 2 Yfc^*''° = 0. Иначе это соотношение fc=0 можно переписать в виде fc= -о \1=-\ I /=1
374 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ. Vi 1-1 где Я(А)=2уа^*- Вследствие линейной независимости векто- fc=0 ров gj имеем равенства Приходим к противоречию, получив, что многочлен степени, меньшей q, имеет q различных нулей. Из доказанного следует, что вектор Л*" - 6 = г" + S аМ'г<^ 1=1 отличен от нуля при п <. q. Покажем, что хч = X, Действительно, определим многочлен /=1 й=1 При согласно B) и определению Qq(/l), имеем Q следовательно, дС реализует минимум функционала F{x), и поэтому х^ = xfl = X. Лемма. Величина a[J_, отлична от О пр« п ^ <7. Доказательство. Если а^_, = 0, то 0 = Лж''-& = гЧ5<Л'+'г° 1=0 и приходим к противоречию с утверждением о линейной независимости векторов г°, ..., А'^-'^г^. Пусть aj_, = 0 и j <. q; тогда вектор AxJ — Ь, согласно B), запишется в виде линейной комбинации векторов г° А'-^г"; в то же время, всле.чствие C), он ортогонален ко всем этим векторам. Отсюда следует, что Axi — 6=0, и, следовательно, / ^ q. Утверждение леммы доказано. Имеем совокупность равенств *! = *0 ^ „UO^ ■О' ■о _1_ „ ^ ^2 = jt0 4-a2rO + aMrO, X = X -f- • • • -]- ^q-1Л Г
§ 10] МЕТОД СОПРЯЖЕННЫХ ГРАДИЕНТОВ 375 Вследствие условия а' , Ф О эта система с треугольной матрицей может быть разрешена относительно неизвестных A^r^, j = 0, ..., q — I; в результате этого получатся соотношения Подставляя выражения А'~^г° в правую часть B), получим Л*'*-Ь = гЧ2'аМ'+'г''=т?(*'-*") при n<q. Применив к обеим частям оператор Л, имеем А (Л*" - 6) = S Y? {{Лx^ -Ь)- (Лхо - 6)) = 2 а? (Лж'-6). E)- 1=1 1—0 п+1 При этом, очевидно, 2с^" = 0- Соотношения C) можно пере- 1=0 писать в виде {A{Ax'^~Ъ\ Л'г") = 0, / = 0, .... п-2; отсюда и из B) следуют равенства (Л (Л*"-6), Лж*-Ь) = 0 при А:</г-2. Точно так же получаем (Лж''-6, Лж*-6) = 0 при А:<п-1. Умножая E) скалярно на векторы (Лж* — 6), /г = 0, .... п — 2, получим равенства 0 = аЧ (Лж*-Ь, Лж*-Ь), откуда следует, что все сг^ = 0 при k<n~\. Таким образом, E) перепишется в виде п+1 Л(Лж''-Ь)= 2 а?(Лж'-Ь); i=n— I применяя оператор А~\ получим равенство Лж''-Ь= 2 al{x'-X). i~n—\ Поскольку 2<^? = 0| то его можно записать в виде Ах" — Ь = а«_,ж''-1 + а^ж" + a;;^iX''+'. F>
•376 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕВРЫ Отметим, что проведенные построения имеют много общего с] построениями из § 15 гл. II. ■] Для рассматриваемых значений п <. q коэффициент fj+i всегда отличен от нуля. В самом деле, предположим противное. Тогда, подставляя в равенство и+1 Л*"-6- S •а«(ж'-*о)=0 выражения лх"-б = г° + .2а;'л'+'Л i=n-\ 1=0 А-1 X —x=Zia,Ar, k=n— \, п, 1=0 имеем соотношение вида П я П о I л а„_,Л г + ... =0, противоречащее линейной независимости векторов г" A'^r'^j,. Умножая E) скалярно на Л**—6, k = n — \, п, получаем выражения для коэффициентов aJJ_, и а^: „ ^ (Л (Лх" - 6), Лх* - Ь) ^* ~ (Лх* - Ь, Лх" - 6) ' поскольку Ах'' — 6=5^0 и л > о, то о"_1, <^п^ °°' Воспользовавшись тем, что о^+1 = — (У^ — а'^_^, мы можем переписать F) в виде Лж« — 6 = а,1 (*" — *"+') + сг^_1 (*""' — *"+')• G) Определяя при каждо.м п значения коэффициентов а^ и cr^_i, можно последовательно находить из этого соотношения векторы л- , ... . Вектор x^ определяется непосредственно с помощью решения системы D) и, оказывается, совпадает с первым приближением, в методе наискорейшего спуска. Для нахождения x"+' из G) необходимы две операции умножения матрицы на вектор: Лх" и А{Ах"), требующие каждая ~2т' арифметических операций, и вычисление нескольких скалярных произведений. Таким образом, этот итерационный процесс примерно вдвое более трудоемок по сравнению с оптимальным линейным итерационным процессом. Трудоемкость метода можно уменьшить следующим образом. Из G) следует равенство А (Лл-" - 6) = a;j ((Лх" - 6) - {Ax'^+^ - Ь)) + + o'^,^{{Ax'^-^-b)-{Ax'^+^-b)). (8) При одновременном использовании формул G), (8) операция умножения .матрицы на вектор на каждом шаге производится однажды — при вычисле-
5 10] МЕТОД СОПРЯЖЕННЫХ ГРАДИЕНТОВ 377 НИИ произведения А(Ах"—Ь); векторы Ax'^+^ — Ь определяются из рекуррентного соотношения (8). Однако как при таком алгоритме, так и при непосредственном использовании формулы G) происходит существенное накопление вычислительной погрешности. Чтобы избежать этого, применяется следующая модификация алгоритма. Расчетную формулу G) можно записать в виде ^п+1 = ,.« 4- а,„ {х" - *"-') -f р„ (Ах" - 6), (9) где Вместо того чтобы вычислять «п и р„ по этим формулам, будем каждый раз определять их, минимизируя по «п и Рп функционал F^x"+^). Для вычисления «п и Рп получатся расчетные формулы а„ = ({Ах" - Ь, Ах" - Ь){Ах" - Ь, А{х"- х"'^)) - (Ах"-Ь. х" - х"-') Й (-^х" - Ь), Ах" - 6)) а„^ р„ = ((Лх« - 6, х" - х"-') (Л (х" - х"-'), Лх" - Ь) - (Лх" - Ь, Лх« - 6) {х" -х"-\ А {х" - х"-'))) а„, A0) I "'""" {х"~х"-\ А{х"-х"-^)) {Ах"-Ь, A{Ax"-b))-{Ax"-b, А{х"-х"-^)У * Каждый шаг итераций требует уже трех операций умножения матрицы на вектор. Очевидно, при отсутствии округлений эти итерационные процесеы выдают одну и ту же последовательность векторов х". Однако последний итерационный процесс является самоисправляющимся — влияние ошибок округления, допущенных на предшествующих шагах, постепенно затухает. Так же, как в случае метода наискорейшего спуска, может оказаться наиболее разумным чередование итераций по формулам G) —(8) и (9) — A0). Заметим, что при отсутствии округлений (Ах" — Ь, х"—*"-')= 0; однако если в A0) эту величину заменить нулем, то процесс может утратить самоисправляемость. Построенный итерационный процесс имеет много различных названий, в частности метод Ланцоша или сопряженных градиентов. Произведем оценку скорости сходимости. Для приближении оптимального линейного итерационного процесса у" имеем: если i ТО i где 1г,1<|/И-'=|г„(-^I Отсюда следует оценка* F^{y")=={A{y"~X), y'^-X) =
378 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ (ГЛ. УГ Приближение метода сопряженных градиентов минимизирует функционалы F к Fo среди всех приближений вида A), которому принадлежит также у". Поэтому Как и ранее, получаем оценку скорости сходимости в обычной норме ' II *" - ;^ lb < "|/у-Un г'II *" - дс lb- Рассматриваемый процесс имеет ту же по порядку оценку скорости сходимости, что и оптимальный линейный итерационный процесс. Его существенным преимуществом оказывается то, что не требуется знания границ спектра. Поскольку после q ^ т итераций в предположении отсутствия округлений получается точное решение задачи, этот метод относится также к классу точных методов. Пусть матрица А имеет / ненулевых элементов, естественно / ^ т. Для проведения одного шага итерации требуется 0{1) арифметических операций, и поэтому для получения точного решения потребуется qO{l) = О {ml) арифметических операций. Таким образом, в случае матриц с малым числом ненулевых элементов этот метод оказывается также и эффективным точным методом. При этом он предъявляет относительно малые требования к памяти ЭВМ. Если размерность системы m велика, часто хорошее приближение к решению получается при числе итераций п <^ q. Рассмотрим случай, когда не выполнено условие Л > 0. Система А*Ах = А*Ъ эквивалентна исходной, но может оказаться, что число ненулевых элементов матрицы А*А много больше I. Тогда будет разумнее не выписывать эту систему в явном виде, а каждый раз вычислять векторы вида А*Аи последовательным умножением и на матрицы А и А*. § 11. Метод Моите-Карло решения систем линейных уравнений PdccMorpeHHbie выше итеративные методы решения систем линейных уравнений при своей реализации требуют хранения в памяти машины всех компонент решения, что при очень больших т является обременительным. В случае, когда порядок системы очень большой, а коэффициенты системы вычисляются По простым формулам, может быть применен метод Монте- Карло. • Рассмотрим общую схему метода. Пусть требуется вычислить сумму N N -S = 2 **• Представим каждое 6t в виде 6^ = ?^/^. где Pj^ >0, ^ Р^ = '• Пусть I— случайная величина, принимающая значение k с вероятностью р^.
§11] МЕТОД МОНТЕ КАРЛО ДЛЯ СИСТЕМ ЛИНЕЙНЫХ УРАВНЕНИИ 379 Выберем М независимых значений к., ..., к^^ этой величины и положик. М Имеем равенства N N d^ = D/, = М/1 - (М/,J = 5; рЛ - S^ = 5; ^-5". fe=i fe=i * Вследствие независимости значений f* справедливо равенство D(S„) = -tt-» Применяя неравенство Чебышева, получаем оценку: при О < т) < 1 с вероятностью 1 — т) выполняется соотношение ( S„ — S | ^ dl^\\M. Таким образом, при больших М величина Su с большой вероятностью близка к S. Для получения значений случайной величины \ можно поступать следующим образом. Обычно на машине имеется датчик случайных чисел ил» программа псевдослучайных чисел, выдающие значения i\\, ... некоторой случайной величины, равномерно распределенной на [0,1). Для каждого значения r\i определяют число ki такое, чго t)i принадлежит полусегменту ^ L ,=i ,=1 / и полагают \i = ki. Вероятность попадания r\i на полусегмент п, равна р.; следовательно, полученная таким образом величина | принимает каждое значение s с вероятностью р,. Проще всего было бы взять р^ ^ -jj-, тогда I ~ /iPi^^-jiT» и поэтому величина 5' определялась бы го простой фор- ^■J * iV 1=1 муле- Однако, как видно из A), величина d, характеризующая точность результата, существенно зависит от выбора значений р». Очень яасто такой простой алгоритм не дает удовлетворительного результата и при решении конкретных задач методом Монте-Карло приходится затрачивать большие усилия на оптимальный выбор значений р* применительно к данной совокупности чисел bk. Рассмотрим практически важный случай, когда все Ь* ^ О, Будем мини- N мнзпровать величину d^ методом Лагранжа при условии 2 Pfc°™'' Функ- ция Лагранжа имеет вид ф(Р1 pjv)=S/-^'+mS''*-4-
380 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ - [ГЛ. VI ,2 Из условия Ф„ = о, /г = 1, ..., ЛГ, имеем т- + Х = 0. Отсюда р. = —^, " Рк /Я. N N _ Из условия 2 Pft ~ ' имеем 2 6fc = V^. т. е. |/^Я. = 5. Таким образом, k=i k=\ bk „ разумнее всего взять р^ = -^. При таком выборе р. Для реализации оптимального распределения рл нужно знать искомую величину S. Иногда поступают следующим образом: подбирают функцию В» ^ О п такую, что Ьк « Вц, и суммы (Тп = 2 ^* известны при всех п; затем по- Bk лагают р^ = . Перейдем непосредственно к применению метола Монте-Карло для решения систем линеййых уравнений. Пусть нам нужно найти компоненту (х)^ решения системы х^=Вх-\-с. Пусть матрица В такова, что итерационный процесс x"+' = Вх" +с сходится к решению системы X при любом начальном приближении х". При х" = О имеем п х1=с, x= = c + Sc, .... х"+'= 2 S'c. /=о Вследствие сходимости процесса при достаточно большом п величина (x"+')„ достаточно хорошо прибл^1жает (X)q. Из соображений близости х"+' к X выберем значение п и займемся отысканием {х"+^)д. Имеем т mm (^'"+'Ь=с,+ 2 ^пс,^+ ... + S ••• S ^л-'-Ч-./Л- B> /,=1 /.=1 1^=1 п I п п Таким образом, формально задача отыскания значения (х"-И), равносильна только что рассмотренной задаче отыскания величины S. Одипко при очень больших N непосредственное применение рассмотренного ранее способа бессмысленно из-за конечности числа разрядов чисел, используемых в ма- шине.Числа в машине округляются до некоторых величин вида 62"', где k — целое, t — число разрядов чисел в машине. Поэтому длины полусегментов Я1, получаемых при реальных вычислениях, будут кратны 2"' и при значениях ри сравнимых с 2"', искажение в значениях случа1"|ной функции | будет очень больши.м. В частности, число ненулевых полусегментов яг из-за конечности разрядной сетки всегда не превосходит 2'. В формуле B) число слагаемых Л/ > т", и поэтому этот метод непосредственно неприменим уже при не очень больнн1х значениях тип. Чтобы избежать этого, поступим следующим образом. Пусть p,j ^ О п удовлетворяют условиям т 2р,.у=1 при (=1 т, P{j>0, если bfj^Q. C) Пусть I', '=1, ..., "i, — независимые случайные величины, причем случайная величина g" принимает с вероятностью p,j значение у. Разыграем значение случайной величины %'', пусть оно будет равно /i; затем разыграем эна-
§ 111 МЕТОЛ МОНТЕ-КАРЛО ДЛЯ СИСТЕМ ЛИНЕЙНЫХ УРАВНЕНИИ 381 чснне случайной величины |'', пусть оно будет равно /г н т. д.; разыграем значение случайной величины ^ ""', пусть оно будет равно ;'«. Положим ^/, /„ = '^</ + W/.+ ••• +U---fin-,ln'ln где fii=^ ^{jlPii> причем fu = 0, если b^, = 0, р,у = 0. Осуществляя такой розыгрыш М раз, получим М последовательностей у' yj, и М значений Si f Положим Af n Вычислим MS, , . Вероятность того, что получится последовательность /1, •••> Уч. равна р .... р. , . Отсюда 41] 'п—1'П MS/ / = т т = S • • • Ъ {<^, + U'^/, + • • • + Uu ■ • • ^y„_,///J р^/. • • • Р/„-./„- п правую часть этого равенства представим в виде 2 '"ft> где m m 7'о= S ••• 2 "аРя!. ••• Pf I < m m ^*=2 ••• Дц--/у,_,//ул/,---р/„_л "ри й>о- Пусть тогда 7" » ^0, Ч Осуществляя суммирование последовательно по переменным /п, ■.■, /ft + i при помощи равенства C), получим а/=1. Отсюда и из равенств ttlPij = bii следует, что Го = Cq, in т
382 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ при fe>0. Таким образом, 7"^ = (fi^c),?; с учетом равенств и B) получаем _ WS/, /„ = U''^'),. Отсюда MS<^'= (*"+'),. D Sy у Так как D S'^* = ''"" " , то при больших М величина S'^' сбол^ шой вероятностью близка к (x'^■^^)q, и поэтому можем считать {X)q « S'^ Значения Sj . можно вычислять в процессе розыгрыша чисел /|, .,., /д пользуясь рекуррентными формулами ^.• %• .../,=4 .../,=% ••^■//-. + ^л /Л/' ..../,_,^,/^"р»'>1 причем л q и W и '9/1 Если при реализации алгоритма пользоваться этими формулами, то вычи« сление значения 5<*'' потребует хранения в памяти машины лишь конечногв (не растущего при уИ, п-»-оо) множества чисел. Так же как при вычислении интегралов высокой кратности, применени«| метода Монте-Карло для решения систем линейных уравнений требует большой осторожности. В частиости, особое внимание следует уделить во-- просу удачного выбора совокупности величии рц. Проиллюстрируем это высказывание на примере простейшей модельное задачи. Пусть на отрезке О :^ / :^ 1 решается уравнение ; x"{.i) = Q. *@) = Со. *A) = с,. (Ai Зададимся шагом h = l/L, L = 2/; / — целое, и иапишем сеточную аппроксимацию *о = '^0' *fc+i-2*ft + *fc-i=0, fe = l,.... Z.-1, х^ = с, E) (в данном случае исходная задача D) аппроксимируется без ошибки). Перепишем E) в виде Хо = Со, j«i_rb^^+j__ ^=1,.... z._i, F) Пусть X = Вх -i- с — матричная запись соотношений F). Будем искать компоненту X,. Матрица В симметричная н Лд = соз-^-, *=),..., Л—1.
^ ]]] МЕТОД МОЦТЕ-КАРЛО ДЛЯ СИСТЕМ ЛИНЕЙНЫХ УРАВНЕНИИ 383 Поэтому тах|Я,^ |==cos-p. II B'^ Из = (cos ^j" = exp [п in cos -=.) = exp (- n (^ + 0 [ff]). G) Для малости погрешности приближенного значения (x"+')( существенно условие II б" Из < I, поэтому следует взять л > и. (8) Пусть, например, все Рп^ . , . и для определенности « — четное. Тогда _(-^^^ при |/-/| = 1, если (;, у)=И=@, 1), (L, L-1), ГЦ — I ^ о при остальных (/, /). Если п>1, то величина S, , может содержать слагаемое м 'п где |/р+1 —Ур| = 1 при р= I, .,,, п — I. Величина этого слагаемого I—"^—I Со, а вероятность появления (L + !)""• Если g —случайная величина, принимающая значения y^ с вероятностями д., то °l=-Ii^i {У1 - Щ' > Я1 {У1 - М|J i при любом 1. Поэтому DS, ,.>(t + .r»((i^)V.-Mi, ,J Мы выбрали такое л, что MS, , — (*''■)/ — */• Так как xi = {cq + + Ci)/2, то главный член правой части последнего неравенства имеет порядок ((L+l)/4)". Сопоставляя это соотношение с (8), видим, что уже при небольших L мало надежды иа получение значения х^ с приемлемой точностью при разумном числе испытании М. Пусть теперь ( ^ при :^0, L, |i-/|=l, I О во всех остальных случаях. Рассмотрим случайное блуждание частицы по точкам jh: j = О, ..., L. Пусть блуждание начинается в момент времени г = О в точке /Л, н пусть из каждой точки jh при / # О, L за единицу времени частица переходит в одну из точек (/±1)Л в каждую с вероятностями '/г; если частица попадает в одну из точек / = О, t = I, то она там я остается. Пусть /Л,/i/t, ... • ••. jnh, ... — последовательные положения частицы; положим \ Со при //1 = 0, О при ;■„ Ф О, L, Ci при in = L.
384 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ. VI Нетрудно проверить, что вероятность такой траектории частицы совпадает с вероятностью появления последовательности /i, ..., jn при розыгрыше метода Монте-Карло для решения исходной системы с таблицей вероятностей (9), причем 5; г =>S; ,- • Мы видим, что в рассматриваемом случае I Sj^ ^^ I < г = max (I Со 1, I Ci I) и, следовательно, 0,5,- , ^ с^ при всех L п п. 'г ••" 'п Здесь уже есть возможность получить решение с умеренной точностью при приемлемой затрате машинного времени. При анализе трудоемкости описанного выше метода следует иметь в виду, что в соответствии с (8) время, затрачиваемое на розыгрыш одной совокупности /|, ..., /'„, растет с L Поэтому, например, в случае аппроксимаций краевых задач для обыкновенных дифференциальных уравнений метод Монте-Карло не выдерживает конкуренции с точными методами. Еще одно замечание общего характера. Пусть qn—вероятность собы- тия f^i ...fi I =0, тогда величина о„—On-i равна вероятности собы- ^'1 'п—\'п тия f„, ... f, , =5^ О и /.,... f, ; = 0. Если Qn -^ 1 при Л -^ 00, ТО ^'1 'Л-2'л—I ^'1 'п—\'П величина оо л=1 равна математическому ожиданию значения и, при котором произведение f./ ... f : I впервые окажется равным нулю, -"l 'n-i'n В приложениях часто удается выбрать величины Pij так, что дисперсии D5,. , равномерно ограничены по п, а число Q не очень велико; тогда ' ' I' *''' 'п поступают следующим образом: число п заранее не фиксируется, а розыгрыш совокупности /1, ..., /„ продолжается до тех пор, пока не окажется ft ,/ =0- 'л —|'л Задача. Доказать, что для такого алгоритма •^•5/, /„ = (*)<?• При решении задачи методом Монте-Карло следует также уделить существенное внимание записи системы в виде ж ^ Вж-j-с, для которого итерационный процесс x'^+^ = Вх"-\-с сходится по возможности быстрее (это приводит к уменьшению числа п, т. е. трудоемкости одного испытания). Кроме удачного выбора величин p,j для целей уменьшения D 5, , '1' •■" 'л может послужить знание хорошего приближения х" к решению. При наличии такого приближения следует перейти к решению методом Монте-Карло системы г -= Вг + {с + Вх° - х") относительно '=^ — *", в этом случае можно ожидать уменьшения величины дисперсии DSj ^ _ _^ , , а следовательно, и требуемого объема вычислений.
5 12] МЕТОДЫ СО СПЕКТРАЛЬНО ЭКВИВАЛЕНТНЫМИ ОПЕРАТОРАМИ 385 § 12. Итерационные методы с использованием спектрально эквивалентных операторов Кроме методов простой итерации вида x'^+^=x'^-(l(Ax'^-b) A) часто применяются итерационные методы Bx''+^ = Bx'^-aiAx'^-b), B) где матрица В ф Е легко обратима. Если B) умножить на В"*, то получится X =.x'^-aB-'{Ax'^-b). Таким образом, итерационный процесс B) равносилен методу простой итерации с матрицей Е — аВ"'Л. Рассмотрим случай, когда Л > О и отношение максимального М и минимального ц из собственных значений матрицы А велико. Тогда рассматривавшиеся ранее итерационные процессы сходятся медленно. Пусть б >> О и ,, (Ах, х) . с (Ах, х) ,„, Предположим, что матрица В легко обратима и Mi/jii <С < M/ji. В случае, когда отношение Mi/(ii пе очень велико, итерационные методы типа рассматриваемых в настоящем параграфе принято называть итерационными методами с использованием спектрально эквивалентных операторов. Покажем, что при удачном подборе а метод итераций B) обладает лучшей сходимостью по сравнению с простейшим методом A). Точное решение X удовлетворяет равенству ВХ = ВХ-а{АХ-Ь), вычитая его из B), получим уравнение относительно ошибки Бг"+' = Вг"-аЛг". D) Приведем матрицу В при помощи ортогонального преобразования к диагональному виду. Пусть В = U*AU, где Я, О Л = Я/п и — ортогональная матрица, 13 Н. с. Бахвалов
386 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ Через У В принято обозначать матрицу и' о о + VXn и. Очевидно, УВ > О, [УЪ)' = У'В, У~вУв = В. Умножнм обе части D) слева на {УВ) и введем новые величины УВг"' = ь'* Получим равенство где Вследствие соотношений А = А', (Кв) = (У^5) матрица с\ симметрична. Рассмотрим выражение ..■/^ч_ ^Сх, X) W (ДСI = —. г—. ^ ' (*, *) Положив {ув) х = у, можем написать равенство Вследствие C) имеем да(дс)е[ц,, Mi]; поэтому все собстеенные значения матрицы С также принадлежат отрезку [р,,, Mj]. 2 При а = ти—; собственные значения матрицы Е — аС по модулю не превосходят ^T+V"- Поэтому || £ — аС ||з < jpq^, и аналогично G.7) имеем "«'''ь<(^;^Г||«°1ь. F) Напомним, что II V'^ ||з = Viy^?~Yf^) = /{Br", r"). Если о < р,2 ^ . ^' *^. ^ Мг при всех у, то из F) следует оценка \У» У) Так как функция М-ц I - (ц/М) М + ц ~ 1 + (ц/М)
; 12] МЕТОДЫ СО СПЕКТРАЛЬНО ЭКВИВАЛЕНТНЫМИ ОПЕРАТОРАМИ 387 МОНОТОННО убывает с уменьшением М/р,, то скорость сходимости нового итерационного процесса лучше. При окончательном решении вопроса о переходе от итераций по формулам A) к итерациям по формулам B) следует учесть относительную трудоемкость этих итераций; если итерации по формулам B) существенно более трудоемки, такой переход может оказаться нецелесообразным. Задача. Пусть Т{А)—трудоемкость одной итерации по формуле A), Т{В)—трудоемкость одной итерации по формуле B). Привести соображения в пользу того, что переход к итерациям по формуле B) целесообразен, если Т{В) Т(А) М| — [1, М — fi По аналогии с тем, как по итерационному методу A) был построен метод B), можно построить соответствующий итерационный метод для любого из рассматривавшихся в §§ 7, 9, 10. Пусть имеется итерационный процесс, где ошибки последующих приближений связаны равенством гП+1=(е- ^a^A^\r'^. Напишем равенство v'^+^=lE-^a^C^\v'^, G) , положим v"- = V~B Гп н умножим G) слева на У^. Получим уравнение В/'+> = Вг"-^ а, Ub-')'-' аЛ Такое уравнение для ошибки соответствует итерационному процессу k Bx'^+^ = Вж" - 2 а/(ЛВ"')'"' {Ax^ - Ь). (8) Если произвести оптимизацию параметров aj так, чтобы оценка отношения норм |»"+Ч1з/11»1з была наилучшей, то, так же как в § 7, получится наилучший итерационный метод вида (8). Аналогом оптимального линейного итерационного метода G.16), G.17) будет итерационный процесс Ву"+> = Bg'^ + 5„й„-, в{y1-y'^-^) - -tj-^— (> + ^^u^-i) (Лу"- - Ь), где й„ строятся по М| и fi, так же, как Юл по М и ц. Объединением метода B) с методом наискорейшего спуска является следующий метод. Приближение *"+' ищется из соотношения Bx'^+^ = Bx'^-an{Ax'^-Ь), (9)
388 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ. VI При этом коэффициент Оя определяется из условия минимума F (х) = (Ах, *) - 2 F, х). из (9) получаем dx'^+^ В—^ = -(Ax^^~b). dan Поскольку da, 1 = 2 M;t«+' - 6. ^^5 = ■n \ dan I 2 {A U" - a„S-' (Лж" - 6)) - 6. _ S-' {Ax" - б)). dF(x'^+^) „ TO условие ;j = 0 является линейным уравнением относительно а^. din Аналог итерационного процесса A0.9), A0.10) имеет вид Bx"+^ = Вх" + an {Bx'^ - Вж"-') + Р„ (Ax'^ - Ь). Методы, рассмотренные в этом параграфе, получили широкое применение при решении систем уравнений Ах ■= Ь с большим разбросом собственных значений матрицы А >Q. § 13. Погрешность приближенного решения системы уравнений и обусловленность матриц. Регуляризация Предположим, что матрица и правая часть системы заданы неточно и вместо предъявленной к решению системы Ах = Ь (I) в действительности должна была решаться некоторая система А,х = Ьи Л, = Л + Д, 6, = & + 11. B) Пусть известны оценки ||Д|| и ||ц||. Займемся оценкой погрешности решения. Сначала выделим главный член погрешности. Будем обозначать решения A) и B) через X ц X* к разность X* — X через г. Подставим выражения Аи 6i и А!* в B) М + Д)и + г) = 6 + л. Вычитая A), получим Аг + КХ + Кг = % откуда Ar=^\-^X~^r и г = Л~' (т1 - ДХ - Дг). C) Если 11Д11 и \\г\\\ малы, то следует ожидать и малости ||г|1. Тогда •слагаемое Дг имеет более высокий порядок малости; отбрасывая
§ 13] ПОГРЕШНОСТЬ ПРИБЛИЖЕННОГО РЕШЕНИЯ. РЕГУЛЯРИЗАЦИЯ 389 ЭТО слагаемое, получаем г « Л"' (т1 - ^X). Отсюда следует оценка погрешности llrlKa^lU-'IdlTlll + IIAllllXII). D) Строгая оценка погрешности получается следующим образом. Вследствие C) выполняется неравенство II г IKlM-'llNII + IU-'llI Л illl X II+11Л-'1|| Л 1111 г II. Предположим, что 1И-М1 11Д11 < 1. Перенеся последнее слагаемое в левую часть и поделив неравенство на коэффициент при Ijrll, получим оценку 1,^1,^1и-||(И11 + 1|лЦ||Х1.|)^ E) "^ l-IU-'llllAII ^ ' Довольно распространен случай, когда погрешность матрицы системы существенно меньше погрешности правой части; в качестве модели этой ситуации будем рассматривать случай точного задания матрицы системы. Тогда, полагая в E) Д = О, имеем ikiKlU'Tiiit^ii. Для качественной характеристики связи между погрешностями правой части и решения вводятся понятия обусловленности системы и обусловленности матрицы системы. Абсолютные погрешности правой части и решения системы зависят от масштабов, которыми измеряются эти величины и матрица системы. Поэтому правильнее характеризовать свойства системы через связь между относительными погрешностями правой части и решения. Соответственно этому в качестве меры обусловленности системы принимается число -г —СП СМ.. И11\_ 11Ь!1 спп ^^ ,Р\1|:у|1 • 11Ь||)~1Х!Г"Р Согласно этому определению, имеем оцен1су относительной погрешности решения через меру обусловленности и относительную погрешность правой части: II У II *=*: ^ II f. II • y^l Так какг= А \, то sup|^=lU-4
390 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ (ГЛ. VI Шл-г Иногда удобнее иметь более грубую характеристику свойств- системы только через свойства матрицы А. Эту характеристику V (Л) = sup т называют мерой обусловленности матрицы А. Со- ь гласно этому определению и F), имеем оценку связывающую относительные погрешности правой части и решения только через свойства матрицы системы. Так как то vM)=iMiiM-'l. Любая норма матрицы ие меньше ее наибольшего по модулю- собственного значения, т. е. 11Л|| ^ max |Ха|. Собственные значения матрицы А и A-^ взаимно обратны; поэтому iu-i> max- Таким образом, В частности, при А = А' имеем ||/1 ||з = max | Яд | и |^-L = max-^=^^. тогда Рассмотрим вопрос о погрешности решения вследствие округления в ЭВМ правой части. Пусть, как обычно, t — двоичная разрядность чисел в ЭВМ. Каждый элемент й, правой части округляется с относительной погрешностью 0{2~'), т. е. абсолютной 0(|6i|2~'), поэтому N11 = 0A16112-0 и |ni = oB-'). Следовательно, |M<vM)OB-0.
^13] П01РЕШНОСТЬ ПРИБЛИЖЕННОГО РЕШЕНИЯ РЕГУЛЯРИЗАЦИЯ 391 При Практической работе вопрос о строгой оценке погрешности полученного приближенного решения системы линейных уравнений с помощью полученных неравенств или каким-либо иным способом возникает редко Однако информация о порядке погрешности решения часто полезна для получения качественных выводов о том, с какой точностью разумно решать задачу. Соотношения D), E) оценивают сверху погрешность решения, являющуюся следствием погрешности исходных данных. Из равенства C) видно, что оценки D), E) довольно точны, и поэтому обычно не имеет смысла стремиться получать решение задачи с погрешностью, существенно меньшей а. Системы уравнений и матрицы с большими значениями мер обусловленности принято называть плохо обусловленными, а с малыми — хорошо обусловленными Если правая часть D), оценивающая погрешность решения через погрешность исходных данных, или оценка вычислительной погреш^юсти недопустимо велики, полезно принять во внимание какую-то дополнительную информацию о решении рассматриваемой задачи. Подход к решению такой задачи должен быть таким же, как в случае других некорректных задач Рассмотрим простейший случай, когда А симметричная. Пусть Xi, ..., ^=7^0 — ее собственные значения, упорядоченные в порядке убывания |Х,|, «i, . ., Ст—соответствующая ор- тонормированная система собственных векторов. Решением системы Ах = Ь является вектор X-S (». е.) 1=\ При реально заданной правой части Ь = Ь -\-г\ решением будет m ■ _ У(». et)-f (П. е.) *=Г г=1 Я. ■'^■ Коэффициент —^—^ может оказаться очень большим при малых Хг, что приведет к сильному искажению решения. Иногда заранее известно, что в разложении искомого решения задачи т Zi CtCi коэффициенты с„ соответствующие малым по модулю Яг, малы. В этом случае следует принять какие-то меры с тем, чтобы «отфильтровать» эти составляющие решения; При небольших т для решения этой зада'чи иногда применяется следующий способ: задаются некоторым </ > О, находят
392 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ. VI все Xi и е,- при i ^ q и полагают er. q следует подобрать, исходя из дополнительной информации о задаче. Другие два способа проиллюстрируем на примере матриц, где все Ki > 0. Первый способ. Задавая некоторое а, находим решение х" системы (а£Ч-Л)ж" = 6; очевидно, оно записывается в виде *" .F. *.) «=1 ^ 2j Лг + а ^'• Так как I 1 Я,; + а Xi {Xi + а) ' ТО наличие малого параметра а несущественно изменит слагаемые, соответствующие большим Кг. В то же время при Ki<.a имеем F. е,) Xi + a < F, е,) это означает, что введение параметра а приводит к существенному уменьшению роли слагаемых, соответствующих малым ki. Подбор оптимального значения а обычно осуществляют экспериментально, сравнивая результаты расчетов при различных а. Второй способ заключается в следующем. Будем решать систему уравнений каким-либо итерационным способом. Рассмотрим случай итераций по формуле X'^+^=X'^ — a{Ax'^ — b) G) при некотором начальном приближении дс". Пусть т т «■=1 i«=I подставим эти выражения в G); приравнивая коэффициенты при Ci, получим соотношения г?+' = ар,-|-A-аЯ;J?.
^ 131 ПОГРЕШНОСТЬ ПРИБЛИЖЕННОГО РЕШЕНИЯ. РЕГУЛЯРИЗАЦИЯ 393 Последовательно выражая каждое 2* через предыдущие, имеем = ар, + (I - а?.;) (ар, + A - аЯ,) z--') = • • • ... = ар. S A - aXtf + A - aXJ^ 2». Если I 1 — аЯ/1 < 1, то при п->оо л—I оо 2 A _ ахд" -> S (^ - "^')* = W • ^^ ~ "^'^" "* ^' А t и поэтому 2j'->-Y^. ГТустьайг(тахЯ{)~ , т. е. относительно мало. При больших значениях Xi величина (I—аЯ^)" быстро стремится к нулю с ростом п и z1 близко к Своему предельному значению 4^. В то же время иногда удается подобрать на- чальное приближение, для которого величины 2^ относительно малы при малых Я^ Тогда при небольшом п коэффициенты z'J, соответствующие таким Я^, еще не будут недопустимо большими и получаемое приближение может оказаться приемлемым. В других случаях решение задачи находят, минимизируя некоторый функционал, близкий к F{x) = (Ax,x) — 2F, х), например, функционал F{x)-{- а(х,х) с малым а > 0. Успешность применения описанных приемов в случае несимметричных матриц А в существенной степени зависит от структуры жордановой формы и от ряда других свойств матрицы. Здесь часто решение находят, минимизируя функционал (Ах — Ь, Ах — Ь) + а (х, х) при малых а > 0; значение а опять-таки подбирается экспериментально из сравнения результатов расчетов при различных а. Другая группа методов основана на представлении матрицы •системы А в виде А = GAP, где G и Р — ортогональные, а Л — двудиагональная, у которой могут быть отличными от нуля элементы Хц при j = i и / = = i+ 1. Большинство из описанных выше методов решения систем уравнений с плохо обусловленной матрицей относится к мето- Ъам регуляризации. Задача. Пусть /4''"'= [а^] — матрица размерности mXw с элементами I р при / = 1, а^ = I q при / = I + 1, I О при 1Ф1, 1-]г 1.
394 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ. VI 1) Вычислить матрицу t^C"')-' и доказать утверждение: при |^1 < < \р\ матрицы НС") хорошо обусловлены, а при |^| > 1р| и m больших — плохо обусловлены. 2) Выписать явно решение системы Hc^Jjt = 6 через правую часть. 3) Выписать явно через правую часть 6 вектор Хц, мииимизир}^ющи№ функционал (/1""'х - 6, /t'""'* -Ь) + а {X, х). 4) Попытаться качественно описать эффект, достигаемый за счет применения такой регуляризации. Объясним еще одну причину, по которой стараются избегать симметризации матриц, предложенной в § 7. Сначала посмотрим, что происходит, когда операция симметризации применяется формально в случае уже симметричной матрицы. Тогда А = А* а А"А = А"^. При возведении матрицы в квадрат собственные значения возводятся в квадрат; поэтому при 1И11 =-1И1|з имеем Если v(/4)= 1, то max |Яа| = п1!п |Ха| и все собственные значения матрицы А равны между собой по модулю; тогда А = = const£. За исключением этого частного случая, v(/4)>l, н поэтому v(/42)>v(/4). Таким образом, в случае симметричной матрицы применение симметризации увеличивает число обусловленности. Число обусловленности является непрерывной функцией от матрицы; поэтому для матриц, близких к симметричным, применение симметризации также увеличивает числа обусловленности матриц. Таким образом, имеется непустой класс несимметричных матриц, по отношению к которым алгоритм симметризации yBejjH4HBaeT число обусловленности. Задача. Существуют ли несимметричные матрицы, для которых v(>42) < (v(/1))=? § 14. Проблема собственных значений В различных случаях возникают разные требования к информации о собственных значениях и собственных векторах матриц и это порождает многообразие проблем и приемов решения этой задачи. I. Для решения ряда задач механики, физики, химии требуется получение всех собственных значений, а иногда и все.к собственных векторов некоторых матриц. Эту задачу называют полной проблемой собственных значений. Стандартные программы современных ЭВМ решают общую проблему собственных значений для матриц размерности нескольких сотен.
S и] ПРОБЛЕМА СОБСТВЕННЫХ ЗНАЧЕНИИ 395 2. в ряде случаев требуется найти максимальное или минимальное по модулю собственное значение матрицы. Проблемы подобного сорта возникают, в частности, при решении некоторых ядерных задач. Здесь приходится решать задачи, эквивалентные задачам отыскания собственных значений матриц размерности , порядка 10^—10®, а также и существенно большей. При меньших размерностях матриц для решения этих задач чаще применяют итерационные методы, при больших — вероятностные. 3. При исследовании колебательных процессов иногда требуется найти два максимальных по модулю собственных значения матрицы, причем меньшее из них обычно достаточно определить с меньшей точностью. 4. Там же возникает задача отыскания собственного значения матрицы, наиболее близкого к данному числу Х°, или отыскания расстояния от данного числа Х° до спектра матрицы. Формально рассуждая, можно было бы сказать, что все остальные задачи, называемые частичными проблемами собственных значений, являются частным случаем общей проблемы •собственных значений, и достаточно ограничиться рассмотрением методов решения общей проблемы. Однако такой подход приведет к неоправданно большому объему вычислений. При обсуждении постановок конкретных задач, связанных с отысканием собственных значений матриц, зачастую значительные усилия тратятся именно на установление минимального объема информации о спектр'е матрицы, которым можно ограничиться. Решение задач 2—4 обычно сводят к отысканию максимального по модулю собственного значения некоторой матрицы В = = g(A) такой, что это собственное значение соответствует отыскиваемому собственному значению матрицы А. Рассмотрим случай, когда все собственные значения матрицы вещественны. Если требуется найти максимальное или минимальное собственное значение матрицы А, то следует взять g(A]:= А -{- сЕ; очевидно, при достаточно больших положительных (отрицательных) с максимальному по модулю собственному значению матрицы А -{- сЕ соответствует максимальное (минимальное) собственное значение матрицы А. В случае задачи 4 при некотором с максимальное по модулю собственное значение матрицы Е — с{А—Х°Е)'^ соответствует отыскиваемому собственному значению матрицы А. Иногда в качестве такой матрицы ё{А) может использоваться матрица (Л—Х'^Е)-К При этом матрица (Л—к°Е)-^ не выписывается в явном виде, а необходимые по ходу вычислений векторы (Л—Х°Е)-^у находят, решая систему уравнений (Л—Х°Е)х^=у. Рассмотрим типичную задачу отыскания двух максимальных по модулю собственных значений матрицы Л. Для простоты
396 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ. VI предполагаем наличие полной системы собственных векторов е,-: Aei = Ueu Ikill = 1; пусть |Xi|>|X2|^ ... ^\К\, Зада- димся некоторым вектором дс° и будем последовательно вычис- m ЛЯТЬ векторы дс"+' = Лх". Представим дс° в виде *" = 2 ciec, очевидно, m m *" = 2с;Л\ = 2сХе.. i=I 1=1 '' ' Отсюда следуют соотношения д:" = с,Я'Х + 0(|>,,р), (ж", ж") = (с,Я:в, + О (I А, I"). сЛГ^, + О (I А, I")) = = |с,Р|А,р'' + 0(|А,ПА2Г). = А,к,Р|А,р« + 0(|А,ПА2П- Положим ^' ~ (л:", х") ' ИЗ последних соотношений при с^Ф^ получаем ,(«. _ А., к.пя, l^" + o(|я,nги") _^ __^'(' + Q(-u7f|i7|))_ /р, "^ Задача. Доказать, что в случае симметричной матрицы кроме A) имеем II *" II = УТТТЛ =1 с, II А, Г + О (I ^ П. т ^'"^ \\хЧ >i^h + 0'(l^2ry сл? с,Я« е, + 0 1 + здесь ф„ = аг£(с,А"). °A^Г) =,.%, + o(|i.f)..
§ 14] ПРОБЛЕМА СОБСТВЕННЫХ ЗНАЧЕНИИ 397 Таким образом, этот итерационный процесс также выдает собственный вектор, соответствующий Xj. Может случиться, что у матрицы А имеется два максимальных по модулю собственных значения К^^' !>,, | = |X2l>Uзl>■.• Oчeвиднo, тогда величина ^',"' будет устанавливаться только D частном случае, когда С) или сг равно нулю. Если заранее известно, что таких собственных значений два, то их и соответствующие им собственные векторы можно также определить. In) „'«) анализируя поведение Xi и ei . Рассмотрим типичный случай, когда Xi, Xj—вещественные, Х,>0, Xj = = — Хг- Тогда x'^ = c,X1e^ + c,{-X,Ye, + 0{\x,\'^). = X\{c^X'^e^+c,{-X,Ye,) + 0{\x,\'^y Отсюда получаем, что (*"+2 x'^) ■■х' + > °т"\ и определяем приближенные значения Х',"' > О и Х^"' < 0. Имеем: г«+1 = х«+' + Х',"'*" ='2с,х;'+'е, -f О (| Х3 |"), поэтому Точно так же, gin) _. -П + \ ,п + 1 :е%+0 Ч ^п+1 ^ ^п+1 ^ ^п)^п ^ 2с2Х7+'е^ + О (|Хз|") ,«+1 <.<«) =. ■ = е % + 0 Если Xi — собственные значения матрицы Л^ то у сопряженной матрицы А* собственным значением будет Хй при этом, если Aei = XiCi, A*gj=Xigj, Xi ф Xj, то (e,-,gj) = 0. Поэтому при \Xi\ > 1^21 > Хз\ ^ ... для нахождения собственного значения Ха можно поступить так. Получив приближения ei « ei, аналогично определяем приближение gi к вектору g\; перенормируем gi из условия («ь g\) = 1. Далее ведем итерации по формуле {/"+' = Ау^; для исключения компоненты, пропорциональной е\, время от времени векторы у^ ортогонализи- руем по отношению к вектору gi, т. е. начальным для последующих
398 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ VI итераций вместо у^ берем вектор Естественно, сходимость итерационного процесса лучше, если m В начальном приближении yo=^diei слагаемое d^Ci преоб- 1=1 ладает над остальными слагаемыми. Возьмем из описанного выше итерационного процесса отыскания Х\ и «i некоторое приближение х'; проортогонализируем его по отношению к gi. Получившийся вектор j^ = ж'— (ж', g[) е, примем за начальное приближение. Не следует брать / малым, тогда компоненты cMbj при у > 2 еще не будут малы по сравнению с с^^е^у в то же время не следует брать I очень большим, тогда компонента 02^-2^2 будет малой по сравнению с вычислительной погрешностью. Можно встретить следующее высказывание. Если С\ = О, то описанный итерационный процесс, казалось бы, не должен давать приближения, сходящегося к максимальному по модулю собственному значению. Однако в действительности из-за присутствия округлений в процессе итераций появится компонента, пропорциональная «i, и вследствие этого требуемый результат все равно будет получен. По поводу этого высказывания можно отметить следующее. При ручном счете с малой точностью обычно дело обстоит так, как сказано выше. В случае современных ЭВМ с большой разрядностью может случиться, что после некоторого числа итераций влияние вычислительной погрешности еще не будет <;ущественно, в то время как величина m 2 c,A.fe, будет мала по сравнению с Сг^-гвг- Тогда Ax'^ « const*", и можно сделать неверный вывод, что искомое первое собственное значение найдено В ряде случаев появление составляющей, пропорциональной ei, не является неизбежным даже в случае присутствия округлений. При решении проблемы собственных значений для дифференциальных и интегральных операторов иногда возникают матрицы А со специфическими свойствами; например, часто встречается случай, когда при всех i, j выполняется равенство a</ = am+i_i,„+i_,- B) Для определенности рассмотрим случай четного т. Назовем четными векторы X, компоненты которых связаны равенством Xt ^ Xm+i-i, i= I т, и нечетными — равенством х, = —Xm+t-i. При условии B) вектор Ах четен, если X четен, и нечетен, если х—нечетен. Поэтому подпространства четных и нечетных векторов являются собственными для оператора А. Следовательно, существует полная система собственных векторов, принадлежащих этим подпространствам, т. е. являющихся или четными, или нечетными. Это обстоятельство может быть существенно использовано; если вектор х" четей или нечетен, то этим же свойством обладают все векторы х", поэтому при отыскании каждого последующего вектора х" достаточно ограничиться опре- деление.м первой половины его компонент. Кроме того, можно объединить коэффициенты, соответствующие компонентам х, и дст+i-i. Например, при четном хР вычисления компонент х" можно производить по формулам т/2 1=1
§ Hi ПРОБЛЕМА СОБСТВЕННЫХ ЗНАЧЕНИЙ 399 В случае итераций такого вида мы не выходим за пределы подпространств четных или нечетных векторов, соответственно. Поэтому если xf и «i принадлежат различным подпространствам, составляющая пропорциональная fii так и не появится. Кроме непосредственного уменьшения вычислений при отыскании каждого вектора х" использование свойства B) полезно также по следующей причине. Довольно типичен случай, когда собственные векторы с небольшими нечетными номерами являются четными, а с небольшими четными номерами — нечетными; предполагается, что |Xi| > \'кг\ > |Хз1 >... Тогда при х° четном всегда х" = С1А,7е14-СзА,зЧ+ ... =с,Л?е, + 0(| А,з 1"). следовательно. ,.«._,,=0(|^f) при ^<"' = -^^;^^ Соответственно, при х" нечетном имеем Х« = С2Х2% + 0(|>,,|") 4''>-^,2=of При этом не возникает никакой проблемы подавления составляющей, пропорциональной е\. Если |Xi|>l, ТО \\Х^\\-*оо при п-*со, и поэтому при до- статочйо большом п произойдет переполнение разрядности чисел и остадовка ЭВМ. Если |^i|< 1, то ||«"||-*0, и, вследствие конечности порядков чисел в машине, может случиться, что, начиная с некоторого п, дс" ^ 0. Чтобы избежать этих явлений, полезно время от времени умножать вектор дс" на подходящий .множитель. Для практической оценки погрешности и ускорения сходимости итерационных процессов может быть применен б^-процесс и другие приемы, аналогичные методам ускорения сходимости при решении систем линейных уравнений. Например, могут применяться итерации вида *"+'= gs (Л) дс" со специальным подбором многочлена gh{A) в зависимости от известной информации о спектре матрицы А. Поскольку л I (Ах, ж) -л г -г {Ах, х) max Ял = sup \^,^^ . mm Яд = inf-^^^^^ при /4= л*, то некоторые приемы отыскания максимального и минимального собственного значения матрицы А основываются на идее отыскания стационарных точек функционала
400 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ. VI Задача. Пусть Xi « 5, [ ^ Xi ^ 3 при i = 2 т. Построить итерационный процесс вида xn+t = (А -{- сЕ)х^' для получения ^| с наилучшей при данной информации скоростью сходимости. Сделать, то же самое, если Xi « 1, 2^ \ki\ ^3 при ( = 2, . ., т. § 15. Решение полной проблемы собственных значений для симметричной матрицы методом вращений Всякая симметричная матрица А может быть записана в виде A^U'AU, A) где и — ортогональная матрица, Л — диагональная с диагональными элементами Х\, ..., Хт — собственными значениям;! матрицы Л. Из A) получаем, что AU' = U*A. Если расписать это равенство по столбцам, то окажется, что каждый (-Й столбец матрицы U* является собственным вектором, соответствующим собственному значению Х,-. Преобразуя A), имеем UAU* = A. Построим последовательность ортогональных матриц Vi ... Vn такую, что при Wn^^Vn ... ^i, л->оо, справедливо Г„ЛГ*->Л. Обозначим через VktD') матрицу с элементами Vkk = Vti = = со5ф, Oft, = — Oij = sin ф, Он = 1 при i ф k, i Ф1, Vii = 0 при остальных (/, /). Очевидно, что она ортогональная. Пусть В — симметричная матрица. Рассмотрим матрицу В(ф) = ^н(ф)ВП/(ф). B) Лемма, Для всякой симметричной матрицы В можно указать матрицу Vki{(po) такую, что Доказательство. Очевидно, В@)=В. Матрицы В @) и В (ф) подобны, н поэтому их характеристические ■многочлены А,'"-81(ф)А'"-' + «2(ф)^'"~^- ... =0 ле зависят от ф.
§ lol МЕТОД ВРАЩЕНИИ 401 Здесь m s. (ф) = 2 *" (ч=)- «2 (ф) = 2 (*" (<Р) *// (ф) - (Ьц (Ф))^); 1=1 {< I при выписывании явного вида Sj (ф) мы воспользовались симметричностью матрицы В (ф). Отсюда следует, что величина S (ф) = £\ (ф) - 2S2 (ф) = 2 (*г/ (Ф)^ не зависит от ф: S (ф) = S @). C) Пусть I 6^; I = max | Ь;/1, fe < Л 1^/ Введем обозначение \6«(ф) Ьи(ф)/ Непосредственно перемножая матрицы в правой части B) и сравнивая элементы. Стоящие на пересечении fe-й и 1-й строк с fe-м и 1-м столбцами, получаем соотношения Bkt(<f)-G(,f)Bki{0)G'((f), D) где 0(ф) = ( '°''' ^'""Р). \— sin ф cos ф/ Равенство C) выполнено и по отношению к матрицам B/ii (ф)> Bfe/ @); поэтому (bkk (Ф))= + 2 (bft, (ф))= -f Fн (Ф))' = (bkk? + 2 (bkiV + {buf. E) Складывая это равенство с равенствами получим m m 2 (*</? (<Р))' + 2 (*ft' (ф))' = 2 (^'j)' + ^ (**!)'• 9=1 <7=I Вычтем это равенство из C) 2 (бг/(ф)Р-!2(&й;(ф))'= 2 (biir-2{bk,y. F) Непосредственно из D) следует равенство Пусть bkt (ф) = b)ii cos 2ф — -g- {bkk — Ьц) sin 2ф. 1 , 26ft( Фо = -:гагс18— -^- 2"'^'^ bkk-ba' тогда &А/(фо) = 0, и равенство F) приобретет вид 2 (''//(фо))^= 2 {biif-2(bkif. 1Ф i I ЭЬ/
-402 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ. VF В сумме 2 *i/ содержится m(m— 1) слагаемых 6,^; поскольку (й^J)^=. = max F;/)*, то Отсюда следует требуемая оценка Лемма доказана. Построим последовательность матриц Vn -и Л*"'=:[а'"'] по следующему правилу: л<"=7,л1/; л""=1/„л'"-v;. Матрица V'„ = Ай;(фо) строится в соответствии с леммой в зависимости от матрицы Л<"~'' так, чтобы выполнялось неравенство Выражая каждую матрицу Л'''' через предыдущую, получаем Л'"' = 1/„... ViAV\... Vn, иначе A^"-'' = WnAW'n, где IF„ = F„ ... Fi. Согласно оценке G), имеем Пусть Л<"> — матрица, получающаяся из Л^"' заменой всех внедиагональных элементов на нулевые. Поскольку матрицы Л(п) ц Л("> близки при больших п, то близки коэффициенты их характеристических многочленов.' Корни многочлена непрерывно зависят от коэффициентов в области, где старший коэффициент отличен от нуля; старший коэффициент характеристического многочлена равен 1; поэтому собственные значения матриц Л'"> и Л("> близки между собой. Собственные значения матрицы Л'"> — это диагональные элементы матрицы Л<">, а собственные значения подобных матриц Л("> и Л совпадают. Таким образом, величины af^ являются приближениями к собственным значениям матрицы Л. приведем другое доказательство этого же утверждения, но уже с оценкой погрешности. Применяя дважды неравенство 2«л|<|/B1«^Р)B|Р(Р).
S IS] МЕТОД ВРАЩЕНИЙ 403 получаем, что для любой матрицы D выполняется неравенство I М / /I i \ .1 I <S-/BHf/P)Bl^/F)l*J=|/2i*,PBi/2Hi/Pl^,l)< < j/:^ I ^/ р/B Bi ^f/ Р)) 2l */ Р=-|/Sl ^i/ P(*. *)• (8) Напомним формулировку минимаксного свойства собственных значений. Пусть матрица А симметрична, Xi Хт — ее собственные значения, упорядоченные по убыванию. Тогда , . с {Ах, х) Н= inf sup \ ': J», Jift., (*.J',)=--=(«.J'ft_,)=0. *чЬО V*> *J При любом X, согласно (8), имеем I (И'»)*, х) - (Л»"'*, х) I = I ((И"" - Л<«)) ж, ж) I < -,/ 2 К'Г (*. *)• (9) Пусть X,ft — собственные значения матрицы А, а следовательно, и >4("), занумерованные в порядке убывания, а X,(j"'— собственные значения матрицы л' , т. е. ее диагональные элементы, также занумерованные в порядке убывания. На основании (9) имеем (л'")*, х) (Л'"'*, х) {X, х) (ж, х) ' 1ФI <а„ = -^'Г- Если две функции отличаются не более чем на е, то их верхние (нижние) грани по некоторому множеству тоже отличаются не более чем на е. Отсюда последовательно вытекают неравенства sup sup («.j,,). (x.ji-A_,)=O.*^0 (/4'"'x, x) (x, x) (Л'">х. x) {x, x) < a при всех у. Ук-1 IА,^"' — Xfc I < о„ при всех k. Столбцы матрицы Wn оказываются приближениями к собственным векторам матрицы А. Все столбцы произведения матриц Vft;(q?o) и Л'"), кроме А-го и 1-го, совпадают с соответствующими столбцами матрицы Л<">; k-ii и 1-й столбцы новой матрицы являются линейными комбинациями этих же столбцов матрицы Л. Точно такого же числа действий потребует дальнейшее умножение на матрицу 1^а/(ф), когда происходит изменение ft-й и l-n строк. Общее число арифметических операций для получения каждой последующей матрицы Л*"' оказывается ^б/п.
404 ЧИСЛЕННЫЕ МЕТОДЫ АЛГЕБРЫ [ГЛ. VI Предложенный алгоритм неприятен тем, что рекомендуется на каждом шаге выбирать наибольший по модулю элемент матрицы Л'"'; эта процедура требует Xfi^ операций. Оказывается, условие выбора максимального по модулю элемента не является обязательным. При некоторых реализациях алгоритма запоминают суммы s^^ 2 | ^i/Р и выбирают наибольший по модулю элемент в строке с максимальны.м значением S,; при этом оценка G) также остается в силе. При других реализациях аналогичные преобразования, соответствующие различным элементам матрицы а'Л' с / > i, производятся в цик'1нческом порядке. Для ряда алгоритмов имеет место так называемая квадратичная сходимость. После цикла из т[т.— 1)/2 шагов получается матрица ^4'""^''"''""*'' " такая, что 2 Lif""('"-^)/^»|Чc/2 КРУ- Ф i \1Ф I 1 i Ф I Это обеспечивает очень быстрое уточнение результата после получения достаточно хорошего приближения. Для решения полной проблемы собственных значений в случае неси.мметричной матрицы применяются более сложные, но столь же однородные по своей структуре алгоритмы. Дополнительная литература к главе VI I [I, 2, 14, 15], П [8, 25, 42]; §§ 4, 5: I [4], П [10]; § 7: II [7, 8, 25. 39, 40], § 10: III [31]; § И: II [5, 26); § 12; II [8], 111B6]; § 13: II [22], ИГ [46]; §§ 14, 15: I [2], II [42].
Глава VII РЕШЕНИЕ СИСТЕМ НЕЛИНЕЙНЫХ УРАВНЕНИЙ И ЗАДАЧ ОПТИМИЗАЦИИ Решение задач оптимизации, будь то оптимизация производственных или экономических процессов, оптимизация конструкций или оптимизация численных алгоритмов, сводится в математическом плане к отысканию точек экстремума функционалов. В наиболее типичных случаях возникает задача минимизации функции большого числа переменных в области G, задаваемой большим числом ограничений типа неравенств или равенств; ищется in! Ф(д;„ ..., л-„) при условиях ■^iixi, .... x:J = 0, i=l, .... q. Задача минимизации функций большого числа переменных возникает также в случае применения вариационных методов к решению задач математической физики и в других разделах прикладной математики. Системы уравнений F(*) = 0: fiixi, .... Xni) = 0, i=\, .... m, возникают в случае многих задач указанных выше типов; например, в главе IX будет идти речь о подобных системах, возникающих при решении краевых задач. Иногда оказывается полезным сведение одной из этих задач к другой. Если ^{уи .... г/„)>0 при (г/|>.... Ут)^{0 0), ¥@. ...,0) = 0,
406 НЕЛИНЕЙНЫЕ УРАВНЕНИЯ И ЗАДАЧИ ОПТИМИЗАЦИИ ТО решение системы /^ (д;) = О равносильно минимизации функции ^ (/1 (■'^11 • • • > Хт), • . •, ]т {Х[, • . . 1 Х„)). С другой стороны, пусть 1пГФ(д;1 х^) достигается g о точке X, внутренней по отношению к G, и функция Ф дифференцируема в этой точке. Тогда точка минимума является решением системы уравнений Oi, = 0, 1=1. ..., m. Возможность сведения одной из этих задач к другой не? означает, что достаточно ограничиться рассмотрением тольк»^ одной из них, родство этих задач скорее подчеркивает, что они- одинаково трудны. О трудности этих задач свидетельствует то, что в этой главе не приведено ни одного универсального алгоритма решения этих задач в случае больших т; отсутствие таких алгоритмов вызывается существом дела. При решении задач каждого типичного в приложениях класса приходится заниматься теоретической и экспериментальной «доводкой» методов применительно к этому классу задач. ^Сведение одной задачи к другой производится на практике с целью снижения трудоемкости решения. Например, при решении систем нелинейных уравнений иногда поступают следующим образом. Строится функционал, минимум которого достигается на решении системы. Затем, задавшись начальным приближением к точке минимума, проводят итерации каким-либо из методов спуска (см. § 4) и таким путем получают удовлетворительное приближение к решению системы. Исходя из этого приближения, производят уточнения при помощи какого-либо итерационного метода, специфического для задачи решения системы уравнений, например метода Ньютона (см. § 2). Поясним причины, вызывающие такое комбинированное применение методов. Назовем областью сходимости метода множество начальных условий, при которых итерации по данному методу сходятся к решению задачи. Применение методов спуска на первоначальном этапе вызвано тем, что обычно они имеют~" боле« широкую область сходимости, чем методы, специфические для задачи решения системы уравнений. В то же время последние методы обычно обладают лучшей скоростью сходимости при наличии достаточно хорошего начального приближения; это и обуславливает их применение на заключительном этапе итераций. у На примере решения системы линейных уравнений было также видно, что сведение одной задачи к другой приводит к конструированию новых методов решения исходной задачи.
§ 1] МЕТОД ПРОСТОЙ ИТЕРАЦИИ И СМЕЖНЫЕ ВОПРОСЫ 407" § 1. Метод простой итерации и смежные вопросы Так же, как в случае линейных уравнений, начнем изучение итерационных метрдов с метода простой итерации. Этот метод состоит в следующем: система преобразуется к виду x = g(x), (I) иначе xi = gi{xi х„), i=l, ..., т, и итерации проводятся по формуле Xn+l = g[xn)^ B). иначе •*^?'^'= «^.К'• • • • О i=l, ..., т. Подойдем к изучению этого метода с более общих позиций. Пусть й/ — полное метрическое пространство, а оператор у = = gix) отображает S? в себя. Рассмотрим итерационный процесс • xn+i = g(x'') C) решения уравнения * = g{*). D) Если при некотором q< 1 отображение y = g{x) удовлетворяет условию Р {g (a-i). g (*2)) < A9 (*i. *2) E) при всех *i, *2, то такое отображение называют сжатым. Теорема. Если отображение у = g(х) — сжатое, то уравнение x = g(x) имеет решение X и здесь а = р (ж', ж"). Доказательство. Согласно E), имеем р (*"+!, ж") = р (^ (л;"), g (хп-1)) < qp (ж«, x'^-^), поэтому p(x'^'^^, x'^)^q'^p{x\ J(f') = q'^a. При р>п имеем цепочку неравенств р(жР, ж'')<р(л;Р, ж''-')+ ... +р(ж''+',ж'')< оо <q'>-^a+ ... + g'^a^q'^a^q^ ==-^. F) (=0 Согласно критерию Коши, последовательность *" имеет некоторый предел X. Переходя к пределу в F) при р-*оо^
408 НЕЛИНЕЙНЫЕ УРАВНЕНИЯ И ЗАДАЧИ ОПТИМИЗАЦИИ (ГЛ. VH получаем Очевидно, р {X, g (Х)) < р (X, *"+■) + р (*"+', giX)) = р {X, *"+■) + + p(gM,g{X)XpiX,x-+^) + qpixn,X)^2^^. Поскольку п произвольное, то р{Х, g{X)) = 0, иначе X = g{X). Теорема доказана. Замечание. При л = О из F) следует, что р (*'', *") ^ -г-^—• ^^" кям образом, все приближения принадлежат области П (*», а, (?): р (*, д:") < При доказательстве теоремы отображение g(x) применяется лишь к элементам множества Q(x'', а, q) и условие сжатости применяется лишь относительно пары элементов нз Й(*'', а, д). Поэтому в формулировке теоремы достаточно предполагать лишь, что отображение g(x) определено на элементах из Q(x'>, а, q) и удовлетворяет условию E) при х\, *2s£2(x°, а, q). Если решается одно скалярное уравнение, метод простой итерации имеет простую геометрическую интерпретацию. Изобразим на плоскости {х, у) совместное расположение кривой У = ё{х) и прямой у = X. Точки пересечения этих линий соответствуют искомому решению. Если на чертеже имеется точка (х", x''+') = (х", g(ic")), то, проведя через нее прямую г/= х"+* до пересечения с прямой у = х, а затем прямую х = л;"+' до пересечения с кривой y = gix), мы получим точку (JC"+', JC"+2). На рис. 7.1.1 изображено поведение последовательных приближений в случаях: а) 0<^'(л:)< 1_, б) —1 <^'(jc)<0, в) 1 < <g'(x), г) g'(x)<C—1. Монотонное поведение jc" при gf'> О и колебательное при g' <.0 нетрудно усмотреть также из соотношения X'^+^-X = g (Х-) -giX)^ g' {X) {X^^ - X). В случае системы нелинейных уравнений f(x) = 0 аналогом метода Зейделя является итерационный процесс, где компоненты приближений определяются из соотношений /,(д:«+', 4, ...,д:^) = 0, U{xl+\ x-+\x-,...,xl) = Q, G)
МЕТОД ПРОСТОЙ ИТЕРАЦИИ И СМЕЖНЫЕ ВОПРОСЫ 409 Нахождение каждого нового значения д;^+' требует решения, вообще говоря, нелинейного уравнения f /v-n+l v-n+l y-n+1 уП y-n\ П С одним неизвестным. jr^jr' л:^ г<» л: 1 V ^ с. 1 1 ! а. О J.0 6) Рис. 7.1.1. Промежуточное место между итерационными методами B) и G) занимает метод, где компоненты приближений определяются из соотношений vn+1 :=^ а {vnW vn уп\ (8)
-«10 нелинейные уравнения и задачи оптимизации Методы G) и (8) особенно широко используются в различных' моделирующих устройствах. В достаточно малой окрестности решения X системы для приближений методом простой итерации имеем ^ X'^+^-X = g{x'^)-giX)^B{x'^-X), (9) где В- Ш Таким образом, при приближениях, находящихся в малой окрестности решения, ошибки приближений итерационного процесса B) (а также и процессов G) и (8)) подчиняются при- л1ерно тем же законам, что и ошибки итерационных методов решения систем линейных уравнений. В результате этого удается показать, что при достаточно хорошем начальном приближении итерационный процесс B) сходится при тех же условиях на матрицу В, что и метод простой итерации. Наличие соотношения (9) позволяет также производить ускорение сходимости итерационных процессов'. Рассмотрим случай m = 1 и построим аналог 6^-процесса. При имеющемся приближении х" обозначим jc"-' = ^(д;"), jen.2 = g(jcn,i) Согласно (9), x'^•^-X '^ g'{X){x'^-X), X^^'^ — X^e' {X) {X^^^ ' - X). Из этих соотношений получаем п. 2 _ п. 1 g'iX)^" j^rt, 2 _ ^n. 1 ^'^ l-g'(X) '^ ^_^^«^__^^ x'^■''-2x^^^^ + x'^' 3a следующее после дг" приближение примем ^.„4.,_ x'^-'x--{x--'f ^ x'^g{g(x'^))-{g(x'^)r . ;,«. 2 _ 2x'^^ Ч *" gig (x'^)) - 2g (*") + x'^ ' ^ ' Для характеристики методов решения уравнений вводится понятие порядка метода. Говорят, что метод имеет fe-й порядок, если существуют Ci > О, сг < оо такие, что pix^+KXXcApix^X))" при условии p(*", .^l) ^ Ci. Очевидно, чем больше k, тем^ быстрее сходится процесс итераций при малых значениях р(х",Х).
5 2] МЕТОД НЬЮТОНА РЕШЕНИЯ НЕЛИНЕЙНЫХ УРАВНЕНИЙ 411' В вычислительной практике наиболее распространены методы первого (например, метод простой итерации) и второго порядка (например, метод Ньютона, рассматриваемый в следующем параграфе). Задача. Доказать, что при гладкое ^(д:) метод итераций A0) имеег второй порядок. Примечание. Иногда в литературе встречается другое определение порядка метода: говорят, что метод решения системы уравнений Р(х) =0 имеет порядок k, если при его реализации вычисляются производные функций /, до порядка k — I включительно. В § 12 гл. VI были рассмотрены итерационные методы решения линейных систем с помощью спектрально эквивалентных операторов. Аналогичные методы применяются и для решения нелинейных систем. Выбирается оператор G{x) такой, что х = О является единственным решением уравнения G{x) =0. Приближения ж"*' к решению системы f(x)^0 определяются и* соотношения G{x'^■^'-x'^) = F{x'^). A1) Наиболее распространен случай, когда G — линейный оператор. Тогда соотношение A1) приобретает вид /»(*"+'-*") = /=•(*'•)■, A2) в случае конечной размерности т векторов х А является матрицей. В ряде случаев оператор G выбирается зависящим от п, а также от приближения дс". Тогда в схему A2) укладывается также рассматриваемый ниже метод Ньютона решения нелинейных задач. § 2. Метод Ньютона решения нелинейных уравнений Если известно достаточно хорошее начальное приближение к решению системы уравнений Р{х) = 0, A) то эффективным методом повышения точности является метод Ньютона. Не усложняя хода рассуждений, мы сможем рассмотреть более общий случай — решение нелинейного функциональнога уравнения. Пусть F{)c) — оператор, отображающий линейное нормированное пространство S? на линейное нормированное пространство ^, может быть и совпадающее с 3?. Нормы в этих пространствах, соответственно, обозначаем || На? и || ||у. Линейный оператор Р, действующий из пространства S? в пространство <у, назовем производной оператора F{x) в точке х, если IIF(* -Ь г,) - F (*) - P»j Ну = 0A1 г, ly B) при НпИда-^-О- в дальнейшем будем обозначать такой оператор Р чере» F'{х). Пусть, например, х = {х^ xj^ F = {fi, ..., fn^y.
412 НЕЛИНЕЙНЫЕ УРАВНЕНИЯ И ЗАДАЧИ ОПТИМИЗАЦИИ Если функции ft непрерывно дифференцируемы в окрестности] данной точки х, то fi{Xi + r\i Xm + f\m) = т = fiiXu..., Хт)+^^^'^%';-' ^"^ Л; + 0(||П11) Совокупность этих соотношений можно переписать в виде B^ если за Р принять оператор умножения слева на матрицу • "w=[^]. В простейшем случае m = I оператор Р. превращается в оператор умножения на производную fx. Пусть X — решение уравнения F{X) = 0, х" — некоторое приближение к X. В предположении существования производной Р, согласно B), имеем \\F{X)-F(X'^)~F'{X"){X-X'^)\\^ = 0{\\X-X'^\\^). C) Если величина \\X — x'^\\^ мала, то можно написать приближенное равенство F (x'^) + F' (ж") {X - ж") « F (Х). Поскольку Р(Х) = 0, то F(X'^)-\^F{X'^){X~X'^)^0. Возьмем в качестве следующего приближения решение урав нения F (*«) + F' (х") (««+' —*'•) = О (если такое решение существует). Между прочим, последнее уравнение имеет вид A.12). В предположении, что оператор F' обратим, это решение можно записать в виде X^^+^=X'^ — {F'(X'^))~^P{X'^). D) Такой итерационный процесс называют методом Ньютона. Пусть Qa = {х: \\х ~ Х\\ < а). Пусть при некоторых а, а[, Яг, О < а, 0-<ai, аг < оо выполнены условия: 1. '|1(Р(ж))~Ч<а, при x^Qa- E) 2. \\FiU,)-F(U2)-F'iU,){U,-U,)\\^^a,\\U,~U,\\l F) при f/,, f/, ^ йд. Обозначим c = ai'a2, 6 = min(a, с~'). Теорема (о сходимости метода Ньютона). [При условиях 1, 2 и x°^Qb итерационный процесс Ньютона D) сходится
§ 21 МЕТОД НЬЮТОНА РЕШЕНИЯ НЕЛИНЕЙНЫХ УРАВНЕНИИ 413 С оценкой погрешности \\x--X 11^ < с-' (с \\х^-Х W^f. G) Примечание. Если в рассматривавшемся выше примере функции ft имеют ограниченные вторые производные, то, согласно формуле Тейлора, имеем п h(у) = fiМ + 51 -^^'^''^-•""^ ^у^-,^) + о[\\у-х\п /=1 ' и, таким образом, условие 2 выполнено. Доказательство. Пусть ж"ей;,. Индукцией по п докажем, что все ж" е йь. Пусть это утверждение доказано при некотором п; так как b ^а, то тогда ж" е*йа. Подставив в F) и, = Х и 1/2 = *", получим II F{X)-F (ж") - F' (*") {X - ж") \\^ < «2II ж" - X 11^. Поскольку F (ж") =— F'(*")(«"■'■'—*"), а f (Jf) = 0, то это соотношение может быть переписано в виде II F'(*«) (*"+■ - X) \\^ <а,\\ х- - X \\%. Воспользовавшись E), получаем неравенство \\x-+^~X\\^^c\\x--Xf^. (8) Отсюда следует, что II«"+' -Х\\^< сЬ"^ = (сЬ) 6 < й. и поэтому *"+' также принадлежит й^. Таким образом, при х° е Qj все ж" принадлежат й^ и, следовательно, для них выполняется (8). Пусть qn = c\\x'^ — Х\\^. После умножения на с неравенство (8) запишется в виде <7„+i^'7n- Индукцией по п докажем справедливость неравенства При /г==0 оно очевидно. Предположив его верным при n = k, получаем Таким рбразом, q^^q^ при всех п. Это означает, что c\\x'^-X\\^<(c\\:^-X\\^f^
4\4 , нелинейные уравнения и задачи оптимизации [ГЛ. Vir отсюда следует G). Согласно определению cub, и поэтому Jt"->X. Теорема доказана. Оценка скорости сходимости метода Ньютона G) получена как следствие неравенства (8), выполняющегося для любого метода второго порядка. Таким образом, оценка G) при некотором значении постоянной с выполнена для любого метода второго порядка. Иногда вместо F) выполняется более слабая оценка II Р (Uy) -P(U,)~F' iU,) (I/, - V,) lly < «3II U2 - Ui \\^ где 1 < p < 2. Тогда вместо G) имеет место оценка 1и''-х11а»<сг'(с,1и°-хуЛ Обращение оператора Р(дс") зачастую оказывается более трудоемкой операцией, чем вычисление значения f(jc"). Поэтому метод Ньютона часто модифицируется следующим образом. По ходу вычислений выбирают или заранее задаются некоторой возрастающей последовательностью чисел no=0,«ii«2. nh^TK. Mft+i итерации производят по формуле 1 ... При x''+'=x'^-{F'ix'^^')) Р{Х% Увеличение числа итераций, сопровождающее часто такую модификацию, компенсируется большей «дешевизной» одного шага итерации. Выбор последовательности {п^} нужно производить с обоюдным учетом этих факторов. Рассмотрим геометрическую интерпретацию метода Ньютона в случае решения скалярного уравнения /(jc) = 0. Тогда расчетная формула D) приобретает вид хп+\ .ХП. (9)
МЕТОД НЬЮТОНА РЕШЕНИЯ НЕЛИНЕЙНЫХ УРАВНЕНИИ И5 Для получения х"+' геометрически надо найти абсциссу точки пересечения с осью х касательной к кривой y = f(x) в точке (jc",/(д:")) (рис. 7.2.1). Уже в случае, когда /(.v) —многочлей третьей степени, может случиться, что последовательность {jc"} не сходится к корню при плохом начальном приближении. Например, в случае, изображенном на рис. 7.2.2, все четные приближения совпадают с а, а нечетные — с Ь; метод, как говорят, «зациклился». Для более сложных задач реальное поведение приближений jc" при плохом начальном приближении становится ■существенно более запутанным и трудно поддающимся анализу. Сравним асимптотическую скорость сходимости метода Ньютона и метода простой итерации. Для последнего мы имели оценку погрешности Чтобы ошибка стала меньше е, согласно этой оценке, достаточно взять ^, 11*°-XII , I п > log-1 ^ log„-i —. В случае метода Ньютона правая часть G) будет меньше е, если ^>-iog.'°^'^,lt:/"~'og.iog.i. A0) Iog2 (се) Таким образом, асимптотически, при е ->0, метод Ньютона требует меньшего числа итераций. Обратим внимание, что метод Ньютона, записанный в форме D), сам является разновидностью метода простой р„с. 7 2 3. итерации. В случае скалярного уравнения /(д:) = 0 хорошо видна еще одна особенность метода Нью- f(x) тона. Производная правой части (9) gix) = x- f'(x) по X равна ^ff/"if^ . Таким образом, g'(A:) = 0, если 1'{Х)фО,а рис. 7.1.1 в этом случае приобретает следующий вид (рис. 7.2.3). Метод Ньютона оказывается удобным способом извлечения корней це- р лой степени. Задача извлечения корня У~а, р — целое, равносильна задаче решения уравнения х'—а ^ 0. Расчетная формула метода Ньютона в этом случае приобретает вид xn+i- 1 Хп + Р<-'
416 НЕЛИНЕЙНЫЕ УРАВНЕНИЯ И ЗАДАЧИ ОПТИМИЗАЦИИ [ГЛ. VH В качестве начального приближения к У^ можно взять значение некоторого многочлена, приближающего эту функцию. Задача. Рассматривается алгоритм вычисления у^а при 1 < а ^^ 4, Хо полагается равным значению многочлена наилучшего равномерного приближения для Уа на [1,4]: д:о = р, (а) = —+-5-. Убедиться в справедливости неравенства | х^ — Уа |<0,5' 10~^^. § 3. Другие методы решения одного уравнения Если имеется хорошее приближение к корню А^ уравнения f{x)==0, то, наряду с методом Ньютона, употребителен метод секущих. Простейший вариант этого метода заключается в следующем. В процессе итераций фиксируется некоторая точка Л Приближение дг"+' находится как абсцисса точки пересечения прямой, проходящей через точки {x°,f{x°)) и (jc«,/(;с«)) с осью X (рис. 7.3.1). Рис. 7.3.1. Рис. 7.3.2. Обычно более эффективен способ, где за л:''+' принимается абсцисса точки пересечения с осью х прямой, проходящей через точки (j:"-',/U"-')) и (дг«, / (дг«)) (рис. 7.3.2). Уравнение этой прямой yЛ^) = fix'^) + ix-x'^)IЩ=d^. хг — X Из условия 1/„(а;"+') = 0 получаем ,^п+1-^п fHU"-;c"-') fix")-fix"-') A) Для оценки требуемого числа итераций установим связь между погрешностями г„ = х"— X последующих приближений. Справедливо равенство
S 31 ДРУГИЕ МЕТОДЫ РЕШЕНИЯ ОДНОГО УРАВНЕНИЯ 417 (разложение Тейлора): 0 = f{X) = f(x'^) + f'{x'^)(X-x'^) + I^^-^(X-x'^У + O^(X-x^)^). Отсюда /U«)=/'U'')r„—^г^ + 0(г3). Точно так же / (х"-') - f (x'^)^f' (х") (х"-' - x'^) + ^^-^ (х"-' - x^f + О ((х"-' - х^)% Отсюда f (х") - f U"-') = f ix") (гп - /■„-,) - -f^^ (л„ - r„-,)' + о ({гп-Гп-^П Вычитая X из A), лолучим (f'(x«)г„-q^г^^-0(г3))(г„-г„_,) ''я+1 — ''я ■ г (х") (Гп - А„-,) - -^^^^(г„ - г„_,Н + о ((г„ - л„_,)')' в предположении f (х) Ф О разделим числитель и знаменатель на /' (х^) X Х(''п —'■fi-i); имеем r„-Xrl+0{rl) rn+i-гп ^_^ (^^ _ ^^_^) ^ Q ^(^^ _ ^^_^jjj , где , Г(х") 2/' (ж") • На основании равенства .^J_=l+e + 0(e2) получаем отсюда, что rn+^ = ^„ - {'п - К + О {rl)){i + М^ - ^„-.) + О {{Гп - ^„-if)). Иначе это соотношение можно представить в виде Гп+1 = А.л„г„-, + О ((I г„ 1 + I г„-, I K). B) Мы не будем производить строгих оценок скорости сходимости итерационного процесса, а ограничимся лишь правдоподойными рассуждениями. Глядя на соотношение B), естествеиио предположить, что в ходе итераций погрешности Гп довольно быстро убывают: г„_,»л„>л„+,; C) в то же время нет оснований рассчитывать, что величина Гп+i будет (при п-*-сх>) по порядку меньше, чем произведение ГпГп-\- Поскольку r„_i>r„, то '■„_!'■„>/"п' отсюда и из B) следует, что r„_,.i»r^. Уменьшая значение п на 1, получаем r^>'"„_i; следовательно, ''^-i <''„'■„_i! отсюда и из C) вытекает соотношение /"^ <'■„''„_ i- Поэтому при больших п B) можно записать в виде 14 Н. с. Бахвалов
418 НЕЛИНЕЙНЫЕ УРАВНЕНИЯ И ЗАДАЧИ ОПТИМИЗАЦИИ [ГЛ. VI: После замены | Ял„ | = Rn получим ^я+1 "^ RnRn-i- Логарифмируя это соотношение, имеем In Rn+i ~ In А"„ + In R„-i, Есть основания предположить, что при больших п величина 1п Rn ведет себя как решение конечно-разностного уравнения «я+1 = «п + «л-1: соответствующее характеристическое уравнение ц* — ц — I = О имеет корни Hi = 2 ' **2 = 2 ' "Ричв" InKI- Таким образом «„ = CiHi'+Сгц" ~ <^i(*i' "Р" п-*-оо. В предположении InRn ~ Un можно написать асимптотическое равенство Iog2| ln/?„|~Iog2|c,n7|~nlog2Hi. Неравенства |л„| < е, ^в < |Я,|е и |1п^в| ^ |1п (|Я,|е)| экивалентны при |Я,|8 ^ 1. Поэтому для наименьшего п, при котором достигается требуемая точность в, имеем logj |1п (|Я,|е) | ~nlog2|Xi; отсюда получаем logs logj • logs Hi ^ ^ 8 • Сравнивая это соотношение с B.10), видим, что для рассматриваемого нами метода секущих требуемое число итераций при малых е примерно в log„ 2« 1,44 раза больше, чем для метода Ньютона. Если d\ — объем работы при вычислении значения функции в точке, а rfj — дополнительный объем работы при вычислении производной в той же точке, то в рассматриваемом случае суммарные затраты работы будут порядка l,44rfi log^ logj —, Б а в случае метода Ньютона — порядка (rfj + ^г) logj logj — . Рассмотрим типичную задачу: имеется конкретная функция f[x, ai, ,.. ..., otn); требуется составить программу, которая по задаваемым ей значениям «1, ..., а„ выдает корень уравнения f{x, «i, .... «„) =0. Часто программы вычисления функций f к fx имеют много общих блоков и в результате этого выполняется неравенство dj < 0,44di. Тогда в соответствии с приведенными выше оценками при наличии хорошего начального приближения к корню целесообразнее использовать метод Ньютону. При решении системы уравнений F(x) = 0 в качестве аналога метода секущих можно рассматривать такой метод. Пусть определены приближения х"-", ..., х" и известны значения /Дх"-'") /Лх"). Пусть у = Li(x)—уравнение плоскости, проходящей через точки {x'^-"^,]Лx'^-"^)) (х". f,(x«));
§ 31 ДРУГИЕ МЕТОДЫ РЕШЕНИЯ ОДНОГО УРАВНЕНИЯ 419 за следующее приближение х"+' принимаем решение системы уравнений Li(x) = Q, /= 1,.... m. При т = 1 этот метод действительно превращается в рассматривавшийся выше метод секущих. Для m > 1 этот метод применяется редко, обычно в случае, когда можно ограничиться невысокой точностью. Дело в том, что для этого метода при я -►• оо характерно «сплющивание» /я-мерного симплекса с вершинами в точках *"-", ,.,, х"; следствием этого является быстрое ухудшение обусловленности системы уравнений L,{x) =0; в результате алгоритм вычислений становится неустойчивым к вычислительной погрешности, а также теряет сходимость. Кроме описанных выше, существует большое число других методов подобного типа, где в окрестности корня функция f(x) приближается некоторой функцией ^(д:), для которой уравнение g{x) = 0 решается в явном виде. Однако для применения всех этих методов необходимо достаточно хорошее приближение к решению. Для получения такого приближения иногда используется метод вилки. Сначала определяют о" и 6° такие, что f(x) непрерывна на [а", Ь"] и 1@^I0") < 0. Например, в упомянутом выше случае уравнения f(x, а\, ... .,., «я) = О часто удается получить явное выражение ao(ai а»), 6o(ai, ..., an) таких Оо, бо", в других случаях их иногда находят, составляя некоторую таблицу значений f(x) в случайных или упорядоченных точках. После нахождения такого отрезка [cfi, Ь"] выбирают некоторую точку с" е (cfl, 6°). После сравнения знаков величин f(cfi), [(с") и fF') принимают за [а', Ь'] тот из отрезков [а", с"!, (с", Ь% на концах которого /(х) принимает противоположные знаки. Далее выбирается точка c^ е {a^, 6') и Т. д. В результате получается последовательность вложенных друг в друга отрезков [а», Ь"] гэ [в', 6'] =5... таких, что f{a'^)f{b'^) < 0. Например, можно представить такую линию поведения при выборе с". На первых шагах берется с" = (а" + 6")/2, после вычисления /(с") решается вопрос, можно ли считать точки ia^fia")), ^c'^,f{c'^)), {b'^.f(b'^)) D) лежащими на одной прямой. Если указанные точки лежат на одной прямой, то f^a'^)-2f^c'^) + f^Ь'^) = 0■, поэтому условием принадлежности этих точек одной прямой считается выполнение неравенства 1 f (а") - 2/(с") 4-f F") К VI f F") - / (а") 1: у — подбирается экспериментально. В случае положительного ответа, начиная с этого момента, в качестве с"+' берут точку пересечения секущей, проходящей через точки (««+'. f(a''+')), (б"+',/(б''+')), с осью X. в случае отрицательного ответа опять полагают c'^+^ = {a'^+^J^b'^+^)|2 14*
420 , нелинейные уравнения и задачи оптимизации [ГЛ. VII и рассматривают вопрос о принадлежности точек {a'^+\fia-+% (."+', ^И+')). F"+',/(&"+')) одной прямой и т. д. в некоторых случаях целесообразно всегда принимать за с"+' абсциссу точки иитервала (Оп, Ьп), в которой парабола, проходящая через точки D), пересекается с осью х. Важной задачей является разработка эффективных методов решения уравнений отдельных типичных классов. Для нахождения корней многочлена P(z) = aoZ"^ + ... + От как с действительными, так и с комплексными коэффициентами таким методом является метод парабол. При заданных приближениях к корню 2„_2, Zn-\, Zn следующее приближение определяется следующим образом. Строится интерполяционный многочлен второй степени, совпадающий с P{z) в точках 2„_2, z„_i, z„. За z„+i принимается корень этого многочлена, наиболее близкий к z„. В стандартных программах метода парабол эта схема подвергнута некоторой модификации, вызванной анализом результатов применения метода. Хотя сходимость этого метода для произвольного многочлена при произвольных начальных условиях не доказана, не зарегистрировано ни одного случая, когда этот метод не сходится или сходится медленно. Если ищется несколько корней многочлена, то производится так называемое выделение корней: после нахождения очередного корня Z от нахождения корней многочлена P{z) переходят Я (г) к нахождению корней многочлена —^г? * § 4. Методы спуска Для решения задачи минимизации функционала наиболее часто применяются методы спуска. При заданном приближении определяется какое-либо направление, в котором функционал убывает, и производится перемещение приближения в этом направлении. Если величина перемещения взята не очень большой, то значение функционала обязательно уменьшится. Рассмотрим примеры методов спуска. \ При исследовании сходимости метода Зейделя в случае системы уравнений Ах^Ь при Л > О мы описали циклический метод покоординатного спуска минимизации функции Ф(л:1, ..., л:^). При заданном приближении Ф[^^ лЯ^) отыскивается значение л:, = х\, при котором достигается inf Ф(д;,, л^, ..., ^х9^), затем отыскивается значение х,^ = х\^, при котором достигается infOfjc}, х^, x° ^) и т. д.; процесс циклически повторяется. Обозначим через PhX приближение, получаемое при спуске из X по координате Xk- Присваивая приближению, получающе-
■«41 МЕТОДЫ СПУСКА 421 муся при спуске по очередной координате, следующий номер, можно записать приближения метода циклического покоординатного спуска в виде и2^ РгР.*. Р,ж, «'"+'== PiP, l^m Pi*. При практической реализации этого метода возникает проблема минимизации функций одной переменной. Рассмотрим отдельно задачу минимизации функции одной переменной Ф{х) при начальном приближении к точке минимума л: = jc°. Так как эта задача обычно не может быть решена точно, то часто п^тупают следующим образом: берут некоторые значения jf", л;° и строят параболу у = Р2(л;), удовлетворяющую условиям _ _ Р2(Д«)=Ф(А P2(JC«)=0(A Р2(^)=ФA?). Абсциссу X точки минимума Рз(х) принимают за следующее приближение Jf'. Последовательность точек, получаемых по описываемому методу, не обязательно сходится к искомой точке экстремума функции Ф{х). Чтобы уяснить возможность подобных ситуаций, поучительно рассмотреть некоторые примеры. Пусть х"—приближения, получаемые по этому алгоритму. Возможны различные способы выбора точек jc", х" на каждом шаге итераций. Можно выбкрать эти точки так, чтобы было а) \Л-\^-1^\- при Тогда возможна следующая ситуация (рис. 7.4.1). Точки х", х", ж" находятся m малой окрестности точки локального экстремума х', все последующие точки Рис. 7.4.1. л", X", х" тоже в этой окрестности и х"->-х*\ мы получаем точку локаль- «ого экстремума х' вм^есто интересующей нас точки абсолютного экстремума X. б) |х" — х"!-f jp —jc"J7*0; нетрудно подобрать функцию Ф(х), удовлетворяющую следующим условием (рис. 7.4.2): 1) существуют точки х', J?, х^ такие, что парабола, совпадающая с Ф(х) я этих точках, имеет экстремум в точке х';
422 нелинейные уравнения и задачи оптимизации [ГЛ. VIТ 2) если х" = х\х" = х°, |д/»-ж*|<я, Я>0, то |У+'-x*|</7|*«-x*h где д<с1. Тогда при начальном приближении ifi таком, что \х9—х'\ ^г\, мы будем иметь полную иллюзию сходимости итерационного процесса к точке х'^ не являющейся даже точкой локального экстремума. Задача. Получить явную формулу для такой функции Ф{х). Даже если на каждом шаге отыскивается абсолютный экстремум функции Ф(д:1, .... Хт) по соответствующей координате, уже при m = 2 можно построить пример, когда итерационный процесс сходится при некотором начальном приближении не к искомой точке абсолютного экстремума, а к некоторой точке локального экстремума. На рис. 7.4.3 изображены линии уровня такой функции и получаемые приближения. Спуск в циклическом порядке необязателен. Если из рассмотрения проводившихся ранее вычислений видно, что спуск по каким-либо координатам обеспечивает наибольшее убывание Ф(лг), то иногда целесообразен более частый спуск по этим координатам. В других случаях при каждом п после получения приближения х'* выбирается некоторая совокупность координат "А, Рис. 7.4.3. •*^Мя, 1)> ^l(n.q(n))'> производятся независимые спуски по координатам этой группы исходя из приближения *", т. е. находят точки Р,(„, л)*". Далее вычисляется min ФiPц„,k)X'^) 1 < ft < 9 (п) И соответствующая минимуму точка Pt^„,k,)X'^ принимается за дс"+'. Описанные методы называют методами оптимального покоординатного спуска. Иногда номер очередной координаты, по которой осуществляется спуск, выбирается недетерминированно. В этом случае говорят о случайном покоординатном спуске. Другой вариант метода спуска — метод наискорейшего (градиентного) спуска. Следующее приближение отыскивается в виде ^ дсп+1 = ж" — Д„ grAd Ф (ж")
=§ 4] МЕТОДЫ cnVcKA 423 (рис. 7.4.4). Значение А„ Определяется из условия min Ф (ж" — Л„ gra d Ф {x'^)), т. е. этот алгоритм опять состоит в последовательной минимизации функций одной переменной А„. Обратим внимание на то, что как в методе покол>рдинат- ного спуска, так и в методе наискорейшего спуска нет необходимости полного решения задач минимизации. Иногда разумнее, достигнув лишь некоторого смещения в сторону минимума вспомогательной функции одной переменной, перейти к следующему шагу' итерационного процесса. В окрестности точки своего минимума вспомогательная функция одной переменной меняется мало и слишком тщательное нахождение ее точки минимума не приводит к существенному уменьшению рассматриваемых значений функции. В случае метода наискорейшего спуска вопрос об объеме вычислений при минимизации вспомогательных функций одной переменной должен решаться также с учетом относительной Рис. 7.4 4. трудоемкости вычисления значений функции Ф{х) и ее градиента. Если вычисление значения функции существенно проще вычисления градиента, оправдано более точное нахождение минимума на каждом шаге итерации. В противоположном случае разумнее не затрачивать слишком много усилий на нахождение этих минимумов. Для иллюстрации решения вопроса о выборе метода рассмотрим следующую типичную задачу: решается нелинейная краевая задача для системы обыкновенных дифференциальных уравнений. В главе IX будет показано, что эта задача сводится к решению нелинейной системы уравнений р{х) = 0: fiix) = fi{xi л:т)==0, i=l, ..., m, обладающей следующими свойствами. Объем вычислений при отыскании одного значения f, (дс) и при одновременном отыскании всех значений f,(ж), i = 1, ..., т, в той же точке одинаков; обозначим его через-Л. Объем вычис- df, (х) лении при непосредственном отыскании значения - ' ^ ' и при одновременном отыскании всех значений ' ■■■ i=l m,
424 нелинейные уравнения и задачи оптимизации [ГЛ. VII в той же точке одинаков; обозначим его через В. Обычно оказывается, что эти затраты А и В очень велики и В ^А. Поэтому целесообразнее вычислять производные dfi(x) дх. пользуясь приближенной формулой dfi(xi, ..., Хт) ^1 /= 1 т, fi{x\ Xj-u XJ + ^, Xj+i Xm)—fi(xi xj-ux/, X}+i Xm) ^.^ A) Тогда затраты по вычислению этих производных равны 2А, т. е, затратам по вычислению двух совокупностей значений и h (*1 ■*/-!' •*/ + ^' ^1+1 *т) (мы пренебрегаем вычислениями при вычитании этих величин и делении на Д). Если имеется хорошее приближение к решению задачи, то иногда неплохо воспользоваться методом Ньютона, имеющим быструю сходимость. Область сходимости метода Ньютона обычно невелика, и поэтому, по> крайней мере на начальном этапе итераций, может быть, целесообразно свести решение этой задачи к минимизации некоторого функционала и применить какой-либо из методов спуска. Рассмотрим простейший случай функционала Ф(х)='^ {i^ih (х)Г: множители ki = const ф О, называемые масштабными, обычно можно удачно подобрать из условий конкретной задачи. Пусть j(" = (jc", ..., *^) — полученное приближение и решено сделать- спуск по координате Jfi. Тогда вычисляются величины /((*"), ' = 1, .,., пг (если они ранее еще не были вычислены), и величины /<{*"• Ч /=1 т. где X^^•^={x1 + ^, Х^ Х^У, далее при помощи' формулы A) вычисляются приближения li\ к производ- dfi (х) иым ' . ' OXi На прямой, проходящей через *" параллельно оси *i, в окрестности ■ точки *" имеем /, (*) « // U") + 1ц {xi - xf);
^ 5] СВЕДЕНИЯ К ЗАДАЧАМ МЕНЬШЕЙ РАЗМЕРНОСТИ 425 лоэтому координату Xi следующего приближения ■определяют из условия min 2 (^Д/Д*") + /п(*1-*?)))'. В реальном алгоритме следует учесть ряд дополнительных обстоятельств, например, разумный выбор Л: при больших Д велика погрешность аппрокси^ мации в формуле A), в то же время погрешности в значениях f( делятся на Д, и поэтому при малых Д погрешность формулы A) также велика. Предположим, что решено использовать метод градиентного спуска. Вычисление grad0(jc'') требует знания всех производных -^-^—-; в случае их вычисления с помощью формул A) объем вычислений равен (т-\-\)А\ при больших т трудоемкость {т+\)А вычисления grad<b(jc) много больше трудоемкости А вычисления Ф(*), и поэтому можно рекомендовать более тщательный выбор точки минимума в методе наискорейшего спуска. § 5. Другие методы сведения многомерных задач к задачам меньшей размерности Иногда бывает полезно рассмотреть следующую формальную процедуру сведения многомерных задач к одномерным. Пусть ищется минимум Ф* функции Ф(д:„ .... к„) в области Ф((*1 *„)>0, t=l, ..., /, ■^,{Ki, .... д:т) = 0, /=1, ...,q. A) Можно написать равенство Ф*= min Ф(дс„ .... хгт) = minФт(*„), где ^т{хт)= min Ф(д:„ .... к„)\ минимум каждый раз берется по области определения минимизируемой функции в соответствии с условиями A). Таким образом, исходная задача минимизации функции m переменных ■свелась к минимизации функции одной переменной, каждое значение которой определяется минимизацией функции (т—1)-й переменной. В свою очередь минимизацию функции ^т{Хт) сведем к минимизации функции одной переменной, каждое значение которой определяется минимизацией функции
426 нелинейные уравнения и задачи оптимизации [ГЛ VI t от (т — 2)-х переменных, и т. д. Получим цепочку соотношений Ф' = т1пФ„(д:„), Фт («т) = min Фт-, {х^-х. Km), Фз(*з. •••. *m) = min Фа ^2. •••. *m). X, Ф2(д:2, ..•, х:т) = т1пФ(д:„ .... *„). Кажущейся простоте метода сопутствует его большая трудоемкость. Предположим, что каждая минимизация функций одной переменной потребует вычисления s значений минимизируемой функции. Тогда минимизация Фт{Хт) требует минимизации min Ф,п-1 (*т-1, *т) у у^ nr~ix* при S значениях параметра Хт, Рис. 7.5.1. Рис. 7 52. Т. е. \s2 вычислений значений функции Фт-1(^Ст-1, Хт)- Это в свою очередь потребует вычисления s^ значений Фт-2(*т-2>. *m-l> *m) И Т. Д. В конечном счете потребуется вычисление s™ значений функции Ф. Уже при умеренных s и т, например s=10, m=10, такой объем вычислений окажется недопустимо большим. Однако при малых т некоторые модификации рассматриваемой идеи оказываются полезными. Например, возможен такой вариант. Задаются начальным приближением (xf^, .... х^). Реализуют указанный алгоритм при не очень большом значении s, например s = 3 или s = 4. При этом значения функции вычисляются в точках некоторого куба U,-4I, ..., \x_-xt\<^..
СВЕДЕНИЯ К ЗАДАЧАМ МЕНЬШЕЙ РАЗМЕРНОСТИ 427 Получаемую точку минимума (Vp ..•■ х]^ принимают за следующее приближение; приближение [х], ..., jc^) находят аналогичным образом, но значения функции Ф вычисляются в точках куба 1*, —д:||, ..., |v—*mt<^t и т. д., где До > Ai >, > Да > ... Рассмотрим еще один метод, общая структура которого похожа на структуру описанного выше. Если линии уроеця функции Ф похожи на сферы, то при применении методов спуска происходит быстрое смещение в направлении минимума (рис. 7.5.1). Однако практически более типичен случай, когда эти линии похожи на эллипсоиды с большим разбросом полуосей. Тогда при движении по град^1енту смещение в направлении точки минимума будет довольно медленным (рис. 7.5.2). Предположим, что оси этих «эллипсоидов» естественным образом разбиваются на две группы: первая группа состоит из nil осей одного порядка и относительно малых, вторая группа состоит из /«2 осей одного порядка и относительно больших. Для некоторых задач такого рода хорошо зарекомендовал себя следующий метод, называемый методом оврагов. Задаются какими-то приближениями х9 и x^ к производят несколько шагов метода спуска, исходя из каждого из этих приближений. Будут получены приближения Х° и ХК Из рис. 7.5.3 видно, что эти приближения будут лежать в многообразии, расположенном в окрестности осей второй группы. Процесс итераций состоит в получении последовательных приближений Х'^, X^ лежащих в окрестности этого многообразия. В случае та = 1 приближение X'^^^ отыскивается следующим образом Проведем через X^-^ и X' прямую и найдем приближение дс'+' к точке минимума Ф{х) на этой прямой. Таким образом, это приближение ищется в виде x^+^=X^+a{X^-X^-^). Рис. 7.5.3. Далее проводим несколько итераций, исходя из х'+\ и получаем приближение Х'+\ также лежащее в овраге. В случае /Иг > I
428 нелинейные уравнения и задачи оптимизации [ГЛ. Vir прибли-жение ж^' иногда удобно отыскивать в виде ж'+> = Х'-\-а(Х'- Jf'-■) + рgrad Ф{Х'). Из рис. 7.5.4 видно, что описанный способ оказывается эффективным и в ряде случаев, когда линии уровня функции Ф имеют более сложную структуру. Решение системы уравнений fiixi, .... Xm) = 0, i=I, ,,., ш, B) также формально сводится к последовательному решению уравнений с вдним неизвестным. Рассмотрим систему уравнений fiixi, ..., Хт) = 0, 1 = 2, ..., т, C) относительно неизвестных Х2, ..., Хт- Пусть ^2(^1), •.. ..,, Xm{xi)—ее решение. Подставляя выражения :k2(^i), ... ..., Xmixi) в первое из уравнений B), получим уравнение Piixi) = fi{xi, Xiix^) ж„(;^,)) = 0 D) относительно одной неизвестной jcj. Отыскание значений JC2(JCi), ... ...,XmiXi) и решение уравнения D) можно проводить численно; выбирается какой-то метод решения D) по значениям функции Fi{xi), При каждом требуемом значении .ici в результате решения C) получаются значения Jf2(-«i), ..., Xm{xi),, которые подставляются затем в правую часть D). Для решения системы уравнений C) при каждом значении JCi применим тот же прием. , Хт{хьХ2) — решение системы уравнений. Рис. 7.5.4. Пусть Хъ{Х1,Х2), fi {Xi, ... х„) = 0, t = 3, m, E> относительно неизвестных Хз х^. Подставляя JC3(Jfi, ^^г), .., .... Xm(xi,X2) во второе уравнение системы, получим уравнение p2iXl, X2) = f2(Xy, Xi, ^Сз(->^1. Х2) JCm(-«I. ^2)) = О- При каждом Xi это уравнение может быть разрешено относительно Х2. Его решение JC2(Jfi). а также X3(xi,X2{xi)), ... ..., Xm{X\,X2(Xi)) образуют решение системы C). Систему E),
$ 6] РЕШЕНИЕ СТАЦИОНАРНЫХ ЗАДАЧ ПУТЕМ УСТАНОВЛЕНИЯ 429 при каж-дых Хи Х2 опять решаем, сводя к системе, где число неизвестных на единицу меньше и т. д. Если для нахождения каждого вспомогательного уравнения с одной неизвестной потребуется s вычислений (функций, то суммарно этот алгоритм потребует s + ... -|- s™ вычислений правых частей уравнений системы. Так же как описанный в начале параграфа метод минимизации, этот алгоритм применяют относительно редко, обычно в случае небольших т при сложной структуре взаимного рас* положения поверхностей fi{xi, ..., Хт) = 0. Задача. Рассмотреть, во что переходит описанный метод в случае, когда система уравнений B) линейная. § 6. Решение стационарных задач путем установления Распространенным методом решения задач рассматриваемого нами типа является метод их решения путем установления. Строится некоторый нестационарный процесс, решение которого с течением времени устанавливается к решению исходной задачи. Рассмотрим систему дифференциальных уравнений -^ + gradO = 0. A) Вектор -^ пропорционален градиенту функции Ф, т. е. ортогонален ее линиям уровня и направлен в сторону убывания значений функции Ф. Таким образом, при перемещении вдоль траектории системы A) значение Ф не возрастает. Формально справедливость этого утверждения следует из неравенства ^^^ = (gтadФ.■^) = ~(gт8idФ,gra6Ф). B) означающего, что —Jt^ " всюду, за исключением стационарных точек функции Ф(дс). Другой нестационарный процесс, решение которого при весьма общих предположениях устанавливается к точке минимума функции F{x), описывается системой дифференциальных уравнений ■^ + 74г + егаAФ = 0, Y>0. C) Для решения этой системы имеем l(iDr. ж) + ^^W) = (^.4^) + ИФ.4r)- =-v(t.l)<0, D)
430 нелинейные уравнения и задачи оптимизации [ГЛ VII dx если только-^ т^ 0. Функцию Ф{ж) в первом случае и Тх'НГ' 57 +*^^*^~ ^^ втором можно рассматривать как энергию материальной системы, движение которой описывается системами уравнений A) и C). Соотношения B) и D) показывают, что рассматриваемые нестационарные процессы характеризуются оттоком, или, как говорят, диссипацией энергии. Чтобы прояснить вопрос о разумном выборе у, рассмотрим простейшую модель: х — скаляр, Ф (;«) = —2—; тогда C) приобретает вид Соответствующее характеристическое уравнение К^ + \К + а^=0, его корни Я],2 = — Y±l/-^ а^ и при Xi Ф Яа, т. е. уф2а, общее решение Ciexp(A,i /) + С2ехр(Х20- Скорость убывания решений рассматриваемого уравнения определяется величиной a(Y) = max{ReXi, Re^a). s. 4 При y^2a имеем -^ a^^O, и поэтому Re Я, = Re Яа = a (y) = — I" > — a. При y> 2a ki и A,2 вещественны и, очевидно, ReX,= -| + -)/-^-a^>ReX2=-|--)/4-^^- Тогда a(Y) = ReX, = -| + "^-T-«' = //2 a2 = > > - a. 1 + /- l--a^ 1. 4 2 Таким образом, график a(y) имеет вид, изображенный на рис. 7.6.1, и mina{Y)= <jBa) = —а. Из результатов рассмот- V рения этой модельной задачи можно сделать следующие качественные выводы. 1. Если коэффициент трения y очень мал (в нашем случае у<^2а), то решение системы C) медленно устанавливается
§6] РЕШЕНИЕ СТАЦИОНАРНЫХ ЗАДАЧ ПУТЕМ УСТАНОВЛЕНИЯ 431 К положению равновесия; при этом (вследствие условия 1тЯ1, Im?i2T^0) происходят колебания около положения равновесия. 2. Если Y велико (y ^ 2а), то решение также медленно устанавливается; причина состоит в том, что при большом коэффициенте трения Y движение не может приобрести большой скорости. 3. Оптимальное значение y лежит где-то посередине и зависит от свойств конкретной функции Ф{дг), Метод установления с помощью решения системы C) иногда называют методом тяжелого шарика. Это название вызывается следующими соображениями. Рассмотрим движение материальной точки по поверхности у = Ф{х) в поле тяжести, направленном в отрицательном направлении оси у; предположим, что трение пропорционально скорости н точка не может отрываться от поверхности. Тогда ее движение опишется системой уравнении ♦' dt' + gradO -f- 11 grad Ф 11^ ~ 0. (га,-а) Ясно, что решение этой сие- Рис. 7 61. темы с течением времени установится к некоторой стационарной точке функции Ф(х). В окрестности стационарных точек HgradOU •< 1, и эта система близка к системе C). Большинство известных методов установления описывается уравнениями вида или где До {X., 0) Ф О, Во (X, 0) Ф О, Л, (X, 0. 0) = о, в, (X, 0.0) = о и выполнены условия диссипативности, обеспечивающие сходимость к точке экстремума. Формально говоря, можно обратить операторы /4о н Во и преобразовать эти уравнения к виду, где Ло и Во — тождественные операторы. Однако исходная форма записи уравнений часто практически удобнее. Может показаться, что построение таких нестационарных процессов, устанавливающихся к решению, уже полностью решает проблему отыскания минимума функции. Осталось «лишь» проинтегрировать получившуюся систему
432 нелинейные уравнения и задачи оптимизации [ГЛ. VH дифференциальных уравнений при помощи какой-либо стандартной программы. В действительности сведение решения стационарной задачи к решению нестационарной не всегда дает удовлетворительное решение проблемы минимизации. Остается еще неясным существенный вопрос о выборе величин шагов численного интегрирования. Предположим, что решение нестационарной задачи устанавливается с требуемой точностью к решению стационарной за некоторый промежуток времени Т. Если интегрирование производится с малым шагом Л, то получаемые расчетные точки будут близки к рассматриваемой траектории и можно рассчитывать на попадание в малую окрестность точки минимума. Однако при этом число шагов Г/Д может оказаться недопустимо большим (рис. 7.6.2). Если шаг интегрирования берется очень Рис. 7 6.2. Рис. 7.6.3. большим, то может случиться, что расчетные точки начнут сильно откланяться от рассматриваемого решения и никогда не попадут в искомую окрестнэсть точки минимума (рис. 7.6.3). Чтвбы понять механизм явления, полезно обратиться к случаю функционала фР{х)=-^{Ах.х)-{Ь,х), E) минимум которого при л > о достигается на решении системы Ах=:Ь. Тогда система уравнений (I) приобретает вид dx ^ + {Ах-Ь) = 0. dt dx Заменяя производную -^ простейшим разностным отноше» нием, получим 'л + 1 — 'п
§ 6] РЕШЕНИЕ СТАЦИОНАРНЫХ ЗАДАЧ ПУТЕМ УСТАНОВЛЕНИЯ 433 соответствующая расчетная формула Рассмотрим случай Д„ ^ А = const Ф О, тогда хп+1 ^х" — А {Ах" — Ь). Перепишем это соотношение в виде дс"+' = fix" + с, где В =' = Е — ЛЛ, с = Д&; пусть ?ц ^ ... ^ А.т — собственные значения матрицы А, XmAi ^ 1. Собственными значениями матрицы В будут числа 1 — Д?ч. При Д очень малых собственное число 1—ДЯ; близко к 1, и поэтому число итераций будет большим. Если Д велико, то собственное значение 1—АХт по модулю больше 1 и итерационный процесс расходится. В случае матрицы А с известными границами [i, М расположения собственных значений мы определили ранее оптимальное значение шага Д = 2/{М + М') в таком итерационном процессе. Если значение An определяется на каждом шаге из условия min Ф''{дс'' — Д™ — Д„gradФ''{дc")), то в рассматриваемом случае метод установления совпадет с методом наискорейшего спуска. (Подробнее об особенностях интегрирования таких систем см. § 11 гл. VIII.) Зададимся постоянным шагом интегрирования Дп = = tn+1 — tn = Д и напишем одну из простейших аппроксимаций уравнения C) i^— + '^- 2Г + gradO{*«) = 0. В случае функционала E) это равенство можно преобразовать к виду Xn+^=x'^+ j^{X'^-X'^-^) ^{Ах"-Ь). ^ За счет йодбора Д и у это соотношение можно записать в виде F.7.21) 'и, таким образом, получится итерационный процесс, несущественно отличающийся от оптимального линейного итерационного процесса F.7.16). Как мы видели в § 7 гл. VI, итерационный процесс F 7.16) позволяет получить решение задачи с заданной точностью за существенно меньшее число итераций, чем метод простой итерации. Поэтому и метод установления с помощью численного интегрирования системы C) обычно оказывается эффективнее метода установления, соответствующего численному интегрированию системы A),
434 нелинейные уравнения и задачи оптимизации [ГЛ. VII Зададимся теперь последовательностью промежутков времени to, и, ... и заменим производные в C) разделенными разностями; предполагая коэффициент y зависящим от ^„, получаем соотношения 2 ^"•^■~'" tn-tn-. +У»^"'~Г''+(Л^"-й)-0. <П+1 — 'П-1 'П + 1 — 'П-1 при подходящем подборе параметров у„ и <„ в таком,виде могут быть записаны оптимальный линейный итерационный процесс F.7.15) и метод сопряженных градиентов. Как аналог метода сопряженных градиентов в случае минимизации функционала Ф(«) общего вида можно рассматривать следующий метод: последующие приближения ищутся в виде хп+\ ^x'^ + an {x'^ — Ж""') -f р„ grad Ф {х% а„ и р„ определяются из условия т1пФ(лс"). Такое соответствие между методами решения стационарных задач путем установления и обычными итерационными методами позволяет обнаруживать новые итерационные методы или новые процессы установления. Рассмотрим, например; расчетные формулы Ньютона гП+1 — vl = — I (f'(*"))-'/'(*«) F) решения системы нелинейных уравнений F{x) = 0. Этим формулам можно дать следующую интерпретацию: введем непрерывное время t и будем рассматривать величины ж" как значения некоторой функции в моменты времени tn = п. Тогда соотношение F), переписанное в виде „я+1 п , X —X ITjri..„\\ — l 'п+1 ~ 'п = -{F'{x'^))-^F{x'^), можно интерпретировать как получившееся при аппроксимации системы ^=-{F'{x))-'F{x). G), Решение исходной задачи является стационарной точкой этой системы. При х = Х-\-г\ имеем (f'(*))-'= (f'Wr4o( II и II). P{x) = F{X) + F'{X)rx + 0{\\4f) = F'(XU + 0{\\n\f),
§ 61 РЕШЕНИЕ СТАЦИОНАРНЫХ ЗАДАЧ ПУТЕМ УСТАНОВЛЕНИЯ 435 таким образом, dr\ dx dt dt 4r = 47=-((^'Wr'+ 0A1 T|ll))(/="Wn +0A1 т,1Р)) = = -n + 0(||T|lP). Отсюда следует, что x = X является асимптотически устойчивым решением G). Заменяя производную -jj- разностным отношением по значениям функции в некоторых точках ^о = О, ^ь • •., получаем соотношения иначе, х'>+^ = х"-А„ {F' («"))"' F (*")• (8) Таким образом, построение нестационарного процесса, соог- ветствующего методу Ньютона, привело нас J< получению итерационного процесса (8) более общего вида. Рассмотренный пример показывает, что переход от некоторого итерационного алгоритма к соответствующему ему нестационарному процессу имеет много общих черт с построением замыкания вычислительного алгоритма (понятие замыкания алгоритма будет введено в § 4, гл. IX). Нами была доказана сходимость метода Ньютона лишь при достаточно хорошем начальном приближении к решению. С целью расширения области сходимости иногда прибегают к следующей модификации метода Ньютона. Задаются некоторым функционалом Ф(*), например l|f(*)F, нижняя грань которого достигается на решении задачи. Последовательные приближения отыскиваются в виде (8), причем Дп определяется из условия min Ф (х" - Д„ (f' («"))"' F («")). Возникает вопрос о практическом нахождении величины Лп, при которой достигается этот минимум. Одна нз распространенных процедур определения Лп состоит в следующем. Задавая Я. е (О, 1), 6 е. (О, 1] и />-0 — целое, при каждом п последовательно вычисляют *"+'•' = *" - Х' (f' (*"))"' F (*-»), i = О /, и (/"+''' = ф(х"'*'''')- Если при некотором *</ оказалось </"+'•*<ВФ(х"), то вычисления прекращают и полагают х""*"'= *"''"'•''; в других процедурах находят min </"+'•'■ = (/"+'■'" и полагают х"+'= *^+''"".
436 нелинейные уравнения и задачи оптимизации [ГЛ. VII Если </"+'•« q"+^■^>QФ{x'^), то в разлучных программах варьируются разные исходы: 1) временный переход к другому методу, 2) остановка, 3) изменение значений параметров /, X, 6. Отметим в заключение, что методы установления могут применяться и в случае минимизации функции в областях с ограничениями^ Тогда уравнения A), C) следует дополнить какими-то уравнениями, которым будет подчиняться траектория точки, попавшей на границу. § 7. Что оптимизировать? Выше рассмотрен ряд способов минимизации функций и решения систем нелинейных уравнений. Нами охвачена лишь небольшая часть известных методов решения этих задач. Вместо дальнейшего изучения методов обратим внимание на другие, не менее важные, вопросы. Как уже упоминалось, к минимизации функционалов (функций) сводятся многие задачи управления отраслями промышленности, сельского хозяйства, транспорта, распределения ресурсов и других областей жизни общества. В этих случаях задачи минимизации принято называть задачами оптимизации, поскольку основной целью решения этих задач обычно является достижение какого-то наилучшего, оптимального, режима работы. При этом минимизируемую функцию обычно называют целевой функцией. Решение задач оптимизации складывается из следующих элементов: создание математической модели явления, определение целевой функции и важнейших параметров, подлежащих оптимизации, непосредственная минимизация некоторой функции (обычно большого числа переменных), внедрение результатов исследования. Естественно, что рассмотрение первых двух и последнего вопросов должно проводиться математиками совместно со специалистами конкретной отрасли. Рассмотрим один реальный пример выбора модели. Производство сахара складывается из следующих этапов: выращивание сахарной свеклы, транспортировка, переработка на заводах. Математики, поставившие перед собой задачу оптимизировать производство сахарной свеклы, в первую очередь решили заняться минимизацией транспортных расходов. Эта задача была успешно решена с помощью ЭВМ, но Х01яйственные руководители отказались принять полученный план перевозок к действию. Основой послужил довод о" том, что прн оптимизации транспортировки свеклы несколько ухудшались условия транспортировки других сельскохозяйственных культур, а также усложнялась организация переработки: некоторые заводы оказывались перегруженными, другие недогруженными. По-видимому, за этими возражениями стояли следуюш[ие соображения.
§ 7] ЧТО ОПТИМИЗИРОВАТЬ? 437" Себестоимость сахара складывается из следующих составляющих (числа условные): 80% — стоимость сахарной свеклы, 5% — транспортные расходы, 15% —расходы по переработке. Ожидаемая экономия от минимизации транспортных расходов составляет-'10% этих расходов, т. е. всего 0,5% себестоимости сахара. В то же время эта перестройка требует больших хлопот и неизвестно, не произойдет ли более сущеотвеиных потерь за счет каких-то неучтенных моментов. Из описанной выше структуры себестоимости вндио, что за счет оптимизации расходов по транспортировке и переработке трудно достигнуть существенного повышения эффективности. Внимательный анализ проблемы позволил обнаружить следующее обстоятельство. Выход сахара из тонны свеклы пропорционален ее сахаристости: сахаристость изменяется по определенному закону в процессе созревания и падает в процессе хранения. В частности, при позднем начале уборки происходят большие потери из-за того, что на сахарные заводы поступает одновременно большое количество свеклы и она там долго хранится. В результате этого анализа была поставлена новая целевая функция — оптимизация выхода сахара (нри заданном оборудовании) и построена математическая модель, учитывающая изменение сахаристости в процессе копки и хранения свеклы. Дальнейший анализ показал, что эта модель обладает следующим дефектом. При оптимальном (согласно этой модели) графике работы копка должна начинаться, когда свекла еще находится в периоде интенсивного роста, что экономически невы(^одно для непосредственных производителей. Для преодоления этого противоречия нужно, чтобы модель учитывала вопросы заинтересованности производителей. Результатом решения оптимизационной задачи должен быть не только производственный план, ио и рекомендации по наилучшей организации оплаты. Точно такой же вопрос «Что оптимизировать?» возникает и прИ' решении математических задач. Типичная задача этого сорта: задана функция сложным аналитическим выражением или таблицей; требуется получить ее приближение с заданной точностью при помощи выражения наиболее простого вида. Рассмотрим задачу получения такого приближения для функций Я -«^ ^^Р( ¥^"'4 Для удобства произведем замену переменных ^ = exp(-i^), т. е. рассмотрим задачу приближения функции 00 8 V х^*~' Попытки приближения многочленами дали неудовлетворительные результаты; анализ показал, что причиной является неограниченность производной g'(x) в окрестности x=tl. После исследования особенности производной в окрестности
^8 нелинейные уравнения и задачи оптимизации [ГЛ VII точки * = 1 было принято решение отыскивать приближение в виде 1 + X h(x) = ([ — x) (яо + a,-t + а^х^) 1п ^_^ +х(аз + а^х) + 1. За счет выбора параметров а, удалось получить приближение с точностью 10-^. При других попытках приближения оказалось, что g{x) также может быть приближена при х ^ 10~^ с точностью 5 • 10~* выражением вида (l-x){l+xiai+a,x)) I +азх + atx' + Osx^ После выбора класса объектов, в котором отыскивается решение задачи, возникает проблема разумной параметризации этого класса. Например, многочлен Q{x)=llaiXK 1=0 приближающий функцию f{x) на отрезке [—1, 1], можно записать также в виде п Как отмечалось, первая запись нежелательна вследствие возможной большой вычислительной погрешности; кроме этого, вторая форма записи имеет следующее преимущество. Пусть приближающий многочлен отыскивается из условия minO. где Ф= Г i^M^Jii»! rfx -I При первой фор^ме записи многочлена поверхностями уровня Ф(ао, •.., йп) = const являются эллипсоиды с большим разбросом осей; поэтому итерационные методы минимизации этой функции ббладают малой скоростью сходимости. При второй форме записи многочлена имеем -2'^b, ll^^dx + ^^bh i=I -1 ' ■ " 1=0 поверхностями уровня функции Ф(йо, ..., Ьп) являются сферы, и итерационные способы минимизации обеспечивают быструю сходимость к точке мининума (здесь эта точка известна).
§ 71 ЧТО ОПТИМИЗИРОВАТЬ? 439' Удачный выбор параметров и критериев их определения особенно важны при обработке результатов наблюдений. Как одномерная модель движения снежиой лавины может рассматриваться система дифференциальных уравнений дИ dho dt + ds ""• (ly dv , dv , g dfi^ cos lb / . ^ ^4 t 0* -dF + ^ST + lh ds ^-g(s-"^'-l^cos^)-fe-^; граничные условия на переднем фронте лавины А (ш — о) = АоШ, howv = — gh' cos ф — ah; здесь Л — высота снега, о — его скорость, ф — угол наклона склона, w — скорость переднего фронта, параметры ц, к, а — неизвестные. Была сделана попытка определения этих параметров из наблюдения за положением переднего фронта лавины, двигавшейся по склону с постоянным наклоном ^ = const ' Параметры пытались определить из условия минимума функции Ф (li, fe, а) = 2 (s (V^. k, о, ti) - SiY; здесь S( — наблюдаемые положения переднего фронта в моменты времени tt, s{\i, k, а, tt) —получаемые в результате численного интегрирования системы A). При непосредственном применении большого числа методов минимизации ие обнаруживалось никакой тенденции к установлению получаемых значений (i, k, а. Анализ задачи указал на следующую причину этого явления. Оказывается, что при ф = const с большой точностью выполняется приближенное равенство s (\i, k, о^ t) т U; здесь А.= AЧ—-=г| , Р= =(-7г) 1 \Ч, д_ k tg ф — ц " Поэтому функция Ф(ц, k, а) с большой точностью близка к некоторой функции Фо(Х) одной переменной X. Таким образом, при минимизации функции Ф- по переменным (х, k, а можно рассчитывать не на получение значений всех па- р'аметров \i, k, а, соответсгвующих точке минимума, а на получение лишь значения к, соответствующего точке минимума. Пусть Фо(Я) достигается при К =Хо. Поверхность Я, = Хо является двумерной, в данном случае цилиндрической, поверхностью в пространстве переменных (х, к, а На этой поверхности функция Ф{\1.к,а) оказывается примерно постоянной, и при ее численной минимизации происходит беспорядочное на вид перемещение точек {ц, к, а) вдоль этой поверхности. Таким образом, в данном случае истинная причина неудачи состояла не в несовершенстве методов минимизации, а в недостаточности имеющейся информации по отношению к поставленной цели. Вернемся к замечаниям общего характера. При построении модели задачи возникает желание — создать- подробную математическую модель, учтя многие детали задачи» и затем произвести полную оптимизацию проблемы за счет наилучшего выбора всех параметров. Этот путь чреват рядом неприятностей. Первые трудности возникают при описании модели; стремление учесть слишком многое увеличивает возможность упустить-
-440 нелинейные уравнения и задачи оптимизации [ГЛ VII из внимания что-лнбо существенное и тем самым ухудшить модель При оптимизации по очень большому числу параметров возникает задача минимизации функции большого числа переменных, численное решение которой встречает иногда непреодолимые трудности. Предположим на мгновение, что такую минимизацию все- таки удалось осуществить. Возникает задача доведения информации до сведения заказчиков с целью реализации результатов математического анализа модели. Заказчик обычно принимает решение, исходя из своих собственных, качественных, критериев, не вдаваясь в детали модели. В случае получения рекомендаций относительно слишком большого числа параметров он не всегда сможет сделать для себя вывод о разумности этих рекомендаций и с большой вероятностью вообще откажется от них. Поэтому на первых этапах оптимизации особенно важно построить простейшую модель, учитывающую лишь основные, определяющие, параметры. Это требование вызывается также следующим. Часто поначалу заказчик испытывает недоверие к математикам, вторгающимся в новую для них область. Только после завоевания доверия за счет достижения положительного эффекта при оптимизации важнейших параметров имеет смысл учесть влияние важнейших уже из неучтенных параметров. Следует также иметь в виду, что само построение уточненной мо- Лели явления обычно становится возможным лишь после совместного анализа заказчиком и исполнителем результатов обсчета упрощенной модели. Очень важно также, чтобы результаты математических исследований при диалоге с нематематиками подавались в достаточно наглядной, привычной форме, по возможности с привлечением минимального математического аппарата. Неоправданное привлечение абстрактных понятий математики редко приносит реальную пользу. § 8. Как оптимизировать? После выбора модели, целевой функции и параметризации задачи возникает задача минимизации функции обычно большого числа переменных в области, Принадлежность к которой задается условием выполнения большого числа ограничений — равенств или неравенств. Наличие ограничений существенно увеличивает сложность задачи минимизации: как правило, точкой экстремума оказывается некоторая граничная точка области. Из-за сложности вопроса и ввиду наличия обширной специальной литературы оставим в стороне многочисленные тонкости, связанные с минимизацией функций при наличии ограничений, и рассмотрим общие вопросы.
5 8) КАК ОПТИМИЗИРОВАТЬ? 441 Вследствие большой важности решения задач оптимизации для самых различных сторон жизни общества в настоящее время накопился большой багаж методов и стандартных программ решения задач оптимизации. Поэтому при решении единичной конкретной задачи часто наиболее оправдано обращение к одной из имеющихся стандартных программ. При решении новых задач оптимизации полезно помнить о следующих моментах. Для рассматриваемых в этой главе методов сходимость приближений всегда доказывалась в предположении наличия достаточно хорошего начального приближения. Это ограничение на метод вызывается существом дела; так, поверхность уровня многочлена степени и от m переменных может содержать порядка n"^ не связанных между собой компонент с весьма сложным взаимным расположением; поэтому, например, безнадежно рассчитывать на построение алгоритма, позволяющего быстро найти минимум любого многочлена восьмой степени от десяти переменных. Вышесказанное следует учитывать при использовании стандартных программ, в описании которых указывается на воз.мож- ность минимизации функций очень большого числа переменных. В лучшем случае оказывается, что: а) программа эффективно решает задачи минимизации из класса, с которыми автор программы обычно имеет дело, или • б) программа, формально говоря, может решить любую задачу минимизации, но требуемое время решения в подавляющей числе случаев выходит за всякие разумные пределы. При решении новых задач зачастую приходится разрабатывать специальные, приспособленные именно для этого класса задач, методы отыскания начального приближения к решению. Сложность отыскания приемлемого начального приближения можно проиллюстрировать следующим примером. Существует ряд стандартных программ наилучшего приближения функций отношением многочленов A> Qn{x) заданных степеней тип При разработке стандартной программы вычисления интегралов Френеля проводились следующие эксперименты Каждая нз стандартных программ применялась для приближения рассматриваемой функции на некотором отрезке при всех т, п в пределах О < m -f- п ^ 12. Оказалось, что не менее чем в 3 случаях из 90 возможных каждая программа выдавала ответ, что она не может решить рассматриваемую задачу. У некоторых программ доля таких отказов превосходила половину В то же время для всех этих программ доказаны теоремы о сходимости при достаточно хорошем начальном приближении. Можно говорить, что до настоящего времени не существует эффективной и в то же время универсальной стандартной программы для отыскания наилучшего приближения функции рациональными дробями вида A),
-442 нелинейные уравнения и задачи оптимизации [ГЛ VII Чтобы не создалось впечатления полной безнадежности решения сколько-нибудь сложных задач оптимизации, рассмотрим тот же вопрос с оптимистических позиций. С этих позиций приведенные выше доводы о сложности минимизации многочленов можно рассматривать как малоубедительные— ведь на самом деле нам никогда не потребуется минимизировать произвольный многочлен. Существует мнение, что задачи минимизации функций с очень сложной структурой линий уровня встречаются довольно редко. Рассмотрим пример задачи, где сам факт необходимости ее решения может быть поставлен под сомнение. Неудачи при попытках получения хорошего начального приближения могут быть вызваны следующей особенностью поведения рассматриваемой •функции Точка минимума находится в очень узкой «яме» — при удалении от нее во всех направлениях функция резко возрастает, а потом начинает убывать (рис. 7.8.1). Предположим, что точка минимума находится путем продвижения по градиенту функции Ф, иначе — численным интегрированием системы Рис 7 81. -^ + дгас1Ф = 0. B) Тогда множество начальных условий, исходя из которых мы будем приходить в точку минимума, находится в небольшой окрестности этой точки. Можно говорить, что при рассмотрении окрестности точки минимума в микроскопическом масштабе эта точка оказывается точкой притяжения решений системы B); при рассмотрении в более крупном масштабе она уже оказывается точкой отталкивания (рис. 7.8.2). Точно такой же характер поведения последовательных приближений к точке минимума будет и у других итерационных методов. Если «яма», где находится точка минимума, очень узкая, иногда и не стоит искать эту точку минимума. В самом деле, пусть, например, параметры х, отвечают некоторой реальной работающей системе управления; в работе этЬй системы неизбежны некоторые сбои, т. е. изменения этих параметров. Если точка минимума функции Ф, находится в такой узкой «яме», то малые Рис. 7 8 2.
КАК ОПТИМИЗИРОВАТЬ? 443- сбои могут существенно испортить характеристики работы системы. В свете вышесказанного выбор точки экстремума в случае, изображенном на рис. 7.8.3. требует дополнительного изучения. Исследователи, обладающие опытом решения практических задач оптимизации, утверждают,'что подобные целевые функции с узкими «ямами» возникают обычно в случае, когда математическая модель рассматриваемого явления построена неудачно. Рис. 7 8 3. Более существенные причины для оптимизма состоят в следующем. Во многих случаях создание математической модели и ее оптимизация зачастую имеют целью улучшение работы уже существующей системы. В этих случаях параметры реальной системы часто являются хорошим приближением для дальнейшей оптимизации. При разработке новой системы типична следующая линия поведения. Сначала строится и оптимизируется простейшая модель, учитывающая важнейшие факторы. Затем модель постепенно усложняется за счет учета все новых и новых факторов. Таким образом, последовательно возникают задачи минимизации функций все большего числа параметров. При удачном построении вспомогательных моделей решение каждой из этих задач оптимизации обычно оказывается хорошим начальным приближением для следующей по сложности задачи. Это обстоятельство часто используется следующим образом. Пусть перед нами ,стоит задача минимизации функции большого числа параметров JCi, ..., Хп. Построим функцию меньшего числа параметров Xt, ..., Хт, т <, п, приближающую рассматриваемую функцию, иначе — упрощенную модель с определяющими параметрами Xi, ..., Хт. Произведем оптимизацик> этой функции (модели) и получившееся приближение примем
444 нелинейные уравнения и задачи оптимизации (ГЛ. VII за начальное для последующей оптимизации. Иногда оказывается полезным произвести несколько шагов такого упрощения функции (модели) и введения новых параметров. Оптимизация функций (моделей) меньшего числа параметров оказывается более легкой из-за следующих двух причин: становится проще структура линий уровня минимизируемой функции, вычисления каждого значения функции обычно требует меньшего объема вычислений. Пример. Ищется min Ф {хи х^, х^): Ф (j;,, Х2, х^)= (,1лг^ — 1x^x2 + х\ + х\ + ехр (х,л:з)- •Функция <b(xi, Xi, дгз) близка к Ф, (х,, хз, дсз) = («1 - x^f + 4 + екр («1*з)- Очевидно, min Ф, (х,, xj, Х3) = Ф2 {x^, Х3) = х\ + ехр (х,Хз). Xi Поиск начального приближения свелся к минимизации функции двух переменных. Заметим, что требование уменьшения числа параметров при построении упрощенной модели не является обязательным. Что такое важность факторов или параметров? Можно го-, ворить, что важные параметры это те, от которых функция сильно зависит; на языке математики это означает, что производные функции по этим параметрам относительно велики. Второстепенные параметры это те, от которых рассматриваемая функция зависит слабо, т. е. те, производные по которым малы. Если производная функции <Ь{х\, ..., Хп) по параметру jc„ мала, то это означает близость функции Ф(д:1, ..., Хп) к функции меньшего числа переменных Ф(д:1 Хп-\,Хп), х„ = == const. Формально важность параметров можно определить, оценивая производные рассматриваемой функции. Однако для сложных задач такая оценка трудоемка; характеристика параметров по более наглядному критерию, важности параметров, дает возможность руководителю производственной системы или научному работнику подсказать математику первоочередность выбора параметров. Иногда приемлемый метод оптимизации или способ отыскания хорошего начального приближения можно получить, изучая принципы, которыми руководствуются в своей работе опытный практический работник или руководитель, или приемы их работы. Нижеследующий пример иллюстрирует полезность использования опыта практических работников.
^ 81 КАК ОПТИМИЗИРОВАТЬ» 445 На одном новом заводе долгое время ие удавалось наладить ритмичыое производство из-за недостаточного опыта работы операторов. Попытки создания модели производственного процесса, достаточно точной, но в то же время поддающейся анализу средствами математики с помощью ЭВМ, не приводили к успеху. В конце концов пришлось временно отказаться от разработки математической модели и пойти по следующему пути автоматизации и оптимизации производства. В память ЭВМ были записаны режимы работы лучших операторов на родственных предприятиях. Далее, в зависимости от имеющихся на данный момент условий, машина выбирала режим работы, наиболее близкий к режиму работы одного из лучших операторов. Такое мероприятие позволило устранить возникшие трудности. Способы нахождения начального приближения и сами итерационные методы часто имеют аналогию с какими-то реальными процессами в других явлениях. Выше упоминалось о методе тяжелого шарика и других методах установления. Работа мозга и зрительного аппарата при отыскании какого-либо предмета, по-видимому, организована по следующей схеме. Сначала производится беглый просмотр всего поля зрения в крупном масштабе, на основании полученной информации выбирается участок для дальнейшего просмотра, затем производится просмотр этого участка в крупном масштабе и т. д. Обратим внимание на сходство с методами из §§ 17, 18 гл. П1 и § 5 данной главы. При решении развивать исследования новых трудных задач важное значение имеет правильная организация научных исследований. Если в основном ясно, в каком направлении нужно развивать исследования, обычно производится концентрация научных усилий в этом направлении. Если наиболее рациональный путь к намеченной цели еще не определился, то часто прибегают к дублированию исследований. Несколько независимых организаций ищут рещение, каждая на своем пути, иногда без постоянного обмена информацией. Хотя, на первый взгляд, кажется, что взаимный обмен информацией всегда полезен, постоянный обмен ею может и помешать возникновению и продвижению оригинальных решений проблемы. Существует гипотеза (необщепризнанная), что сходным образом работает мозг при решении какой-либо проблемы: получаемая информация фиксируется не вполне детерминированным образом в различных участках мозга; в то же время в каждый момент работы над проблемой эта информация извлекается лишь из локализованного участка мозга. По аналогии со сказанным выше напрашивается следующий подход к решению задачи оптимизации (а также и любых других задач) в случае, если требуется срочное получение результата. Для решения задачи поочередно или независимо используются несколько известных методов решения подобных задач. В обоих случаях, при поочередном или при независимом использовании, алгоритмы Ар, р=\ /, работают циклически; длительность tpq промежутка времени, в течение которого
446 НЕЛИНЕЙНЫЕ УРАВНЕНИЯ И ЗАДАЧИ ОПТИМИЗАЦИИ [ГЛ УЦ алгоритм Ар работает ^-й раз, задается пользователем или. определяется в процессе работы. При поочередном использовании каждый алгоритм начинает минимизацию с приближения» полученного предшествующим алгоритмом. При независимом использовании каждый алгоритм начинает минимизацию с приближения, полученного в результате предшествующего применения данного алгоритма. Таким образом, в этом случае алго-' ритмы работают по принципу «мо быстрее». Режим независимого использования алгоритмов является аналогом параллельной работы организаций при отсутствии взаимного обмена информацией. Как аналог реальной организации научных исследований с обменом информацией в дискретные моменты времени может рассматриваться следующич режим работы. В начале каждого промежутка времени tpq алгоритм Ар просматривает некоторую совокупность приближений из полученных всеми алгоритмами и выбирает наилучшее приближение, исходя из своих позиций. Например, он может просматривать все приближения последнего цикла или приближения, полученные алгоритмами в концах всех промежутков /ij. Иногда может принести пользу следующая организация работы: после получения алгоритмом Ар приближения, очень хорошего с позиций алгоритма Л^, предоставляется время для работы алгоритма А^. Конечно, не следует думать, что непосредственное копирование различных реальных систем всегда позволит наилучшим образом решить рассматриваемую оптимизационную задачу. Подведем общий итог наших рассуждений. Обычно задачи оптимизации функций большого числа переменных очень трудны; при решении новых задач приходится затрачивать много, иногда бесплодных, усилий, производя пробные просчеты по различным известным и новым алгоритмам. Однако при наличии таких благоприятных факторов, как контакт с практическими работниками и возможность анализа упрощенных моделей, есть все основания сохранять уверенность в благоприятном исходе попыток решения задачи. Заметим, что в настоящее время намечается существенный прогресс в области решения задач оптимизации за счег диалога человека, математика или руководителя системы, с ЭВМ, работающей в режиме разделения времени. Дополнительная литература к главе VII II [15, 16, 29, 34, 37, 41]; § 2. III [29]; §§ 3, 4. I [2], II [29,41]; § 5. II [41], III [19], §§ 7, а 11[29, 30, 31, 35], III [47]. См. также: Ф. П. Васильев, Лекции по методам решения экстремальных задач, М, изд-во МГУ, 1974.
Часть III ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ОБЫКНОВЕННЫХ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ Глава VIII ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ Задача решения обыкновенных дифференциальных уравнений сложнее задачи вычисления однократных интегралов, и доля задач, интегрируемых в явном виде, здесь существенно меньше. В рассуждениях об интегрируемости в явном виде обычно имеется в виду, что решение может быть вычислено при помощи конечного числа «элементарных» операций сложения, вычитания, умножения, деления, возведения в степень, логарифмирования, потенцирования, вычисления синуса и косинуса. Еще в период, предшествующий появлению ЭВМ, понятие «элементарной» операции и «элементарной» функции претерпело изменение. Решения некоторых частных задач настолько часто встречались в приложениях, что пришлось составить таблицы их значений, например, таблицы интегралов Френеля X { exp(i/2)rf/, о интегрального синуса —-,— rf/, решений дифференциального уравнения о называемых функциями Бесселя, и ряда других функций. Эти функции называют специальными функциями. При наличии таких таблиц исчезает принципиальная разница между вычислением функций sin ж, \пх, ... и специальных функций. В том и другом случаях можно вычислять значения этих функций при помощи таблиц, и те и другие функции можно вычислять, приближая многочленами, рациональными дробями и т. д. Таким образом, в класс задач, интегрируемых в явном виде, включились задачи, решения которых выражаются через специальные функции. Однако и этот, более широкий, класс составляет относительно малую долю задач, предъявляемых к решению. Существенное расширение класса реально решаемых дифференциальных уравнений, а, следовательно, и расширение сферы применения математики произошло с созданием лисленных методов и распространением применения ЭВМ В настоящее время объем работы по подготовке к решению на ЭВМ дифференциального уравнения не так уж существенно превышает объем
448 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ [ГЛ. VIU работы по написанию этого уравнения; при желании можно непосредственно из машины получить график решения или изображение решения на экране. В результате этого отпала необходимость в изучении большого числа частных способов интегрирования уравнений в явном виде. Эта глава посвящена обсуждению различных вопросов теории численных методов решения дифференциальных уравнений, которые, в частности, послужили основой стандартных программ решения обыкновенных дифференциальных уравнений, § 1. Разложение решения в ряд Тейлора Одним из старейших методов решения дифференциальных уравнений является метод разложения в ряд Тейлора. Пусть требуется найти на отрезке [лго, Xq + X] решение дифференциального уравнения y' = f(x,y) A) при начальном условии у(хо) = уо\ f(x,y) аналитична в точке {Хо, Уо). Дифференцируя (I) по х, имеем соотношения у" = fx {х, у) + fy {х, у) у', у"' = fxx (х, у) + 2f^y {х, у) у' + fyy {х, у) «/'* + fy {х, у) у", ... Подставляя х = Xq и у = уо, получаем последовательно значения ^^ /Ы, y"iXo), «/'"(Хо), ... Таким образом, можно написать приближенное равенство . yix)^j^^^^{x--xj. B) Если [х-Хо| больше радиуса сходимости ряда дн-(.-^)', то погрешность B) не стремится к нулю при л —>■ оо. Иногда целесообразно поступить следующим образом. Разобьем [хо, хо + X] на отрезки [Xj-i,X}l /■= 1, ..., Л/; последовательно по/1учаем приближения j/j к значениям решения y{Xj), i = \, ..., N, по следующему правилу: пусть значение у, уже найдено, вычисляем значения в точке Xj производных «/<'' решения исходного
§ 1] , РАЗЛОЖЕНИЕ РЕШЕНИЯ В РЯД ТЕЙЛОРА 449 дифференциального уравнения, проходяшего через точку (Xj,£/j); на отрезке [Xj, Xj+i] полагаем " С) y{x)^z,{x)^'^^{x--x,y C) и, соответственно, полагаем yi+i = Zi{xi+i). D) Далее мы проведем подробную оценку погрешности одно- шаговых способов интегрирования, к которым относится рассматриваемый способ. На настоящем этапе обсуждения можно привести следующие соображения в пользу того, что погрешность этого метода может оказаться малой. Рассмотрим случай Xj+\ — Xj^h\ если бы значение yj совпадало со значением точного значения y{Xj), то погрешность от замены i/j+i на Zj{xj+i) имела бы порядок 0{h'^+^). Поскольку мы вносим погрешность на 0{h-^) отрезках, то можно ожидать, что при измельчении шага сетки будет выполняться соотношение max \yi-y(Xj)\ = 0(h"). o<y<w Это рассуждение является типичным примером правдоподобных рассуждений, приводящихся иногда в обоснование применения тех или иных численных методов; однако следует иметь в виду, что во многих случаях встречается такая ситуация: в обоснование сходимости метода такие рассуждения можно провести, а на самом деле сходимости приближенного решения к точному нет. Поэтому вопрос строгого обоснования сходимости методов при мельчении шага, а также получения оценки погрешности является вопросом, имеющим не только теоретическое, но и важнейшее практическое значение. Описанный выше способ интегрирования дифференциальных уравнений в случае я > 1 был исключен из широкой практики более столетия назад. При нспользовании этого метода нужно вычислять значения функции / и всех ее производных / j ^_у при m < и, т. е. вычислять —^—^ различных функций. Кроме других причин, при ручном счете это неприятно еще и тем, что рассеивается внимание расчетчика и возрастает вероятность ошибок. При работе с ЭВМ применение этого метода требует написания большого числа блоков вычисления произввдных, что противоречит основной тенденции упрощения отношений между пользователем и машиной. В настоящее время имеются системы программ, которые осуществляют формульное дифференцирование функций; при заданной программе вычисления функции f{x, у) эта система программ расписываег программы вычисления производных функции ({х, у); таким образом, отпадает необходимость написания программ вычисления этих производных. Однако по затратам 15 Н, с. Бахвалов
450 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ , (ГЛ. Vr< машинного времени подобные алгоритмы, как правило, существенно усту пают рассматриваемым ниже методам типа Рунге — Кутта и конечно-раз ностным методам. Наши рассуждения не следует понимать как категорические рекомендации воздерживаться от применения методов, использующих разложение решения в ряд Тейлора. В ряде случаев ЭВМ используются для решения дифференциальных уравнений строго фиксированного типа. Например, при расчетах траекторий движения небесных тел приходится многократно интегрировать системы дифференциальных уравнений вполне определенного вида при различных начальных условиях и различных значениях параметров в правых частях. То обстоятельство, что все время решается одна и та же система дифференциальных уравнений, может дать следующее преимущество: конкретные формулы для производных правых частей системы обычно имеют много общих частей; в результате для отдельных классов систем может случиться, что одповремеипое вычисление всех этих производных потребует относительно малого числа арифметических операций и рассматриваемый метод окажется эффективнее других методов численного интегрирования. В дальнейшем мы, в основном, будем изучать методы численного интегрирования, требующие вычисления только значений правой части; иа основе этих методов обычно и строятся стандартные программы решения широких классов типовых задач. § 2. Методы Руиге — Кутта В частном случае л = 1 расчетная формула A.3) имеет вид ^//-и = У/+ Л/U/, «//), h = x,+,—x,. (I) Этот метод называется методом Эйлера. Можно построить другой класс расчетных формул, к которому принадлежит метод Эйлера. Укажем сначала простейшие методы этого класса, получаемые нз наглядных соображений. Пусть известно значение решения у{х) и требуется вычислить значение y(x-\-h). Рассмотрим равенство yix-^h) = y{x)+ j y'{x + t)dt. B) При замене интеграла в правой части на величину hy'{x) погрешность имеет порядок O(h^), т. е. y{x + h) = y{x) + hy'{x)-\-0(h'y, поскольку у'(х) = f{x, у{х)), то отсюда имеем y{x + h)==y{x) + hf {X, у {X)) + О {h\ Отбрасывая член порядка 0{h^) и обозначая х = Xj, x-\-h = = jCj+i, получим расчетную формулу Эйлера A). Для получения более точной расчетной формулы нужно точнее аппроксимировать интеграл в правой части B)» Воспользовавшись фор-
I 2] МЕТОДЫ РУНГЕ - КУТГА 45{ мулой трапеций, получим y(x + h) = y W + ^(у'{х) -\-у'{х + А)) + О т. иначе, y(x + h)==yix) + ^{f{x,y{x))-\-f{x + h,y{x-\-h)))-\-0{h\ C> Соответствующая расчетная формула; у 1+1 = У/ 4- Y (/ (*/• yi) + f («/+!• y/+i))- D) Обычно это уравнение неразрешимо явно относительно j/j+i. Поэтому произведем дальнейшее преобразование алгоритма. Заменим y(x + h) в правой части C) иа некотор^то величину г/* = г/(А:+л) + 0(лП; E) тогда правая часть изменится на величину jif(.x + h, y')-f (x-\-h,y ix+h))) = ^fy{x + h, y)(«/• -y{x + h)), где у находится между у* и y{x-\-h)\ вследствие предположения E) эта величина имеет порядок О (Л'). Таким образом, при условии E) y{x + h)==y{x)-]-^(f{x, y(x)) + f{x+h, у')) + от, условию E) удовлетворяет результат вычислений по расчетной формуле Эйлера У* = У (х) + hf {х, у {х)). Последние соотношения определяют пару расчетных формул y',+i = y, + hf{Xj,y^, J/y+i =^// + т(^(^/' y!) + f(xi+v y%i))- Построим другую пару формул с погрешностью на шаге такого же порядка. Интеграл в правой части B) заменим по формуле прямоугольников: y{x+h) = y(x) + hy'{x + ^)-^0{h^ или, все равно, что y{x-\-h)^y{x) + hf(x+-!L,y(^x + ^))-{-0{h% Если у' = у(х + \) + 0{Н\
452 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ ТО, как и в предшествующем случае, имеем y{x + h) = y{x) + hf{x + ^, y-) + Oih'). В качестве у* можно взять результат вычислений по формуле Эйлера с шагом у: у'= у {x) + -^f {х, у(,х)). Этим соогноше- ниям соответствует пара расчетных формул G) y^^l = «// + Yf(*/, У/). yi+i = yi+hf\xi + j, г/^^Л- Полученные методы относятся к семейству методов Рунге— Кутта, имеющих следующий вид. В процессе вычислений фиксированы некоторые числа «2 а,. Р Pq> Pj/. 0</<i<fl; последовательно получаем ki(h) = hf{x, у), kAh)^hnx-\-aJi, «/+ p2ifti (Л)), k,{h) = hf{x + a^h, у 4-Р,. 1*1 (А) + ... +P,.,-iVi('f)) и полагаем y{x + h)^z(h) = y{x)+'^pik,{h). (=1 Рассмотрим вопрос о выборе параметров а<, р<, p<j. Обозначим ф(А) =y{x-\-h)—z(h). Если ^(д:, у)—достаточно гладкая функция своих аргументов, то ki{h), ..., ft,(А) и ф(Л) — гладкие функции параметра А. Предположим, что Ф@) = ф'@)= ... =ф<«)@) = 0 при произвольных достаточно гладких функциях f{x,y), а ф(«+»)('0) =7^0 для некоторой гладкой f{x,y). Согласно формуле Тейлора, справедливо равенство <(>("■)-2^—J—п + (s + ,)f « (s + i)l " • (^) 1—0 где О <: 8 <: 1. Величина ф(А) называется погрешностью метода на шаге, а s порядком погрешности метода. При q = 1
МЕТОДЫ РУНГЕ-КУТТА 453 имеем <р(/1) = «/(д: + Л) —у —р,Л/(х, у), <р @) = 0. ф' @) = (г/' {x + h)- pj (к, у)) 1,^ = = f{x,y)il-p{), ф"(Л) = у"(х + А), здесь и далее у = у(х). Очевидно, что равенство ф'@) = О выполняется при всех fix,у) лишь в случае pi = 1. Этому значению Pi соответствует метод Эйлера. Для погрешности этого метода на шаге, согласно (8), получаем выражение Рассмотрим случай q = 2, тогда (p(h) = y{x+h)-y-pihf (х, у) -pihf (Х, у), где х=^х + aji, у-=у + ^2\М (х, у). Вычислим производные функции ф(Л): <р' (h) = t/{x-\-h) — pj (х, у) — pj [х, у) — pzh Ых (х, у) + + Му(х, ^fix, у)), V'(h) = «/"(x + h)-2р2Ых(х, у) + + ^Jy (^. у) f (^. у)) - Р2^ («2^хх (*• у) + + 2a2p2,f,,(^' V)n^. У)Л-^\^fy^x, y)ifix, у))\ ^"'(h) = y"'{x^h)-Zp,{ay^,(x, y) + 2a^^J^y{x, y)f{x, y) + ■\-^\yf,,{x,y){f{x, y)f) + 0{h). ■Согласно исходному дифференциальному уравнению, у' = /. У" = /х + UI у'" = f'cx + 2fxyf + fyyP + fyy"- Подставим в выражения ф(Л), ф'(А), ф"(А), ф'"(А) значение А = 0 и воспользуемся этими соотношениями; получим Ф@) = г/-у = о, Ф'@) = A-Р,-Р2)/(Д?. у), Ф" @) = A - 2р^2) L (х. у) + A - 2Р2Р21) и ix, у) f {х, у). <р"' @) = (I - Зр,а2) f,, (X, у)+ {2- 6р,аф,,) /,^ (х, у) f (х, у) + + A -3/>2Р^,)/,,(^, y)if(x, y)f + f,{x. у)у"{х). (9) ■Соотношение ф'@) = 0 выполняется при всех f, если 1-р1-р2 = 0, A0)
454 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ 1ГЛ У1Ц соотношение ф" @) = О, если 1—2р2а2 = 0 и 1—2p2p2i = 0. (И) Таким образом ф@) = ф'@) = ф"@) = О при всех f{x,y), если выполнены три указанных выше соотношения (A0), (И)) относительно четырех параметров; произвольно задавая одик из параметров, получим различные методы Рунге — Кутта с погрешностью второго порядка малости по h. Например, при р1 = 1/2 получаем р2 = 1/2, aj = 1, Р21 = I, что соответствует паре расчетных формул F). При pi = О получаем р2 = 1; аа = 1/2, Рл = 1/2, щго соответствует паре расчетных формул G). В случае уравнения у' = у, согласно (9), имеем ф"'@) = у независимо от значений pi, рг, ог, Pzi. Отсюда следует, что формул Рунге — Кутта со значениями ^ = 2ия = 3не существует. Вследствие (8) для методов с о = « = 2 главная часть погрешности на в)'" @) шаге есть ..— h\ Пользуясь явным выражением ф"'@), в ряде случаев- удается уменьшить эту величину за счет удачного подбора параметров метода. Если для рассматриваемого класса уравнений величина f^y" мала, тО' разумно распорядиться этими параметрам!! так, чтобы в (9) обращались в- нуль первые три слагаемые Нетрудно проверить, что при Р\ = 'Д, Pi ="'/4^ 02= P21 ='/3 выполняются равенства A0) и (И) и одновременно ф"'@) ^ = 1у{х, у)у"{х). Этой совокупности параметров отвечают расчетные формулы А, = Л/ (лг, у), ki=^hfi^x + jh,y + jk,y A2> Aj/ = 2(/i)-i/=.i-(fe,+3Aj). Приведем результаты аналогичных рассмотрений для случая ^ = 3. Расчетных формул, соответствующих значеник> S = 4, не существует. Чтобы s равнялось трем, необходимо выполнение соотношений «2 = р21. 0.3 = Рз| + Рз2. <h («3 — <h) — ^32<h B — Заа) = О, РзРз2а2 = -б-. Р20.2 + Pi<h = J> Pl+P2 + P3=I' Эта система шести уравнений с восемью неизвестными имеет бесчисленное множество решений. Наиболее употребительная со* вокупность расчетных формул: k, = hf(x,y), Л2 = Л/(дс+|, !/ + •§-). h = hf{x + h. у-А, + 2и Ду = |(Л, + 4А2 + Аз).
^ 21 МЕТОДЫ РУНГЕ - КУТТА 455 Если правая часть f{x, у) не зависит от у, иначе, fy^ О, го эта расчетная формула превращается в формулу Симпсона y(x + h)-y{x)^-^i^f (X) + 4fi^x + j)+f(x + А)]. A3) Согласно оценке погрешности формулы Симпсона, погрешность этого приближенного равенства имеет порядок 0{h^) и, следовательно, в этом частном случае порядок погрешности повышается Поэтому аналогично A2) эту формулу разумно использовать при малых значениях fy При q = А, 5 не удается построить расчетных формул рассматриваемого вида со значением 5 = 5; при q = 4 имеется двупараметрическое множество расчетных формул, соответствующих S = 4. Для примера приведем одно однопараметри- ческое семейство таких формул* k, = hf{x,y), k,=^hf[x+\,y + ^), h = M[x+>l,y + [L-^)k, + ^k^, k^ = hf{x + h,y + il-t)ki + tk,). Ay = I (/г, + D - 20 ^2 + 2/^3 + k,). Наиболее употребительная совокупность формул этого семейства соответствует t = I: k,==hfix,y), k2 = hf[x+^,y + ^), k, = hf(x+^, у + -^), k^ = hf{x + h,y + k3\ A4) Ay = ^{k,+2ki + 2k, + k^). Среди других совокупностей формул со значениями (/=:s = 4 ■отметим совокупность k, = hfix,y), k2 = hf[x+^,y + ^), k, = hf[x+^, y-h.j^k^^k^=hf{x-^h,y + k,-k^-^h), A5) A!/ = |(^i4-fe2 + 3^3 + /t4). Мы использовали выше формулировку «наиболее употребительный». Эта -формулировка отражает исторически сложившуюся тенденцию в использова- «ии численных методов. Казалось бы, в руководстве по численным методам ■следовало не просто отражать тенденцию, а указать, какая формула из данного семейства расчетных формул является наилучшей. Однако ответ иа талой вопрос не прост.
456 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ (ГЛ VIIF Обратимся сначала к задаче вычисления интеграла, где обстановка дл» сравнения методов более благоприятна. При одинаковом порядке погрешности квадратурных формул всегда оказывается, что главные члены погрешности этих формул пропорциональны. Например, при вычислении интеграл» / {х) dx с разбиением [О, 1] на отрезки длины h погрешность формулы тра- 0 (Л'), о пецнй есть (ГA)-Г@))^' 12 а погрешность формулы прямоугольников (/'A)-/'@))Л" О (Л^); 24 при этом число точек, где вычисляются значения Цх), примерно одинакова^ соответственно, 1 -|- Л"' и А"', Из сравнения главных членов можно сделать- вывод о предпочтительности формулы прямоугольников. Однако этот вывод, не является безусловным: в оценку остаточного члена входит член высшего- порядка; поэтому на основании имеющейся информации мы имеем право делать вывод о преимуществе формулы прямоугольников лишь при очень малых значениях h. Выше мы сравнивали методы при их однократном исполь^ зовании. В Случае вычисления интегралов типична ситуация, когда для вычисления одного и того же интеграла проводятся расчеты с различными шагами. Узлы формулы трапеций с шагом А' = hq-', q — целое, являются узлам* формулы трапеций с шагом А, и поэтому при интегрировании с шагом hq-^ могут быть использованы результаты вычислений с шагом А. В случае формулы прямоугольников такое использование возможно лишь при шаге А' =ь = hq-\ где q нечетно. Вследствие определенных удобств использования q = = 2 преимущество формулы прямоугольников не является уже столь бесспорным. В случае дифференциальных уравнений возникает ряд дополнительных, моментов. У формул одинакового порядка точности по А главные члены погрешности на шаге часто оказываются непропорциональными. Например^ вследствие (8), (9) главный член погрешности формулы F) равен (iB — Л)А', где fi = |/yi/'', A = -l2<fxx + 2fxyy' + fyy(y'n а у формулы G) равен lfi-b-^)A^ Поэтому для одних уравнений будет предпочтительнее один из методов F), G), для других — другой. Рассмотрим пример. Пусть интегрируется уравнение у' = у«, q >■ О, при 1/@) > 1. В этом случае главные члены погрешности формулы F), G), соответственно, равны q(q+\)y"'-h^ q{3q+])y^-^h^ 12 " 24 ' при q >> 1 главный член погрешности второй формулы оказывается больше^ чем у первой, а при q < 1 меньше. В подобной ситуации рекомендации в пользу того или иного метода должны основываться на «волевом решении», принятом с учетом статистик» свойств рассматриваемых задач и традиций использования методов.
^ 2j МЕТОДЫ РУНГЕ - КУТТА 457 Приведем пример рассуждений, которые иногда применяются при срав- яительной характеристике методов. Пусть решаются уравнения из некоторого множества дифференциальных уравнений и уравнения из этого множества рассматриваются как случайные. Предположим, что h = fxx + 'ifxyy' + fyy(y'y и h^hlT ■являются независимыми случайными величинами с М*| = M^i = 0. Тогда -математическое ожидание квадрата главного члена погрешности на шаге равно, соответственно. При таком подходе формула G) выглядит предпочтительнее по сравнению <: формулой F). Еще более предпочтительной в этом смысле следует считать формулу A2), где математическое ожидание квадрата главного члена ■погрешности равно -^ Щ^^^- Эти рассуждения опираются на гипотезу о от <:лучайности и независимости величии || и §2. справедливость которой, вообще говоря, вызывает сомнения; поэтому к только что полученным выводам надо ■относиться с большой степенью осторожности. Обратимся к формулам A4) и A5). В случае дифференциального урав- «ения у' = /(*) погрешность формулы A4) есть Pi=y{x + h)-y{x)-j(f(x) + 4f(^x + j) + J(K + h)y Разлагая в ряд Тейлора, получим f*4x)h^ , ^,.., Р'°- 2880 +Q<^^- В случае формулы A5), соответственно, имеем + Sf(x + ^h) + fix + k))^-j!:^+OW. Из сравнения главных членов р, и рг видно, что формула A5) имеет преимущество в случае уравнения у' = f(x), иначе говоря для уравнений, где /v ^ О Следовательно, эта формула имеет преимущество и для уравнений, где величина f^ близка к (гулю Традиция применения методов рассматриваемого типа отдает предпочтение формуле A4). К традиции применения вычислительных методов следует относиться двояко. Если исторически первый из методов рассматриваемого класса оказался приемлемым, то в дальнейшем пользователи привыкают ■к нему Замена этого метода на другой, даже более эффективный метод, требует определенной психологической ломки -у пользователей, определенных затрат времени на «привыкание» к новому методу. Чтобы широкий круг пользователей согласился на подобную перестройку, необходимо сушествен- ■ное преимущество нового метода по какой-либо из характеристик В главе VII подобные вопросы уже возникали в связи с обсуждением проблемы внедрения математических методов решения экономических задач Часто оказывается, что указанная перестройка практики использования яисленных методов требует существенного времени. Численные методы
458 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗДДАЧИ КОШИ (ГЛ VUf решения задач, соответственно, технологические процессы имеют устончивук> тенденцию к совершенствованию. Можно говорить о каком-то среднем проценте соеершенствовапня методов за единицу времени (например, за год)^ Если предполагаемая перестройка обеспечит меньший эффект, но в то же время может помешать последующему применению новых методов или новой технологии, то иногда следует от нее воздержаться. Как и в случае проблем планирования, переход к новым методам может встретиться с определенным» трудностями, которые не были предусмотрены при первоначальном теоретическом анализе Может оказаться, что метод с меньшей погрешностью на шаге имеет большую суммарную погрешность метода или более чувствителев к вычислительной погрешности. При сравнении методов интегрирования F)^ G), A2) мы отдали бы предпочтение способу интегрирования A2), ориентируясь на высказанные выше, вообще говоря, сомнительные соображения о величине квадрата математического ожидания погрешности этих формул. В тО' же время традиция использования методов интегрирования второго порядка точности отдает предпочтение методу F) с большей величиной главного члена математического ожидания квадрата погрешности. Проведенное нами сравнение двух формул четвертого порядка точности указывает на предпочтительность формулы A5) при малом значении hfy. В то же время можно встретить такое высказывание: преимущество формулы. A5) сказывается лишь при очень малых значениях hfy\ если уравнение интегрируется с умеренной точностью, практика вычислений показывает предпочтительность употребления формулы A4). Понятие практики вычислительной работы является довольно неопределенным. Число различных классов реально встречающихся дифференциальных уравнений существенно превосходит число задач, где производится сравнение Mei^ofloB численного интегрирования; поэтому суждения «с позиций практики» не всегда объективны. Однако несмотря на такую неопределенность, критерий практики часто несег в себе определенную положительную информацию, которая зачастую на данном этапе развития науки не может быть формализована или обоснована,. Есть определенные математические соображения в пользу того, что расчетные формулы A4) бо'лее предпочтительны при /, < О и гладких решениях^ нескольку они допускают интегрирование с более крупным шагом без потери слабой чувствительности метода к влиянию вычислительной погреш- иостн; отметим, однако, что эти соображения появились позже, чем практика численного интегрирования обыкновенных дифференциальных уравнений сделала определенный выбор в пользу формул (М)- В ситуации, подобной рЗссматриваемой, обычно не удаетс* предложить, полностью обоснованное (с позиций математика) решение возникающей проблемы. В данном случае сложность задачи усугубляется невозможностьк>- дать удовлетворительное описание класса дифференциальных уравнений, предъявляемых к решению. При дальнейшем рассмотрении для нас будет существенно^ что погрешность метода на шаге (p{h) имеет главный член, а именно, справедливо представление вида (p(A) = tt,Uy)A'+40(A*+'). A6> Наметим основные этапы доказательства этого соотношения. Предположим, что правая часть и все ее производные до порлдка s^\ включительно ограничены равномерно в об»^ ласти G:
^ 3] МЕТОДЫ С КОНТРОЛЕМ ПОГРЕШНОСТИ НА ШАГЕ 459 Тогда также будут равномерно ограничены производные всех решений уравнения до порядка s -{-2 включительно. Согласно формуле Тейлора, равенство (8) можно записать в уточненной форме 'f^^l— (s+l)| '^ + (s + 2)l " • Имеем равенство ф(*+1) @) = f,(s+i) @) - г<*+'> @). Нетрудно убедиться, что обе величины у<*+^'@) н 2<*+^'@) явно выражаются через значения в точке (х, у) функции / и ее производных порядка не выше s; примеры таких явных выражений мы уже получали. Поскольку правая часть дифференцируема s -}- 1 раз, го отсюда следует, что функция ^(х,у) дифференцируема в области G и ее производные ijjk и \|)у равномерно ограничены в этой области. Аналогично устанавливается, что величина ф("+*> (ВА) равномерно ограничена при хо^х <i х-\-h ^Хо-\-X. Некоторые частные случаи этого утверждения также следуют из выписанных ранее соотношений. § 3. Методы с контролем погрешности на шаге В главе III при оптимизации алгоритма численного интегрирования возникало требование распределить узлы интегрирования так, чтобы на каждый элементарный отрезок интегрирования приходилась примерно одинаковая погред1ность; для этой цели нужно иметь представление о величине'погрешности на каждом элементарном отрезке интегрирования. Точно такая же задача возникает и при численном интегрировании обыкновенных дифференциальных уравнений. При ее решении можно рассуждать следующим образом. Главный член погрешности на шаге интегрирования есть ф(^+1)@)/,^+1 (s+l)l Точка (x + h,z{h)) находится близко от точки {х,у); поэтому погрешность на следующем шаге интегрирования будет иметь такой же главный член. В результате двух шагов будет получено приближение у'*' к значению y{x-{-2h) такое, что yW — y{x-\-2h)^2 "^ ^^y^^^—. Если, исходя из точки (х, J/), применить метод Рунге — Кутта < шагом 2h, то получится приближенное значение у^^\ для
460 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ (ГЛ. VIIГ которого Из STHX соотношений вытекает представление главного члена погрешности н^ шаге j/'"-j/U + 2A)~ \,_] . При желании можно уточнить полученное приближенное значение {/'*', прибавив к нему величину главного члена погрешности, т. е. положить „A) _ „B) В результате этих рассуждений мы имеем возможность через каждые два шага, получая приближенное значение j/(*V иметь также выражение главного члена его погрешности. Если характер поведения решения меняется резко, то часто возникает следующая ситуация. После вычисления величины 1/A) — у(г) обнаруживается, что погрешность на шаге очень велика, и поэтому приходится отказываться от части проведенных вычислений и изменять шаг. Для более гибкого управления выбором шага интегрирования иногда желательно иметь возможность совершать шаг интегрирования и оценивать погрешность при меньшем количестве вычисляемых значений правых частей. Примером совокупностей формул, с теми же характеристиками точност» при меньшем числе обращений к правой части, может служить совокупность- формул ki^hfix.y), fej = */(* +J. i/ + -|l). k3=^hf{x + j, i/ + l(fe, + Aj)), kt = hf(x + h, y-ki + n,). fet = Af(x+-f-. i/ + ^GA, + 10fej + fe4)), B> Л, = A/(* +A, 1/+ -g^B8fe,-I25fe2 + 546fe3 + 54fe,-378fes)), с главным членом погрешности y(x + h)-z{h) = r + 0 (А"). г — -gig- D2Jfe, + 224fe3 + 2Ife< - 162fe6 - I25fee). Заметим, что значение 2(A) вычисляется по одной из формул Рунге — Кутта^ указанных на стр. 455.
§ t] ОЦЕНКА ПОГРЕШНОСТИ ОДНОШАГОВЫХ МЕТОДОВ 461 Если положить y[xo + h) ж г (А) +''. то получим метод рассматриваемого типа го значением s = 5 и, соогветственно, погрешностью на шаге порядка 0(ft');i при описанном выше непосредственном применении метода Рунге — Кутта н оценке погрешности через величину (/<■> — i/*'' требуется не 6, а II вычислений правой части. § 4. Оценка погрешности одношаговых методов Рассмотрим множество всевозможных методов интегрирования, где последовательно получаются приближения у) к значениям y{Xj), Хо< Xi < ... < Xn = xo-i-X. Пусть в процессе численного интегрирования k фиксировано и при j "^ k значения У} определяются как значения некоторого функционала y, = F{f; XI, ..., x,_k; У1- У!-к)- (I) Такой способ численного интегрирования называют k-шаговым. Все рассматривавшиеся выше способы интегрирования имеют следующее общее свойство: приближенное значение решения в следующей точке определялось только в зависимости от значения решения в предыдущей точке; следовательно, расчетные формулы, соответствующие этим способам, представимы в виде A) со значением k = 1; такие методы называют одно- шаговыми. На первый взгляд может показаться, что к классу формул A) с k = \ не относится расчетная формула C.1), поскольку приближение к y(x-^2h) вычисляется через приближения к i)(x) и к у(х-^К). Однако само приближение к у(х-^ h) является функцией от </(*). Поэтому в конечном счете эта расчетная формула может быть представлена в виде y{x + 2h)^<b(f, x,2h,y). Если при Xj = X иы примем *j+i = х + 2h, то получим частный случай формулы A) при k = \. Рассмотрим специальный способ получения оценки погрешности, применимый лишь к одношаговым методам. При k = 1 иногда удобнее записывать формулу A) в виде «//+! = /'(/. X,, x,^i-x,, у,). B) Получаемые в процессе реальных вычислений приближения к значениям y(Xj) связаны не соотношениями B), а некоторыми соотношениями yi+i=P(f, X,, x,+ i-x,, у,)+ 6,^1. C) Наличие слагаемого 6j+i обусловлено следующими причинами: 1) округлением чисел при вычислениях;
462 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАД1ЧИ КОШИ [ГЛ. VHI 2) ошибками в значениях правой части f{x,y); эти ошибки вызваны тем, что рассматриваемая нами функция !(х,у) является некоторым приближением к правой части реального дифференциального уравнения; кроме того, зачастую в процессе вычисления значений f{x,y) в машине эта функция приближается функциями, вычислимыми относительно элементарных операций ЭВМ: Рис. 8.4.1. 3) В некоторых случаях значение j/j+j определяется из уравнения, эквивалентного A), но неразрешенного в явном виде относительно переменной i/,+i; тогда величина 6,+i содержит составляющую, являющуюся следствием приближенного решения этого уравнения. Довольно часто бывает справедлива оценка |6/+il<C(|t//1+1J-'. где t — разрядность чисел в машине, а постоянная С не очень большая. Точно так же начальное условие «/о отличается от значения отыскиваемого решения задачи у{Хй) вследствие ошибки в определении исходных данных и округлений. Пусть у{х)—искомое решение дифференциального уравнения, а У]{х)—решения, удовлетворяющие условиям иАх,) = у, (рис. 8.4.1).
5 4] ОЦЕНКА ПОГРЕШНОСТИ ОДНОШАГОВЫХ МЕТОДОВ 463 Ошибку Rn^ Уп — у{Хп) можно представить в виде Rn = Уп (-Кп) — Уй i^n) + у а (■««) — у{Хп)=^ п = 2 (У/ (-«п) - 1//-1 (-*«)) + («/о (■««) - у (-^п))- D) Разность решений дифференциального уравнения в одной точке может быть выражена через разность их в другой точке следующим путем. Лемма. Пусть Yi{x,) и Y-iix) — решения дифференциального уравнения у' = f{x, у). Тогда Уч (Р) - Ух (Р) = (^2 («) - у к (а)) ехр f \ f, (х. у (х)) dx\, E) где у(х) заключено между Yiix) и Yzix). Доказательство. Вычтем друг из друга равенства У2 = /и,/2), y{ = f(Jt, у,)- Согласно формуле Лагранжа, разность f{x,Y2)—f(x,Yi) может быть представлена в виде fyix,y) (У2—У1), где у заключено между У1 и Уг. В результате получится линейное дифференциальное уравнение отноЬительно Уг — Yi: {Y,-Y,Y = fyix,y){Y,-Y,). откуда {\n{Y2-Y,)Y = fy(x,y). Подставляя пределы а и р и потенцируя, получим требуемое соотношение E). Функция f (г г,(г\\— fU'Y,(x))~f{x,Yy{x)) Гу(х,У\х))— Y2(x)-Y,{x) непрерывна при непрерывной f{x,y), и поэтому все проведенные выше преобразования являются законными^ Пусть а = Xj, р = Хп, yi(^) = l//-iW. У2(х) = у,{х), тогда У1М — у 1-1 {х„) = («// (х/) — t//_, (х,)) ехр I j fy (х, у J (х)) dx , где yj{x) заключено между «//_i(jt) и i//(x). Точно так же Уй (-«п) — у {Хп) = (Уо (хо) — У (Д^о)) ехр I j f„ (jc, уо (■«)) ^^ JC,
464 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ (ГЛ. VU Теперь равенство D) можно записать в виде Rn = ^(i>l ехр j I /„ (д:. у/ (х)) rf* j + /?о ехр I | f, {х, уо (х)) dx j. F] где (О, = у, {х,) — !//_, {х,), /=!,... Из C) вытекает соотношение @1 = yt — у 1-1 (х,) = р/ + б/, где p, = F{f, дс/-,, д;/ —Ac/_„ yi.i) — y,.,(x/). Посмотрим, какой смысл имеет величина pj-; F{f,Xj-t, Xj — ACj_i, yj-i) есть число, получаемое в результате вычислений по расчетной формуле B), yj-iixj)—значение в точке Xj точного решения дифференциального уравнения, удовлетворяющего условию yj-\{xj-\) = У]-1. Таким образом, pj есть ошибка одного шага рассматриваемого метода, если вычисления начинаются с точки {Xj~i,yj-i) и производятся без округлений, а шаг равен Xj — Xj-i. Предположим, что при всех /, воответствующих рассматриваемому отрезку интегрирования д:о < л:, ^ дго + X, выполняется неравенство |Р/|<С,(а:-;-;С/-,Г'. G) Пусть L= sup )f„|<oo И Н= max (х. — х,-,). 0<l<N Загрубляя G), имеем \р,\^С^НЧх,-х,.^). (8) При jCo ^ дг/^ лг„ ^ дго-f Л^ справедливы неравенства ехр 1 I fy (х, у, (х)) dx \ < ехр {L {к„ — к,)) < ехр (LX). Воспользуемся этим неравенством для оценки правой части (б); получим |/?J<exp(LX)(i(|p;| + |6/i) + |;?ol).
^ 4) ОЦЕНКА ПОГРЕШНОСТИ ОДНОШАГОВЫХ МЕТОДОВ 465 Применим теперь оценку (8): |/?J<exp(L^(i(C,W'(^/-;c,_,) + |6/|)+|/?ol)< < ехр {LX) (C,W {X, - х^) + П&-+1 /?о I) < <exp(LX)(C,;^W^ + iVd + l^?ol); (9) ядесь d==max|6/|. Из этого соотношения следует, что max |/?„|->0 при Я->0, если одновременно iV6—>-0, |/?о|—>-0. Мы показали, что при достаточно мелком шаге интегрирования и малой вычислительной погрешности приближенное решение, получаемое при употреблении метода Рунге — Кутта, будет близко к точному решению. В ряде случаев решение дифференциального уравнения отыскивается на большом промежутке. Тогда в полученные нами оценки погрешности входит как множитель очень большое число ехр (LA'). Поэтому при LX большом может оказаться, что достижение требуемой точности требует столь мелких шагов и столь малой величины вычислительной погрешности на шаге, что это может поставить под сомнение целесообразность использования рассматриваемого метода. Поэтому характеристика методов только по признаку — сходится ли приближенное решение к точному при мельчении шага и при достаточно быстром уменьшении погрешности или не сходится — является еще недостаточной. Если fv{x,t/) ^ —b < О, то в оценке (9) можно избавиться от множителя, резко растущего с X. Рассмотрим случай постоянного шага Xj — jCj_i ^ h. Тогда- ехр I fy (х, у (х)) dx \ < ехр (- b (лг„ - лг/)) < ехр (- 6 (п - /) Л); пусть ©, |<С,Л'+' + б. Оценивая правую часть F), получаем I ^п К S<C,/i'+' + Ь)ехр (- &(п - /•) Л) +1 У?о |ехр(- bnh). A0)
l^nl<j^^^\^ + \Rolexp{-bnh). 466 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ Имеем ^ ехр (- 6 (п - Л Л)< ^ exp{-bkh) = ^ _ ^J^_ ^^^ . Таким образом, получаем окончательную оценку norpeuiHocTii 1 (И) Поскольку 1 — ехр(—&Л)'~| &|Л, то также имеем. I ^? J < Сг (Л^ + 4) +1/?о I ехр (- &пЛ). Формально эта оценка не зависит от длины промежутка интегрирования X, однако длина промежутка интегрирования может неявно влиять на значение коэффициента Сг через оценки производных. Мы еще вернемся к этому вопросу в общих замечаниях в § 12. Задача. Пусть в области G равномерно ограничены / и все ее производные до порядка S -|- 1 включительно; пусть |/?о1 = о(Л^) и а= max |а/| = о(Л^). *(, < Jty < Х^ + Х Доказать, что в случае интегрирования по методу Руиге — Кутта порядка точности S выполняется равенство max Лп - Л* I Ц) (X, у (X)) ехр J f, (t, у @) dt j dx = о(Л^); A2> определение функции '^{x,y) см. B.16). Соотношение A2) дает представление о главном члене погрешности метода Руиге—Кутта. § 5. Конечно-разностные методы Среди /г-шаговых методов наиболее употребительны методы интегрирования на сетке с постоянным шагом Xj — ;fj_i ^ Л = ■= const при помощи соотношений вида вдесь щ — постоянные, db-t 2 a-i<//-i — Л 2 6-/ (xi-t. У1-1) = 0; ■ " 1=0 <С при Л<Ло- A) ^Vi-i
a КОНЕЧНО РАЗНОСТНЫЕ МЕТОДЫ 467 В свою очередь среди таких методов традиционно наиболее употребительны методы к к 2 а-<У/-г — Л S b_if {xi_i, у/^д = О, B) 1=0 (=0 которые принято называть конечно-разностными методами или конечно-разностными схемами. Простейшие и в то же время наиболее употребительные способы B) получаются на основе квадратурных формул; всякая квадратурная формула о m Jf(jc)djc«A]^6_,f(-iA), m>0, C) -ph 1=0 порождает соответствующую формулу численного интегрирования обыкновенных дифференциальных уравнений. Действительно, подставляя в C) f(x)= у'{Х] + х), имеем о т ^ f{x)dx = y (Xj) — у (х,_р) « А ]^ b.iy' {xi_i), -ph 1=0 заменяя у'{х) на f(x,y{x)), получим т У {Xi) — у (Xj.p) « Л 2 b_if {x,_i, у (x,_t)). D) Соответствующая конечно-разностная схема: m У, — У1.р — Л 2 b_if (xj_t, У!-д = 0. E) В вычислительной практике применяются формулы A), B) со значениями Оо ФО, ^о = О, явные, или экстраполяционные, и формулы с ааФО, ЬоФ О, неявные, или интерполяционные. Формулы A), B) при Оо = О, ЬоФО называют формулами с забеганием вперед; в дальнейшем предполагается Оо Ф 0. Приведем ряд примеров формул E); для краткости обозна' чаем fn = f{Xn, Уп)- Формуле трапеций о jfWdA;«-|-(f@) + f(-A)) -л
468 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ [ГЛ. VIIl соответствует интерполяционная формула y,-y,-i = Y(fi+fi-^h F) формуле Симпсона о J f {X) dx « 4.(/@) + 4/ (- Л) + /(- 2Л)) — интерполяционная формула 3 -2й yi-y,-2 = Uf, + 4f!.i + fi.,), G) формуле о jf{x)dx^j C/ @) + 9f (- Л) + 9/ (- 2Л) + 3/ (- ЗЛ)) -зл — интерполяционная формула ^/ -У1^ = Т C/, + 9/,_, + 9//_2 + 3/,_з). (8) Формула прямоугольников о jf{x)dx^hf(--^) -ft имеет вид, отличный от C). Однако, заменяя Л на 2Л, получим квадратуру о j/(jt)rfjt«2/t/(-A) -2Л И соответствующую экстраполяционную формулу f//-^;_2 = 2A/;_,. (9) Если остаточный член квадратуры C) оценивается через i)(^)max|/<9)(jt) |/j9+i, хо погрешность равенства D) будет оцениваться через Z)(^)max|^(9+«){j;) |Л9+*. Среди формул вида E) наиболее употребительными являются формулы, соответствующие р = 1; их называют формулами Адамса. Получим эти формулы вместе с оценкой остаточ- иого члена. Согласно формуле Ньютона, имеем f{x) = Q„{x) + r^ix),
J gj КОНЕЧНО-РАЗНОСТНЫЕ МЕТОДЫ 469 где Сто(лг)—интерполяционный многочлен с узлами интерполяции (О, .... —mh) т QmW = ]S-^«*'..W. «,0=1, A0) 1=0 ' ^Hi^— ■ ^i ^ —■ При i>0, '■mW = f@. -/i. •••. —mh, л)(т+1)!«йл.т+1. Соответственно, справедливо равенство h h h \\{x)dx = \q^x)dx-\-\r^{x)dx. A1) 0 0 0 функция Wft, m+1 (л) не меняет знака на отрезке [О, Л]. Поэтому на основании теоремы о среднем имеем равенство h h |г^(х)й?д; = /@; — h\ ...; — mh; 0(w+ 1)! \ щ,т+\{х)йх, о о /I где 0<^^Л. Производя в интеграле \ (a^i[x)dx замену'пере- 0 менной x = ht, получим h ^(i,^i(x)dx = yih'+\ A2) о где о С учетом этих соотношений A1) можно переписать в виде h т jf(x)dx^h^ Y(V'/@) + Ym+lЛ'"+^ (m+ 1I / @; -Л;...; -m/i; S). о j-o Заменяя {m+l)\f{0; —h; ...; — mh; У значением производной в средней точке, согласно B.5.4), получим ft m j'/(;c)dx = A;gYyf@) + Ym+,A'"+¥'"^"(ri), A3) о f=-o где — m/t^Ti^/t. После замены ^ {х) на </'(;t/+ * —/t) и отбрасывания остаточного члена получаем соответствующую
470 ЧИCЛEHflЫE МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ (ГЛ. VIII расчетную формулу m yi-yi-, = h^ytV'fi.i. A4) Для получения интерполяционных формул Адамса в качестве узлов интерполяции возьмем точки Л, О, .... — (т—1)Л; получим f{x) = Qm{x) + r„{x), где Ят{х)=^^^щЛх), t=0 - f. (x~h)x(x+h) ... (x + U-2)h) <^hi \X) = Y\ • rm{x) = f{h; 0; ...; -{m-\)h; *)(m + 1)! e^.m+i W- После аналогичных преобразований получаем равенство h т |f(x)rf;t = Л;SYУf(Л) + Vm+iЛ'"+^/""+"(тl). ' A5) 1 о Соответствующая расчетная формула |/,-^;_,=Л2\У//- A6) Исследуем поведение коэффициентов \i и \i. 1^ Очевидно, что Yq- Yo>0 и y,>0. У(<0 при i>0. После замены переменной t = I — и можно записать у^ в виде о о ft=i Имеем равенство l-|^exp(ln(l-|-))=exp(-|+e,). где Таким образом, П {' ~ т) = '''Р ^~ * ^'^ ") «Р 1 51 е J, S (О = 51 J. к=1 \4=1 / fc=l
5 61 МЕТОД НЕОПРЕДЕЛЕННЫХ КОЭФФИЦИЕНТОВ 471 Очевидно, В результате имеем оценку «,(«)<П{'-Т)<<=^Р{Т¥) "<(")• где tij (и) = ехр (— S (i) и), и, следовательно, 1 1 J о, (н) du < Y| < ехр (^) J Oj («) du. A7) о о Вспоминая, что $ («') ~ In «, получаем 1 ... I — ехр(—«(«)) 1 V. (и) du = ^-jn—^-^ г—г, ' s(i) ln« о 1 Отсюда и из A7) вытекает, что Vj — величина порядка -—г. Справедливо очевидное тождество (/-1)< ... (/ + i-2) + iM/ + l)... (/ + /-2) = / ... (/ + /-1). Разделив его иа Л и проинтегрировав по / в пределах от О до 1, получим равенство . 9i + Y(-,=Yj; поскольку все yi "> О и yt < О при i > О, то отсюда заключаем, что ук мо-" нотоино убывают и всегда |у<[ < Y'- Таким образом, постоянный множитель в оценке погрешности на шаге у интерполяционных методов Адамса всегда меньше, чем у экстраполяциои- ных того же порядка "точности. Для информации укажем значения tVpJ—1. 2' 12 ' 8 ' 720 ^^''' ' 2' 12' 24'""' ~ „ const _ const Задача. Показать, что Yj ~ —j—г-, Yj П—Г "Р" /-><». § 6. Метод неопределенных коэффициентов Для построения формул численного интегрирования можно также использовать метод неопределенных коэффициентов» Приблизим производную y'{xj) некоторым выражением Л i=0
472 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ (ГЛ. VHI а значение f{xf, y{xj)) выражением к ^b-if(x,.t, у{х,_,)) 1=0 (предполагается, что a-i и ft-j не зависят от Л). Отсюда получаем приближенное равенство i °-''^-'^ - i ft-л^у-п У (./-.))■ A) Этому соотношению соответствует конечно-разностная схема 1=0 i=0 Величина r, = j^''~'y(>^<-')^j^b.,f{x,.,y{x,.,)) , 4=0 i=0 называется погрешностью аппроксимации исходного дифференциального уравнения схемой B). Определение. Говорят, что разностная задача аппроксимирует дифференциальную на отрезке [хо, Хо + X], если max |г/|-»-0 при А-»-0. *о < X/ < х^+Х Вспоминая, что f{xi^i, y{xi.t)) = y'(xj-i) и Xi-i = Х/ — ih, получим 1=0 i=0 Предположим, что все производные решения до порядка q ограничены: I у'р>(л) К Мр < оо при Xq^x^Xq + X, p = 0,...,q. Представим все величины у (х, — ih) и у' (х, — ih) с помощью формулы Тейлора yix,-ih)J'^yШ(x,)tII^i.f^^, р=0 ^'(^/-'•^)=S^""Wi^+y;;
§ ei МЕТОД НЕОПРЕДЕЛЕННЫХ КОЭФФИЦИЕНТОВ 473 согласно оценке остаточного члена ряда Тейлора, имеем |P5|<M,(i/z)'/^!, \^l^\^M,{ihrЧ{q-l)\ Подставим выражения y{Xj — ih) и y'[xi — ih) в правую часть представления Г; и соберем коэффициенты при f/'P'Uy). получим г, = Е^-'у{х,)-\-Е^у'{х,)+ ... +f,-,A''V''""(A:/) + e/. C) где к 1=0 к при /7 > о, Очевидно, где ^p~Zi pi 1л (p-l)l 1=0 1=0 D) 1=0 1=0 =2;^~s^-<vj. e;|<D,M,/i'-', 1=0 i=0 y«-l (9-1I В ряде случаев, например, для рассмотренных в § 5 методов Адамса значение постоянной D, в оценке |ej| удается уменьшить. Если Яо = ... = £'т = О, то г; = 0(Л'"), и говорят, что схема B) имеет т-й порядок аппроксимации. Очевидно, всякая схема /п-го порядка аппроксимации является схемой ^-го порядка аппроксимации, если q <. т. Если £о = • •. = = Ет = О, а Em+i Ф О, то говорят, что порядок аппроксимации строго равен т. При домножении B) на произвольную постоянную величину tj умножается на ту же постоянную. Поэтому принятое нами определение погрешности аппроксимации не является однозначным. Оно станет таковым, если потребовать дополнительных условий: для любой гладкой у(х) -о E) k lim 2 b_(f {х - ih, у (х- ih)) = f{x, у {х)). h->0-1=0 / iim У А-»0 Г"
474 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ [ГЛ. VIII Лемма. Условия E) выполнены тогда и только тогда, когда E, = Ei^O, bo+ ... +й-* = 1. F) Разложим выражения, стоящие под знаками пределов, в ряд Тейлора в точке х, удерживая члены порядка 1 и /i в первом случае и порядка 1 во втором; получим Й ((S "^ ^ ^^Ч + S '^-^ (- '■) у' (^) + ^ ^^^) = у' (^)' lim ((i b.] f (x, у {X)) + О (h)] = f{x,y (x)). Для справедливости этих соотношений необходимо и достаточно выполнение условий к k к Левая часть первого из этих равенств равна £о. разность левых частей второго и третьего равна Ei. Отсюда следует справедливость утверждения леммы. Если ^0 = ^i = О, (О = йо + ... + b-h ф О, 1, 10 после до- множения B) на «"' мы получим разностную схему, для которой выполнены условия F), а следовательно и условия нормировки E). В дальнейшем всегда предполагается, что условия нормировки E), F) выполнены. Изучение схем с @ = 0 не представляет практического интереса. Задача. Доказать, что условие £о = £i = О является необходимым условием сходимости решения сеточной задачи к решению дифференциальной. Уравнения £о = •.. = £т = О образуют однородную линейную систему алгебраических уравнений относительно 2А: + 2 неизвестных. Если число неизвестных больше числа уравнений 2А: + 2 > m-f- 1 (или, все равно, что 2k ^ m), то эта система имеет ненулевое решение. Таким образом, решая систему уравнений £о == • • ■ = £2ft == О, получим схему 2ft-ro порядка аппроксимации. Иногда возникает необходимость построить аппроксимации со значением Ьо = 0. В системе уравнений Ьо = О, £о = ... = £2А-1 = О число неизвестных больше числа уравнений, и поэтому эта система имеет ненулевое решение, которому соответствует схема Bft—1)-го порядка аппроксимации. Примеры. При fe = 2 общее решение системы уравнений £о = ... = £< = О имеет вид ао = с, а-\ — О, а_2 = —с, с 4 6о=&-2 = -о-' Ь_2 = -гс, Из условия нормировки F) получаем
J б) МЕТОД НЕОПРЕДЕЛЕННЫХ КОЭФФИЦИЕНТОВ 475 р = —*, расчетная схема Заметим, что мы уже получали эту схему из формулы Симп- сона. Если потребовать выполнения равенств Ьо = Ео = E^ == = Ez = £3 = 0, то получим схему Отметим следующее обстоятельство. Если равенства " (8) k fixi, у{х,))^ S6-/f (■</-{. y{xi-i)) выполняются с точностью до членов порядка О (Л"»), то величина fj, равная разности погрешностей этих соотношений, имеет порядок О (Л"») и, следовательно, согласно C), £о = ... = = £т = 0. Однако для выполнения условия rj = 0(/i">) необязательно требовать, чтобы погрешности этих приближенных соотношений имели порядок О (Л™). Например, для последней схемы Г) = 0{h^), в то время как погрешности соотношений (8) порядка О(Л). Кроме построенных выше методов типа Рунге — Кутта и конечно-разностных методов следует отметить группу методов Батчера. В этих методах при нахождении каждого нового значения уп используется несколько предшествующих значений уп-i, как в конечио-разностиых методах, но в то же время на каждом шаге производится несколько вычислений правой части, как в методах Рунге — Кутта. Примеры расчетных формул методов этой группы: 1. У 1 =ffn-J+^Wn-i + 3/n-s), /.--2 » погрешность на шаге порядка 0(Л*); здесь fm°°'/(*m'^т)'
476 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ (ГЛ. VI 2. У j_ = -i28 (-22%"-! + 200</„_2+ 153</„_з) + "-2 + — B25/„_, + 300/„_г + 45/„_, 128 *" " 1Г ^^^^""-^ ~ ^^^^«-2 - ^'^г/^-з) + "^ 155 /з84/^_ 1_- 1395f„_, - 2130/„_j - 309/„_A Уя=-^ОЩп-^- C5i/„-2-31i/„_3L- \  л-3 ]• погрешность иа шаге О (Л*). § 7. Исследование свойств конечно-разностных методов на модельных задачах Чтобы понять, при каких условиях приближения, получаемые методом конечных разностей, сходятся к решению задачи, рассмотрим простейшие модельные задачи. Рассмотрим поведение решения конечно-разностной схемы k k ^a^iyi., — h'Sib-ifi-i=^0 (I) 1=0 1=0 на примере уравнения у' = My, М = const. В этом случаг соотношение A) приобретает вид k k S a_,i//_, — А S ft-jAf<//_, = О, «=o i=o иначе, k 1 1=0 Ii(a.i-Mhb.i)yi.i = 0. B) Далее предполагаем, что аоФО ч Mh настолько мало, что коэффициент ао — Mhbo отличен от нуля. Как мы видели в § 7 гл. II, решение разностного уравнения B) с постоянными коэффициентами выражается через корни характеристического уравнения к 2(а_,-МЛй_,)ц*-' = 0. J-0
^ 7j ИССЛЕДОВАНИЕ МЕТОДОВ НА МОДЕЛЬНЫХ ЗАДАЧАХ 477 Это уравнение удобнее записать в виде F{Q,\i)=^{a.i-Qb_^)^i^^-^ = Q, C) /=о где Q = Mh. Корни многочлена являются непрерывными функциями его коэффициентов в области, где старший коэффициент многочлена не обращается в нуль. В свою очередь коэффициенты a-i — Q6_i —непрерывные функции от Q. Следовательно, корни многочлена C) непрерывно зависят от Q в области, где йо—Q6o # О, в частности, при малых Q. Отсюда заключаем, что при малых Q корни C) близки к корням уравнения F@, ц)=^Р(ц)=2:а_,ц*-' = 0, D) которое принято называть характеристическим уравнением разностной схемы A). Далее обозначаем корни C) через !ij(Q), /==1, ..., k, а значения ц^О), т. е. корни D), через ц^. При условии тах|ц,|>1 разностную схему следует забра- i ковать. В самом деле, решение разностного уравнения записывается в виде (рассматривается случай, когда корни уравнения C) простые). При наличии округлений коэффициенты Ci будут возмущены. Если шаг интегрирования мал, то Hi(Q) близко к \ц, а число п может принимать большие значения; тогда среди величии (jii(Q))" будут очень большие. В результате этого малые возмущения коэффициентов С{ могут привести к катастрофически большим возмущениям решения. Ниже приводится строгая форма этого рассуждения. Реально получаемые при вычислениях величины у) вследствие наличия округлений не удовлетворяют в точности уравнению B). Рассмотрим «частично идеализированный случай», когда в процессе численного интегрирования по формуле B) округлений не производится, но имеется погрешность в значении ук-i. Пусть {/^, <? = 1, 2, — решения B), совпадающие при / = 0 ft-2, а ul-x-y'k-i'-b. Их разность Z; = i/j — i/i будет решением B) при начальных условиях Zq= ... =г^_2 = 0, 2;^_[ =»й. Обозначим через Е оператор сдвига по узлам сеткн, определяемый равенством Еу,=у.^у Очевидно, Е^у.^у^^ как при положительных, так и при отрицательных целых р, и поэтому уравнение B)
478 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ (ГЛ. VIl] МОЖНО переписать в виде k Обозначим Пусть ц^ (Q) — один из корней C), тогда i(a_,- Q6_,)»**"' = (t*-f»,(Q))(-2 «_,(Q)(i*-'-'). 1=0 \i=0 / где Со — Яо — Q6o- Домножим это равенство на ц1-* и вместо ц подставим £J получим ft - /*-1 N Е S (а-1 - Qft-i) ^"' = (^ - >», (Q)) S «^-i (Q) Б~' . Применяя операторы, стоящие в обеих частях, к функции г., имеем 0==(£-(i^(Q))f2 c_^{Q)E-4zj. B<^-i(Q)^"')^/ через Vj-, поскольку £'"'г, = 2._j, то ft-i «ft-i = S *-i (Q) ^ft-i-i = '^o (Q) ^ft-i = '^o W) e- функция V, удовлетворяет уравнению (f — l*|(Q))O/ = 0, иначе, V|_^.^ = ^i^(Q) Vj. Отсюда следует, что «/ = (Ь «3))''<*"" «*_, = (^^^ №))''<*'"Со(Q)в, т. е. fc-i Очевидно, 2 c_^(Q)Zj_, <lfi\c_,(Q)\\ max |гр|. Поэтому из последнего равенства следует оценка шах UJ>|,,(Q)r-\J^°^Q>' |6|. 1=0 Мы видим, что возмущение начального условия j/*_i на величину б приводит к пропорциональному возмущению решения с коэффициентом.
J 7| ИССЛЕДОВАНИЕ МЕТОДОВ НА МОДЕЛЬНЫХ ЗАДАЧАХ 479 оцениваемым снизу через const j ц^ (Q) l'"*"'"*. Если при некотором / оказалось \[ii\ > 1, то множитель | ц, (Q) 1*^ = | ц^ (Q) f^, соответствующий точке xn = хо + X, резко растет с уменьшением h. Для получения решения с высокой точностью требуется уменьшать погрешность аппроксимации, .т. е. уменьшать шаг интегрирования. Приведенные выше соображения показывают, что при уменьшении шага метод быстро становится практически неустойчивым к возмущениям исходных данных. Например, для схемы F.7) тах[ц^| = 5. Предположим, что при определении значения i/i допущена погрешность й = 2"*». Тогда уже при Л' = 18 величина lJii(Q)l^e имеет порядок 1 и результирующая ошибка сравнима с самим решением. Точно так же можно опасаться, что в случае /э-кратных \и, р > 1, на границе единичного круга приближенное решение будет иметь погрешность, пропорциональную бЛ^''"' = = б (А"/?" )''",которая при малых h очень велика. Такое влияние вычислительной погрешности еще не дает основания браковать эти схемы, поскольку при реальных б и Л^ величина погрешности порядка бЛ'Р"* все-таки еще оказывается допустимой. Однако сейчас мы приведем более серьезные доводы, обосновывающие неприемлемость таких методов. Пусть Hi — р-кратный корень уравнения D), |(Xi| = 1. Разложим леву;о часть C) в ряд Тейлора по степеням Ц — Ц1 и Q; поскольку f(Q, ц) линейна по Q, то это разложение имеет вид аоо + 2 «о/ ((* - f»i)' + S «I/Q (f« - Ml)' = 0. E) 1=1 1=0 где Если Hi — р-кратный корень D), то воо = ... = Оо. p_i = 0. С учетом этого обстоятельства соотношение E) можно переписать в виде аор ([i - Hi)" + qioQ + Ф (Q, н) = О, где \1)(Q, и) состоит из слагаемых видасопз< (и — Hi)''^' или const (н — Ц[)' Q при / > 0. Сделаем допущение, что яю =ф 0;' тогда последнее равенство можно представить как (н-н,)р = ло-Ьф(д, и). F) 3 Ф (Q. Н) состоит из слагаемых того же вида, что и if (Q> (*)i т. е. Ф (Q, Н) = О ((I Q 1-Ы и - A, |Р) I A - и, I). Из теории функций комплексного переменного следует, что уравнение F) имеет р корней Ц, (Q) iip(Q) вида Ц/ (Q) == Mi + (У^\ ехр (^) + О (yiW); G) здесь \yAQ)a — какая-то фиксированная ветвь функции ^AQ.
480 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ [ГЛ. VIIl Это утверждение можно доказать, следуя указываемой ниже схеме. Рассмотрим уравнение A-ц, = Фу(д, ц), (8) где Ф/(С, ц) —ветвь функции yAQ + <f{Q,\i), совпадающая при ц = ц, с [у AQjoexp BпЦ1р). Возьмем произвольное a>Y^ и рассмотрим область |ц —ц,Ка/Г01; показываем, что при | Q К Cj, Cj>Ob этой области выполняется оценка о(* I Рассмотрим итерацнопный процесс решения (8): ц<'"+') = ц, + Фу(д.ц<'")), прн начальном приближении ц@) = ц,+(к1д)оехр(^); показываем, что при | Q | ^ Сз, Сз >0 все приближения ц'"*' лежат в области р I ц'"*'— Hi |<ауТОТ. и затем показываем, что при всех m выполняется, неравенство |ц<'")-ц@I<д,/[01Г. Вследствие сходимости итерацноиного процесса при условии афу д\1 <0,5 заключаем, что величина (i/(Q)= lim ц<"" m->oo удовлетворяет уравнению (8) и неравенству I Н/(Q)-(*№!< а,/IW. Отсюда вытекает, что соотношение G) справедливо. Поскольку модуль «омплексиого числа не меняется от умножения на число, по модулю равное 1, то на основании G) имеем 1 + (К^)о Ki ехр (^) + Ч (Q) |, I(i/(Q)I = I(i/(Q)k!1 = где e/(Q)==o(vTQT). В свою очередь модуль комплексного числа не меньше его действительной части. Поэтому I Hi(Q) I ^ Re (l + (^Лд)„ к1 ехр (-?5ii) + Z, (Q)) = - 1 + Re ((к^)о (v-lexp ^) + Re е/ (Q).
§71 ИССЛЕДОВАНИЕ МЕТОДОВ НА МОДЕЛЬНЫХ ЗАДАЧАХ 481 Если вместо уравнения у' = My взять уравнение у' = —My, то для этого уравнения, соответственно, справедливо неравенство: \\ii(Q)\>l + Ке((/=:7д)оЦ-1ехр(^)) + Ree; (Q). Рассмотрим 2р комплексных чисел (y/T7QU-lexpB^), У =...:., р. Точки комплексной плоскости, соответствующие этим числам, лежат на окружности |z|= K|/1Q| и делят ее на 2р равных частей (рис. 8.7.1). Угол Рис. 8.7.1. между направлениями иа точки, соответствующие двум соседним числам, равен п/р. Поскольку р ^ 2, то он не более я/2. Следовательно, хотя бы одно из этих чисел имеет аргумент по модулю, не больший л/4. Если JT 2 = р (созф + isin ф) н 1ф1^-^, то Re 2 = рсозф^ р cos (— I = V_ . U/ VT Поэтому для одного из этих чисел Таким образом, или для уравнения у' = My или для уравнения у' = —Му окажется, что Р^ max I pLj (С?) I > 1 + -^-|~- + 8 (Q), где e(Q) = o(>^|QlO. 16 II. с. Бахва.юв
482 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ Вспомнив, что Q = Mh, получаем h " \h P Последняя величина при измельчении шага ft стремится к бескопечност! быстрее любой степени А; поэтому уже при небольшом числе шагов влияни возмущения от округлений окажется сравнимым с искомым решением за дачи. Таким образом, конечно-разностные методы с кратными корням характеристического уравнения D), по модулю равными !, также следуе забраковать. По ходу рассуждений было сделано допущение Гд@, цО ФО Есл' Fq@, Hi) =0, то оказывается, что рассматриваемая fe-шаговая схема сое ветствует некоторой (k— 1)-шаговой схеме. Например, схема У, - 2r/,_, + «/у_2 - h (f,_^ - f,_^) = О получается пычитанием уравнений y,-yi-i-hfj_^ = 0, соответствующих схеме метода Эйлера. Из проведенных выше рассуждений вытекает существен-; ность выполнения следующего у с л о в и я а: все корни характеристического уравнения D) лежат в единичном круге и на границе единичного круга нет кратных корней. Можно было бы подумать, что все дело только в округлениях и ошибках исходных данных: если бы их не было, то, может быть, решение конечно-разностной задачи сходилось бы к решению дифференциальной? На самом деле, для любой разностной схемы, не удовлетворяющей условию а, можно построить пример дифференциального уравнения с бесконечно дифференцируемой правой частью, для которого и при отсутствии таких ошибок решение конечно-разностной задачи далеко от решения дифференциальной. Мы не будем предлагать тачных формулировок и доказательств соответствующих теорем. Строгое доказательство четко сформулированных угвер- ждений всегда вносит определенную ясность, но вследствие своей законченности оно воспитывает также некоторый консерватизм в подходе к рассматриваемому явлению. Формулировка теоремы о том, что для любого метода, не удовлетворяющего условию а, найдется уравнение с гладкой правой частью, для которого при мельчении сетки решение сеточной задачи не сходится к решению дифференциальной в случае вычисления без округления, наводит па мысль, что от использования методов, не удовлетворяющих условию а, следует категорически отказаться. Именно этот вывод и останется
§ g) ОЦЕНКА ПОГРЕШНОСТИ КОНЕЧНО-РАЗНОСТНЫХ МЕТОДОВ 483 В памяти после доказательства соответствующей теоремы. Однако он не совсем оправдан. В настоящее время в вычислительную практику начинают проникать методы интегрирования, не удовлетворяющие условию а, но с совсем иным способом определения значений yi, чем рекуррентный способ вычисления этих величин из разностной схемы. При решении одного класса задач требовалось получить решение с относительной погрешностью около 20%, но специфика задачи накладывала требование, чтобы число шагов было очень малым. Попытки математиков справиться с этой задачей при помощи методов, удовлетворяющих условию а, не привели к успеху. Инженерам посчастливилось предложить метод, не удовлетворяющий условию а, для которого прл достаточно крупном шаге удавалось получить решение с требуемой точностью. Здесь излишняя информация о методах решения мешала решить задачу. Впоследствии оказалось, что точность 20% не удовлетворяет новым требованиям, предъявляемым к приближенному решению. Дальнейшее повышение точности до порядка 1% потребовало применения в полном объеме результатов теоретических исследований и было достигнуто за счет применения методов, удовлетворяющих условию а, и более мощных ЭВМ. На первый взгляд может показаться целесообразным строить схемы (I) с возможно большим порядком аппроксимации т. Однако оказывается, что все схемы с большим т не удовлетворяют условию а. Теорем-а. В случаях: схема явная т> k. схема неявная, k — нечетно, т> k -\- \, схема неявная, k — четно, m > ft + 2 среди корней характеристического уравнения D) имеется корень, по модулю больший 1. § 8. Оценка погрешностн конечно-разностных методов Произведем оценку погрешности приближенных решений, которые получаются при помощи конечно-разностных методов вида E.2), удовлетворяющих условию а. Получаемые в процессе реальных вычислений величины у^, приближения к значениям y{xj), связаны на самом деле не соотношением F.1), а соотношением к k ^a-iyi-i — h^b-ifixj^i, y,-i) = bj, A) где величина 6j может быть отлична от нуля (причины появления величины 6j уже указаны в § 4). С другой стороны, в §§ 5, 6 установлено, что значения у{Хп) точного решения дифференциальной задачи удовлетворяют соотношению k к 2 a^iy (x/_i) — Л 2 b-j/ (x,_j, у (x,^i)) = hri; B) 16*
484 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ [ГЛ. VII при соответствующем подборе коэффициентов a_i и 6-, оказы валось, что fj = О (Л™), где m > 0. Вычитая B) из (I), получим уравнение для ошибки Rj = У] — yixj). На основании формулы Лагранжа имеем равенство f(Xf-i, y,-i) — f(Xf_i. y(,x,_i)) = l,^iR,.i, C] где yi-i лежит между (//_; и y{Xf^i). С учетом C) разность соотношений (I) и B) запишется в виде k к 2 a.,Ri_i - Л 2 b.ili-,Ri-i = gi, D) где ^/ = б/ — Лг/. Теорема об оценке погрешности. Пусть разностная схема удовлетворяет условию а и |fj,| ^ Z. при Хо ^ х ^ хо -\- X, Тогда при хо ^ Хп ^ Хо -{- X выполняется неравенство |/?J<C(L. J)( max |^,|+2|^/|). E) Доказательство. Сформулируем частный случай леммы из § 3 гл. VI: Пусть все собственные значения матрицы А лежат в круге |>i/|^ ^ и на границе круга нет кратных корней; тогда можно vKa3aTb матрицу С такую, что ||D||i ^ q, где D = = С-МС. Для удобства оценки преобразуем уравнение D) в одно- шаговое векторное уравнение. В дальнейшем для определенности предполагаем h настолько малым, что |/i6oL|^ -^ ; тогда коэффициент ао — hbolj при Rj в D) по модулю не Менее ~ . Перенося в D) все слагаемые, не содержащие /?„ в правую часть и деля на коэффициент при Rj, получим равенство '<f — 2u—o--hh.i.— ^/-i + „: _ hhj. • W Положим очевидно, hVij, b-idoli-i — a-ibalj \b-iaa\ + \a-^a\ J
ОЦЕНКА ПОГРЕШНОСТИ КОНЕЧНО-РАЗНОСТНЫХ МЕТОДОВ 485 Введем в рассмотрение векторы ^/ = (^/ Ri-k+\V- Соотношение F) равносильно равенству Z, = AZ,-i-\-hViZi-hWi, G) где Л = "о 1 о а -2 О 1 '■i-k ^-k О о о о v,= о vO о 'ki о о W, «1 % - А*о'/ о Действительно, приравнивая первые компоненты векторов в правой и левой части G), мы получим как раз F), а, приравнивая остальные компоненты, получаем тождества. Rj-i = Rj-i> i=li •••! k — 1. Вычислим характеристический многочлен матрицы А: Р (к) = det (Л - КЕ) = = det 1 о 'I-fc — к 1 0 0 0 0 о о 1 — к Для этого умножим первый столбец на А, и прибавим ко второму, затем — второй на Я и прибавим к третьему и т. д. В результате получим р,(Я) рАЦ ... Pft-iM рЛЛ-) 1 О ... О О P(A,) = det О 1 ... О О О О 1 О
486 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ 1ГЛ. Vlll где Р,(Ч —^-х. р,(ч = -^ + я(-^-л) Раскрывая определитель по последнему столбцу, имеем (-1)^Р(Я) = -р,(Я) = Оо "о "о Характеристическое уравнение матрицы А оказалось пропорциональным характеристическому уравнению G.5) разностной схемы. Согласно предположению а, все корни характеристического уравнения матрицы А лежат в круге Uj^ 1 и на границе круга нет кратных. По отношению к матрице А условие леммы выполнено со значением q = I. Следовательно, существует матрица С такая, что C"MC=D и ||DI|i ^ 1. Произведем в уравнении G) замену переменных Z„ = Сг„. После умножения слева на С"* оно приведется к виду Zj = Dzj-i + hVjZj^i-\-wi, (8) где D = C"^AC, Vj = C-'ViC, Wf = C~^Wf. В матрице Vj ненулевые элементы находятся только в первой строке; поэтому k /III'''" и |и||,<Bу1-^=АЩ^:^и = .. |t'/lli<l|C-4|,||V/||,l|C||,<t.L||C-'l,|lC||,. Очевидно, и'/11.<11С-'|,1|П^'/||, = ||С-1, 81 ■ hbolf <2||С- '^'' 1^0 I После оценки норм слагаемых в правой части (8) можно написать неравенство l|z/||,<Plg/| + (l+Y^A)lk/-,||,, (9) где 1с-'| о о II ^- III ,, „ II с- 41 \\ г II р = ^ Iд I ■ y = v\\'^ III 11 bill. Для оценки IJZnll, через ||Z(,_il|i и величины |g-j| поступим следующим образом. Выпишем неравенства (9) при / = « k;
§ 8] ОЦЕНКА ПОГРЕШНОСТИ КОНЕЧНО РЛЗПОСТНЫХ МЕТОДОВ . 487 а правой части оценки ||z„||i через ||z„_i||i оценим ||z„_illi через ilzn-2lli, затем в правой части получившегося неравенства оценим !lz„_2lli через ||2„_3|li и т. д. В результате получим ... + A + yLh){^\ gk\-\-(l-\- sLh)\\Zk-i II,)...)), или, все равно, что 1|г„||,<р2 (l+Y^""'lg/l + (l+Y^-Ar''''lU,_,||,. A0) Упростим эту оценку, одновременно несколько загрубив ее. При л;о ^ л;/^ х„ ^ лго + Х имеем {n — j)h^X; поэтому A + yLhf~' < ехр (yLh (п - j)) < ехр (yLX), Теперь из A0) получаем ||z„||,<exp(Y^X)(p|ljg/| + ||z,_,||,j. A1) Справедливы неравенства |Af„KI|ZJ|,<||C||,||z„||„ IUa-,II,<||C-4|,||Z,_,||,=1C-4|, max \Ri\, и поэтому ||Z„||,< ||C||,exp(Y^^(pilg/H-IIC-'i,||Z,_,||,). A2) Теперь получаем оценку погрешности , \Rn\<expiyLX)lM^j^\gl\ + M, max \Ri\), \ f=k 0 < 1 < ft / где Afi = pllClli, Af2 = IICIIillC'Mli и y—некоторые постоянные, зависящие только от коэффициентов а_,-, b-i исходной разностной схемы. В частности, М^ и Afg зависят только от коэффициентов а-г. Утверждение теоремы доказано. Подставляя в A2) значение gj = 6j — hr,, получим полную оценку погрешности |7?J<exp(YLZ)U, S {\6,\-{-h\r,\) + M2 max |7?,|). A3) \ /=ft о < г < ft / Из оценки A3) видно, что для сходимости решения разностного уравнения к решению дифференциального достаточно выполнения условий п п Si б/1^0, /i2|r/|^0, max! Afi 1^0.
488 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ [ГЛ VHF § 9. Главный член погрешности Мы получили оценки погрешности для всех конечно-разностных схем, удовлетворяющих условию а. Однако поскольку оценки являются завышенными, остается неясным, какому из методов следует отдать предпочтение. Для более подробной сравнительной характеристики разностных схем желательно выделить главный член погрешности приближенного решения. Предположим, что порядок аппроксимации строго равен m ^ 1 и выполнены следующие условия: 1) разностная схема удовлетворяет условию а и нормирована, т. е. Ьо + ... + b-h= ]; 2) правая часть уравнения f{x, у) достаточно гладкая, а именно, |еди. 1/)|<Чь<- в области G: jcq ■<лг ■< Хо + ^ для всех /), /д в пределах 0-^ti + -f /2 < 2т; 3) погрешность начальных условий имеет более высокий порядок малости, чем погрешность аппроксимации г,, а именно, |^/Кл(Л)Л'" при j = Q,...,k—l, где t\{h) —►О при h-*0; ■ 4) погрешности от округлений имеют более высокий порядок малости по сравнению с величинами р, = hr,, называемыми погрешностями на шаге, а именно, I б/К л (Л) Л'"*' при / = й N. Производная решения порядка s-\-1 выражается через правую часть уравнения и ее производные до порядка s. Поэтому при условии 2) имеем \у^рЦх)\^Мр<оо при Хо^х^Хо + Х и р = 0, ..., 2/n-f 1. Тогда, согласно F.3), справедливо неравенство: 2т р=0 Поскольку порядок аппроксимации равен т, т. е. Еа = ,,. ... = fm = О, то отсюда следует соотношение 5) Г/ = £.ь,г/""^"(А:/)А'" + @/, где 1сй,-| ^ Qh"^+^ равномерно по / при Хо^ х, ^ хо + X. Хотя соотношение 5) является следствием условия 2), для удобства изложения будем формулировать его как независимое условие. <^2m+IЛ^2m+IЛ^'".
§ 9] ГЛАВНЫЙ ЧЛЕН ПОГРЕШНОСТИ 489 Теорема о главном члене погрешности. Если условия 1)—5) выполнены, то при Хо ^ Хп ^ Хо-{-X справед-, ливо равенство yn — y{Xn) = E,n+\z{Xn)h"' + e{Xn), A) где I е (а;„) К С (т] (Л) + Л) h'"; здесь ^{х)= J (-!/<'"+" W)expИ f„(t, y{x))dx\dt — решение уравнения при начальном условии г {х^ = 0. Основная идея доказательства теоремы заключается в следующем: уравнение (8.4) относительно погрешности Rn = = Уп—у{хп) преобразуется к виду, из которого следует, что величина Rnh~^ является решением разностного уравнения, аппроксимирующего указанное в условии теоремы дифференциальное уравнение относительно функции z{x). Доказательство. При выполнении условий теоремы соотношение (8.4) можно записать в виде k k 2 a-iRf-i — Л 2 b-ili-iRj-i = bj — hr,= 1=0 (=0 = -£^+,г/""+" (>:/)/!'"'•' + ?/. B) где q, = b,- {hr, - £«.+,!/<'"+" (X,) Л'"^'); согласно условиям 4), 5), имеем ,Если подставить в правую часть (8.13) сценки для Rt, O^i < k, bj. Г/, заданные в условиях теоремы, то получим оценку |/?/Kd,/i'" при Ха^х,^Ха-\гХ. C) Вспомним, что li = fy{Xj, У)), где у/ лежит между y{Xj) и у/= = y{Xj)-^ Rj. Применяя формулу Лагранжа по переменной у, имеем h - fy i^h У (^/)) = fy (Xj, ш) - fy (xj, у (x,)) = =^fuy{xj. У{){У1-У{Х1)).
490 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ [ГЛ. VIH Отсюда следует неравенство \ll-fy (Xf, У ixj)) I < ^021 /?/1 < d,Lo2h'" D) при jcq^ JC/^ Ло + ■^- Воспользовавшись равенством 2^-1 = 1, 1=0 запишем райенство B) в виде k к 2 a-iRj-i — h^b-i (fy (х/.,, у {xi_i)) /?/_, — -£т+.у""+"(ху_,)Л'")==а,, E) где k а/ = ?/ + Л 2 b-i ili-i — fy [xj^i, у (xi-i))) /?/_, + Согласно оценкам C), D), имеем I (//_, - /, (х,-„ у {x,_i))) /?/_г I <d^h^'". Имеем I у<'«+') (xi.i) - f/<"'+') (xi) I < M^^iih; из приведенных выше оценок следует max I а/1 = О (л W /г'"+') + О (/г'"+2) + О {h.^'"+^) = = О ((л(/1) +Л)/!'"+■). Разделив обе части равенства E) на Л'"''"' и обозначив Vj = Rjh~'", имеем fe к 2 a.iV,.i -h^b-i (fy (Xf.,, у (x/^,)) у/_г - £^y""+') (>:/_.•)) = P/, i=0 1=0 F) Р/^а/Л"'", 1Р/|<йз(т1(/1) + Л)/1. Сравним значения у„ со значениями решения дифференциального уравнения z' = fy(x,y(x))z-E^y^'-+'Hx) G) при начальном условии z{xa) = 0; имеем 2 (д;) = - J £^г/<'"+" (О ехр ( | fy (х, у (т)) dt] dt. (8) Xj<x.<x„+JC
§ 9] ГЛАВНЫЙ ЧЛЕН ПОГРЕШНОСТИ 491 Соотношение F) означает, что сеточная функция Vj приближенно удовлетворяет конечно-разностному уравнению, соответствующему этому линейному дифференциальному уравнению. Воспользуемся оценкой (8.13), подставляя р,- вместо б;, получим I У« - Z (л:„) К ехр (yLZ) (iW, (ij Р/1 + ЛI Г/1 j + -f Afa max | Vi —2(xt)\]; (9) OKKk J здесь Г/ — погрешность аппроксимации: соответствующая уравнению 2' = fy{x, у(л:)J-у('"+')(д:). Решение у{х) дифференцируемо по х {2т + 1) раз; отсюда следует, что правая часть уравнения G) дифференцируема по х т раз. Тогда функция г {х) дифференцируема т + 1 раз; согласно построениям из § 5, имеем |rj|^d4 Л"* при Хо^х^^ ^Хо-\-Х. Отсюда получаем п 2 /i|r/KZmax|r/| = ZO(/i'"). Вследствие соотношения \^i\^di{y\{h)-^ h)h справедливо /=i при лго < л;„ < лго +-Х'. По условию теоремы Vt = R{h~'^ = О{f\{h)) при Q^i<k; из явного вида z{x) также следует, что 2(Xi) = 0(/i) при Q^i<.k, поэтому max \vi — Z (Xi) | = О (т) (Л) + К). 0<i<ft Используя эти неравенства для оценки правой части (9), получим max I ti„ — 2(л;„) I = О{r\{h) + h).
492 . ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДА«1И КОШИ [ГЛ VHI После умножения этого соотношения на Л"* имеем требуемое утверждение теоремы. Теорема о главном члене погрешности дает формальные основания для применения правила Рунге практической оценки погрешности (см. §§ [3, [5 гл. III) при достаточно малых h и погрешностях округления в,. Однако в рассматриваемом случае к его применению следует относиться с большей осторожностью, чем в случае вычисления интегралов. Дело заключается в следующем. Иногда соотношение \Ет+,г(х)к"'\^\в{хI A0) необходимое для того, чтобы £т+|2(лг)А'" было реально главным членом погрешности, выполняется ^Гишь при очень малых h и при невыполняемом в действительности условии на малость погрешностей округления ву. Выше'Ьказаннос относится не ко всем методам. В случае одношаговых методов главный член погрешности D.12) довольно часто реально преобладает над членами высшего порядка. Среди конечно-разностных методов следует выделить методы, у которых один из корней характеристического уравнения G.4) равен 1, а остальные лежат строго внутри единичного круга; сюда относятся методы Адамса. Для методов Рунге — Кутта и Адамса соотношение A0) выполняется уже при относительно приемлемых шагах Н. В то же самое время надо отметить, что при реальных вычислениях по методам Рунге — Кутта и Адамса довольно типичны крупные шаги, при которых соотношение A0) не всегда выполняется. В случае, когда условие A0) не выполняется, иногда можно говорить, что реально у погрешности имеется главный член, но он не совпадает с УI-У1-2 £'т+12(д:)Л'". Например, для разностной схемы тт f (^i^\, yi^{) = = О реальным главным членом иногда оказывается некоторая составляющая е(лг), имеющая порядок /i'"+'. Некоторое подтверждение наших высказываний можно найти в следующем параграфе. В целом можно сказать, что сравнение результатов расчетов с различными шагами является основным способом для получения суждения о величине реальной погрешности и используется относительно часто. Из проведенного нами в §§ 8, 9 анализа, казалось бы, следует, что все схемы одного и того же порядка аппроксимации, удовлетворяющие условию а, равносильны между собой в отношении практического использования: условия сходимости приближенных решений, согласно построениям из § 8, имеют одинаковый вид, главные члены погрешности, согласно только что доказанной теореме, оказываются пропорциональными. Однако проведенный нами анализ еще оказывается недостаточным; мы исследовали асимптотическое поведение погрешности при фиксированном отрезке интегрирования [хо, Хо-\-Х] и при стремлении шага сетки к нулю. Во многих задачах типично очень большое значение промежутка интегрирования, и. в этом случае представляет интерес не только поведение погрешности при уменьшении шага интегрирования, но и поведение погрешности при большом отрезке интегрирования. Чтобы разобраться подробнее в этом вопросе, обратимся опять к рассмотрению модельных примеров,
5 10] БОЛЕЕ ТОЧНЫЕ МОДЕЛИ 493 § 10. Изучение свойств конечно-разностных методов на более точных моделях Произведем сравнение двух конечно-разностных схем: метода Эйлера У, —У 1-х -^ /(л:/.,, у/_,) = 0 A) и одного из вариантов так называемого метода Милна У, - У1-2 2А -/U/-I. y/-i) = 0. B) r(I) '^1 rB) — '^t y{Xj)-y{x,_x) h У (Xj) - У {АГ/_2) 2A Так же, как в § 5, подставим вместо у; значения точного решения y{Xj) и, разлагая левую часть в ряд Тейлора по степеням Л, получим величину погрешности аппроксимации -fix,-и г/и,-,)) = г/"(л:/L + 0(П C) - / {х,.и у U/_,)) = у'" ^h'+O {h\ D) соответственно, для первой и второй схем. Для начала вычислений по первой схеме необходимо располагать приближенным значением величины у{Хо), а для начала вычислений по второй схеме еще и приближенным значением величины у (л;.). Предположим, что эти значения задаются без ошибок, а каких-либо округлений при вычислениях вообще не происходит. Характеристическое уравнение первой схемы ц—1=0, характеристическое уравнение второй схемы ц^—1 = 0. Оба эти уравпе1'ия удовлетворяют условию а. Предположим, что правая часть f{x,y) удовлетворяет всем условиям теоремы о главном члене погрешности из § 9; тогда, согласно теореме, выполняются соотношения f/« - г/ (^„) = - I J у" it) ехр у J fy (т, у (т)) drj dt ,, Ъ} для первой схемы, для второй схемы. Обратимся опять к задаче интегрирования модельного уравнения у' = Му при начальном условии у@) = 1. Правая часть этого уравнения удовлетворяет всем требованиям теоремы из
494 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ [ГЛ VIII § 9; очевидно, fy = M, r/^HJc) = Al^exp (Л1х). Из E) и F), соответственно, получим Уп-У К) = - -f- J Al^exp (Mi)exvU Mdxjdt = = --^^^ехр(Мх„)+0(П у1-У W =^ - -^^ exp (MX,) + 0 (ЛЗ). Главный член погрешности второй схемы отличается от главного члена погрешности первой множителем Mhj3. Если сравнивать эти схемы по величине главного члена, то, казалось бы, при \Mh/3\<.l применение второй схемы предпочтительнее. Однако такой анализ оказывается слишком поверхностным. Решения конечно-разностных уравнений A), B) могут быть выписаны в явном виде. В случае первой схемы имеем Уп-Уп-1 - My^n-^ = О, А тогда 1/^ = A+ЖЛ) !/■_,. и поэтому i/'=(l-f МЛ)". Во втором случае получаем уравнение Уп-Уп-2 _^ 2 ^0- общее решение этого уравнения имеет вид где Hi, 2 = Л^Л ± \/l + Л1^/г^ —корни уравнения lx^ — 2Mhii-l=0. Условия совпадения с точным решением в точках jc = дго = О и X =■ xi = h дают систему уравнений относительно Ci и Cj: Ci + C2=l, C,ni + С2Ц2 = exp (МЛ); отсюда ^ _ exp(Al/i) —На ^ _ ехр (Mh) — ц, . ' ц, —И2 ' ^ U2 —Й1 ' корни Hi. И2. 3 следовательно, и коэффициенты С], С2 являются функциями от величины Mh = Q; напишем их разложения по
$ 10] БОЛЕЕ ТОЧНЫЕ МОДЕЛИ 495 степеням этой величины: H, = l + Q+-f- + 0(Q^) = expQ--^ + 0(Q^) = = exp(Q--^ + 0(Q*)). ,X2=-l+Q-4^ + 0(Q^)=-exp(-Q)--^^ + 0(Qn = = -exp(-Q + -|i + 0(Q^)), G) H,-H2 = 2 + Q2 + 0(Qa 1 +Q+ -^ +-^ + 1 - Q +-^ + 0 (Q*) 2+Q2 + 0(Q') Q ^ 2+W+loW) "" ^ + "IT + ^ (^*^' Таким образом, -(-g- + 0 (Q^))(-ir (exp (- Q +-|1 + 0 (Q^)))"; далее предполагается: |Q|^ const. Справедливо очевидное равенство l + Q-.exp(Q--f- + 0(Q3)). Поэтому для первой схемы отношение приближенного решения Уп к точному у{Хп) = exp(M%) = exp(Qn) есть 7ё;)=—^4^.Tr-^ = -p((-|- + o(Q3))«) = = 1 - -5f + о (Q3n) + О (Q^n2) = ^l^J^£iLh + 0(M^xAy+\M\x„)h') (8)
496 ЧИГ ПЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗЛДЛЧИ КОШИ [ГЛ Vllf Во втором случае - (-^ + О (Q^)) ехр ((-2Q + ^ + О (Q^)) п) = = 1 + 0(M3jf„/i2) _ei(l 4- 0{Mh))expi-2MxAi + О (Mhf)). (9) При М ^ О отсюда имеем ^'« =i + o(Mb,h^; A0) у{Хп) оценка A0) предпочтительнее оценки (8) при малых Mh независимо от длины отрезка интегрирования. Если М < О, то второе слагаемое в правой части (9) содержит множитель, резко растущий с ростом д;„. Например, при М = —1, h = Ofi\, х„ = 10 оказывается, что у1 У{Хп) >30. в то же время в случае расчетной формулы A) оказывается ^" 0,95.., У{хп) Посмотрим, чем объясняется в случае Л1 < О причина превосходства формулы A), имеющий лишь первый порядок точности. Решения рассматриваемого дифференциального уравнения имеют вид const • ехр (Мх), и при переходе от одной точки Хп к следующей их значения умножаются на ехр (МЛ) = ехр Q. Конечно-разностное уравнение, соответствующее схеме B), имеет частные решения двух видов С,|л^ и CjH". Согласно G) ц, = ехр(М/г)-Ь ООМЛР) (И) и составляющая решения, соответствующая этому корню, умножается на каждом шаге на множитель, близкий множителю €хр(Л1/г). Составляющая, соответствующая второму корню, на
§ 10] БОЛЕЕ ТОЧНЫЕ МОДЕЛИ 497 каждом шаге улгаожается на множитель |i2, существенно отличающийся от множителя ехр(М/г); можно сказать, что эта составляющая носит паразитический характер. Если М > О, то |ц2| < li^il и влияние паразитической составляющей убывает с каждым шагом. Если же М < О, то ||.i2|>|(ii| и влияние паразитической составляющей быстро возрастает, приводя к ка- тастрофическо.му изменению результата. Реально приходится решать не одно уравнение, а систему уравнений. Если разность между любыми двумя решениями системы растет, то уравнение у' = My при М > О является приемлемой моделью для отработки методов решения такой системы. Если любые два решения сближаются с течением времени, то хорошей моделью для отработки методов решения такой системы является уравнение у' = My при М <; 0. Часто решения дифференциальных уравнений не имеют резко выраженной тенденции расходиться или сближаться в каждый момент, а эта тенденция выявляется интегрально. Поэтому предъявляется требование, чтобы метод достаточно хорошо интегрировал уравнение у' = My как при^М > О, так и при М < 0. Наиболее суншственнымн являются требования, предъявляемые к случаю Л1 < О, поскольку характерное сближение решений является типичным для диссипатнвных задач с оттоком энергии, которые составляют существенную долю задач, встречающихся в приложениях. Довольно распространены задачи, где решения сближаются или расходятся относительно медленно; к этому классу задач относятся многие задачи без диссипации энергии. Уравнение у' = My как при М > О, так и при М < О не может служить моделью для отработки методов решения таких задач в силу иного характера поведения их решений. Здесь в качестве модели можно взять задачу интегрирования уравнения у' = My относительно комплексно-значной функции у при М чисто мнимом: М = is, s действительно. Решения этого уравнения г/(д;) = г/@)ехр(£5д;) и разности между решениями остаются постоянными по модулю. В случае схемы A) следовательно, и решения разностного уравнения по модулю возрастают. В случае схемы B) величины Уп удовлетворяют разностному уравнению Уп — Уп-2 — 2shiyn-i = 0;
498 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ [ГЛ VIII соответствующее характеристическое уравнение ц2 — 2shin —1 = 0 имеет корни shi ± /1 -зЩ^, по модулю равные 1, и, следовательно, решение разностного уравнения колеблется, не имея устойчивой тенденции ни к возрастанию, ни к убыванию. Такой характер поведения решения предпочтительнее, чем у схемы A), не говоря уже о том, что схема B) имеет более высокий порядок точности. Характер поведения решения сеточной задачи может существенно измениться при переходе к случаю М = М{х). В случае нелинейных уравнений картина становится еще более запутанной. Поэтому отработка методов решения задач с сохранением энергии только на модельных задачах вида у' = My оказывается недостаточной. Для интегрирования дифференциальных уравнений, соответствующих задачам с сохранением энергии,'на больших промежутках времени иногда применяют специальные схемы, на решениях которых остаются постоянными некоторые сеточные аналоги интегралов энергии. При отборе методов для стандартных программ обычно ограничиваются рассмотрением поведения решений разностных уравнений, соответствующих уравнению у' = My при М > О и М < 0. Решение дифференциального уравнения у' = My умножается за шаг на множитель exp(M/i). В рассматриваемых выше примерах всегда оказывалось, что у соответствующего разностного уравнения характеристическое уравнение имело корень, близкий к exp(M/i); наличие такого корня и создает возможность близости решений разностного и дифференциального уравнений. Теорема. Чтобы нормированная конечно-разностная схема k к (=0 1=0 имела порядок точности, строго равный т, необходимо и до- статочно выполнение следующего условия: среди корней уравнения 2(a_i-M/ib_0fi*-' = O A3) найдется корень ц = ехр (Mh) - Ет+х iMhr+^ + О ((МЛГ+2), £^+, ^ 0.
S 101 БОЛЕЕ ТОЧНЫЕ МОДЕЛИ 499 Доказательство. Предположим, что разностная схема A2) имеет порядок аппроксимации, строго равный т, т. е. для любого достаточно гладкого решения i=0 1=0 = £„+,</<'"+» (хп) h'^ + O (а'"+'). Ет+: Ф 0. A4) Положим f{x,y)=My и подставим в A4) решение у(х)= txp{Mx); при Хд ^ qh а п = k получим 1=0 i=0 = £„+,м'"+'л'"ехр (Mkh) + О (/»'"+'). После дбмножения на Л имеем k 2 {a-i — Mhb-i) exp {Mh (k - i)) = i=0 = £„+, (MA)'"+' exp (MfeA) + 0 (a'"+2) = £;„+, (Мй)'"+' + 0 (A'"+2). Bee явно выписанные слагаемые в правой и левой части есть функции от Q = AfA; поэтому величина, указанная как О (й'"+'), есть на самом деле функция от Mh, т. е> О ({Mh)"'+'). Таким образом, последнее соотношение можно переписать в виде 2 (a-i - Qb-t) (exp Q) *"' = £m+,Q'"+' + 0 (д'"П или P(expQ) = £^+,Q'"+' + rm+2. где Р (ц) = 2 («-г - 6-iQ) Ц*-', /-ш+г = О (Q'"+^). (=0 Рассмотрим отрезок | ц — 11 ^ 2 | Q | и оценим на этом отрезке производную k (=0 Для точек этого отрезка H*-'-' = ! + 0(Q), и следовательно, P'(^)=S«-j(fe-0 + O(Q). (=0 Поскольку, вследствие условий £(, = f, = О и нормированности схемы, k k 2 a-i = О и ^a-i(-i) = \, <—о 1=0
500 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ 1ГЛ. VHI ТО ЭТО равенство переписывается в виде Р (H)=1 + 0(Q), иначе, l-C|Q|<P'((i)<l + C|Q| при |,i-l|<2|Q|. Положим ^>.2 = expQ-.^21±i£^l+£-±L, Очевидно, ^>-2=1 + Q + 0(Q2). Будем предполагать \Q\ настолько малым, что |ехр Q—1|^2|Q|, |^'-2-l|<2|Q|, CIQKI и |r„+2|<|£m+iQ'"+'l- Для определенности рассмотрим случай Ет+\>0, Q>0, тогда . ц'<ц^<ехр Q. Очевидны неравенства P(expQ)-Р(ц2Х( max Р'(ц)) (рхр Q - ц^) ^ [ц^ ехр Q] < (l+C|Q|)^'"+;Q_^^'^+['"+^=P(expQ), P(expQ)-P(n')X min Р'(ji)) (ехр 9 - ii')> In', ехр Q) ^ A _ С I Q I)-^=i±i^^^^i±p^ = P (ехр Q). Отсюда заключаем, что Р(ц'Х0<Р(ц2); на основании теоремы Ролля уравнение Р(ц) = 0 имеет корень в пределах ц'!<ц^ц2. Согласно построению, обе величины }i', ц^ могут быть записаны в виде expQ-£^+,Q"'+' + 0(Q'"n и следовательно, ц = ехр Mh - £„+, (Mh)"'+^ + О {{Mh)"'+^). Таким образом, в одну сторону утверждение теоремы доказано. Пусть теперь известно, что уравнение Р(ц) =0 имеет корень вида ,i = expQ-£m+,Q'"+' + 0(Q'"+2)^ Е„+, ¥= 0. Проводя в обратном порядке аналогичные рассуждения (это мы предоставляем читателю), убеждаемся, что тогда Р (ехр Q) = £„+,Q'"+' + О (Q'"+2). Разложим левую часть в ряд Тейлора по степеням Q. Поскольку главный член правой части есть fm+iQ'""''', то коэффициенты при степенях Q' при О ^ / ^ m обращаются в нуль, а коэффициент при Q^+i равен Ет+и
§ 101 ТЗОЛРР ТОЧНЫЕ МОДЕЛИ 50t Получим соотношения к £•0=2 ^-i = 0. i=0 г=0 i=0 2i (m+l)I ~Z/ ^n -tm+i^u- 1=0 i=0 Согласно построениям § 3, это как раз означает, что для гладких решений дифференциальных уравнений выполняется соотношение A4). Теорема доказана. Если разностная схема аппроксимирует дифференциальное уравнение, то m ^ 1; следовательно, уравнение A3) всегда имеет корень ц = exp{Mh)-\-0{{МНУ). При Mh-*0 этот-корень стремится к корню ц = 1 характеристического уравнения разностной схемы G.4). В настоящее время сложилась традиция использовать разностные схемы, у которых все остальные корни характеристического уравнения G.4) равны нулю. k Это требование означает, что 2 0-г1^*~' = (М'—Of**"'! та- >=о КИМ образом, flo^l, а_1 =—1. Для таких схем при Mh-*0 паразитические корни A3) стремятся к нулю. К классу этих методов относятся определенные нами выше явные и неявные формулы Адамса. На примере явных формул Адамса посмотрим более внимательно, при каких значениях Mh влияние паразитических корней разностной схемы будет мало. Явные формулы Адамса записываются в виде Уп — Уп-1 — fl'^\t V7„-i = 0. 1=0 Подставляя f(x,y)=My, получим разностное уравнение Уп — Уп-1 — Mh^yi ^^Уn-\ = О, 1=0 соответствующее характеристическое уравнение имеет вид Р(ц) = ц" - ц*-' - ЖЛ 2 Y<(fi - 1)' Ц*-'-' = 0. 4=0
502 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ [ГЛ VIII Рассмотрим случай Ж < 0. Имеем я(-1)=(-1)*-(-1)*-'-ш1:уа-2у{-1)'"'"' = 1=0 :{-!)* 2 + Mh'Z Y.-2' 1=3 При достаточно больших по модулю отрицательных [х многочлен Р{ц) имеет знак (—l)*". Если выражение в квадратной скобке отрицательно, то значение Р{—1) имеет противоположный знак, и следовательно, многочлен Р(ц) имеет корень ц <. —1. Тогда решение разностного уравнения содержит растущую составляющую, в го время как решение дифференциального уравнения убывает. Поэтому для получения хороших результатов при интегрировании на большом промежутке времени необходимо выполнение условия k-\ 2 + Af/i 2 Y/2'> 0. . A5) 1=0 Ранее мы показали, что yi порядка-j—г, следовательно, вели- *-' чина V Yi2 растет как -т—г', в результате мы видим, что с 1=1 ростом порядка аппроксимации k условие A5) на величину Mh при М <: О становится все более жестким. При интегрировании гладких решении но методу Адамса с автоматическим выбором шага наблюдается следующая интересная картина. Вследствие достаточной гладкости решения шаг начинает укрупняться С укрупнением шага в случае fy <Z О проявляется преобладание паразитических корней уравнения A3) над основным корнем. В результате этого получаемая сеточная функция становится негладкой, и поэтому шаг мельчится. После мель- чения шага она становится гладкой и шаг укрупняется и т. д. Это явление было обнаружено при сравнении реального времени вычисления по программе метода Адамса с предполагаемым. Оказалось, что реальное время много больше предполагавшегося по теоретическим прикидкам, и причиной этого был большой объем вычислений при периодическом укрупнении и мель- чении шага. § 11. Интегрирование систем уравнений Большинство проводившихся выше построений переносится без всяких изменений на случай систем уравнений y' = fix, у). Формальное отличие состоит лишь в том, что в соответствующих соотношениях вместо скалярных величин участвуют не-
§ III ИНТЕГРИРОВАНИЕ СИСТЕМ УРАВНЕНИЙ 503 которые матрицы или тензоры. Например, при интегрировании одного дифференциального уравнения с помощью разложения решения в ряд Тейлора требовалось вычислять производные y"' = fx. + 2f,yy' + fyy(yr + fyy" и т. д. Пусть У = {Уи •••. yqV, f = ifu •••, fqV. В случае системы дифференциальных уравнений производные I/'*' получаются из аналогичных соотношений, получающихся дифференцированием исходной системы /.=1 " У1 — dx ^yi)— дх^ + дхду, dx '^ Zi Zi dy, dy, dx dx '^ 24 dr„ dx' ' '"' /,=I '' /.=l/r=l '' '' /,=1 " ■ здесь q — порядок системы. Совокупность этих соотношений можно записать в тензорной форме: y" = h + fyy', у'" = h. + 2f,yy' + fyyy'y' + !уу", ...; здесь f^rim — тензор gn+mf. дx'^ ду, ... ду1 'I 'я Внешний вид этих соотношений такой же, как в случае одного уравнения. При оценке погрешности конечно-разностных методов вместо величины / {Хп> Уп) - / {Хп, У {Хп)) = fy {Хп, Уп) Rn стоит выражение / {Хп\ Уп) — f {Хп, У {Х„)) = f^Rn, где fy — матрица с элементами ■— ; зависимость у^^ от 1J ■ \ п' "nj индекса i вызвана тем, что формула Лаграижа применяется независимо в каждой строке последнего равенства. Всякая оншбка, вносимая в процессе численного интегрирования, может моделироваться как возмущение начального условия
504 ЧИСЛЕННЫЕ МЕТОДЫ РЕГПЕНИЯ ЗАД\ЧИ КОШИ (ГЛ \'ПГ ДЛЯ дальнейшего процесса численного интегрирования; это обстоятельство было особенно наглядно видно в § 4 при получения выражения погрешности метода Рунге — Кутта. В случае одного дифференциального уравнения вариация решения (разность двух бесконечно близких решений) удовлетворяет уравнению в вариациях ц' = fyX]. Поскольку у решений численных аппроксимаций нет особых причин сближаться больше, чем у близких решений дифференциальных уравнений, то умножение погрешности на множитель ехр( | /у йл:], имевшее место в методе Рунге — Кутта, является неизбежным. Все наши построения, проводившиеся на примерах модельных уравнений у' = My, имели целью отбраковать схемы с ростом погрешности, худшим этого «неустранимого» роста. В случае систем уравнений система уравнений в вариациях имеет вид т|' = fyr\, fy — матрица, и поведение ее решений соответственно определяет вклад погрешности, вносимой на шагах, в окончательную погрешность. Если в случае одного уравнения главный член погрешности конечно- разностных методов оказывался пропорциональным решению уравнения 2'= f, 2+«/('"+■) U). ТО В случае системы он будет пропорционален решению системы Формулы Рунге — Кутта и конечно-разностные схемы, формально переписанные для случая систем уравнений, имеют тот же порядок погрешности, что и в случае одного уравнения. Рассмотрим модельную задачу интегрирования линейной системы с постоянными коэффициентами у' = Ау. A) Для простоты предполагаем, что жорданова форма матрицы А простая: с-'ас = а, где Л — диагональная матрица. Расчетные формулы метода Рунге — Кутта приобретают вид ki = hAy, , ч y{x + h)^z{h) = y-{- 2piftj.
§ 11] ИНТЕГРИРОВАНИЕ СИСТЕМ УРАВНЕНИИ 505 Если последовательно выражать йг, ..., kg, z(h) непосредственно через у, то получатся соотношения Л, = Ahy, k2 = PAAh)y, kg = P^{Ah)y, z{h) = Qg{Ah)y, где Pi, Qi — многочлены степени / от матрицы Ah с коэффициентами, зависящими от параметров а,-, Pij, pt данного метода. Соотношение yi = Q^{Ah)y,_, B) будет выполняться на каждом шаге интегрирования. В результате после п шагов будет получено значение Уп ={QqiAh))'^ya. В случае интегрирования одного уравнения' у' = Ку это равенство приобретает вид Пусть Ci, ..., вт — собственные векторы матрицы А, а Я], ..., hm—соответствующие собственные значения. Поскольку, по предположению, матрица А простой структуры, то эти векторы образуют базис; всякий вектор yj однозначно представится" в этом базисе: m Подставим выражения уп, Уп-i через векторы базиса в правую часть B). При умножении многочлена 5{А) от матрицы А на собственный вектор вр матрицы А имеем 8{А)е, = 8{Хр)ер. Таким образом, т т Q, {Ah)у,., = 2 Q, (Ah) cl_,e^ = 2 Q, (^рЛ)^^,,^^; p=i p=i следовательно, C) £/„ = 2(Q,(V0r^^«p- D) p=i Из соотношений C), D) видна следующая картина, имеющая место при интегрировании линейной системы A) методом Рун- ге—Кутта: каждая составляющая решения, пропорциональная
506 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ (ГЛ VIII одному из собственных векторов матрицы А, интегрируется независимо от остальных компонент; при этом формулы преобразования коэффициентов с^ совпадают с формулами численного интегрирования методов Рунге — Кутта уравнения у' = 'куУ. Обратимся к конечно-разностным методам. В случае системы A) соответствующая система конечно-разностных уравнений имеет вид k k 2 Я-/Уп-/ — л 2 b-iAyn-i == 0; E) 1=0 <=0 положим, как и выше, т р=\ лодсгавляя в E), получим т 1 k k \ 2, S a_,c^_, - h S Ь_,к^сЦ e^ = 0. p = l \r=0 1=0 / Вследствие линейной независимости векторов вр каждая скобка обращается в нуль. Таким образом, справедливы равенства k k 1=0 (=0 Это уравнение относительно величины с^ совпадает с разностным уравнением, возникающим при численном интегрировании уравнения у' = Хуу рассматриваемым методом. В обоих случаях (методов типа Рунге—Кутта и конечно- разностных методов) составляющие решения, пропорциональные собственным векторам е-р, интегрируются независимо друг от друга н расчетные формулы совпадают с расчетными формулами при интегрировании скалярных уравнений у' — Хру. Если данный шаг интегрирования обеспечит приемлемую точность при интегрировании всех уравнений у'р = крУр, то он обеспечит приемлемую точность и при интегрировании всей системы. Решения const ехр(А,рЛ:) уравнения у'= ХрУ меняются существенно на отрезке длины порядка |Хр|~*. Поэтому для получения приемлемой точности при интегрировании этой составляющей решения необходимо выполнение соотношения h <^\Хр\~\ иначе, |Я,р|/г<С 1. Если требуется высокая точность при интегрировании всех составляющих решения, то, очевидно, выполнение условия тах|Лр|Л<1 F) р является необходимым.
§ II] ИНТЕГРИРОВАНИЕ СИСТЕМ УРАВНЕНИИ 507 Обратимся к случаю нелинейной системы y' = fix, у). в окрестности искомого решения Y{x) правая часть системы близка к правой части линейной системы y' = fix, Y) + fy{x.Y)iy-Y). Чтобы решение этой системы интегрировалось с высокой точностью, нужно, чтобы с высокой точностью интегрировалось решение линейной системы 2'=^fy(X, Y)Z. В окрестности каждой точки X эта система аппроксимируется линейной системой с постоянными коэффициентами: u' = fy{X, Y(X))u. Таким образом, возникает требование: чтобы решение исходной системы интегрировалось с достаточно высокой точностью, необходимо выполнение условия n\ax\Xp{X)\h <^ I, где р Хр{Х)—собственные значения матрицы /у(Х, F(X)). Поскольку это условие получено при помощи различных упрощений исходной системы, оно не является достаточным условием, обеспечивающим близость решений сеточной и дифференциальной задач. Однако при интегрировании некоторых классов задач требование выполнения условия F) является слишком обременительным. Подобные классы задач качественно можно описать следующим образом. Рассматриваемая системы имеет некоторое асимптотически устойчивое решение уо{х). Среди решений, находящихся в окрестности уо{х), существуют рен]ения, стремящиеся к Уо{х) относительно быстро и относительно медленно. Численно отыскивается одно из решений системы, медленно сближающееся с уо(х), причем представляет интерес его поведение лишь при достаточно больших х. В качестве модели можно принять систему двух линейных уравнений у' = Ау со следующими свойствами. Оба собственных значения Xk матрицы А отрицательные, причем |Xi|<C|X2|. Представляет интерес получить решение этой системы при х таких, что |Х2|а;^ 1, а величина \X^\x не очень велика. Решение рассматриваемой задачи имеет вид Cj exp(XiA;)e| + C2exp(A,2^')e2- Указанные условия на величину х означают, что вторая составляющая решения С2ехр{Х2х)е2 ничтожно мала, а первая нет. Первая компонента будет интегрироваться с приемлемой
508 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ [ГЛ VIIt ТОЧНОСТЬЮ, если I^JA'C 1. Поскольку величина \Xi\x не очень велика, то могло бы показаться, что решение рассматриваемой задачи не составит существенных трудностей. Однако отсутствие требований к точности интегрирования второй компоненты решения еще не означает, что для ее интегрирования применим любой метод. Обратимся, например, к явным методам Адамса. При нарушении условия A0.15) относительно М <= hi разностная схема имеет паразитический корень, по модулю больший I, и вторая компонента разностного решения сильно растет. Поэтому является актуальным построение метода, для которого вторая компонента хотя, возможно, и интегрируется плохо, но быстро затухает. Обратимся к методам типа Рунге — Кутта, где в случае линейного уравнения у' = Ху соответствующее характеристическое уравнение имеет только один характеристический корень. Будем обозначать величину Q,(XA) через ц. Для метода Эйлера z(h) = y + ki=(l+Xh)y. Таким образом, ц. = 1 -f >Л, и условие |ц| ^ 1 при ). < О нарушается, если |Я|А>2. Для метода второго порядка точности B.7) ki = My, k,=.hf[x+^,y+^) = Xh(y+h.'j = Xh(y+^. 2 (Л) = Уо + *2 = A+ ^Л -i- -^) у. и условие |ц| ^1 при X < О нарушается при |Х.|А > 2. Для метода второго порядка точности B.6) ki = Xhy, ki = Xh(y + k,) = kh (у + khy), 2(h) = y+j(k,+ k,) = A + ЛА -b ^)y, и условие, при котором |ц| ^ 1, для X < О то же самое. В случае схем четвертого порядка точности B.14) и B.15) |ц{ ^ 1 при X. < о, если |>.А| ^ х « 2,8. Таким образом, применение методов Рунге — Кутта для решения рассматриваемой задачи возможно лшиь при выполнении условия типа I Я,21Л < const.
§ m ИНТЕГРИРОВАНИЕ СИСТЕМ УРАВНЕНИИ 509 Задача. Доказать, что для методов Рунге — Кутта при <; = s всегда '|"-2тг \k=o (определение <; и s см. § 2). Бочее приемлемое решение стоящей перед нами проблемы обеспечивает применение неявного метода Адамса второго порядка точности: Уп — Уп-\ = ■j{fn. + fn-i)- Подставляя Ку вместо f, получаем Уа = Ц1/я-1, где ц = г-г-. При А ^ а + /р имеем '2 ' ' 2 2 + ^ + ,РА _ah__ ._РА 2 ' 2 Если а = Re Я, < О, то (■H-W+(fr<(-^)' + (f)' и поэтому |ц| < 1. Таким образом, применение этой схемы обеспечивает невозрастание компонент решения, соответствующих всем \ с НеЯ,<0 Приемлемая точность интегрирования первой компоненты обеспечится, если |Я.||А -С 1. Однако невозрастание второй компоненты еще не означает ее малости Справедливо равенство 1J.M 1 , 2 ■^2 ^ K^h И2 = - — М 2_ • '2 ^зЛ отсюда видно, что при Ха < О с ростом |Я,2|А величина |ц.2|, оставаясь меньше 1, начинает приближаться к 1, и поэтому затухание второй составляющей решения окажется медленным. Требование быстрого затухания этой составляющей решения наложит некоторое ограничение сверху на величину шага А, однако оно окажется более слабым, чем ограничение |Я2|А <^ 1. Для линейной системы с переменными коэффициентами аналогом последней схемы будут схемы второго порядка точности: Уп — Уп-\ А{'хп)Уп-\-А(хп-\)Уп-\ F ,=0, Уп — Уп-\ ./v . Уп + Уп-1 G) F , =0, где f , = о
510 ЧИСЛЕЛНЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ [ГЛ. VIII иногда целесообразнее брать п F ,=ф ,). или F =1 J f (х) dx.. При использовании обоих типов расчетных формул на каждом шаге требуется производить обращение матрицы, размерность которой равна размерности системы. Если размерность системы большая, то производятся дальнейшие усовершенствования метода с целью избежать обращения матриц на каждом шаге. Рассмотрим еще один способ решения задач подобного рода. Сначала обратимся к случаю системы у' = Ау, А = const. Для численного интегрирования этой системы можно восполы зоваться равенством y{Xn + h) = (^{h)y{x„), где ф(А) = ехр(ЛА). Матричная функция ф(Я) удовлетворяет соотношению ф(Я) = фD-)ф(^). (8) поэтому при ее вычислении поступают следующим образом. Задаются некоторым I, вычисляют матрицу ф [—j, а затем при помощи равенства (8) последовательно вычисляют матрицы ^(liZr) Ч>(|), Ф(А). Матрицу ф(—) можно заменить отрезком ее ряда Тейлора Заметим, что при «7 = s ^ 4 вычисление по формуле (9) равносильно интегрированию матричной системы уравнений У" = ЛК методом Рунге — Кутта порядка s при шаге А/2' и начальном условии У@) =£ — единичная матрица. Для малости погрешности в (9) при небольших s существенно выполнение условия \\A\\h|2^ <к. 1. Поэтому величина 2' в ряде случаев может оказаться довольно большой. Чтобы избежать нежелательного накопления вычислительной погрешности, введем в рассмотрение (по аналогии с § 9
§ И] ИНТЕГРИРОВАНИЕ СИСТЕМ УРАВНЕНИЯ 511 ГЛ. IV) матричную функцию t|)(ft) =ф(/г)—Е. Вычисляем 1=1 затем матрицы пользуясь рекуррентной формулой ^{Н)==^[-^)[2Е^^[Щ; затем находим ф(Я) = £ + г|)(Я). Рассмотрим теперь случай неоднородной системы у' = Ау-\-Ь, А, 6 = const. Разность и{х) = у{х) — у{Хп) удовлетворяет системе уравнений и' = Аи + с, где с = Ау{Хп) + Ь. Введем в рассмотрение матрицу я (й(Я)=|ехр(Л(Я-/))ЙЛ о Нетрудно проверить, что u{Xn + h) = (й(Л)с, а матрица (в(Я) удовлетворяет соотношению со(Я) = а.(-^^)BЯ + Лш(-^^)); A0) кроме того, о.{И)='^-1^А'-^Н\ 1=1 Поэтому вычисляем /=1 затем матрицы (й (-Jzr) <^{j)' '^(^) с помощью соотношения A0) и полагаем y{Xn + 'l)'^y (Af„) + (О (Л) (Ау (Af„) + 6).
512 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ [ГЛ VIII В случае систем общего вида, линейных или нелинейных, МОЖНО на каждом из отрезков [л:„, Xn+i] аппроксимировать рассматриваемую систему системой у' = Ау + Ь, А, 6 = const. § 12. Ряд общих вопросов Для начала вычислений по какой-либо конечно-разностной схеме порядка k > 1 необходимо иметь в распоряжении значения //о, •■., Ук-1 приближений к у{хо) y{Xh-i). Значение Уо задается начальным условием. При имеющейся в нашем распоряжении информации о численных методах проще всего применить для нахождения уи . . ., yh-t какой-либо из одношаго- вых методов типа Рунге — Кутта. Традиционно для нахождения значений yi yh-i принято применять несколько иные методы. Возьмем фиксированное q и произвольное / в пределах О < у ^ i/. В правой части равенства У (Xj) - У (ха) = \ у' (х) dx заменим у'(х) интерполяционным многочленом Лагранжа по узлам Ха, ..., л:,: 1 _ ,•=0 РФ1 ^ '' Ч г(х)=у' {хо, ...; Хд; х) Д (х — хр); получим равенство 1=0 где «;={.( х) dx. Величина \у'{хо; ...; Xq-, х)\ оценивается сверху через max ('7+1I
$ 12] РЯД ОБЩИХ ВОПРОСОВ glj производя в выражении R, замену переменной х = th и оценивая подынтегральную функцию по модулю, получим \Rl\<c, max |«/''+^WlA''+^ B) с _ I Р=0 '~} (<? + !)! о dt. За приближения к значениям у{х,) примем решение системы y/-i'o=''2'^/i/(*i. УО- C) 1=0 Вычтем A) из C); при этом воспользуемся тем, что разность / (Xi, У1) - у' (а:,) = / {xi, у,) - / (JC,, у {x^)) на основании формулы Лагранжа может быть записана в виде /irj, где У1 лежит между у^ к у (л:^). Получим равенство Q rj — ra = h^Ciihri — Ri. D) 1=0 Положим L= max I/у I, Q c = max ^\Сц \. Из D) следует неравенство |r/|<|/-ol + cZ.A max |г;| + |/?,|, E) 0<i<G откуда max I ri К I Го I + max \Ri\ + cLh max I г; |. 0</<i7 0</<<7 0<i<<7 Перенося последнее слагаемое в правую часть, Получим (\ — cLh) max | г; К | Го | + max \Ri\. 0<(<<7 0<i<G Предположим далее А на&только малым, что cLh < 1, тогда 1го|+ max \Rj\ max г, < ■ ,^ . 0<<<<7' ' ' \-cLh Если считать, что заданное значение уо точное, т. е. го = О, то отсюда следует оценка погрешности max I Г( I = О (А''+2). F) 0<(<17 17 Н. с. Бахвалов
514 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ [ГЛ. VIII В отдельных случаях эгу оценку удается уточнить. Например, если q четно, то узлы интерполяции расположены симметрично относительно точки Xq + -^ h— середины отрезка [ха, Xq]. Тогда, как мы видели в разделе численного интегрирования, погрешпост!) /?, квадратурной формулы У (*«) — У (ха) « Л 2 '^чкУ' (xk) fc=0 есть величина порядка 0(Л«+'). Подставляя эту оценку в правую часть E) при I = q а воспользовавшись F), получим г, = 0(Л«+'). Это обстоятельство используется в случае интегрирования по формулам Адамса, где наиболее важна точность значения yq с максимальным q: дело в гом, что в случае интегрирования по формуле Адамса k-то порядка вклад от погрешности начальных условий оказывается о(и,_,-у{*,_,)Ц-л2|У/-у(*/)|). в нелинейном Случае система уравнений C), как правило, не может быть разрешена относительно неизвестных yi у д. Для ее решения применяется метод простой итерации или метод типа G.1.8): yf+'-y, =h 2 c,j{x„ y^P+^) + h 2 CiJixi, y'P), Производные правых частей по переменным у) содержат множитель Л; в результате этого при h малых рассматриваемые итерационные процессы осуществляют сжатое отображение и поэтому процесс итераций сходится. Выбор начального приближения для итерационного процесса, числа q и числа,итераций часто объясняется не чисто математическими факторами, а обстоятельствами, связанными с объемом оперативной памяти машины, типичной величиной порядка систем, предъявляемых к решению, и рядом других причин. Остановимся подробнее на вопросе нахождения значений у„ на каждом шаге в случае употребления неявного метода Адамса. Обычно неявный метод Адамса k yn — yn-i-h'^b-if{xn-{,yn-i) = 0 G) (=0 используется в паре с явным методом Адамса yn—Dn-i — hJ^ b-tf (хп-{, Уп-i) = 0. (=1 Как видно из их построения, оба этих метода имеют порядок аппроксимации 0(А*+'). Применение неявных методов требует решения нелинейного уравнения или системы уравнений и, казалось бы, приводит к ненужным осложнениям по сравнению с явными методами. Однако неявные методы имеют несколько меньшее значение постоянного множителя в главном члене погрешности на шаге; в случае линейного уравнения ограничение на шаг типа A0.15), обеспечивающее при f» < О отсутствие корней уравнения G.3), по модулю больших 1, для неявных методов более слабое. Последнее обстоятельство, по-видимому, явилось наиболее важным фактором, определившим распространенность неясных методов.
5 12] РЯД ОБЩИХ ВОПРОСОВ 515 После получения значения уп-i определяется нулевое приближение к значению Уп'Л 4+1 y''n'^'Уn-^ + f^ll^-^f^'n-^,Уn-{)■, £—1 затем производится несколько итераций с помощью формулы jIT"" -^Vn-l + f^ S ft-ff K-f. Уп-t) + AV(% iC)- (8) i=l Производная правой части (8) по уп равна hbofy, поэтому иа каждом шаге итерационного процесса погрешность значений у^ по отношению к точному решению G) умножается на множитель порядка h. Мы не будем производить детального анализа изменения погрешности значений у^ вследствие его громоздкости. Оказывается, для того чтобы главный член погрешности был таким же, как в случае точного решения G) относительно неизвестной уп, достаточно ограничиться одной итерацией по формуле (8). Поскольку трудоемкость вычисления правей части обычно существенно больше трудоемкости остальных вспомогательных операций, то за оценку трудоемкости метода естественно принять число вычислений правой части. Если иа каждом шаге производить одну итерацию, а затем вычислять -значение f ух^, j^j, необходимое для последующих вычислений, то трудоемкость метода на шаге возрастет вдвое по сравнению с явным методом Адамса; чтобы избежать этого, можно каждый раз полагать При этом трудоемкость метода оказывается такой же, как у явного метода Адамса, а главный член погрешности такой же, как у неявного. Практически такое видоизменение неявного метода может приводить к возрастанию (по сравнению с неявным методом) величины шага, при которой сказывается влияние паразитических корней. Поэтому иногда может потребоваться дополнительное дробление шага по сравнению со случаем точного нахождения величины уп нз иеяЕНОго уравнения G). Исследователи, составляющие стандартные программы метоЬа Адамса, находят компромиссное решение между возможностью дополнительного дробления шага и увеличением числа итераций иа шаге «волевым образом» с учетом статистических свойств решаемых задач. - Иногда возникает задача численного интегрирования дифференциальных уравнений, где производная решения не выражена явно через само решение и аргумент; для определенности рассмотрим скалярный случай ■ F(x, у, //0 = 0. Если бы это уравнение удалось разрешить относительно у', то получилось бы некоторое уравнение у'= fix, У). Первый возможный путь решения задачи состоит в формальном применении методов Рунге — Кутта или конечно- разностных методов; при каждых х, у значение / определяется
516 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ [ГЛ VIII путем численного решения уравнения Fix, y,f)^0. Хорошее начальное приближение к искомому, значению / можно получить интерполяцией ранее найденных значений; поэтому число требуе^мых итераций (например, метода секущих) обычно оказывается небольшим. В случае неявных методов бывает целесообразно сразу решать систему уравнений Р{Хп, г/„, /„) = 0, k k S а-1Уп-1 — Л 2 b-ifn-i = О 1=0 i=0 относительно неизвестных i/„, fn- Иногда (довольно редко) удобно воспользоваться разложением решения в ряд Тейлора; дифференцируя исходное уравнение по X, получаем соотношения ■^{F{x,y,y')) = = FAx, у, y')-\-Fy{x, у, y')y'-\-Fy'{x, у, у')у" = 0, -^{F{x,y, у'))= ... = О и т. д. Если значение у'{хо) уже найдено, то из этих соотношений можно явным образом определить значения у" {хц), ... Первое из этих соотношений можно переписать в виде У" = g (х, у, у'). Отсюда получается третий путь решения задачи. Из уравнения F{xq, Уа, у'{хо)) = 0 определяется у'{хо), и далее численно интегрируется уравнение у" = g {х. У, у'). Коснемся вопроса о переменном шаге интегрирования. Мы исследовали конечно-разностные методы в предположении, что шаг интегрирования h = Хп—Хп-1 постоянен. Часто желательно производить интегрирование с переменным шагом. Например, стандартные программы интегрирования методом Адамса с автоматическим выбором шага устроены так, что время от времени, в зависимости от гладкости решения, 1цаг удваивается или дробится вдвое. Удвоение шага можно просто произвести, выбрасывая узлы интегрирования через один и принимая оставшиеся значения неизвестных за начальные. Однако^ обычно как укрупнение, так и дробление шага осуществляют с помощью формул интегрирования на неравномерной сетке. Эти формулы можно построить методом неопределенных коэффициентов, я некоторые из
^ 121 РЯД ОБЩИХ ВОПРОСОВ 517 них также и следующим способом. Пусть нам уже известны приближения i/n-i, ,.., (/п-А к значениям решения y{Xn-i) у(Кп^к); в равенстве У (хп) — У {xn-i) = J y'(x)dx заменим у'(,х) значением интерполяционного многочлена по узлам дСп-1 Хп-к- Таким образом, получим формулу k y(xn) — y{xn-i) « ^ b-i{xn, ..., xn-k) у' (xn-i). t=i Ей соответствует явная расчетная формула к Уп — Уп-\=' ^ b-i{xn, •••, Xn-k)tixn-i, Уп-i). 1=1 Если интерполирование осущестсляется по узлам Хп, ..., Хп-к, то получим неявную формулу k Уп — Уп-1 = 2 *-( (*я> • ■ ■• Хп-к) f (xn-t, Уп-t)- (=0 Обсудим еще один вопрос общего характера. При получении оценок погрешности всегда предполагалось выполненным очень жесткое условие: |/„| ^ Z, при Ха ^ X ^ Хо + X ч всех у. На самом деле, все полученные ранее оценки погрешности справедливы при достаточно малых h и 6h'^, если |/у| ^ i в ^-окрестности решения: Хо^х^Хо + X, I у — (/ (дг) К р, где р > 0. Если предположить, что |/у| ^ Z, при всех у, то мы получаем некоторую оценку погрешности, например (8.13), правая часть которой стремится к нулю при h и 6h'^-*■Q. Пусть значения h и fl/i"' настолько малы, что во всех точках отрезка интегрирования правая часть оценки погрешности не превосходит р. Тогда все точки уп, а, следовательно, и все промежуточные точки уп также лежат в ^-окрестности решения и при проведении оценки погрешности нигде не используется информация о значениях функции вне этой окрестности. Таким образом, при столь малых h и б/г' оценка погрешности (8.13) справедлива в предположении, что |/у| ^ L в ^-окрестности решения. Точно так же можно освободиться от ограничения: |/у| ^ L при всех у и в остальных случаях, например, при исследовании сходимости итерационного процесса в случае неявных формул. Аналогичным образом можно освободиться от условия ограниченности при всех у величин, входящих в выражение остаточного члена. Вернемся еще раз к вопросу интегрирования- уравнений и систем на больших промежутках времени. Для решения системы уравнений в вариациях 'Ч' = /«'П можно написать равенство П (хг) = ехр И fy (х, у (х)) dx\r\(xi).
518 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ [ГЛ. VIIE Для многих асимптотически устойчивых задач равномерно по xi, хг в преде^ лах хо ^ Xi < дсг ^ оо выполняется оценка lexpM /„(«, y(jc))d*j <5exp(-6(jC2-AC,)), 6 > 0. (9> Предположим, что в области II Jf — jf (ж) II < Р, Р > О, jco ^ ж < оо производные правой части системы, выражения которых входят в оценку остаточного члена, в частности f„, равномерно ограничены. Это условие выполнено- для многих задач, решения которых при больших х выходят на периодический/ или почти периодический режим. Для таких задач в случае интегрирования методами Рунге — Кутта или Адамса при достаточно малом постоянном шаге интегрирования А и малой величине бЛ"' выполняется оценка погрешности \Уп-у {хп) I < Bi (Л' + ЙЛ"") + BiR ехр (- 6 (jc„ - *„)); A0> здесь S — порядок аппроксимации, R — оценка погрешности начальных условий, й — максимум норм погрешностей й„, с которыми удовлетворяются сеточные уравнения D.1), 6 > О, 6, В\, Вг не зависят от jc„. По отношению к методу Рунге — Кутта в случае одного уравнения мы получили ранее такую оценку D.11). На примере интегрирования методом Рунге — Кутта порядка s линейного» уравнения у' = До (*) у+01 (х) аккуратно покажем, почему во всех подобных оценках несущественно поведение правой части вдали от решения. В этом случае /у = До(*) и условие (9) приобретает вид expl J flo(jc)djc |<Вехр(—6(JC2 —JC,)), 6 > 0. A1> Кроме того, предполагаем, что max sup I д'" (jc) I < Л < оо. 0</<s. р=^о, 1 >;о<л<оо' '^ При условии A1), согласно D.6), имеем п . I /?„ I < 2 в ехр (- 6 (п - у) Л) I ш/1 + в ехр (- bnh) \Ro\< В ^ 1 -ехр(—6Л) о</^л Далее, из соотношения max |©/|-f B|i?o|exp(—6rtA). A2> y{x)=-y (xo) exp ( J До (x) d« 1 + J b(t) exp j J д» (т) dx j dt H неравенства A1) следует равномерная ограниченность |у(ж)|<У пр»
<i 131 ИНТЕГРИРОВАНИЕ УРАВНЕНИИ ВТОРОГО ПОРЯДКА 519 Фиксируем некоторое Р > 0; покажем, что при Л < Ло (Р), — < Y (р), ;|'?оК/?(Р). Л(Р), y(P), i?(P)>0 все значения уп лежат в области \у„ —У(*п)| ^ Р и выполнена требуемая оценка погрешности. Произведем сначала оценку погрешности в предположении, что 1Уп—у(Кп)\ ^Р при всех п. Тогда \уп\ К, У + & при всех п; пользуясь равномерной ограниченностью уп и производных ар (х) заключаем, что все •погрешности на шаге P/+,=y/+,-J//(^/+,) удовлетворяют неравенству |P/+ll<fl'(P)A^+'. Тогда |ш^|<В'(р)Л*+Чб «ри всех / и из A2) следует оценка I ^" I < 1 - expV bh) ^^' <^^ ^''"^' + Д) + ДI ^01 ехр (- bnh). A3) На основании A3) получаем равномерную по п оценку \^'^\<T^~J:rщ{в'Ф)^^' + J) + в\R.\. (Н) Множитель ■ _^ /•— hh^ ' монотонно убывая, стремится к пределу -г- >0 лри Л, стремящемся к нулю. Поэтому можно указать Л(Р), \(Р), /?(Р) >0 такие, что правая часть последнего неравенства не превосходит р при Л<А(Р). y<Y(P). 1«о1<«(Р). A5) Лемма. При условии A5) для всех п выполнена оценка A3). Доказательство проводим индукцией по п. При « = 0 доказываемое утверждение очевидно вследствие самого выбора величин Л(Р), у(Р)> J?(P). Пусть оценка A3) выполнена при всех п ^ Ло. Тогда |уу — y{Xj) \ ^ Р при / ^ «о; согласно проводившимся выше построениям, получаем, что тогда |р,| ^ В'(Р)Л*+' при /^«0+1. Отсюда и из A2) вытекает, что оценка A3) выполнена и при я = по + 1. Лемма доказана. В рассматриваемом примере Уп равномерно ограничены, значения аа(дСп) « ai(xn) также равномерно ограничены; отсюда след)кт, что погрешности ■округления бп равномерно ограничены и, таким образом, все проводимые выше оценки имеют реальный смысл. i § 13. Формулы численного интегрирования уравнений второго порядка Введением новых неизвестных функций дифференциальные уравнения порядка выше первого и их системы сводятся к ■системам уравнений первого порядка. Таким образом, прифор- ллальном подходе вопрос о численном решении задачи Коши
520 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ [ГЛ VHP ДЛЯ уравнений высших порядков можно было бы считать исчерпанным. Однако методы, приспособленные специально для решения уравнений высших порядков, часто более эффективны. При разработке таких методов нужно также иметь в виду широкое распространение систем уравнений высоких порядков специального вида, учет специфики которых может еще более по* высить эффективность методов. Например, большинство задач яебесной механики сводится к интегрированию систем уравнений r = fiy)- Рассмотрим несколько более широкий класс уравнений У" = fix, у). Как обычно, рассуждения проводятся для одного уравнения, поскольку перенос результатов на случай системы осуществляется автоматически. Наиболее распространенными методам» интегрирования таких уравнений являются методы Штермераг явный k yn+i—^yn-\-yn-\=h^Hib-ifiXn-{, уп-t) A> и неявный к Уп+1 — 2Уп + Уп-\ =h^ "^ b-ifixn-t, Уп-t)- B> Эти методы можно было бы получить методом неопределенных коэффициентов, потребовав, чтобы разность Р 2и '^ \Xn-l) была величиной как можно более высокого порядка по А. Здесь, как обычно, предполагается aTj+i — Xj^h. Укажем явный способ получения таких формул. В выражение У (хп+0 — 2у {хп) + У (xn-t) подставим разложение у(х) в ряд Тейлора в точке jc„ с остаточным членом в интегральной форме, выраженным через вторую производную: X у(х) = у (хп) + у' (Хп) (х -хп)+ I (х- i) у" (t) dt;
4 131 ИНТЕГРИРОВАНИЕ УРАВНЕНИИ ВТОРОГО ПОРЯДКА 521 шолучим равенство "n-i TJ при Хл <X<Xrt + I, I X — Xft — i ^ дг при Xn-i<x^xn- Заменим в правой части у" {х) интерполяционным многочленом Ньютона < узлами интерполяции х^ *л-й' h h^kl ... (x — Xn-k + \) + y"{xn, ...; Xn-k; x){x — Xn) ... (x — Xn-k)- После осуществления интегрирования имеем соотношения k У (Xn+l) - 2у (Кп) + у (Xn-i) _ V ft РР,," /V \ -U г* р=0 тде 1 #Р = ^1 I С-')' ... (/ + (p-l))rf/ + "'хо -1 + J (-1-0' ... (' + (P-i))rf' C) г*= J G{x)y"{xn;...;xn-k;x){x—Xn)...{x — Xn-k) dx. В выражении остаточного члена вынесем из-под знака интеграла значе- «ие у" (хп, • • •; Xn-k\ х) в промежуточной точке. В результате получим равенство ■после замены у"{хп\ ...'; Xn-k', х) на значение . ,. н<"+^> (хп), согласно (к + 1I выражению B.5.4), разделенной разности через производную имеем Можно непосредственно проверить, что /■■,!>, = Pft-t-i. где Pfc+i определи + 1I ляется равенством C) при p = k+l. Приведем другой вывод равенства
522 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ [ГЛ Vllt = Pfc+i; имеем Pfc+i (ft+1I ft+i уЫ + ,)-2у(хп) + у(Хп-,) _ ^ p^^p^ (^^) ^ 0 (/,fc+2)_ P=0 Отсюда и из D) следует равенство ^ «/<*+^' (^«) Л*+' = Pft+iV'+V" (*«) + О (А*+2); (ft+ 1)!' поделив обе части на (/'*''■''(in) Л*"*" и перейдя к пределу при Л-» О, счи- ОГП)Г~^*+' тая дгл = const, получим В итоге получено равенство yU,^,)-2yUn) + y(xn-^) _ ^ Зр ^V(*«) + Р*+,«/<*+^' (хп) Л*+' р=0 * н соответствующая расчетная формула k г/п + ]-2(/п+Уп-| = Л' 2 М"^"' fm = fixm,ym)- р=0 Если заменить (/"-(дг) интерполяционным многочленом по узлам jcn+i, ••■ ..,, jt„_j+i, получим равенство k — У {хп+д — ^У (д:я) + у (xn-i) =0 где 1 = -^(J(l-0('-l)' ...(/ +(р-2)) Л + ,+ | (-1-ОС-!)<...(<+ (Р-2)) d/L и соответствующую интерполяционную расчетную формулу ft «/«+1 - 2i/„ + i/„-, = Л= 21 Vp^/пф,. E> р=0 Для информации укажем значения д , _ _1_ 1 19 _3_ (Рр} 1. О, 12, -jj. 240' 40 ,1 1 1 (Yp}=l, -I, -j^, О --240-. -"ЙО"' ■•• Иногда построенные выше методы называют методами Адамса — Штермера^
Ч HI ОЦЕНКА ПОГРЕШНОСТИ РЕШЕНИЯ ЗАДАЧИ КОШИ 523 Для целей численного интегрирования уравнения y" = f(x,y.y') употребительным является следующий метод: значения i/„ и 2„ приближений к у{Хп) и у'{Хп) вычисляются из рекуррентных «соотношений — явных — вида I 2„+1 = г„ + А2 at^in, t yn+i = yn + hJ!i bi,V''zn ft=0 +1 или неявных вида Zn+i=z„ + A 2 CaVY ft—о n+l« Уравнения более высокого порядка, чем второй, обычно сводят к систе- тмам уравнений второго или первого порядка. § 14. Оценка погрешности численного решения задачи Коши для уравнения второго порядка Как'в случае конечно-разностных схем для уравнений первого порядка отбросим в A3.1) и A3.2) слагаемые, содержащие значения /, и рассмотрим получившееся разностное уравнение. В обоих случаях оно имеет вид Уп+1—2уп-\-Уп-1 = 0. Его характеристическое уравнение имеет кратный корень |1= 1- Не нужно пугаться того, что корень оказался кратным: •если в разностных схемах, аппроксимирующих уравнения первого порядка, перед значениями f стоял коэффициент порядка Л, то здесь стоит коэффициент порядка h^. Все рассматривавшиеся ранее разностные схемы ннтегриро- -вания уравнения y" = f{x,y) могут быть представлены в виде k к ^■^=^-^blj{Xn.„y,.d = 0, ао¥=0. (I) t=0 1=0 Пусть г„ — погрешность аппроксимации (результат подстановки в левую часть решения дифференциальной задачи): rn=j;, ""/.^"^ -t^-ji^n-i.'yi^n-j) г=о 1=0 B)
524 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ {ГЛ VHP И lAnl^^o^'" равномерно на всем рассматриваемом отрезке интегрирования [хо, хо + Х]. Как обычно, вследствие округлений при вычислениях и неточности решения уравнения относительно неизвестной Уп в случае неявной схемы Fо =^ 0) реально получаемое приближенное решение у„ удовлетворяет A) с некоторой погрешностью. Таким образом, имеем к к 2 а-1Уп-1 — /2^ 2 6_,-/ {Хп-1, Уп-д = б„. 1=0 (=0 Перепишем B) в виде к к 2 a.iy (xn-i) — Л^ 2 6_,/ (д;„_г, у (Xn-i)) = li^rn, 1=0 1=0 вычитая это соотношение из предыдущего, получим уравнение для погрешности Rn = Уп — У(Хп)- к к 2 a-iRn-i -h^lt b_tl^_iRn_i = g^, C> 1=0 1=0 где gn = f>n — ЛЧ. // = fy (X,; У/). Пусть L= sup \fyix, y}\<oo. Теорема. Пусть все корни характеристического уравнения разностной схемы 1=0 лежат в единичном круге и на границе круга нет кратных корней, за исключением двукратного корня, равного 1. Тогда при J^o ^ -'^п ^ -'^о + ^ решение уравнения C) удовлетворяет неравенству rn..(\RЛ\^^^^i^\)< ■..C(L,X)l-^y\g,\-b max |^?;|+ max '^'~^' If?,.' 0</<ft 0</< , • ' \ /г 1=к Доказательство. Положим Rj — Rj-\ = hZy Согласна условию леммы, характеристическое уравнение D) имеет ко*- рень (i = 1, и поэтому левая часть его записывается в виде B/-m*-'-')(f^-l). где d,= «0.
i HI ОЦЕНКА ПОГРЕШНОСТИ РЕШЕНИЯ ЗАДАЧИ КОШИ 525 Пусть Е, как и ранее, оператор сдвига: Eyj = j/j+i. Имеем цепочку равенств к k 2 a-iR„.i= 2 a_i£*-4-ft == i=0 (=0 \I=Q В итоге получаем = Brf-i£*~'-')(£-l)i?„_ft=2rf-i£*"'-'/i2„_ft+,; г=о А ft-1 2 a-iRn-i = Л 2 d-iZn-i. Тогда соотношение C) можно переписать в виде ft-i ft 2 d_iZn-i — Л 2 Ь-iln-iRn-i = gn/i~'. 1=0 1=0 Перенесем все слагаемые, кроме daZn, в правую часть и разделим равенство на do ф 0; получим -«=2;'(-тг)^-'+''Ё(тг)'-'''-'+-&- <«» i=l 1=0 Введем в рассмотрение векторы U„-ft+,; \2n-k+J v«^„ Соотношения У?„ = Rn~i + /г-г„ и F) запишем в эквивалентно?! матричной форме Vn = Avn-i-bhDnVn-bhBnVn-i + qn; G) матрицы и вектор qn разбиты на клетки, соответствующие векторам м„ и Wn- I > ^п ■ ^21 ^22 в« в,, В,2' ^21 ^22 , Яп Ап = 10 0 0. 10 0 0. 0 10 0. 0 0 10. 0 0 0 0. . 0 0 . 0 0 . 0 0 . 0 0 ■ 1 0
526 ЧИСЛЕННЫЕ МЕТвДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ [ГЛ. Vllt Лоо — ^1-4 do 1 О О 0 0 0 1 о о о 1 о do о о о do о о о D,o = о 1 о о 0 0 0 0 0 0 0 0 0 ... о ... о ... о В2".=| 0-0 о do о 04, = boU do 0 0 0 0 0 0 0 0 b-kln-k do 0 0 0 0 44 = 0 0 Матрицы Ai2, Л21, Du, D22, Вц, Bi2, B22 и векторы ^^ —нуле- /Л,, О \ вые. Матрица Л имеет клеточную диагональную форму ( I. Матрица Лц имеет следующее характеристическое уравнение: (ц— 1)ц''~' = 0; матрица Л22 имеет тот же вид, что и матрица i4 в § 8, причем уравнение 4-1 (=0 удовлетворяет требованиям, наложенным на уравнение к .*-'=0, соответствующее матрице Л в § 8. Из вышесказанного следует, что матрица Л обладает следующим^ свойством: среди корней ее характеристического уравнения нет корней по модулю, болы ших 1, и корням, по модулю равным 1, соответствуют жорда- новы ящики размерности 1. Перенесем в левую часть G) выражение hDnVn и умножим получившееся уравнение слева на (Е — /jD„)~*; получим равенство Vn = {E- hD„)-' (Л + ЛВ„) г»„_, + (£ - Л/)„)"' ?„;
$ Н] ОЦЕНКА ПОГРЕШНОСТИ РЕШЕНИЯ ЗАДАЧИ КОШИ .527 его можно записать в виде Vn = Av^-x + h{E- hD^)-' {DnA + B„) v„-, + (£ - ADJ"' i/„. (8) Соотношение (8) имеет вид, аналогичный (8.7); матрица А удовлетворяет условиям, требуемым в § 8; если boLh \<Y' ™ \\hDJi = boLh <1 I do И, согласно F.5.7), имеем ||(£-/iDJ-4,<2. Отсюда следуют неравенства l(£-/iD„)-'(D„^ + B«)||i<Yi^-. \\{E-hDnr'gnb<nqn\\i. Таким образом, (8) удовлетворяет' тем же условиям, что и (8.7). Подобно тому как из (8.7) было получено (8.12), имеем II VnWi <|| с ||,exp(Y,Z.X) р, S II41 111 + IIС-' 1,11 v,-i Р, V /=fc Поскольку ||pJ|,>max(|j?J.|^"-/"- I), llvft_, II, = max{ max |/?/|, max ' h '^^ )• \0</<ft 0</<ftl " / TO отсюда следует справедливость утверждения теоремы. Воспользовавшись оценкой I получим п 5] I g, К И maxI б, 1+ Со«Л'"+' <4 "^^^' *'' + ^о^'^'"^' • /=* ' ' ' Оценивая теперь правую часть E), имее.м оценку погрешноспт max(|J?J. '^"•"/"-1)< ^C{L, Х)(^, тах| б, \-\-CoXh'"+ max | /?/1+ max ^IZpZi \. (9)
528 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ [ГЛ. V1H В случае уравнения у' = My мы установили, что среди корней уравнения k 2 (а-,-МА6_,)ц*~' = 0 1=0 есть корень ц = ехр (МЛ) + 0((МА)""+'), если эта схема аппроксимирует дифференциальное уравнение с погрешностью аппроксимации 0(Л"') Для уравнения у" = My разностное уравнение A) приобретает вид k '^{а-,-МИЧ.,)уп-, = 0. 1=0 Аналогично, если схема (I) аппроксимирует дифференциальное уравнение y" = f{x,y) с погрешностью 0(А'"), можно показать, что среди корней уравнения г=о обязательно есть два корня ц,, 2 = ехр (± VO? л) + О ({[^М лГ+'). § 15. Двусторонние методы Целью применения двусторонних методов является получение численным путем границ области, в которой находится точное решение задачи. Рассмотрим ряд примеров двусторонних методов, для простоты изложения пренебрегая вопросом о влиянии вычислительной погрешности. Пусть заданы хо<...<Жп, значения /(Хо), ..., Цхп), и пусть известно, что на [жо, Хп] производная /'"'(-"О "^ меняет знака. Поставим задачу получения интервала, которому принадлежит значение f(x), хе(ха,Хп). Положим »о=^о п-Л-^). ^1=^1 г.(-^). С) где f.ft_ ... „_i+ft(jc), k = О, 1, — интерполяционный многочлен степени п—1 с узлами интерполяции ж», ..., Xn-^+l^. Имеем B.3.1) представление остаточного члена f{x)-A,^ ^'"'j^°^ (х-хо) ... (х-хп-,). f{x)-A,=: ^'"j^'> (х-х.) ... (*-*„). Множители X — хо и х — х„ имеют различные знаки; отсюда следует, что величины f{x) —Ао и /(ж) —Ai имеют различные знаки (если ни одна из них не обращается в 0). Поэтому f(x) лежит между Аа и А,, иначе, min (Ло, y4,Xf (л:Хтах(Ло, Л,). Рассмотрим задачу вычисления интеграла /(П= \l(x)dx.
§ 151 ДВУСТОРОННИЕ МЕТОДЫ 529 представим его в виде -7=1 Д, ДЛЯ вычисления интегралов Iq{f) применим формулы трапеций и прямоугольников: в § 1 гл. III были получены выражения погрешности: /,{Л-',Ш=--|2ЖГ(^^ B) /,(П-р,(П=-245йгГК). Рассмотрим сначала случай, когда /"(ж) не меняет знак, для определенности f"{x) ^ 0. Тогда из B) имеем Pgif)<Igif)<t,(f), после гуммирования по q получим %{f)</{n< 7-^,@. где м м G=1 G=1 В случае, когда /"(*) меняет знак на [О, 1], возможны различные подходы к получению двусторонних оценок значения интеграла. Первый из подходов, обладаюший меньшей надежностью, заключается в следующем. После суммирования B) по q получаем равенства' , C) /(/) = %(/) +^4Л?^5;,; здесь м 1 ^^=-fS^"K> *=«••• Рассмотрим случай, «огла третья производная f"'{x) ограничена по модулю: |/"'(ж) I ^ В < оо. Предоставляем читателю самому убедиться
530 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОП1И ГГЛ Vtl! В справедливости соотношении I о Рассмотрим для определенности случай 1 А= jf"{x}dx>0. Тогда ft = 0, 1. D) <T^{f)--r^El<TM(f) + M^i' I2M2 "'"■^''Ичл- 24д^з точно так же 1 Hf) = PMm + i^{jf"('c)dx + B'^]>Pj^(f). ^ м^1>^ 24М2 I J ' ^*^"*-гел< I'^'^^V/— 48МЗ • В совокупности получаем опенку %(^^-W<^(^)<^Af(n + -2^. E) Оценка E) непригодна для практического использования, так как численным путем могут быть определены только величины Pu{f) и ТмЦ). Если шаг интегрирования настолько мал, что В1BМ) ^ А, то, согласно D), sign S% -=. sign S\t -= sign A. Тогда из C) следует уже эффективная оценка Pj^ifXnfXT^if). При Л < О, соответственно, имеекл TM{f)<I(f)<Pj^,(f). Объединяя эти неравенства, получаем mln (Р^ (/), Г^ if)) ^Hf)< max (Р„ {f), Г^ (/)) F) при любом знаке А, если только при практическом использовании двусторонних оценок считают, что оценка F) справедлива при всех М, хотя, например, при А г= О для этого нет Никаких оснований. Другая, более осторожная стратегия имеет формальные основания для применения и в случае Л = 0. Рассмотрим те отрезки д„ где /"(*) сохра-
S 151 ДВУСТОРОННИЕ МЕТОДЫ 531 няет знак. При f"(x) > О из B) следует, что F'=»min !/"(*) I. Fl^max\f"{x)i здесь и далее \ Точно так же при /" {х) ^ О имеем /, ш >'.(» +-шж <• Из этих соотношений вытекает, что при любом постоянном на Д^ знаке /* (л:) где s'(f) = min(p^(a<,(n). 52@ = тах(р^Ш, <,(П)- Пусть f"{x) меняет знак в некоторой точке ж, отрезка Д,. Для таких отрезков из B) выведем оценку 4Ш—i^</,(/)<s^+-i^. (8) Суммирование по отрезкам, где f"(x) сохраняет знак, обозначаем S', а суммирование по остальным отрезкам обозначаем 2 . Суммируя G), (8) по всем q, получаем где м '7=1 1 . ^'г Fl ^ 2^ 24М» ''i 2j 12М=' я <7 Задача. Доказать неравенство 1 1 £> 24М2 Q Jirwux-,6^^
Б32 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ [ГЛ Vllf Напомним, что в 2 о входят слагаемые, соответствующие отрезкам, где f"{x) меняет знак; поэтому в таких слагаемых F =о1-гг-\. Обычно точек перемены знака производной немного, и поэтому уже при небольших М окажется £ ^ 0. Тогда можно написать оценку S'mUX'UXSIQ). (9) Справедливы очевидные неравенства м S!n(/)=2™n(p.(n. tJI))< I М MS аналогично п1ах(Ял,(/), -ГмЩ<5\{\). Следовательно, неравенство (9) задает более широкие пределы изменения /(/). Естественно, что оно выполняется при более слабых ограничениях на величину шага. Рассмотрим менее подробно вопрос о двусторонних методах решения задачн Коши для дифференциального уравнения y' = f(x,y), у{хо) = уо. Ищется значение у(хо-{-Х). Возьмем произвольное целое m и два метода Адамса т-го порядка точности: явный т ;=0 И неявный m 1=0 Оказывается, что главные члены погрешности аппроксимации этих методов противоположны по знаку, так как Vm+iYm+i < 0. Применяя эти оба метода для решений одной и той же задачи Коши, получим два приближения у/^н у/^ к значению решения у(хо-\-Х). При условиях применимости теоремы о главном члене погрешности (§ 9 гл. VHl) имеем U)= J ^;('«+1)(/)ехр J /у (т, г/(т)) dT d A0) . Отсюда заключаем, что при г(Х) =5^ О и достаточно малых А \)\-У{^й-^^) и У\-У (^0 + ^)
$ 15] ДВУСТОРОННИЕ МЕТОДЫ 533 имеют противоположные знаки, и следовательно, min (i/Jy, yli) ^у{Хо + Х)^ max {y^j^, yl). A1) Такая стратегия получения границ для у{Хе-{-Х) равносильна первой, более рискованной стратегии оценки границ для /(/). Однако к применению неравенства A1) следует относиться с большей осторожностью, чем к применению неравенства F), так как в случае дифференциальных уравнений член высшего порядка в A0) часто становится меньше главного члена лишь при очень малых шагах. Практически рационального варианта второй, осторожной, стратегии получения границ решения с помошью применения методов Адамса неизвестно. Однако такую стратегию можно предложить iro отношению к методам Рунге — Кутта; для определенности рассмотрим случай методов второго порядка точности. Дело осложняется тем, что главные члены погрешности на шаге у методов Рунге—Кутта одинакового порядка точности не обязательно пропорциональны, и поэтому приходится прилагать специальные усилия для построения методов с пропорциональными и противоположными по знаку главными членами погрешности на шаге. Требуемая пара методов- в обоих случаях вычисляются kt=hf(x, у), k2 = hfix + -^h, у + -^ kX далее в случае первого метода и y(x + h)^y^'^^y(x) + k^^\ в случае второго метода и y{x+h)^y^^)=y{x) + -^k, + ^kf\ Погрешность на шаге первого метод^а (см. § 2 гл. VIII) <f{h) = y(x + h) — у<П ^Ah^ + 0 (h% второго — <f(h) = y(x + h)- I/<^) = -Ah^JrO (h% где Получение двусторонней оценки по более осторожной стратегии осуш,ест- вляется следующим образом. В процессе интегрирования на каждом шаге вычисляются две величины i/^ и у^, границы для решения, j/„<i/„; прини- мается, что Уо=уц = у(х^у Исходя из i/J,, делается шаг по обоим методам и наименьшее из получившихся значений yl^li и yl^Ii принимается за i/„+i. Соответственно, делается шаг по обоим методам, исходя из значений у^, и наибольшее из получившихся значений i/^'+'p y^^i принимается за y^+i-
S34 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОШИ (ГЛ. VIll В тех, практически крайне редких случаях, когда при некотором п случайно окажется y„>y„i по-видимому, следует считать, что этот метод получения двусторонней оценки неприменим. Так как точки у^ и у^ расположены довольно близко, то значение А, соответствующие этим точкам, близки,* и там, где А Ф О, обычно A2) 2 2. 2 I 11 S^+i=»„+i. если у„+1 = »„+1 У^+\=Уп+и если yUi=yn+f Отметим следующее обстоятельство. Так как рассматриваемые методы второго порядка точности, то Уп~У(*«) f* Уп~У(*п)~ величины порядка h*. Однако вследствие того, что главные члены погрешности на шаге у рассматриваемых методов равны по абсолютной величине и противоположны по знаку, оказывается, что Уп + у1 Уп S = О (h'). Применение двусторонних методов предоставляет некоторые удобства в смысле получения возможности с большей надежностью судить о границах изменения решения задачи. В то же время оно приводит к усложнению алгоритма и, соответственно, yвeJtичeнию объема вычислений. При численном построении двусторонних оценок описанными способами достоверность получаемых границ может нарушиться из-за наличия вычислительной погрешности при реальных вычислениях. Учет влияния этой погрешности приводит к дополнительному усложнению алгоритмов получения двусторонних оценок. Поэтому на практике эти алгоритмы применяются очень редко. Дополнительная литература к главе VIII I [1,4,5, 13], И [2,3,46]; §§ 1-3: П1[54,58]; § 4: III[9,49]; §§ 5,6: П1 [57, 59]; § 7: II [1], III [7, 55], § 8: I [1], III [32]; § 9: II [39], III [6, 15, 48]; § 10: I [13], III [6, 15]; § II: III [17, 37, 40*), 56, 60, 62], § 12: I [7], III [6,18,56]; -§ 14: II [46]; § 15: III [16, 22,41]. *) См также Ракитский Ю. В «Новые численные методы решения систем обыкновенных дифференциальных и разностных уравнений», Труды Л ПИ, 332 A973), 88—97.
Глава IX ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ ДЛЯ ОБЫКНОВЕННЫХ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ При решении краевых задач возникают дополнительные трудности по сравнению со случаем решения задачи Коши: значительно сложнее исследуется вопрос о существовании решения; после написания сеточной задачи возникает система линейных или нелинейных уравнений, проблема решения которой требует дополнительного изучения. § 1. Простейшие методы решения краевой задачи для уравнения второго порядка Среди краевых задач для обыкновенных дифференциальных уравнений существенную часть составляют задачи для уравнений и систем второго порядка. В частности, такие задачи возникают в баллистике, теории упругости и т. д. Начнем изучение вопроса с одной частной, но довольно распространенной краевой задачи. Ищется решение уравнения Ly = y"-p{x)y = f{x) на (О, X) (I) при граничных условиях у{0) = а, у{Х) = Ь. , B) Зададимся шагом h ^ XN-^, N — целое; точки дc^ = jh примем за узлы сетки; как обычно, У] — приближения к значениям y{Xj). После замены производной y"{Xj) на разностное отношение Д'у/ _ У/+1 — 2у/ + У/-1 А2 ~ А2 получаем систему уравнений /(y^)=-^i ^j '- Piyj = fh / = 1 Л/-I; C)
536 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX здесь pj = p(jCj), fj=:f{x,); граничные условия заменим соотношениями Уо = а. У^=Ь. D) Покажем, что при р(л;)^0 система уравнений C), D) имеет решение, и дадим оценку погрешности. Лемма 1. Пусть р(х)^0, /Bj)^0, 2о, Zjv ^ 0. Тогда 2j ^ О при всех }. Доказательство. Обозначим min 2/ через d. Предпо- ложим, что d <С о и, следовательно, d ф 2о, 2jv. Пусть q — наименьшее целое, такое, что 2, = d\ из определения d и q имеем Zq-i > d, Zq+i ^ d. Тогда I B,) = ^5 PqZq > ^5 > 0, И мы приходим к противоречию с предположением d <С 0. Лемма 2. Если р{х) ^0, то для любой функции Z) выполняется неравенство max I Z, К max (|2о I, I 2дг I) + Z-Д-. o</</v ° где Z= max I l{zi) \. 0<l<N Доказательство. Введем в рассмотрение функцию «,, = |2ol(l -|) + ujA + ^^^^^f^- Для многочлена второй степени величина -тг совпадает со второй производной; поэтому .;' = — Z. Так как из определения И); следует, что Wj ^ О, то I (wi) = -^ - p,wi < - Z, / (и), + Z/X — Z ± / (z/) < 0. Очевидно, Функции Wj±.Zj удовлетворяют условиям леммы 1, и поэтому ffi)/±z;>0. Отсюда следует оценка IZiKltw/K max |ш/|. Имеем неравенства \z,\(\ -^) + \z,\^^max(\z,\, | гд, |)(| 1 --|-1 + | Х |) = = max(|Zol, |Zд,|),
S и КРАЕВАЯ ЗАДАЧА ДЛЯ УРАВНЕНИЯ ВТОРОГО ПОРЯДКА 537 Поэтому max |м), Kmax(|2ol, |2^|) + Z-^. Лемма 2 доказана. Из утверждения леммы следует, что однородная система, соответствующая C), D), имеет только нулевое решение. Так как число уравнений в C), D) равно числу неизвестных, то неоднородная система C), D) имеет и притом единственное решение. Пусть Г} — погрешность аппроксимации, соответствующая конечно-разностной схеме C): ri = l{y(xi))-fi = _ ,(»,.,)-M-,) + »W-.) _^„,)^,,,)_„,д E) Поскольку р (х) у (х) + f (х) = у" (х), то Из оценок погрешности формул численного дифференцирования имеем Г1 = 7^ , где x,_^^x,^X|+^. F) Вследствие различных округлений получаемые в процессе вычислений приближения j/j к значениям у{Х]) удовлетворяют системе C), D) с некоторыми погрешностями l(yi)-fl = bi. G) Вычитая E) из G), получим уравнение /(/?,) = 6/-г, относительно ошибки приближенного решения Rj = yj — y{Xj). Воспользуемся леммой 2; получим t/?, Ктах(|/?о1, I /?jvl) + -x-( "lax |r, |+ max |6,1). Согласно оценке F), имеем '^ [О.Х] Таким образом, окончательная оценка погрешности max |/?/|<тах(|/?о|, |/?^ |) +-^П^+ ( щах \bi\)~. 0</</V ™ 0</<Лг' °
538 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ (ГД IX Мы ВИДИМ, что при повышении точности, с которой удовлетворяются граничные условия и разностное уравнение, при одновременном стремлении шага к нулю решение сеточной задачи сближается с решением дифференциальной. Описанный метод дает приближенное решение, сходящееся к точному со скоростью 0(Л2). Займемся построением более точных схем. Будем предполагать, что р{х) и f(x) непрерывно дифференцируемы 4 раза; тогда 'решение задачи непрерывно дифференцируемо 6 раз. Еще раз рассмотрим величину y(^/+i)-2y(M + y(*/-i) „, . ri = р У (Xf), разлагая все величины в ряд Тейлора в точке Xj, получим г, ^111^+о т. т Вычтем из 1{у{х,)) некоторое слагаемое, аппроксимирующее ве- личину -г——; получаемой схеме соответствует погрешность аппроксимации более высокого порядка. Например, можно приблизить tj^^^'>{x,) вели^чиной Ь*у {Xf) у (x^^2) - ^У (*/+i) + 6у [х,) - 4у {х,_{) + у (х,_2)'' получится конечно-разностная схема А2 12А2 Piyt = ft- (9) Эту схему можно также получить, иепосредственио заменив производную y"{Xj) выражением h-^{8'^y{x,) — {l/\2)8*y{Xj)), приближающим ее с погрешностью 0{h^). Уравнение (9) содержит 5 неизвестных у} с "ненулевыми коэффициентами; решение системы, состоящей из уравнений (9) и уравнений, получающихся при аппроксимации граничных условий, более трудоемко, чем решение системы C). Исходя из других соображений, построим конечно-разностную схему с погрешностью аппроксимации 0{h*) такую, что в каждое уравнение входит только три неизвестных. Дифференцируя дважды исходное уравнение, имеем у''^Нх)^={р{х)у+ f)". Поэтому 6Чру + П\х, У^'Нх,) р '- = _ {Р1+1У (^/+i) + //+i) - 2 [р,у (x^) + fj) + {р,_1у (Xi_i) + r,_i) ~ h' , ' Вычитая из исходной схемы приближение для г/<*)А2/12, получим
5 1] КРАЕВАЯ ЗАДАЧА ДЛЯ УРАВНЕНИЯ ВТОРОГО ПОРЯДКА 539 схему -ф — р/у, - -jj 6^ {р,У1 + ft) = // или В предположении, что решение непрерывно''дифференцируемо 8 past рассмотрим погрешность а-ппроксимацни новой схемы ''/'' = '*''(У(*/)) ~ — /<''(//)' учитывая, что Р/У («/) + // = У" («/)• Получим гУ> = /<» (у (*,)) - Г» (/,) =-^^ - У" (X,) - -L ь^у" (^.). После разложения всех величин в ряд Тейлора по степеням h в точке Х} имеем равенство ... у'в) ,^s ^4 ^/ °- 240 +^<^°)- Построим приближение величины j/<'>'(*j) посредством значений y{xj-i), y(Xi), y(X]+i). Таких приближений можно написать очень много, например, следующим образом. Согласно уравнению A), y" = w + /. y"''=ipy + f)', у<^) = (ру + /)". j/«> = (РУ + П"» = РУ'"' + 4/у<^' + б/'у" + 4p«V' + Р'\ + /'">; поэтому справедливо приближенное равенство ^P/+iy(^V+i) + ^/+i)-(P/-iy(^/-i) + //-i) ■ + 6Р" (-,) (P,y (-,) + f,) + 4P<') (^/) ^(^^^'^-^Z^^/-') + Прибавляя к I4yj) выражение, приближающее ~— , получим конечно-разностную схему с погрешностью аппроксимации О (ft"); при этом 6 каждое уравнение получившейся алгебраической системы входят "только три неизвестных у,. Для практической оценки погрешности решения краевой задачи может применяться правило Рунге. Законность его приме- йения основывается на существовании главного члена погреш- iloctn. Задача. Пусть р(х) и f{x) четырежды дифференцируемы. Доказать, что для решения задачи C) — D) справедливо соотношение max I Уп — у {хп) — h^z {х„) | = О (h*), п где г(х) —решение краевой задачи L2 = -y4«)/l2, 2@) = 2(АГ) = 0. Указание. Воспользоваться построениями из § 5 гл. VUI.
540 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX Рассмотрим еще одну группу методов повышения точности приближенных решений, наиболее известную под названием метода уточнения разностями высших порядков. Предположим, что после решения разностной задачи C) удастся вычислить значения некоторой величины г, такой, что max I el I =0(/i''), здесь в\ = г, — г\. ^ o</</v' " III Найдем решение i?! сеточной задачи /(/?;) = г', /=1 N-\. Rl = R'^^0, и положим yj=yj + R)- Имеем равенства / {у i^i) -У)) = 1 (У (X/)) - / (у,) -1 (/?}) = Г/ - г' = е'. Воспользовавшись леммой 2, получим оценку Q<I<N \yi'i)-y\\<-r.^.'^J<l=^^^'^' ('^) в соответствии с (8) требуемые величины г\ должны удовлетворять соотношению max / V 12 = о(п (И) Если р(х) и /(*)—достаточно гладкие, то можно приблизить {/'**(*)) (>*У1 1 в'У/ величиной . / ■ и, соответственно, положить г- =-г;г7у. Правая часть этого соотношения не определена при /=1 н j ^ N— 1. Поэтому для определения приближений к у''*'>(х\) и у^*Цхк-1) следует воспользоваться какими-то другими формулами численного дифференцирования точности 0{h*). Приведенные выше высказывания о возможности приближения производных y'*>(JCj) требуют дополнительного обоснования. Для получения требуемых величин rj можно поступить н следующим образом. Вследствие уравнения A) имеем 62 (р.у (хЛ + f (хЛ) ум (^) = (у" (^))"=(р (х) y(x) + f (*))" = ^'^^' ^ 'I,—!-^ + О т. Это равенство наводит на мысль положить ,1 12 можно показать, что и в этом случае выполнено A1), а следовательно и A0). Практика вычислений указывает на предпочтительность второго способа получения г у Общая схема уточнения решения разностями высшего по-« рядка может быть описана следующим образом.
4 II КРАЕВАЯ ЗАДАЧА ДЛЯ УРАВНЕНИЯ ВТОРОГО ПОРЯДКА 541 Строится уравнение, которому приближенно удовлетворяет ошибка полученного приближения, и затем решается уравнение относительно этой ошибки. Иначе, пусть имеется приближение //J^ с погрешностью 0(Л2'»+2). Строится выражение г'р+\ эффективно вычисляемое через значения приближения y1^ и обладаюш;ее следующим свойством: если ^?/'"'"'— решение сеточной задачи 1{1^'^^^) = г7-'\ 1=1,.... N-\, Rr'=Rr'=0, то приближение yj'^ =у'^ -i-Rf^^ имеет погрешность О (А^'""'"''). В соответствии с вышесказанным вычисляются rj""*"', /??"*"' и затем //J"+'. К удобству пользования описанными методами относится то, что, независимо от порядка точности получаемого приближения, решаются системы линейных алгебраических уравнений с одной и той же матрицей. Рассмотрим случай граничного условия у'@) — ау@) = а. Дискретное приближение высокой точности к такому граничному условию можно получить непосредственно, заменив производную у'{0) по какой-либо формуле численного дифференцирования высокой точности I 1/'@)-2 Ciy(x,) /=о Однако погрешность аппроксимации будет меньше и решение возникающей алгебраической системы представит меньше трудностей, если идти по описанному выше пути последовательного повышения порядка точности аппроксимации. Заменив производную у'@) отношением '^ ~7 ^ , получим уравнение 1^0 {уj) ~ ^^—f~—аг/g —а = 0. Разложим выражение г'а" = /[," [у [х.)) =У^^'^-У ^"^ - ау @) - а в ряд Тейлора по степеням h; получим г[," = i/'@) + ^^-f О (Л2) - а//@) - а = ^^^-f О (Л2). Таким образом, погрешность аппроксимации граничного условия О (А). Поскольку, согласно уравнению A), г/"@) = Рог/@) + /о,
542 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ 1ГЛ. IX то уравнению ^o^' (У!) = -^^-ауо-а- (роУо + /оL = О соответствует второй порядок аппроксимации. Разлагая в ряд Тейлора по степеням h выражение г'^^ = цп (^у Гх Х\, получим „(8) 1П\ /,2 f'o'^' —6 НО(Л^)- После дифференцирования исходного уравнения A) имеем у''' @) - РоУ' @) - Р' @) у @) - Г @) = 0; поэтому с учетом граничного условия справедливо равенство i^C) @) = ро i^y @) + а) + р' @) у @) + /' @). Разностному уравнению /f (Уд = 1? (У1) - ({Роа + Р' @)) у, + РФ + Г @)) 4- = О будет соответствовать уже третий порядок аппроксимации Можно было бы сразу написать равенство затем выразить производные y"{G) и t/(^)@) через //@) и, вычитая из разностной схемы соответствующее выражение, получить уравнение /{f4i//) = 0- Однако мы обратили основное внимание именно на способ последовательного повышения порядка точности, поскольку его перенесение на случай уравнений в частных производных является наиболее простым и естественным. § 2. Функция Грина сеточной краевой задачи Функция ау„-введенная в § 1 при доказательстве леммы 2, носит название мажорирующей функции, и метод получения оценок погрешности с испйльзованием этой функции называется методом мажорант, или методом Гершгорина. В ряде случаев, когда метод мажорант неприменим, оценку погрешности приближенного решения удается получить, используя так называемую сеточную функцию Грина. Проводимые ниже построения функции Грина сеточной краевой задачи A 3) — A.4) кроме всего прочего интересны своей аналогией со случаем дифференциальной краевой задачи. Функция Грина G{x,s) дифференциальной краевой задачи Ly = y"-P{x)y = f{x), у@) = а, уЩ=^Ь
«21 ФУНКЦИЯ ГРИНА сеточной краевой задачи 543 определяется как решение уравнения L{G{x, 8)) = (ПАх, s)-p(x)G(x, s) = 6{x-s) A) при граничном условии G@, s) = GiX,s) = 0. Решение задачи A.1) —A.2) записывается с помощью функции Грина в виде X y{x)=JG{x.s)f{s)ds + G,(x,X)b-GAx,0)a. B) Функцию Грина можно задать следующими явными формулами. Пусть W4x), W^(х) — решения уравнения L(W) = Q при условиях Г'@) = 0, (Г')'@)=1, W^X) = 0, {W^Y{X) = -\; тогда где С(л уо при O^AT^S, -hb——'- при 5<л;<Х, Г'(л:) ^''{х) (V')'(x) {^"^)'{х) = const = F». V{x) = Перейдем к сеточной задаче ^(i//) = А? Р\У\ = \ь 4'о = а. ^/лг = &. По аналогии определим функции W\, W\ из соотношений /(rj) = 0, /=1, 2, / = 1. .... Л^-1. Аналогом определителя Вронского является определитель '^ п" п—\ " пУ п—\ 1«« Из тождест h A ва /I nr2 »1 iv»2 72ll7l ^n** rt+1 ~ ^n^n-1 '*n'*rt+l "'n'^n-l _Z«±L-^n A2 следует, что величина К„ не зависит от п\ будем обозначать ее V{h).
544 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ (ГЛ. IX Положим G* = V{h) ■« при 0<n<fe, при ^<п^Л/. у (Л) Будем обозначать далее I {Gn) = ^2 PnGn Из определения Wn следуют равенства: при n <k. w[ liGn) = i^l{wl)^0, при n> k; при /г = п имеем ' IG J = ^2 PnOn = \ v{h)h' v{h) ) — < (<+i - ^< + K-i „ .у/Л , («-. - КК-д ■~V(/l)\ Л^ fn^n)-^ V (Л) /i2 • Согласно определению W„, первая круглая скобка равна 0; вторая скобка равна V(h)h. В итоге при k = п получаем /(G*)==A~'; объединяя полученные соотношения, имеем /(G*) = 6„_,/i-'. C) Функция 6n-kfi~^ является сеточным аналогом б-функции, а равенство C)—аналоюм A). Произведем оценку близости функций Грина дифференциальной и сеточной задач. Поскольку (W^)" @) = р@) 1^'@) = = 0, то Г' (/г) = Г' @) + (W")' @) h + ^"^'^У"^^' + О (/гЗ) = h + 0 {h% Функция Wn является решением конечно-разностного уравнения, аппроксимирующего уравнение W" — p{x)W = Q. Характеристическое уравнение разностной схемы ц^ — 2ц+1=0 имеет
§21 ФУНКЦИЯ ГРИНА сеточной краевой задачи 545 двукратный корень ц = I. Таким образом, условия теоремы из § 14 гл. VIII выполнены. Положим Rn = Wn — W^ (nh). Воспользовавшись оценкой (8.14.5), в конкретных условиях рассматриваемой задачи имеем N-1 Р р шал I An l=ss^ <,^. л; 1 - 7, I А,-IT тали ^Kol, I Л1 1Л- 05 (N-1 ЛУ|г,| + тах(|/?о1,|/?,1) + ^1 здесь п — погрешность аппроксимации: (ft7')W(.e.)/j2 г, = ■ 12 P^maxl р{х) Ю, XI Согласно определению Wo и Wi, имеем Rq = 0, Ri = 0{h^) и. следовательно, следует неравенство max \Wn-W\nh)\^Mh^- О (h^). Поэтому из последней оценки D) здесь iVf — некоторая постоянная. Точно так же получается оценка max \wl-W\nh)\^Mh^. 0<х„<Х Согласно свойствам У и У (Л), имеем Г' (Х) О E) уо == 1/ (X) ■■ Vih) = К {wrw -1 о = - Г' (Х), w'n-w 1 -1 = -W'n. Поэтому \Vih)-V°KMh^ на основании оценки D). Далее предполагается, что W^X) =7^ 0; в протипном случае однородная краевая задача у" — р{х)у = 0, г/@) = г/(^) = О имеет ненулевое решение W^x) а, следовательно, неоднородная краевая задача A.1) —A.2) или не имеет решения, или имеет неединственное решение. Будем также предполагать h настолько малым, что 2Mh^ ^ \W4X)\ = \V°\. В этом случае имеем \V(h)\^\V'>\-Mh''^\^\>0. Ю 14 Г Ra
546 ЧИСЛЕМНЫК МЕТОЛЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX При таких h 1 V(h) V° V°-V (h) У(к)У 2Mh^ ^ I K° F * '^ Сравнивая явные выражения функций Грина дифференциальной и сеточной задач с учетом оценок D)—F), получаем |G*-G(n/i, fe/i)|<Q/i2 G) при о ^ kh, nh ^ X. Лемма. Если V{h) ф Q, то рассматриваемая сеточная задача A.3) — A.4) однозначно разрешима и ее решение записывается в виде i/„ = A^G*b + -fa + -f6. (8) Формула (8) является сеточным аналогом формулы B). Доказательство. Поскольку Go^G^ = 0, согласно определению функции G^, то Уо = а, У[^ = Ь. Имеем равенство коэффициенты при а и Ь равны нулю по определению функций \Vn. Воспользовавшись равенством C), получим 1{уп)^1п. Таким образом, система линейных уравнений A.3) — A.4) при любых правых частях имеет решение, записываемое в виде (8). Но если система линейных уравнений разрешима при любых правых частях, то ее решение единственно. Лемма доказана. Соотношение (8) может быть двояк*1м способом использовано для оценки близости решений сеточной и дифференциальной задач. Первый путь состоит в непосредственном сравнении выражений B) и (8). Для простоты продемонстрируем его в случае а = Ь = О, бп ^ 0. Подставляя х = nh, перепишем B) в виде nh X y(nh)= { G(nh, s)f(s)ds-{- ^G{nh, s)f(s)ds. 0 nh Если p{x) и f{x) дважды непрерывно дифференцируемы, то можно показать, что подынтегральные функции в обоих интегралах также дважды непрерывно дифференцируемы. Заменим
§ 21 ФУНКЦИЯ ГРИНА СЕТОЧНОЙ КРАЕВОЙ ЗАДАЧИ 547 оба эти интеграла по формуле трапеций с шагом h. Получим у (nh) = h i^Sl^!h^2l + 2 G {nh, kh) f ikh) + ^^"^'",^^^H 4- _^ J G (»/,,»/,) M»/,) ^ '^G{nh, kh)f(kh) + Поскольку G{nh,0)=: G{nh, Nh)^0, no определению функции Грина G{x, s), TO Af-I У (nh) = л 2 G (nh, kh) f, + 0 (h'). (9) Разбиение интеграла на две части нам потребовалось в связи с тем, что погрешность формулы трапеций оценивается через вторую производную подынтегральной функции, а функция G(nh,s) имеет разрыв первой производной в точке nh. Из равенств (8), (9) получаем N-1 Уп-У(nh) = h^{Gl-G(nh, Щ)fk + 0(h% Воспользовавшись оценкой G), получим j/„ — y(nh)=0(h^). Нетрудно проследить, что эта оценка погреш-ности равномерна по п при О ^ x„ ^ X, т. е. max I г/„ — г/(лА) I = О (Л^). о < x„ < JT Другой, более привычный для нас, путь состоит в получении уравнения для погрешности и дальнейшей оценки погрешности с помощью формулы Грина. В § 1 было показано, что ошибка Rn удовлетворяет уравнению l(Rn) = K-rn, где (г„|<-^; бп — ошибка, обусловленная неточностью решения системы A.3) — A.4). Пусть 7?о =/?jv = 0. Из явного вида функции Грина дифференциальной задачи следует ее равномерная ограниченность; с учетом G) получаем, что функция G„ также равномерно ограничена: |gS|^D при O^kh, nh ^ X. Напишем явное представление Rn с помощью формулы Грина (9): /?„ = /г 2 0^Fа-Ы. A0) 18*
548 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ 1ГЛ. IX Тогда из A0) следует оценка л;-1 \Rn\<Dh 2 (|6а1 + |г,|). Д:=1 Загрубляя, можно получить более наглядную оценку \R„\^Dx{-^h'+ max |б^|). имеющую в случае р(х)'^0 тот же порядок по отношению к к и max16ft|, что и полученная ранее оценка. С помощью описанных способов иногда удается получить оценки погрешности при довольно слабых предположениях о гладкости коэффициентов задачи; особенно полезным в этом смысле является первый из этих способов. § 3. Решение простейшей краевой сеточной задачи При численном решении задачи -Коши значения решения определяются в последовательных узлах по рекуррентным формулам; в случае краевой сеточной задачи, например A.3)— A.4), такой во.чможности нет, поскольку значения решения зависят от граничных условий на обоих концах отрезка интегрирования. - - . , Краевую задачу y"-p{x)y = f(x), у{0) = а, у(Х) = Ь можно было бы решать следующим способом. Возьмем частное решение уо{х) неоднородного уравнения Уо-р{х)Уо = Цх) и два линейно независимых решения однородного уравнения у'[ — р(х) у^ = 0, /=1,2. Общее решение неоднородного уравнения запишется в виде Уо{х) + Ciyiix) + С2У2{х); постоянные Ci и Са определяем из граничных условий. Приближения к функциям yi{x), i^O, 1, 2, находим каким-либо численным методом решения задачи Коши; затем определяем d и получаем нужное решение. Экономнее поступить следующим образом. Находим частное решение неоднородного уравнения у" — p{x)yQ = f (х), удовлетворяющее условию уо@) = а, и частное решение однородного уравнения у\(х), удовлетворяющее условию г/[@) = 0. Общее решевие неоднородного уравнения, удовлетворяющее условию
§ 31 РЕШЕНИЕ простейшей КРАЕВОЙ СЕТОЧНОЙ ЗАДАЧИ 549 у@) = а, имеет вид yo{x) + Cyi{x); значение С определяется из условия г/о (X) -\- Су\ (X) = Ь. Метод решения краевой задачи, следующий этой схеме, принято называть методом стрельбы или методом пристрелки. Сеточный аналог этого метода заключается в следующем. Задаемся г/о = а, г/о = 0, произвольными у\ф^ и г/р и из уравнений л5 РпУп = !п' A) у\+\-^Уп + у\-\ h^ рХ = 0 B) последовательно определяем у\, ..., г/^, у\, ..., t/^. Затем находим С из уравнения г/^ + Сг/]у = й и полагаем У„ = У^ + Сг/)^; функция f/„ является требуемым решением. Если все указанные выше величины невозможно поместить в оперативной памяти ЭВМ, то значения у\, i = О, 1, не хранят в процессе вычислений, а после отыскания С находят у, = «/^ + <^J/'i и затем последовательно определяют г/г, .... у^-\ из уравнения l(yn) = fn. Описанный алгоритм формально применим при любых значениях y^^ и у\; однако для уменьшения влияния вычислительной погрешности разумнее взять г/| = = а + 0 (h). Приведем соображения в пользу этого утверждения. Получаемые при реальных вычислениях значения «/„ связаны соотношениями у1+ I = ^^" - sU + л' {Рпй - fn) + »„; результат вычислений округляется в машине с относительной погрешностью порядка 2~'; поэтому величина 8п может достигать значений порядка 2~ (/^, ,. Введем вспомогательные функции: «/„ — решение A) при начальных условиях «/о~2'?~'^' г/^—решение B) при начальных условиях «/о = 0, «/? = Л; пусть у^ {х) — решение уравнения у — p{x)y = f {х) при начальных условиях у @) = а, у' @) = 0. Мы показали в § 2, что max \yl-W^{nh)\<Mh^; C) на том же пути оценки близости решения у^ сеточной и решения у^ (nh) дифференциальной задач с помощью теоремы из § 14 гл. VIH можно получить оценку max \yl-y\nh)\^0(h). D)
550 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ (ГЛ IX Функция {/^ + {/'^(г/| — а)Л~' совпадает с yj^ при п = О, 1 и удовлетворяет тому же конечно-разностному уравнению, поэтому {/„ ==Уп+ {/„({/1 — ajh" . С учетом оценок C)—D) имеем г/^ = (г/-(пА) + 0(А)) + (И7'(иА) + 0(Л))(</?-а)А-'. Отсюда видно, что при (у, — а)А~' | Э> 1 величины у„ оказываются порядка ((/| — а\ h~ . Поскольку значения i/„ и у^ отличаются на относительно малые величины, то значения j/^ также порядка (у^ —a)/i~'. Отсюда следует вывод о желательности выбора значения ур при котором величина ((у" — а) h~ невелика. Многие краевые задачи характерны тем, что среди решений соответствующих им однородных дифференциальных уравнений есть решения с сильным ростом (при убывании или при возрастании х). Рассмотрим модельное уравнение у" — РУ = 0, р = const > 0. E) Решения соответствующего однородного уравнения ехр(±|/;?л) резко возрастают (убывают) на рассматриваемом участке, если величина ^р X достаточно велика. Таким образом параметрами, определяющими влияние вычислительной погрешности при различных способах решения сеточной задачи A.3) — A.4), являются Yp X и h. Рассмотрим модель накопления вычислительной погрешности на одном из этапов решения сеточной задачи. Пусть уже найдено значение г/i, причем оно найдено без всякой погрешности, а далее вычисления происходят по рекуррентной формуле г/«+1 = 2г/„ —t/„_, Ч-рА^г/п- E') Предположим, что получаемые при реальных вычислениях величины у'^ связаны равенством Уп+1 = '^Уп-Уп-1+Р^'Уп + ^' где б порядка 2~'. Вычитая отсюда E'), получим уравнение для ошибки А^ = у'^ — у^: А„+,==2Д„-Д„_,+р/г2Д„ + б, F) причем, по предположению, Ao = Ai = 0. Характеристическое уравнение этого разностного уравнения ц2_B+рЛ2)ц+1-0
§ 3] РЕШЕНИЕ простейшей КРАЕВОЙ СЕТОЧНОЙ ЗАДАЧИ 551 имеет корни Ц„2=1+4^±)//?А^ + 4 Частное решение неоднородного уравнения отыскиваем в виде An = с. Подставляя в F), получим с = j-^. Таким образом, общее решение неоднородного уравнения имеет вид Л„ = С,^« + С,ц«---^-. G) из условии До = Ai = о определяем значения С\, С^. Окончательно имеем ^« рАМй.-Й2 '^'^ Й2-Й1 ^2 Г Будем считать, что величина a^Yph^ мала. Тогда и следовательно, 1-Н: ^ а 4-0 (а') _. 1 I ^, . m-flj 2a-fO(a^) 2 '^'-'^^h ТОЧНО так же -L:iiii- = 1+0@). Поскольку в то же время ц,,2 = ехр (± сг + 0{а^)), то мы можем записать равенство G) в виде А„ = ^ ((у + О и) ехр М A + 0@))) + + (| + 0(сг))ехр (-crn(l + 0(cr)))-l). При nh = x имеем an=Ypx и Ап = -^ ((т +0(a)) ехр A/р^A -f 0(сг))) + + (i- + O@))exp(-l/p^(l+O(cr)))-l). (8) Если величина |/^ х велика, то при х, близких к X, влияние вычислительной погрешности, в соответствии с формулой (8), будет катастрофически большим. Примечательно, что во многих случаях это влияние вызвано не множителем h-^.
552 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX являющимся следствием м-алости шага, а множителем exp(V^ х{1 -\-0{а))). Например, в случае _краевой задачи для y" — y — f на отрезке [0,30] имеем ехр(|/1 • 30)= ю'^'"•■, в то время как шаги интегрирования h < 10~^ применяются редко. В случае р(х)'^0 рассматриваемую систему уравнений A.3) — A.4) имеет смысл решать с помощью описываемого ниже метода прогонки. Представим граничное условие уо = а в виде г/о = СоУх + фо. где Со = 0, фо == а. Подставляя г/о = ^Сог/1_+фо в первое уравнение системы A.3) — A.4) г/о — 2i/i + У2 „ „ —f • ~ р PiUi — /1> получаем уравнение, связывающее значения у\ и г/г. Разрешая это уравнение относительно ух, имеем yi=Ciy2 + (fh (9) где подставляя полученное выражение j/i через г/г во второе уравнение системы, получим уравнение, связывающее г/г и г/з и т. д. Пусть уже получено соотношение > г/я = С„г/„+1 + ф„; A0) подставим выражение г/„ в (п-\-1)-е уравнение системы A.3) — A.4): Уп — ^Уп+] + Уп+2 „ „ f ^2 Рп+\Уп+\ 1п + \- Разрешая получившееся уравнение {СпУп + t +ф») —2уп+1 +Уп+2 f /,2 Pn+li/n+l—/n+l> будем иметь Уп+\ = ^п+хУп+Ч + фп+1. где Таким образом, коэффициенты уравнений A0), связывающих последующие значения г/„ и уп+i, можно определять из рекуррентных соотношений A1) при начальных условиях Со = О, щ = а. Так как у^ известно, то после нахождения всех коэффициентов С„, фп можно последовательно определять j/jv-i j/i из соотношений A0). Процесс вычисления коэффициентов С„, ф„ принято называть прямым ходом прогонки, а процесс вычисления неизвестных г/„ — обратным ходом прогонки. Последователь-
§ 31 РЕШЕНИЕ простейшей КРАЕВОЙ СЕТОЧНОЙ ЗАДАЧИ 553 ность Производимых вычислений можно изобразить следующей схемой: прямой ход прогонки Р\ Р2 4 i Фо = а ->■ ф1 -> ф2 ->■ ... t t обратный ход прогонки у у у У\*-У2*- ■■■ <-Уы- t t t ф1 Ф2 Фл?-1 Pn-1 i ->Cjv_i i . ->-Фл;-1 t /ЛГ-1 1 \*-Уы- 1 Названию «метод прогонки» иногда предлагается следующее объяснеиие. Уравнение получено как следствие граничною условия в точке ж = О и уравнений системы A.3), соответствующих точкам Xj ^ Хп. Таким образом, это равенстоо выполнено для любого решения системы уравнений l{yj) = f}, / = 1, ..., п, удовлетворяющего левому граничному условию; граничное условие в точке X = О как бы «перегоняется» в текущую точку х = Хп- Рассмотренные выше методы стрельбы и прогонки являются частными случаями метода Гаусса исключения неизвестных при решении системы A.3) — A.4). Например, после приведения п уравнений системы A.3) — A.4) к виду A0) при прямом ходе метода прогонки система уравнений приобретает вид г/1—CiJ/2 =Ф1. Уп — СпУп+1 =Фп. г/« - B + Pn+ih^) Уп+1 + Уп+2 = fn+ih^ тот же, что и после исключения п неизвестных в прямом ходе метода Гаусса. После окончания прямого хода метода прогонки матрица системы окажется приведенной к треугольному виду. Обратный ход метода прогонки совпадает с обратным ходом метода Гаусса.
554 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ (ГЛ tX Задача. Выписать расчетные формулы метода киадратного корня в случае решения рассматриваемой системы. Сравнить трудоемкость этого метода с трудоемкостью метода прогонки. Рассмотрим другой вариант метода Гаусса решения системы A.3)— A.4). Из первого уравнения выражаем г/2 через г/i и подставляем в остальные уравнения. После этого во второе уравнение входят только неизвестные г/i и уз', выражаем уз через г/1 и подставляем в остальные уравнения и т. д. Пусть мы уже выразили через г/i неизвестные г/2, ..., г/„ и получили соотношения г/j = а]У\ + pj при 2 ^ /■ ^ /г; для единообразия добавим сюда равенства г/о = «0^/1 + Ро. где ао = 0, Ро = а, У1 = а1г/1-ЬР1, где а, = 1, pi = 0. Подставляя выражения г/„_1 и г/„ в уравнение Уп-1 — {2+ pnh^) Уп + Уп+1= fJi^, получим (а„_1г/1 + P„_i) — B -f р„/г2) (а„г/1 -f р„) -f y„+i = /„/г2, или ^/«+1 = ^п + \У1 + Р«+1. где а„+, = B-f р„/г2) а„ — а„_1, Рп+1 = B + Р„/г2)Р„-р„_1 + /„/г2. (^2> Таким образом, коэффициенты an, Рп можно последовательно вычислять по рекуррентным формулам A2). После получения соотношения у^ = CLNy\ + Рлг определяем значение г/i, а затем все г/j по фор.мулам У, = ^,Ух + ^,- A3) Вследствие A2) значения aj удовлетворяют однородному конечно-разностному уравнению B) и начальным условиям ао=0, ai = 1, значения Pj ^ неоднородному конечно-разностному уравнению A) и начальным условиям Ро = а, р, =0. Таким образом, а„ совпадает с «/Jj- а р„ — с г/^ в методе стрельбы при определенном выборе начальных условий. Функция 2„ = = апС + Рп удовлетворяет неоднородному конечно-разностному уравнению и левому граничному условию при любых С, причем 2, = aiC + р, = С. Следовательно, решая уравнение г/л- = = аыС + Pjv относительно С, мы как раз находим значение С = г/1, которое отыскивалось в методе стрельбы. Вычисления по формуле A3) соответствуют вычислению значений г/„ по формуле {/„ = yJjC'+ У?г- Построенный метод совпадает с одним из вариантов метода стрельбы; в то же время он совпадает с методом Гаусса при порядке исключения неизвестных: Уо, .У2, • ■ ■. Ул'. У\-
§3] РЕШЕНИЕ ПРОСТЕПШЕИ КРАЕВОЙ СЕТОЧНОЙ ЗАДАЧИ 555 в случае систем уравнений с полностью заполненной матрицей А размерности N Х^ N обычный метод исключения Гаусса требует X Л^^ арифметических операций. Матрицы Л = [Oi,], у которых а,, = О при |г — /| >■ от, называют {Im + \)-диагональными; мы видели, что в случае грехдиагональных матриц метод Гаусса, совпадающий с методом прогонки, требует существенно меньшего числа операций Точно так же число операций будет существенно меньше в случае {2т-}- 1)-диагональных матриц при т<^ N. Рассмотрим типичную задачу, сводящуюся к системе уравнений с матрицей вида, близкого к Bп-(- 1)-диагональному. При сглаживании функции методом регуляризации в § 4 гл. V возникла следующая задача. Дана периодическая функция /, целочисленного аргумента (?, период равен Л^ ■}-1 (там он был Л^) Требуется найти периодическую с тем же периодом функцию и,, удовлетворяющую системе соотношений ■ ^^У^ Uq = fq при всех q (,21 и h' £. + (. Выпишем эти соотношения при G = 0, ..., Л^. Вследствие условия периодичности заменим значения Uj при q <.Q и при q > N, входящие в эту систему, соответственно, иа Uq+n+i и u,_n-i. В результате этого получится система N-\- 1 уравнении относительно неизвестных щ, ..., u,v Аи =--[ Элементы матрицы А = [а,,] этой системы определяются соотношениями йи = a(|t —/I), где f а@) = (-1Г(О -2ft 2га\ a(k} = О < й < rt, n<k^N — п. л= Матрица Л симметричная и положительно опре/1елеиная.
556 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX Одним из возможных методов решения такой системы является метод квадратного корня. Другой метод — последовательное исключение неизвестных в их естественном порядке «i, Ыг, ... В обоих случаях процесс преобразования системы можно записать в виде рекуррентных формул, аналогичных методу прогонки. Оба метода требуют O(n^N) арифметических операций. Поскольку используются операции разных типов, то выбор между этими методами должен производиться с учетом относительной трудоемкости операций ЭВМ. Вычислительная погрешность в обоих случаях может достигать значений порядка 2'^h'^■'^. Рнс. 9.3.1. Рис. 9.3.2. Задачи 1, Выписать расчетные формулы обоих методов в случае 11= 1. 2. Подсчитать число арифметических действий различных видов для обоих методов при произвольном п. В ряде случаев оказывается, что матрица А системы имеет Bп + 1)-Ди- агональный клеточный вид. А именно, матрица ра.чбивается на клетки Atj такие, что Ац^О при |( — Л > п. Для решения систем с такими матрицами можно применять метод исключения по группам, соответствующим клеткам. В этом случае расчетные формулы имеют тот же вид, как в случае Bп+1)-диагональной матрицы; отличие состоит лишь в замене скалярных операций на матричные. На модельном примере р (л:) ^ р = const рассмотрим поведение прогоночных коэффициентов Сп при различных знаках р. Соотношения С - '
§ 4] ЗАМЫКАНИЯ ВЫЧИСЛИТЕЛЬНЫХ АЛГОРИТМОВ 557 которым удовлетворяют коэффициенты С„ метода прогонки совпадают с итерационными формулами решения уравнения 2 + ph^-C При начальном приближении Со = 0. Уравнение С = gf(C) равносильно квадратному уравнению С2-B + рЛ2)С + 1=0; A4) его корни С(,). С,2) = 1+ -^ ± -/рЛ2 + Р^ . При ph^ > О, очевидно, С(,) > 1, и поэтому О < СB) = С(Т)' < 1. При р <.0 и h малом подкоренное выражение отрицательно и уравнение A4) не имеет вещественных корней. Совместное расположение графиков у = С и у = g(C) и точек (С», С„), (С„, C„+i) изображено на рисунках 9.3.1—9.3.2. Видно, что при р^О значения С„ лежат в пределах О < С„ <^ 1 (рис. 9.3.1). При р<0 не исключено (рис. 9.3.2), что при достаточно больших п некоторое значение Сп окажется близким к 2 -f ph'^; тогда следующее значение С„+1 будет очень большим. Это обстоятельство побуждает нас к более детальному изучению влияния вычислительной погрешности, по крайней мере при р < О, § 4. Замыкания вычислительных алгоритмов При предварительном анализе алгоритмов каждый раз удавалось многое выяснить, рассматривая случай решения модельной задачи. Другим эффективным приемом предварительного анализа является исследование замыканий вычислительных алгоритмов. Чтобы не загромождать изложения, мы ограничимся рассмотрением существа проблемы; поэтому многие из проводимых в этом параграфе построений не всегда подробно обосновываются. Пусть решается некоторая задача LU=:f, A) И пусть LV = /* B) — последовательность задач, зависящих от параметра h (например, шага сетки), решения которых ы'' сходятся при /г—♦О к решению исходной задачи. Предположим, что алгоритм решения задачи B) L'^u'^ = /'' состоит в последовательном получении
558 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX некоторых соотношений ^>'^n^ = f'k^ т = \,...,М; C) при этом L^ = £ — единичный оператор, mJ^ = /^ = (/.'')"'Р = м'',) т. е. на М-и шаге получается точное решение u'^. Пусть можно ввести параметр z{m. К), монотонно зависящий от т такой, что при Л-*-О, Z фиксированном, соотношение C) переходит в пределе в соотношение Lzy^fz, 0<2<2о; D) здесь 2q= Итг {М., Л). Соотношение D) называется замыканием вычислительного алгоритма C). В настоящий момент мы не рекомендуем читателю пытаться глубоко BHHKiiyTb в это нестрогое определение. Существо дела станет понятнее после рассмотрения замыканий алгоритмов решения краевой задачи. Определение понятия вычислительного алгоритма не исключает возможности Л1 = оо; в этом случае равенства понимаются в том смысле, что ^t-^E^ ft^-^i^T'l'^ при т-^сзо. Случай М = оо соответствует итерационным методам решения задачи A). Если операторы L^ равномерно по z ограничены, то говорят, что алгоритм C) имеет регулярное замыкание. В противном случае говорят, что алгоритм имеет нерегулярное замыкание. Если замыкание алгоритма регулярно, то есть основания ожидать, что он будет устойчив к различным возмущениям, в частности к вычислительной погрешности. Поэтому исследование замыкания алгоритма является удобным способом получения предварительного суждения о свойствах нового метода на первоначальной стадии изучения вопроса. Однако такая предварительная оценка свойств метода не всегда оказывается окончательной. Может случиться, что операторы Lz равномерно ограничены, но очень большой постоянной, что равносильно практической неограниченности. С другой стороны, возможно, что неограниченность операторов L^ вызывается неудачной нормировкой уравнений A.3) или неудачным выбором норм в пространствах функций и. Отсутствие равномерной ограниченности операторов Lz означает неограниченное возрастание p(/i) = sup|| Lml
§ 4] ЗАМЫКАНИЯ ВЫЧИСЛИТЕЛЬНЫХ АЛГОРИТМОВ 559 при h-^Q. Наличие больших коэффициентов в уравнениях ■^m"m "^^m' казалось бы, ДОЛЖНО быть равносильно большим возмущениям коэффициентов исходной задачи, а следовательно, большому влиянию вычислительной погрешности. Однако не исключена возможность, что величина p(h) растет очень медленно и соответствующее возрастание влияния вычислительной погрешности при стремлении шага к нулю окажется допустимым. Несмотря на высказанные соображения, изучение замыканий вычислительных алгоритмов приносит большую пользу. При прямом ходе прогонки получаются соотношения г/« —С„у„+, =ф„. E) Попытаемся понять, во что переходят эти соотношения при /г—>0. Возьме.м простейший случай р ^ 0. Тогда Со = О, Ci = = 1/2, С2 = 2/3, ... и, как нетрудно установить методом индукции, Сп ^ 1 — 1/(л-(-1). Пусть фиксирована какая-то точка X = nil. Тогда левая часть E), соответствующая этой точке, равна Уп— A —-Z 1 г/„+1. [ Т+' При подстановке вместо величин уп значений гладкой функции y(nh) предел левой части равен нулю, и нет смысла рассматривать подобное замыкание алгоритма. Чтобы получаемое замыкание было осмысленным, нужно подобрать такой множитель k{h), чтобы предел \imX{h)[y{x)-[l-—^y{x + h)\ F) h->Q + 1 был конечен и отличен от нуля. Возьмем k{h) = h ; тогда yix + h) = j(yix)-(\~^ + 0{h'')){yix) + y'ix)h + 0{h'))) = = ^-~y'ix) + Oih). При такой кормировке левая часть F) имеет ненулевой предел. Попробуем применить такую же нормировку и в общем случае. Поскольку в рассмотренном примере существовал предел lim ^-^4—■ при nh = х,
560 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ fX введем вместо Сп новую переменную а„=—v—. Напомним, что прогоночные соотношения имеют вид Умножим соотношение E) на — Л~ и положим С„ = 1 — а„/г, а ф„= — р„ А. Тогда E) запишется в виде 1 апУп+1 = Рп- (о) Подставив выражения С„ и ф„ через а„ и р„- в G), получим равенства 1 - а„+,Л =-p^p-^-j^-^s-qr^^' р„+,Л = A - а„+,Л) (М + f„+iA2), отсюда Р«+1 = Р« + (fn+i — a«+iP«) h — a^+ifn+ifi^- A0) Соотношение (9) можно преобразовать к виду а соотношение A0) к виду \—^ = frt+i — a«+iP« —fn+ia«+iA. A2) Если предположить, что коэффициенты а„ и р„ при фиксированном nil = X и А—»0 стремятся к некоторым пределам а{х) и Р(а:), то при подстановке в (8) вместо уп значений y(nh) в пределе получается дифференциальное уравнение у' — а{'х)у==^{х), являющееся замыканием вычислительного алгоритма. Соотношения (И), A2) показывают, что величины а„, р„ удовлетворяют некоторым уравнениям, напоминающим метод Эйлера численного интегрирования дифференциальных уравнений а'=^р(х)-а^ A3) Р' = /(х)-ар. A4) Доказательство того факта, что значения an, рп при nh = х фиксированном, A-vO, стремятся к значениям решений этих дифференциальных уравнений, затрудняется следующим об-
§ 4] ЗАМЫКАНИЯ ВЫЧИСЛИТЕЛЬНЫХ АЛГОРИТМОВ 561 стоятельством. Согласно определению, „ 1 — Со • о Фо а ..-. Таким образом, в окрестности точки д: = О начальные условия для численного интегрирования по формулам (П), A2) имеют не совсем обычный характер и развитые нами методы оценки близости решений сеточных и дифференциальных задач в рассматриваемом случае неприменимы. Глядя на соотношения A5), можно было бы предположить, что функция а(х) является решением A3), ведущим себя вблизи нуля, как х-\ а р(л) — решением A4), ведущим себя вблизи нуля, как —ах~К Произведем обоснование сделанных высказываний. Коэффициенты С„, а, следовательно, и «п получаются из рекуррентных соотношений G), не зависящих пи от правой части дифференциального уравнения, пи от граничного условия в точке X; начальное условие рекурсии Со = О также от них не зависит. Рассмотрим краевую задачу у"-р(х)у = о, г/@) = о, г/(Л = 1 и соответствующую сеточную задачу Решения этих задач можно записать в виде Ц7' (х) Vl'n (см. § 2). Поскольку для этой краевой задачи фо = О и все /я=0, то Рп^О и соотношение (8) имеет вид Уп+1 — Уп „ „ _п ^ а«г/«+1 — О. Подставляя сюда у^ = wlijWjj, получим В § 2 получена оценка \w[-W^(nh)\<Mh'^ при O^nh^X, A7) величина (W)xx равномерно ограничена на [О, X]; поэтому <+■-< ._ WU(n+l)h)-W'(nh)+Oih^ _ h h = (U7')'((«+0A)+O(A) A8) равномерно на [О, X]. После подстановки этих выражений в A6) получи.\1 равенство (W^Y {(п + \) h) + О {h) "■ W' {{п -f 1) Л) + О (А) •
5ri2 ЧИГПР.ИНЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ (ГЛ. IX Таким Образом, при Л -> О значения а^ сближаются со значениями функции Функция а (*) удоплетворяет дифференциальному уравнению A3), так как Согласно определению 117' (х), при малых х имеем Ц''' (лг) ~ х, (Ц7')' (х) ~ I , , (W'Y (х) _, _ и, таким обрачом, а (дс) = — —~ jc , как и предполагалось. Отметим W \Х) следующее обстоятельство. Функция а{х) обращается в бесконечность в точках, где W(x) = О, в частности, при * = 0. В окрестности каждой такой точки у имеем (W'Y (х) ~ (U7>)' (у) Ф О, М/' {к) ~ {{Wy (у)) {х - у) и, таким образом, а(х)~(х-у)-\ A9) Для точек этой окрестности можно написать цепочки соотношений ft+i wl^,~wl {W^Y ((п + I) h) (I + О (h)), <+, = W' ({n + 1) Л) + 0 (/i^) = M/' ((« + 1) Л) ( 1 + 0 ( i^,. ((Д ,);,) )) = И, таким образом, a„ = a((« + 1)Л)A + О (Л)) (l + О (-^—j-Jl^—-)). Относительная погрешность равенства «n л^ a((i+l)ft) является величиной порядка О (Л) вплоть до окрестности порядка Л точек, где а(х} = оо. В случае неоднородного уравнения, согласно (8), справедливо равенство о _ Уга+1 — Уп „ „ Pft = т апУп+1 • Вследствие A8) и оценки сходимости решения сеточной задачи к решению дифференциальной, полученной в § 2, имее.м Prt = P((«+l)A)+0(ft) во всех точках х = (п + 1)Л, где а(лг) Ф 0; здесь ?,(х) = у'(х)-а{х)у{х). Таким образом, сегочная функция р„ действительно сближается с некоторой функцией непрерывного аргумента Р(*). Очевидно, р' = у" - а'у - ш/ = (py + f)-{p^a')y-ay' = f-a(y'-ay) = f- ар; в окрестности точки О, вследствие A9), имеем PU) У{0)x~^ ~ -ах-К
§ 4] ЗАМЫКАНИЯ ВЫЧИСЛИТЕЛЬНЫХ АЛГОРИТМОВ 563 Выпишем теперь соотношения C) и соответствующие замыкания алгоритма. Возьмем M = 2N—1 и при т=1, ..., /V за C) примем совокупность соотношений г//_,-^г// + г/^+, - Р,У1 ■■ Уы-- = //. Ь, а при Л^ < m ^ М — соотнощений yi-CjV,^, Ф/ h Л ■ где ifj — точное решение сеточной задачи. Положим z = mh. Тогда замыкание алгоритма D) будет выглядеть следующим образом: ^гУ = /г (Х)' где для О < 2 < 1 0</<т, О < / < М - т, /и < / < yV, ^2«/ = /.w= И для 1 ^ 2 ^ 2 L.y = - fAx)=' ■ у' — а{х)у у" — р{х)у и ' PW fix) У b г у' — а{х)у [ PW 1 ^{х) при при при при при при при при при при 0 < л; < 2, 2<д;< 1, х=\. 0<Х<2, 2<JC< 1, х=\ 0 < л; < 2 — 2, 2 —2<;t<l, 0 < л: < 2 — 2, 2 —2<л:<1; здесь г|)(;с) — точное решение дифференциальной задачи (равенство Lzy\x^Q = о. опущено). Рассмотрим примеры поведения функций а{х) и ^{х). Пусть р(д:)>»0; тогда, согласно уравнению а' = р(д:) — a^, а'< О при а > Di = |/тахр(д;) IO.A-I Н а'>0 при а < D2= l/minp(jc), 10, Л1
1 - / / / / / 564 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ (ГЛ. IX Соответствующее поле интегральных кривых изображено на рис 9.4Л Поэтому решение а{х), удовлетворяющее условию а{х)^х при х-*0, монотонно убывает по крайней мере до тех пор, пока не попадет в область Dj < а < D,, где оно и xi остается. Уравнение A4) линейно относительно ^(х). Так как коэффициент а{х) конечен при хфО, то решение этого А уравнения остается ограниченным при всех хФО. Таким образом, были бы все основания признать замыкание алгоритма D^ решения рассматриваемой задачи регулярным, если бы не неограниченность коэффициентов а{х) и р{х) при л;->0. В рассматриваемом случае значения «о и ро в точке и = О Р'"=- ^■'^■^■ являются величинами порядка „ „ f^~\ далее с ростом п они должны иметь тенденцию к убыванию вследствие аналогичной тенденции решений дифференциальных уравнений. Мы уже свыклись с тем, что во многих случаях влияние вычислительной погрешности порядка 2-'ft-p является неизбежным и допусти- ™1 ^°^'''''^"''' ''''^ ^^''^'^ нерегулярность алгоритма не при- ности "'"'""У"™" большому влиянию вычислительной погреш- ока?а?ьсГТтп'/Г^'Г' '°''^' "' "^'^-^У ^^^^^О- '^^''^^ ^ожет оказаться, что в некоторой внутренней точке отрезка W4u)—0 и, следовательно а (у) =оо. В этом случае з?мыка.ше алТо ритма вычислений следует признать нерегулярным; однако и здесь не следует спешить окончательно отказываться от при менения метода прогонки. Если оказалось, что во всех узлах сетки W^{nh)h-^>>1, то. согласно {16)-A8). имеем ^ max|a„|=0(/г-^). B0) Мы уже говорили, что такого рода нерегулярность алгоритма не всегда следует считать катастрофической Функция Кг? 'l^'fr' п "Р°"^«°Д"°й, отличной от нуля в точках у, [% W^{y)=0. Поэтому часто значение min W4nh) будет оказы- Гягься ^'tIkTMIT' ^ " соотношение B0) будет выпол- нягься 1аким образом,- следует ожидать, что и в случае рИ^О вычисления по методу прогонки, как правило, будут устойчивыми к различного рода возмущениям ' УДУ
S 51 ПОСТАНОВКИ КРАЕВЫХ ЗАДАЧ 565 Оказалось, что замыкание алгоритма прогонки регулярно, если W (х) Ф О при X с: (О, X]. Условие W {xq) Ф О равносильно условию, что краевая задача у{0) = а, у{Хо) = Ь, y"-p{x)y = f(x) B1) разрешима на [О, л:о] при любых а, й и f{x). Таким образом, условие регулярности замыкания алгоритма прогонки можно сформулировать в следующем виде: Замыкание метода прогонки регулярно, если для любого отрезка [О, л;о] при О < л;о ^ А^ краевая задача B1) разрешима. Получим этот вывод еще одним путем. Обратимся к формулам обратного хода прогонки. Коэффициенты С} и фJ при j < п. зависят только от а и значений ps и /j при j < п, т. е. в точках jhci[Q,nh). Следовательно, после отыскания значения j/„ вычисления происходят в точности так же, как в случае краевой задачи для уравнения у" — Р(х)у = f{x) иа [О, гаЛ] при заданных 1/@) = а и y(nh) = уп. Если эта краевая задача неразрешима при любых правых частях f(x), то мало надежды, что соответствующая сеточная задача будет обладать хорошими свойствами при ее численном решении. Поэтому в случае, когда при каком-то Xacz {0,Х] краевая задача B1) разрешима не при любых правых частях, есть подозрения, что алгоритм вычислений будет сильно чувствителен к погрешности от округлений и требуется его более детальное исследование. Отметим, что регулярность замыкания еще не обеспечивает малости суммарной вычислительной погрешности в силу следующих обстоятельств. Суммарная погрешность определяется погрешностями в ходе вычислений и множителями пропорциональности, с которыми эти погрешности входят в суммарную погрешность. Регулярность замыкания обеспечивает лишь малость погрешностей округления в ходе вычислений. Чтобы множители пропорциональности не были большими, нужна слабая чувствительность решения уравнений замыкания к возмущениям коэффициентов. Однако и этого, вообще говоря, недостаточно. На примере уравнения у' = My при Ж <; О мы видели, что зачастую решение дифференциальной задачи слабо чувствительно к таким возмущениям, в то время как решение сеточной задачи сильно чувствительно. § 5. Обсуждение постановок краевых задач для линейных систем первого порядка Рассмотрим краевую задачу y'-A(x)y = f(x), By{0) = b, Dy{X) = d', (I> здесь у, f, b, d — векторы размерности, соответственно, /, /, l~r,r, а A,B,D ~ матрицы размерности 1X1, {I — г)х I, г X I. Всюду в дальнейшем предполагается, что ранг матрицы В равен / — г, а ранг матрицы D равен г.
566 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ IX Прежде чем отыскивать практически пригодные методы решения задачи (I), обсудим вопрос о чувствительности решений краевых задач к разного рода возмущениям. В качестве модели возьмем краевую задачу y'—Ay = Q, Л = const, By@) = b, Dy{X) = d. B) Рассмотрим случай, когда все собственные значения матрицы А различны; в общем случае ход рассуждений изменяется несущественно. Пусть A,j = aj + iPj — собственные значения матрицы А, упорядоченные в порядке возрастания aj, а «j — соответствующие собственные векторы, причем p^jH = 1. Общее решение системы у' — Лу = О запишется в виде I »(•«)= 2 С;е/ехр(А,,л). C) Собственные значения A,j разделим на три группы, присваивая собственным значениям каждой группы соответствующий верхний индекс. Собственные значения Xj, для которых величина ехр(|а^|-У) очень большая, обозначаем, как Я.^*", если aj > О, и как А,5",если aj < 0; остальные собственные значения, т. е. те, для которых величина ехр(|а^|Х) не очень велика, обозначаем, как Я," Соответственно снабдим верхними индексами собственные векторы fij", суммирование по индексам /, соответствующим этим группам, будем обозначать 2^. 2 . Zi~■ Пусть I', /", /+ — число собственных значении в соответствующих группах. Форма записи решения C) ставит в неодинаковое положенле концы отрезка интегрирования: все функции exp(AjA:) в точке JC = О имеют порядок 1, в то время как в точке х = X одни из них очень большие, другие очень малые. Удобнее другая форма записи общего решения: у{х)= '%' cjej e.x^{XJx)-\- 2°с°е/ехр(Я,"д:)-Ь + 2 + с+в/+ехр(Я+и-;^)). Выпишем систему уравнений By{Q) = b, Dy(X) = d, из которой следует определить постоянные С/, соответствующие отыскиваемому решению: By @) = ^-cJBe; + Ъ^с^Ве] + 2+c+Se+ ехр(- К^Х) = Ь, fiyW- 2-c7BerexpU,-X)+ S°c?Be?exp№)+ D) Систему уравнений D) можно записать в форме
§ 51 ПОСТАНОВКИ КРАЕВЫХ ЗАДАЧ 567 drY^ здесь с = матрица = {с^, ... G имеет сгу, g- клеточный G = lor \G2 г =(^ вид G? Gl J ' ' Gt' , 6, t -r' r ^. » где Gr = [(B?7),l' 1</<Г, \^q^l-r, G\ = {{Be%\, r<i<r + f, l<^<Z-r, G^ = [(Se,+),exp(-^/+X)l, /~ + /°</<Z, l<^</-r, G2~ = [(DerLexp(^rx)], 1</<Г, 1<<7<г, С^ = [(Ог°),ехр(ад, Г </•</" +Л 1<^<г, G2+ = [{De-j-},], Г + Z° < / < /, 1 < <? < г. Предположим, что А = dct G т^ О, и представим решение системы D) в виде с = G"'g; согласно известным формулам для элементов обратной матрицы: G-' = (-П'+^О;. E> Gji — миноры матрицы G. При сформулированных ранее предположениях величины ехр(—Я^Х), ехр(я,7Х) ничтожно малы; поэтому ничтожно малы элементы матриц Gt и G2^ и определитель (GT G\ Gt \ Ga Ga G2 близок к определителю /Gr G? 0 '° = '^Чо gS g,- Рассмотрим отдельно случаи: а) определитель Ло не мал, б) определитель Ло мал, в частности равен нулю. Поскольку среди элементов матрицы G нет больших, то, вследствие формулы E), в случае а) элементы матрицы G~' обычно не очень большие.
568 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ (ГЛ. IX Предположим, что правые части граничных условий bad содержат некоторые ошибки 66 и 6d. Пусть 6^ = (бЬ, бй)^, тогда ошибка вектора с равна G"'6g. Если элементы матрицы G"' не очень велики, то влияние ошибки б^ на коэффициенты Cj будет не очень большим. Решение задачи является линейной комбинацией с коэффициентами Cj слагаемых ej ехр (Я/"л;), ej ехр (Я/л:), е/" ехр {xf [х — Х). Поэтому ошибка приближенного решения, являющаяся следствием ошибок 6Ь и М, также будет приемлемой. Заметим, что наши высказывания носят довольно неопределенный характер: «малый», «очень малый», «небольшой», «очень большой»; при анализе своей конкретной задачи исследователь должен сам решать, насколько приемлем для него тот или иной порядок рассматриваемых величин. В частности, если решается система «большого» порядка, то при «умеренных» значениях коэффициентов системы и «не очень малом» определителе До возможно, что миноры, состоящие из сумм произведений большого числа элементов, окажутся «недопустимо большими». Если определитель До очень мал или равен нулю, то, вследствие равенства detGdetG"' = l, среди элементо'в матрицы G-' встретятся большие. Тогда малые возмущения правых частей граничных условий могут приводить к большим возмущениям коэффициентов Cj, а следовательно, и решения задачи. Зная элементы матрицы G~' и собственные значения матрицы А, из полученных выше соотношений можно получить довольно точную информацию о возмущении решения дифференциальной задачи. Однако получение этой информации само по себе требует большого объема вычислении; перенос этих построений на случай переменной матрицы А{х) noTpe6yef еще большего объема вычислений. Попытаемся поэто.му получить критерии устойчивости решения к возмущениям ЬЬ и Ы, требующие меньшей информации о задаче, хотя, может быть, и несколько менее надежные. Таким простым критерием могут служить соотношения между числами 1~, Р, 1+, I — гиг. Среди элементов первых / — г строк матрицы G° ненулевые элементы могут находиться в первых h-\-1° столбцах, соответствующих матрицам G~, G°. Если 1+>г, то 1--\-Р<.1 — г, и тогда все миноры порядка (/ — '■)Х(' —''), лежащие в первых / — г строках, обращаются в нуль. Раскрывая определитель До по первым / — г строкам, получаем Ло = 0. Точно так же, если 1~ "> I — г, то все миноры порядка гу^г, лежащие в последних г строках, обращаются в пуль, и поэтому До = 0. Если /+ ^ Л а h ^ I — г, то определитель До окажется линейной комбинацией произведе-
S 51 ПОСТАНОВКИ КРАЕВЫХ ЗАДАЧ 569 НИИ элементов матриц В и D а координат собственных векторов е,, причем коэффициентами при этих произведениях будут произведения чисел ехр{х,Х), не очень больших и не очень маленьких по модулю. Можно принять гипотезу, что этот определитель оказывается малым числом довольно редко. Тогда решение задачи B) будет малочувствительно к возмущениям 6fr и 6d правых частей граничных условий. Мы може.м сформулировать полученные выводы в качестве следующего утверждения. Если 1+> г или 1~ > I — г, то решение дифференциальной задачи сильно чувствительно к возмущениям правых частей граничных условий; если 1+ ^ г и 1~ ^ ^ I — г, то, как правило, решение задачи B) будет малочувствительно к изменениям правых частей граничных условий. Первую часть этого утверждения можно переформулировать еще в такой форме: для малой чувствительности задачи к возмущениям граничных условий необходимо, чтобы число независимых частных решений е,ехр{?^^х), сильно растущих на [О, X] с ростом X, не превосходило числа граничных условий на правом конце, а число частных решений е,ехр{А.]Х), сильно убывающих на [О, X] с ростом х, не превосходило числа граничных условий на левом конце. Эта формулировка при определенных уточнениях может быть перенесена и на случай задачи A) с переменной матрицей А{х). Строгая переформулировка этого утверждения будет довольно громоздкой; однако если матрица А{х) относительно плавно меняется на [О, X], то при первоначальном исследовании устойчивости задачи к возмущениям граничных условий зачастую можно ограничиться подсчетом числа собственных значений матриц А{х) с большим положительным и большим отрицательным значением величины XRq?^j{x). Краевую задачу называют хорошо обусловленной (хорошо поставленной), если малые возмущения коэффициентов и правых частей уравнения и граничных условий приводят к столь же малым по порядку изменениям решения задачи. Более аккуратное определение хйрошей обусловленности можно дать следующим образом. Наряду с краевой задачей A) рассмотрим краевые задачи у' - (А (х) + ЬА (х)) y = f{x)-\-bf (х), (B + 6S)j|@) = b + 6b, (D-\-bD)y{X) = d-\-6d с не очень большой мерой возмущения е= max (НбЛ W|| +||б/Wll)-f ||бб||+ 1|6D|| +||6b|| + || 6d Ц. 0<X<X
S70 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ 1> Если для всех решений таких краевых задач выполняются не равенства max \\у{х)-у{х)\\^Ме F 0<х<Х С не очень большим значением постоянной М, то исходную задачу называют хорошо обусловленной, в противном случае задачу называют плохо обусловленной; минимальное значение ■М{ео), при котором неравенство F) выполняется при всех £ ^ ео (ее > О фиксировано), иногда называют мерой обусловленности данной задачи (относительно возмущений с нормой, не ■'большей ео). Обусловленность задачи характеризует устойчивость решения к возмущениям исходных данных, например, к неточности задания параметров, входящих в коэффициенты уравнения. Поскольку ошибки от округления при вычислениях эквивалентны возмущениям коэффициентов исходного уравнения, то мера обусловленности характеризует и устойчивость численного решения к возможным округлениям при численном решении. Если известна ориентировочная оценка е возмущения коэффициентов задачи и погрешность порядка М{е)г допустима, то имеет смысл непосредственное численное решение задачи. Рассмотрим в качестве примера задачу Коши для системы У\ = У2^ У2 = У1 при yi{0)= 1, г/2@)= 1 на отрезке [0,30]. Соб- /0 П ственные значения матрицы >4 = 1. „) равны ±1. ехр(—30) — очень малая, а ехр(ЗО) — очень большая величины, /^=1, Р = О, Z+ = 1, / — г = 2, г = 0 и, следовательно, /-=1 > г^О. Малые возмущения граничного условия' должны приводить к очень большим изменениям решения. В данном случае проводившиеся нами в этом параграфе построения не имеют особого смысла, поскольку и без них ясно, что, вследствие сильного роста решений исходного линейного уравнения, погрешность решения растет очень быстро. Пусть для той же системы рассматривается задача с краевыми условиями &iyi@)-f Ь2У2{0) = Ь, di«/iC0)-f <^2г/2C0)= d; собственные векторы, соответствующие собственным значениям ЯГ = — 1 и Я2" = 1, равны, соответственно, A,—1)^ и A,1)^, 1+= г, [-= I — г. Вообще говоря, следует ожидать, что задача будет устойчива к возмущениям ЬЬ и bd. Решение отыскивается в виде ^г( _ I )ехр(-д:) + с+Мехр(д:-30).
§ 61 АЛГОРИТМЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ 571 Уравнения D) имеют вид F, - Ьз) сг + (Ь, + Ь^) с+ ехр (-30) = Ь, (d, — d^) с:;- ехр (-30) + {di + d^) с+ = d. Отсюда с: G) b(d, + d^)- I ^ d(b,-b,)- -d(bi + 65) ехр (—30) Л -bid,- rf,) ехр (—30) где А = Fi - b,) (di + d,) - (rf, - d,) (Й, + b,) exp (-60) близко к Ao = {bi — ^2) FA + ^2)- Если коэффициенты Ьг и di небольшие, а До не мало, то коэффициенты ср и с+ мало изменяются при малых изменениях бй и bd. Если А = О, то система G) имеет ненулевое решение ср, с+ при й ^ d = О, как говорят, «задача лежит на спектре». Это означает, что однородная задача имеет ненулевое решение и бессмысленно говорить об устойчивости решения к возмущениям граничных условий. При Ло = О задача плохо обусловлена. В дальнейшем, в §§ 6—8, предполагается, что рассматри-' ваемая краевая задача хорошо обусловлена. Задача. Доказать, что решение хорошо обусловленной краевой задачи единственно. § 6. Алгоритмы решения краевых задач для систем уравнений первого порядка Простейшим по форме методом решения краевой задачи E.1) является метод стрельбы. Рассмотрим систему уравнений Ву{0) = Ь. A) Поскольку по предположению ранг матрицы В равен / — г, то общее решение системы (I) записывается в виде г J^o + 2 с,уг, 1=1 здесь уо — произвольное решение неоднородной системы Ву^Ь, а у\ Уг — произвольная система г линейно независимых решений системы By = 0. Пусть у], ..., уг, уо—какой-то набор таких векторов. Численным интегрированием найдем частное решение неоднородной системы Уо=А{х)у,-\-1{х) B)
572 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX при начальном условии Уо@) = Уо к решения однородной системы y'j = A{x)y^, У=1, ...,л C) при начальных условиях yi{0} = yj. Пусть у{х) удовлетворяет B) и левому граничному условию A). Запишем вектор у{0) в виде г y{0) = yo+1i c,yi; вектор-функция 2{х)=^Уй{х)-\- 2 с,у,{х) удовлетворяет уравнению B) и совпадает с у{х) при л: = 0. Следовательно, г у{х) = уЛх)-¥^с,у,{х). D) ;=' Всякая функция вида D) удовлетворяет соотношениям A) и B). Таким образом, многообразие всех решений B), удовлетворяющих левому граничному условию A), задается равенством D). Чтобы найти искомое решение, надо выделить из этого многообразия решение, удовлетворяющее правому граничному условию. Определим коэффициенты Cj из системы г уравнений с г неизвестными D[y,{X)+^^c,y,{XVj = d. E) В предположении однозначной разрешимости задачи E.1) определитель этой системы отличен от нуля; действительно, предположив противное, мы получили бы, что однородная краевая задача (/ ^ О, 6 = 0, d = 0) имеет ненулевое решение г у (л) = 2 С/У, (л). Если С\, ..., Сг — решение системы E), то вектор-функция У (•«) = Уо W + 2 Cjyj {х) удовлетворяет уравнению и всем граничным условиям и, следовательно, является решением искомой задачи. При необходимости экономить память следует найти Sf@) = »o@) + 2c,y,@)
,^ 6] АЛГОРИТМЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ 573 ИЛП и затем решить численно задачу Коши вперед или назад. Если среди решений однородной системы у' = А{х)у есть быстро растущие с ростом х, столь же быстро может возрастать вычислительная погрешность в решениях Уо{х), ..., Уг{х). В этом случае алгоритм метода стрельбы окажется непригодным для практического использования. По-другому практическую непригодность метода стрельбы в этом случае можно объяснить следующим образом. Пусть метод стрельбы применяется при А = const; обозначим через е, и Я,; собственные векторы и соответствующие собственные значения матрицы А, причем пусть Re Я, < ... < Re Я,; предположим, что тогда I у, = 2 a/ftfi*; yi{X)=^a,kekexp(XkX). F) k=i Если оуг ¥= О и exp(ReA,X) > exp(ReA;_,X), то у,{Х)~ a,ie[exp(K[X). Таким образом, все строки определителя системы E) оказываются приблизительно пропорциональными вектору ei, и решение этой системы Ci, .... Сг будет найдено с большой вычислительной погрешностью Эти рассуждения в ряде мест не совсем корректны, но тем не менее их можно принять за правдоподобное объяснение возможности большого влияния вычислительной погрешности в методе стрельбы. Поставим перед собой пока частную задачу определения значения у{Х); ее можно трактовать как задачу выделения из многообразия »oW + ic,y,W G) вектора, удовлетворяющего правому граничному условию DyiX) = do. Мы видели, что непосредственйое решение этой задачи может привести к большой погрешности. Векторы yj{X) окажутся близкими к пропорциональным, или, как иногда говорят, баз'йс из векторов Уз{х) при продвижении к точке X «сплющится».
574 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX Однако никто не обязывает в каждый момент задавать многообразие G) именно при помощи вектора Уо{х) и базиса {yj{x)}. Время от времени по мере «сплющивания» базиса имеет смысл переходить к новому способу задания многообразия G). На этом и основана идея первого метода ортогональной прогонки. Разобьем отрезок интегрирования [О, А^] на части точками О ^ Xq<. Х^ <i ... <С Хт = X. Определим операцию М, над матрицей G = (gi, ..., gr, go) размерности /Х(''+1) как операцию над ее векторами-столбцами gj следующим образом. Пусть gj(x), i=l, ..., г, решение системы у' = А(х)у при начальном условии у (Х^) = g^, а g^ (х) — системы у' = А{х) у ■}- + fix) при начальном условии у [X^) = gf^; тогда M^g| = g'.{X^_^_^). Определим операцию U ортогонализации столбцов матрицы G. Столбцы матрицы Q=^U{G) обозначаем соответственно qu ..., qr, qo- Векторы q[, .... qr, qo получаются из векторов gi, ■•-, gr, go последовательной ортогонализацией и нормировкой, причем вектор qo не нормируется. Таким образом, последовательно получаем (как и в § 15 гл. II) векторы /-I z, = g,— S {gj, qd qi, (8) 1=1 4l z/ r /=1, '•. i=\ (9) Выразим Zj в соотношениях (8), (9) через qi и перенесем все qt в левые части; получим /-1 /B/, 2,)?/ -f S (gi, qiLi = gh i=\, ..-, г, 2(ffo. qiLi + 4o=go- 1=1 Эту систему соотношений можно переписать в матричной форме QQ=G, где '(Он (U21 ... Curl ®г + 1, 1 О Q = СО/ = 1/Bу, Zj), (йц (U22 • О О , О О . <^г2 <^r + i,2 .. О 1 при Kj^r, со 'г+1. i ■ {go, чд;
§ 61 АЛГОРИТМЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ 575 иначе Q~U {G) = G ■ Q~'. Выберем векторы у[, ..., у^, Уо так же, как в случае метода стрельбы, и осуществим над матрицей Уо'=(У\, ■•-, Уг, Уо) операцию ортогонализации. Пусть применив к Go(A!'o) операцию Мц, получим матрицу Go(X|) = = Mq(Gq(Xo)); затем получим матрицу Gi{Xi) = U{GoiXO) = Go{Xi)QT' и т. д. A0) Через G^{x) будем обозначать матрицы (ff[(Jj), ..., g^^ix), g^ix)). В результате проводимых вычислений получаются матрицы GoiXo), Go(X,) = Mo(Go(Xo)). Gi{X,) = U{Go{X,)) = Go(X,)QT\ G,(X2) = M,(G,(Xi)), .... Gm-I (Xm-l) = и {Gm-2 (Xm-l)) = Gm-2 {Xm-\) Йт-Ь Gm-1 {Xm) = Л^т-1 (G^-l (A^m-l)). Grг {Xm) = V (G^_, {X^)) = G,n-X {Xm) Qm'. A 1) Лемма. Многообразие, пробегаемое концами векторов y = gl{X:^+tc,g]{X,) = G,{X:)c A2) при всевозможных Си ..., Сг, образует многообразие L^ всех значений j/(Z.,) решений системы у'^ A{x)y-\-f{x), удовлетво- ряюи{их левому граничному условию Ву{0)^=Ь; здесь C = {Ci Сг, IV. Доказательство. Действительно, при s = 0 это утверждение очевидно. Пусть оно доказано для некоторого s. Осуществляя операцию Ms, мы переходим от многообразия Lg к многообразию Ls+\ значений таких решений в точке Xg+i: y = Gs{Xs+i)c. Поскольку Gs{Xs+[) = Gs+i {X^+i) Qs+u TO элементы этого многообразия можно записать в виде y = Gs+iiXs+i)Qs+iC. Положим Qs+[C=c; так как cor+i r+i=l. то последняя компонента вектора с равна 1, и, переобозначая с = с, получим такую же, как A2), запись элементов многообразия L^+i;
576 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX g=Gs+i{Xs+i)c. Таким образом, требуемое утверждение дока- Вектор ffo(-'^j) "° построению ортогонален ко всем векторам зано g o/(^s)' /~^' •••' ''• образующим базис многообразия Lg. Следовательно, его норма меньше нормы любого вектора, принадлежащею Ls. Пусть па каждом из отрезков {Л'^, X,+ i] искомое решение задачи записывается в виде /=1 или иначе yix) = Gs{x)P\ A3) где г=(р; р;. 1). Полагая в A3) s = q, x = X^+i, имеем у(;:,+,) = сл^,+,)Г полагая s = q-{-l, x = Xg+i, имеем Кроме того (G,+i(^q+i))~ G,(X,+,) = Q,+i. Из последних трех равенств следует, что P'+'^Q. + .P". (К) Значение Р"* может быть найдено из правого граничного условия DyiX) = D{G„{X„)n=-d. Далее, пользуясь равенством A4) при q^=m—l, ..., О, последовательно определяем р'""', ..., р°. После этого, рассуждая формально, для нахождения значений у(х) в точках отрезка [Х^,-^s+i] можно было бы воспользоваться формулой A3). Однако такой способ требует большой загрузки памяти из-за необходимости запоминать значения матриц Gs(x) в большом числе точек. С позиций экономии памяти выгоднее найти значения y(Xs) и затем на каждом из отрезков [Xs, Xs+]] решать задачи Коши. Мы не будем проводить полное исследование влияния вычислительной погрешности для этого алгоритма и ограничимся разного рода соображениями, говорящими в пользу того, что этот алгоритм не должен быть сильно чувствителен к ошибкам округления, если отрезки разбиения [Xs, ^s+i] не очень велики.
S 7] МЕТОДЫ ДИФФЕРЕНЦИАЛЬНОЙ ОРТОГОНАЛЬНОЙ ПРОГОНКИ 577 Поскольку норма вектора go(X^) меньше нормы любого вектора многообразия L,, то, в частности, где j>(jc) —искомое решение задачи. Предположим теперь, что Xk+\—*Xk при фиксированном Х^. Тогда матрица стремится к матрице Для матрицы GkiXh) преобразование U{Gk{Xh)), приводящее ее к виду, когда первые г столбцов ортонормпрованы, а последний ортогонален к первым, есть тождественное, поскольку эта матрица уже имеет такой вид. Поэтому Qk+i = Е, если Х^+х = = л»,. Естественно, что Qh+i-*E при Х»,+,-♦Л'^. Векторы в первых г столбцах матрицы дк{Хк) имеют норму, равную 1, а Из равномерной ограниченности этих векторов следует, что стремление Gk+\{Xk) к Gk{Xh), а следовательно, и Qk+\ к Е равномерно по множеству всевоаможных точек ^1 ^т при 6 = max|Xft+i —^йМО; k иначе ||Qh+i —£11 < (о(б), где ©(б)—»О при S-»0. Поэтому, если величина б не очень велика, то нормы матриц ЦйцЦ, а также нормы функций I ^^ {х) I на отрезках [Хц, A^h+i] ограничены равномерно не очень большой постоянной. Из полученных утверждений нельзя сделать никаких заключений о хороших свойствах рассматриваемого алгоритма. Однако уже неплохо, что все встречающиеся в вычислениях величины оказываются равномерно ограниченными, причем не очень большими числами. В противном случае округления при вычислениях были бы равносильны заведомо большим возмущениям коэффициентов системы, и были бы все основания сомневаться в разумности использования этого алгоритма. § 7. Методы дифференциальной ортогональной прогоики Построим замыкание при в->-0 описанного в предшествующем параграфе алгоритма. Поскольку операторы М, и операторы ортогонализации по-разному действуют на векторы g^j (Х^)при / =?t О и / = О, то удобно разбить рассматриваемые матрицы на клетки, выделив клетки, соответствующие 19 Н. С. Бахвалов
578 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX решениям ^j неоднородного уравнения. Положим Gs{Xk)^(Ys{Xk), ys(.Xk)), где где "* = 1 о 1 )' 6 -у ~Х т -("^+''' "*'+'• Л^ матрица /?ft — правая треугольная. Введение здесь новых функций и матриц аналогично подобным преобразованиям при построении замыкания алгоритма прогонки в § 4. Обозначим Р^ = {^\ р^)''. Введем обозначения Zs='^s(.Xs), Zs =ys{Xs)- Предположим, существуют гладкие матричные и векторные функции Z(x), г(х), R(x), г 1.x), р(х) такие, что Zs=^Z(x), Zs=^2(x), Rs=^R(x), rs=^r{x), Ps#P(*); gs'^g (x) здесь означает, что max ( II g. - g (X,) II + I ^"^\~ ^' - g' (Xs) Ih -> 0 при u-* 0. дг^ \ I oj II/ Производя поклеточное умножение, можно записать равенство Gs (Xs+\) = Gs+i {Xs+\) Qs+i, или, что то же, (Ys (Xs+y), у, Aз+.)) = (y.+ i (Xs+y\ ys+i {X,+,)) (^ + Y'-^^ *'^^+') , как совокупность равенств Ys (Хз+i) = Vs+i (Xs+i) (£ + (>sR,+i), A) ys{Xs+i) = Ys+i {Xs + i)l)srs+i + ys+i (Xs+\)- B) Поскольку столбцы матриц Ys (*), a следовательно, и сами матрицы удовлетворяют системе у' = А(х) у, то У. {^s+1) = Ys (Xs) + ^ЛJ, (X,) + о F^). Точно так же ys(Xs+l) = ys{^s) + (>s{A,ys{Xs) + fs) + 0{(>t)' здесь As = A{Xs), fs = f{Xs), Вспоминая определения матрицы Zj и вектора Zs, мы можем переписать теперь равенства A), B) в виде Z, + (>,A,Z, = Z,+, (£ + u,/?,+i) + О F2), "s + ^ (^Л + fs) = 2.+ 1 Vs+l + *.+! + О F^),
^ я МЕТОДЫ дифференциальной ортогональной прогонки 579 ■■ AsZs — Zs+^Rs+^ + О (uj). ■■^s2s + fs — Zs+irs+i + 0(us). 6.- Переходя к пределу при в-»-О, получаем дифференциальные уравнения Z' = AZ- ZR, C) 2' = A2 + f- Zr. D) Условие, что столбцы матрицы Z т — У т {Хт) нормированы и ортогональны, можно записать в виде равенства Z^Zm = Е, которое в пределе дает Z'''{x)Z{x) = Е. Отсюда следует, что {Z^Y Z + Z^Z' = £' = 0; выражение для B'')' получаем, транспонируя C); в результате имеем {Z^A^ - R^Z'^) Z+Z"^ (AZ - ZR) = 0, или ■ R + r'^=Z'^{A + A^)Z. E) По построению вектор га+t = y,+t{xs+t) ортогонален векторам 4^/"*"'(*s^.i) — столбцам матрицы Z,+[. Это условие записывается в виде Zj^.[2j_j.| =0 я в пределе переходит в равенство Z'''z = 0. Дифференцируя его, получим или (Z'^A^ - R^Z"^) i + Z'^{Az + f- Zr) = 0. <C учетом равенств Z z = 0, Z Z = E последнее соотношение перепишется в виде Z'^ (а + A'^)z+z'^f-f = О, или r = z'^{A+ А^ г + z'^f. Подставим это выражение г в правую часть D): z'=.Az + f- ZZ^ (Л2 + / + ^z) = (£ - ZZ^) (Az + f) - ZZ^P^z. F) Осталось получить предельное соотношение для F.14); в клеточной форме это равенство записывается в виде fE + 6sRs+i f>sfs+i\ fPs\ f^s+i^ \ 0 I 'KiHry что равносильно равенству (Я + (tsRs+i) Ps + us's+i = P.s+i. или Ps + l ~ ^S о ft I , Переходя к пределу при й -> О, получаем Р' = /?Р + г. G) 19*
580 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX Выпишем вместе все полученные соотношения; Z' == /IZ - ZR, z'~{E-ZZ^){Az + f)-ZZ^A^z, ^^^ верхняя треугольная матрица R однозначно определяется равенством r + r'^^z'^(a + a'^)Z: (9> р' = Лр + г, r = z'^{A + A'^)z + z'^f. A0> Само решение задачи вследствие F.12) записывается в виде y{x)~Z{x)(i{x)+t(x). A1> Таким образом, построенный в § 6 алгоритм ортогональной прогонки замыкается в следующий алгоритм решения исходной задачи. При начальных условиях Z@) = Уо@), г@)=»^о@) определяем функции Z{x), z{x) и R{x} из соотношений (8), (9). Затем определяем Р(Х) из условия D{Z(,X)(i{X) + z{X))=^d, A2) далее интегрируем уравнение A0) в направлении убывания х и получаем значения у(х) по формул* (И). Такой способ решения задачи естественно также называть ортогональной прогонкой. Поскольку при всех $ мы имели II г< 11 < У, то и предельная функция z{x) удовлетворяет неравенству ||z(*)|| ^ Y. Столбцы матрицы Z нормированы и ортогональны; поэтому из (9) можно получить оценку 1|/?|| ^ [^2/" Ili4||; итак, все коэффициенты в получившихся уравнениях ограничены не очень большими .величинами. Следовательно, формальное замыиание алгоритма ортогональной прогонки является регулярным. Способ дифференциальной прогонки, соответствующий соотношениям (8) — A0), не является единственно возможным. Построим еще один способ дифференциальной прогонки. Рассмотрим некоторое линейное подпространство L решений однородной системы у' •= А{х)у, имеющее размерность г. Обозначим через L{x) след значений элементов этого подпространства в точке X. Лемма. Пусть векторы-столбцы Z\ (х^) «^ (-"^о) образуют базис подпространства L (хо), Q (х) — произвольная матрица размерности г у, г, Z(x), матрица размерности I У, г, —решение системы Z'= AZ — ZQ при начальном условии Z (хо) = («i (*o)i —. «г (*о))- Тогда столбцы Zy (х) г, (х) матрицы Z (х) принадлежат подпространству L (х). Доказательство. Если z — решение однородной системы z' = Az, а V — решение сопряженной системы »' = -Л, A3) то (v,zY = (v',z) + (v,x') = = (- а\ z) + (», Аг) = - (в, Az) + (о, Az) = 0. A4> В ортогональном дополненнн L {хд) подпространства L (хо) выберем базш» », (дГд), ■■ -, Vi (хЛ. Через »^ (д:) обозначаем решения сопряженной си* стемы A3) при начальных условиях »^ (*q), а через V (х) матрицу {»,(*),..., »^_^(*)). Если вектор »; (*q) ортогонален всем векторам под» пространства L{Xq), то вследствие A4) вектор v^{x) ортогонален всем век» торам подпространства L (х). Отсюда следует, что столбцы матрицы V (Л
■5 7] МЕТОДЫ ДИФФЕРЕНЦИАЛЬНОЙ ОРТОГОНАЛЬНОЙ ПРОГОНКИ 581 ■образуют базис L {х). Из A3) следует, что V' = — A^V, и поэтому iV^Y = -V'^A. Подставив в равенство (v'^Z)'= V'^Z' + {V'^)' Z значения 2' = AZ-ZQ и (V''')' = - V'^'A, получим •(f''z)'=-(F^Z)Q. A5) у» Матрица U = V Z имеет размерность (I —г) У, г; очевидно, «;; = (»,•. «,). Поскольку векторы г, (дг^) принадлежат L (дг^), а векторы v^ (дГд) — ортого- т иальному дополнению L (дг^), то ",)(*q) = 0 при всех t, /. Согласно A5) векторы U; {х) — строки матрицы U — удовлетворяют однородной системе линейных уравнений u^^ufi. При начальном условии и^(хЛ = 0 эта система имеет единственное решение «^ (д:) ^ 0. Это означает, что (»^ (д:), ■*/(*))—0> при всех I, ;'; векторы г.{х) ортогональны векторам о,-(х), образующим базнс LT(x), н, следовательно, принадлежат L{x). Лемма доказана. Задаваясь произвольной матрицей Q{x) и решая систему A2), получим матрицу Z(x), столбцы которой при каждом х принадлежат подпространству Цх). Обсуждая метод стрельбы, мы видели, что при Q(x) bs О и некоторых А(х) способ задания подпространства L{x) при помощи столбцов матрицы Z{x) является не очень удачным. Поэтому нужно уделить специальное внимание выбору матрицы Q{x). Один из возможных способов выбора матрицы Q{x) возник у нас в результате построения замыкания алгоритма ортогональной прогонки. Построим другой такой способ. Найдем матрицу Q{x), при которой столбцы Z{x) меняются по возможности медленно. Плавность изменения матрицы Z{x), вообще говоря, должна давать возможность интегрирования системы A2) с более крупным шагом. С этой целью рассмотрим задачу минимизации норм | *i j = V («;> *() за счет выбора элементов qii(x) матрицы Q{x). Столбец z, удовлетворяет системе уравнений г 2^ = /12, - 2 ^Ц'Г Г Векторы 2''i/*/ образуют линейное подпространство. Для минимальности 1 2, необходимо и достаточно, чтобы вектор «^ был ортогонален этому подпространству, т. е. Га,, 2,) = О при всех / Совокупность условий B^,2,^=0 при всевозможных i, j можно переписать в матричной форме ZV = 0. A6) Подставляя сюда значение Z', получим Z^AZ - Z'''ZQ = 0. Если матрица Z Z обратима, то Q = (z Z) Z AZ; поэтому Z'^iE-Ziz'^Z)'^ Z'^)aZ. A7) Умножая A7) на Z'", получаем равенство Z'^Z' = Z^AZ - (Z^Z) {Z^zy^Z^AZ = 0;
582 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX транспонируя равенство Z^Z' = 0, имеем Z'^{x)Z{x) = Z^@)Z@). A8> откуда т. е. Таким образом, если Z(x)—решение A7), то матрица Z'''{x)Z{x) остается обратимой при всех х, если она была обратимой при х = 0. Из выписанных соотношений вытекает существование решения A7), удовлетворяющего условию A8), если матрица Z''@)Z@) обратима. Возьмем в качестве столбцов матрицы Z@) г линейно независимых решений системы Sz = О и найдем решение системы A7) при таком начальном условии. Матрица Z'"@)Z@) является матрицей Грамма для этих г линейно независимых векторов и поэтому обратима. Для задания подпространства W решений неоднородной' системы, удовлетворяющих левому граничному условию, необходимо задать еще некоторый вектор этого подпространства. Если flu(O) = ft, то решение системы u' = Au-\-f при начальном условии и@) принадлежит W. Любой вектор Z(x)q(x), где ^(д:) — вектор-столбец размерности г, параллелен W, и поэтому решение системы u' = Au + f-Zq A9) при любом q(x) также принадлежит W. Потребовав минимальность ||и'|| по множеству всевозможных q, получим систему, записываемую в матричной форме в виде Z'''u' = О или Z'^{Au + f — Zq)='0. Отсюда , = (z''zr'z''(^«-f/). и окончательный вид системы A9) будет u={e-Z {z'^Z)~^ z'^)(Au + /). B0) Искомое решение задачи принадлежит многообразию u-\-Zc. Значение с(х) определяется из правого граничного условия Du(X) =d Подставляя у = = и + Zc в уравнение у' = Ау -\- f, имеем (Е - Р) {Аи + f) + Zc' + {Е-Р) AZc = Au + AZc -f fi здесь P=Z{Z^Zy^ Z^; отсюда Zc' = PAZc -f PAu -f P/, иначе c' = Z~^P(AZa + Au + f). B1) Решаем эту систему в направлении убывания х, а затем определяем у(х) = = u(x)+Z(x)c{x). Возникает вопрос, какой из двух методов дифференциальной прогонки — (8) — A0) или A7), B0), B1)—является более-предпочтительным. На этот вопрос трудно дать однозначный ответ, не учитывающий конкретных свойств рассматриваемой системы. Второй метод предпочтительнее тем, что согласно построению соответствующие ему функции Z(x), и(х), вообще говоря, должны быть более гладкими; поэтому можно ожидать, что при равной точности окончательного результата интегрирование системы A7) будет происхо-
§ 8] НЕЛИНЕЙНЫЕ КРАЕВЫЕ ЗАДАЧИ 583 дить с более крупным шагом, чем интегрирование системы (8). С другой стороны, при интегрировании системы уравнений A7) объем вычислений ма шаге может оказаться несколько большим из-за необходимости обращения матрицы Z'^'Z. Может возникнуть желание отказываться от обращения матрицы Z'^Z на каждом шаге интегрирования, поскольку эта матрица не зависит от X, особенно в случае, когда столбцы матрицы Z@) ортонормированы и матрица Z''@)Z@) соответственно единичная. При таких упрощениях исходной системы A7), B0), B1) решения системы не меняются; однако может измениться в нежелательную сторону характер устойчивости решений системы к округлениям, и поэтому при отсутствии детального анализа от подобного предложения стоит отказаться. Для уравнения у" — pix)y =■ ]{х), рассматривавшегося в § 4, случайно оказалось, что замыкание алгоритма регулярно и решения уравнений замыкания одновременно устойчивы к округлениям. Для системы уравнений E.1) это уже не так. Замыкание алгоритма ортогональной (8) — A0) прогонки регулярно в том смысле, что решения (8) — A0) остаются ограниченными не очень большими величинами; в то же время система уравнений в вариациях для уравнения (8) может иметь сильно растущие решения, и поэтому возникают сомнения в практической устойчивости этого алгоритма. На самом деле, вопреки этим сомнениям, рассматриваемый алгоритм обладает практической устойчивостью к округлениям. Дело заключается в некоторой неоднозначности понятия замыкания вычислительного алгоритма. При формальном построении этого замыкания мы можем получать различные дифференциальные уравнения относительно одной и той же функции; решения некоторых из них устойчивы к округлениям, других — неустойчивы. Правильный ответ на вопрос об устойчивости будет получен в случае, если замыкание правильно отражает все свойства рассматриваемого алгоритма. В случае метода ортогональной прогонки вместо уравнения (8) было бы правильнее получить уравнение решения которого действительно устойчивы к возмущениям. Последние высказывания могли окончательно подорвать доверие читателя к изучению замыканий вычислительных алгоритмов. Однако следует иметь в виду, что мы предлагаем использовать замыкания алгоритмов именно при предварительном изучении и конструировании новых алгоритмов в случае, когда проведение полного анализа погрешности может потребовать большого времени и неоправданных затрат. Свойства получаемых при таком конструировании алгоритмов должны проверяться затем путем вычислительного эксперимента. Задачи. 1. Построить численный метод решения краевой, задачи, замыканием которого был бы алгоритм A7), B0), B1). 2. Построить аналоги описанных алгоритмов ортогональной прогонки, приспособленные специально для решения краевых задач в случае системы j,"-^ (*)» = /(*). § 8. Нелинейные краевые задачи Существует аналогия между методами решения этих задач и нелинейных алгебраических задач. Так же как в последнем случае, мы проведем обсуждение различных методов, не приходя в конце концов ни к какой рекомендации по решению произвольных нелинейных краевых задач. По существу всякий метод решения нелинейной краевой задачи сводит ее решение к решению
584 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ IX некоторой нелинейной системы уравнений. Различные методы решения нелинейных краевых задач отличаются выбором параметров этих вспомогательных задач и, естественно, методом решения этих задач. Подобно рассматриваемой ниже задаче стрельбы по цели многие краевые задачи успешно решались задолго до появления ЭВМ и самого понятия дифференциального уравнения. Аналогия со многими такими домашинными методами решения краевых задач часто помогает и теперь при разработке новых методов решения. Рассмотрим случай положения орудия, цели и наблюдателя на одном уровне над горизонтом. Траектория снаряда описывается системой трех дифференциальных уравнений второго порядка, граничные условия — траектория снаряда начинается от орудия и кончается у цели. Мы не будем выписывать эту систему дифференциальных уравнений, поскольку ее конкретный вид никак не используется. Стреляющий имеет в своем распоряжении два параметра — азимут ствола орудия а и его угол над горизонтом р. При отсутствии заранее проведенной пристрелки и учега влияния атмосферных условий первый снаряд (что соответствует решению задачи Кошн для нулевого приближения к искомым начальным условиям) разорвется где-то в окрестности цели. Рассмотрим сначала простейший случай, когда наблюдатель находится возле орудия. Наблюдая отклонение разрыва от направления на цель Д«, он изменяет угол а на величину Да с тем, чтобы при следующем выстреле направление на разрыв и цель совпало. Вследствие ряда факторов, например неоднородности атмосферных условий, вообще говоря, такого совпадения не произойдет, однако зачастую -дальнейшего уточнения направления на цель уже не требуется. Затем наблюдатель подбирает такие углы Р, чтобы иметь в распоряжении два разрыва на одной прямой с целью — один ближе, другой дальше него, как говорят, «зажимает цель в вилку». Если в его распоряжении нет никаких технических средств, то он может судить только о том, происходит разрыв ближе или дальше цели. Если g(p) —дальность полета снаряда, а go—расстояние до цели, то ему приходится решать уравнение g(^) = go, получая при каждом выстреле только информацию о знаке g(P)—go- Поэтому он производит операцию деления вилки надвое, каждый раз выбирая угол р посредине между ближайшими между собой значениями р, соответствующим перелету (sign (g(p)—go) > 0) и недолету (sign(g(p)-go) <0). Задача существенно усложняется, если наблюдательный пункт находится не там, где орудие. В этом случае пристрелка может производиться по более сложному правилу, аналогичному методу Зейделя. Наблюдатель получает информацию об угле у отклонения разрыва от направления на цель с наблюдательного пункта, а при у = О также о сравнительной дальности от него положения разрыва и цели. Сначала при фиксированном угле р наблюдатель корректирует угол а так, чтобы направление на цель и разрыв совпали. Угол Y между направлениями на цель и разрыв является какой-то функцией \{а, Р). Таким образом, на этом этапе наблюдатель итерационно решает уравнение у(а, Р) =0 при фиксированном р. Поскольку известно значение \\а,Р), то здесь может быть применен метод, более быстрый по сравнению с делением отрезка пополам, например метод секущих. Получившееся значение угла а зависит от р, и мы будем обозначать через а(р) решение уравнения Y(a, Р) ^ 0. При положении разрыва, цели и наблюдателя на одной прямой последний может указать, в каком направлении следует изменить угол Р; при этом новом значении р окажется, что v ^ О и далее потребуется уточнение значения а. Имея в распоряжении вилку из разрывов, находящихся на прямой наблюдатель — цель, он может начать делить пополам интервал, где находится искомое значение р. Обозначим через go — расстояние от наблюдателя до цели, а через g(a, Р) — расстояние от него до разрыва при
5 8j нелинейные краевые задачи 58§ заданных аир. Таким образом, задача состоит в решении системы / Y (а. р) = О, g (а, р) = я„. Совокупность действий наблюдателя в целом можно характеризовать следующим образом Он решает задачу, подбирая Р на основании информации о знаке разности g(a(P), Р) — go! здесь а(Р) решение уравнения Y(a, Р) = О, которое в свою очередь находится каким-то итерационным методом. Конечно, опытный наблюдатель практически снижает требуемое число итераций (выстрелов), интуитивно применяя какую-то комбинацию указанных выше классических численных методов. Существо большинства методов решения нелинейных краевых задач можно описать следующим образом. Рассматриваемая задача сводится к решению нелинейной системы уравнений относительно не очень большого числа неизвестных; далее эта система решается при помощи какого-либо способа решения нелинейных систем. Выбор вспомогательных переменных, как говорят, параметризация задачи, часто имеет решающее значение для ее успешного решения. Рассмотрим нелинейную краевую задачу y' = f{x,y), В{ут = 0, D(y{X)) = 0, У = {Уь ■•-, yiV' B = {bu..., bi^rV, D = {d„...,drY. ^' Пусть функции g^i(j/@)), ..., gr{y{^)) таковы, что система уравнений й,(г,@)) = о йг-г(г/@)) = о, gi{ym-su--; gr{ym=er ^^ однозначно определяет вектор J/@) = (оо(^), g = {g\ gr)- Тогда задача A) может быть сведена к системе нелинейных уравнений относительно параметров gi, ..., gr. Довольно часто граничное условие в точке О имеет вид i/,@) = 0, .... i/z-r@) = 0; тогда в качестве gi{y{Q)), • ■ ■, griyiO)) целесообразно взять yi-r+i{0), ..., yi{0). Таким образом, здесь в качестве искомых параметров выступают неизвестные компоненты решения в точке л: = О, Как правило, требуемая система нелинейных уравнений не выписывается явно, но можно указать алгоритм вычисления ее правой части. При каждых gi, ..., gr, решая систему B) можно определить вектор у{0) = (Hoig); решая задачу Коши при начальном условии у@), определяем у(Х) =ft)x(g') и затем находим ^^(g) = D{<iix{g))- Таким образом, решение задачи A) сводится к решению нелинейной системы ^{g) = 0. C) 1/-1Q Н С Бянвалов
586 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX Эта система имеет следующие особенности, которые следует учесть при выборе метода ее решения: 1. Вычисление каждого значения ijj обходится слишком дорого— оно требует численного решения задачи Коши; поэтому надо ориентироваться на методы, требующие по возможности меньшего вычисления значений ijj. 2. Объем вычислений при нахождении вектора \|з или одной его компоненты г|3{ практически одинаков; поэтому применение методов типа Зейделя, где на каждом шаге используется информация о значении только одной компоненты 1|з;, вообще говоря, должно быть нерациональным. Описанный выше способ пристрелки по цели аналогичен методу Зейделя, но его применение оправдывается спецификой задачи в связи с ограниченными возможностями наблюдателя. Значительную группу методов решения нелинейных систем составляют методы, где наряду со значениями функций г}),- используются значения их производных, отыскиваемые двояко. 1. Для определенности речь пойдет о вычислении производных -gj-• Пусть мы задались значениями g°^, ..., g°. Из системы уравнений B) найдем соответствующие yi@) уДО). Дифференцируя уравнения системы B) по gi, получаем систе- -51/, @) му уравнении для отыскания производных —^-— /=1 I m= 1, Решение системы y' = f{x,y) при начальных условиях i/i@). •••> yii^) является функцией от параметров g,n'> вектор производных dyjx) _ / (Зу, (х) ду^\т удовлетворяет системе дифференциальных уравнений 1(^)=М..)^. 1.'Щ- D) После численного решения этой системы получаем вектор -——, Теперь можно найти производные
f 81 ЙЕЛИНЕЙНЫЕ КРАЕВЫЕ ЗАДАЧИ 58? Это-^ путь может быть целесообразен, если, например, многократно решается краевая задача A) при одной и той же правой части f{x,y), но при различных граничных условиях. В качестве стандартного метода определения производных -^— этот метод неудобен тем, что наряду с написанием программы вычисления правых частей уравнения требует от пользователя также написания программы вычисления производных -^. 2. Для большинства итерационных мегодов решения систем уравнений значения производных правых частей требуются лишь с умеренной точностью. Поэтому для нахождения этих производных можно просто воспользоваться какими-либо формулами численного дифференцирования, например, простейшей d^ijgy ..., 8,) ^i(gi + ^'g2 Sr)-b{S Br) dgi ^ A Вычисление производных -^— no этой формуле требует дополнительно (по сравнению с нахождением значений ■^i{gi, ... ..., gr)) еще одного численного решения задачи Коши, соответствующей параметрам gi -f Д, ^2, • • •. gr- Поскольку при численном нахождении значений функций \pi может иметь место большая погрешность, которая еще более возрастет при делении на Д, довольно часто вопрос рационального выбора Д требует дополнительного изучения. Для описываемого метода типично одновременное нахождение производных всех функций 1|з,- по фиксированной переменной g/, поэтому здесь может оказаться разумным применение итерационных процессов с поочередным уточнением параметров gj. Можно представить себе такой итерационный процесс: параметры gj уточняются в циклическом порядке; уточненное значение параметра gj выбирается из условия минимума некоторой функции 0/(t|5,(ef„..., gr) + ^'^' ^\ --'^'^ (g/ - g/). • • •, % (gl. ■ ■ ■, gr) + I d^rJg ^^(gy-g/)). (cm. подробнее § 4 гл. VH). Так же как при решении линейных краевых задач, возникает вопрос о применимости метода в условиях реальных округлений. Если решения г\ системы уравнений в вариациях г\' = fyr\ сильно растут с ростом х, то погрешности в значениях g'j и вычислительные погрешности при численном интегрировании приводят
Й88 ЧИСЛЕ[1НЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ (ГЛ. IX К большим ошибкам в значениях функции i|3i; это в конечном счете приведет к большой погрешности получаемого решения. Если такая погрешность окажется недопустимой, то следует ввести иную параметризацию задачи. Опишем способы решения, где в качестве формальных параметров выступают значения решения на всем отрезке. Один из предлагавшихся ранее способов решения нелинейной задачи Р(у)=0 заключался в следующем: выбирался линейный оператор Lu, действующий в том же пространстве, что и Р. Последующие приближения выбирались из равенства I(U„+, —Un) + P(Un) = 0. Например, в конкретном случае задачи A) можно рассмотреть оператор L, определяемый равенствами Ly = C(х)у' — А {к)у, Q<x<X, Ly\^^, = B,y{0), С{х), А{х), Во, Do—некоторые матрицы. Тогда последующие приближения будут определяться как решения линейной системы Cix)iy„^,-yJ-A{x){y„^,-y„) + y'„-f{x,y„) = 0, Во{уп+ЛО) - yniO)) + В (у, @)) = О, F) Do {Уп+1 (Х) - у, (Х)) + D {у, (Х)) = 0. В конкретном случае метода Ньютона (см. § 2 гл. VII) оператор L зависит от « и является оператором производной, соответствующим прибли^кению Уп(х): Lu = u' — fy (х, уп (х)) и при х^ (О, X), Lu\,^ = By{y„mu{0), Lu\^^^=^Dy{yAX))uiXy, здесь Тогда соотношения F) приобретут вид /„+1 -/.(*.Уп(^)){Уп^:-yn)-f{^'у.(^))=0. о<х<х, By (Уп т {уп+1 @) - Уп @)) + В (у„ @)) = О, G) Г>у iVn @)) iVnn @) - Vn т + D {у, @)) = 0.
4 si НЕЛИНЕЙНЫЕ КРАЕВЫЕ ЗАДАЧИ 58§ Согласно общим теоремам о сходимости метода Ньютона, итерационный процесс E) сходится в случае достаточно гладких f(x,y), bi и du если начальное приближение достаточно близко к искомому решению. Естественно, что методы решения вспомогательных линейных задач, например задачи G), следует выбирать в достаточной мере устойчивыми к влиянию вычислительной погрешности. В только что описанном способе в качестве отыскиваемых параметров задачи формально выступают значения решения на всем отрезке интегрирования. Поскольку решение линейной краевой задачи производится численно, то в реальных вычислениях будут участвовать приближения {/* к значениям решения y{Xh) в узлах сетки О = лго < Xi < ... < Xn = X. Например, если численное интегрирование производится при помощи метода Эйлера, то вместо G) имеем соотношения Такая параметризация краевой задачи неудобна тем, что при большом числе узлов интегрирования и большом порядке системы требуется большая загрузка памяти ЭВМ. Может случиться, что приближения Уп{х) имеют различный характер гладкости в том смысле, что гладкость одних приближений требует мелкого шага интегрирования на одних участках, а гладкость других приближений — на других. Тогда описываемый метод потребует модернизации, связанной с пересчетом значений этих функций с одной сетки на другую. При решении систем нелинейных уравнений иногда реко^ мендовалось с целью уменьшения объема вычислений проводить итерации по методу Ньютона с неточными значениями производных правых частей. Для задачи A) аналогичный прием помогает ниже уменьшить объем используемой оперативной памяти ЭВМ. Зададимся точками ' и после завершения каждого шага итерации запоминаем лишь приближения У/, / = 0, ..., т—1, к значениям решения в точках Ко, ..., Хт-1- Если решения системы уравнений в вариациях на искомом решении не сильно растут на отрезках [Xj_i, Xj], то после нахождения всех y{Xj) значения решения на всем отрезке могут быть найдены численным интегрированием исходной системы по отрезкам [Xj-i, Xj],
590 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ З-^ДАЧ [ГЛ IX Распишем метод более подробно. Пусть Y = {уо Ут-\), Р — оператор, ставящий в соответствие всякой функции z{x) матрицу Pz = {z{Xa), ..., 2(Xm-i)), а Q—оператор, ставящий в соответствие матрице Y функцию и{х)= QY, определенную на [О, X], причем QPy = у, если у —решение исходной задачи. Предположим, имеется какой-то исходный итерационный процесс, где последующее приближение находится по предыдущему как решение системы у;+, = л(л, у„, у„+,) при граничных условиях 6(У„@), l'n+i@))=0, d{Yn(X), ¥п+\{Х)) =0, причем искомое решение является стационарной точкой и для итерационного процесса: у' = А {х, у, у), Ь{у{0),ут = 0, d(yiX),y{X))=^0. Очевидно, тогда искомое решение является стационарной точкой и для итерационного процесса: Y'r,+i = A{x,QPY„,Y„+i), &(QPy„Uo.Vi@)) = 0- (8) т. е. у' = А (х, QPy, у), Ь [QPy |^^„, у) = 0, d {QPy U^,, у) = 0. Рассмотрим одну конкретную реализацию этого итерационного процесса. В качестве оператора Q возьмем оператор, ставящий в соответствие матрице К= (Уо, ..., Ут-i) функцию и[х), которая на полуинтервалах [Xq, Xi), ..., [Хщ-ч, Xm~i) и отрезке [Хт-и ^т\ является решением задачи Коши для системы и' = fix, и) при начальных условиях w(Xj) =Yj. Предположим, что А {Х, Уп, Уп + l) = go {Х, Уп) + g\ {X, Уп) Уп+Ь Ъ (Уп @), y.+i @)) = 6о (Уп @)) + Ь,{уг, @)) jf„+i @), d (Уп (Х), Уп+1 (Х)) = do (Уп (Х)) -f d, {у, (Х)) уп+, (Х). Тогда для решения линейной краевой задачи г/:+,=^о(^' QPyn) + s,{^' QPyn)yn+v (9) bo {{QPyn) U) + *i {((^РУп) U) «/„+! @) = 0. d, {{QPyn) Ux) + rfi {{.QPyn) Ux) Уп+ЛХ) = а
§ 8] НЕЛИНЕЙНЫЕ КРАЕВЫЕ ЗАДАЧИ 591 может быть применен какой-либо из методов решения линейных краевых задач. Применим метод ортогональной прогонки в первой форме при условии, что точки Х], ..., Хт-1 являются как раз теми точками, в которых производится ортогонализация решения. При этом потребуется хранить в памяти значения некоторых векторов и матриц, соответствующих точкам X,, и на отрезках [X,, Х,^{\ осуществлять численное интегрирование нескольких решений однородной системы v'=gAx.QPyn)v A0) и решения неоднородной системы (9) Поскольку QPt/n, согласно определению, является решением системы {QPyn)' = f{x,QPyn\ (И) то интегрирование систем (9) — A1) можно осуществлять одновременно, не прибегая к запоминанию значений этих функций в промежуточных узлах. Произведем усовершенствование алгоритма, представляющее интерес и при решении других нелинейных и линейных задач. Приближения к искомому решению получаются в виде линейных комбинаций частных решений систем (9) и A0) В случае сходимости к решению имеем QPyn(x) -^у{х) и системы (9), A0) переходят в системы и' =go{x, y) + g\ix, у) и, v' = gi{x, y)v. Например, в случае метода Ньютона эти системы имеют вид и' = f{x,y (X)) + fy (X, у (X)) (и-у (х)), ■о' = !у(х, y{x))v. Иногда (например, при решении задач с пограничным слоем) отыскиваемое решение довольно гладкое, за исключением окрестностей концов отрезка интегрирования; в то же время на протяжении всего отрезка интегрирования решения системы A0) резко меняются В результате этого д^е там, где искомое решение гладкое, для его получения с приемлемой точностью требуется интегрировать вспомогательные системы уравнений A0), (И) с очень мелким шагом. Чтобы избежать этого, полезно перейти к новой неизвестной функции rn+i = yn-\-i — QPVn- Для определенности будем проводить рассуждения на примере метода Ньютона. Тогда в точках непрерывной дифферонцируемости г„+1(д:) имеем г;+, = f {X, QPy„) - (QPy^y + fy (X. QPy^) r„+i, иначе r'n+, = fy{'c.QPyn)'-n+i- A2) Соответственно граничными условиями будут В ((QPyn) 1^=о) + By ((Q^J'«) Uo) '•n+1 @) = 0. D ((QPyn) \,^x) + Dy {(QPyn) Ux) r„+, (X) = 0. A3) функция уп+i определяется как непрерывно дифференцируекгое решение (9), а QPyn, возможно, имеет разрывы в точках Xi, .,., Xm-i- Поэтому [гп+ihj = - [QPyn.]x., У = 1 m - 1;
592 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX здесь Шх= lim (g(x + e)-g(x-e)). е-»+0 Систему уравнений для отыскания fn+i(x) можно записать в обобщенной форме в виде r'n+\-gn('') + fy(X.QPyrd'-n+l' A4) m-1 gn{x) = - ^[QPyn]xfi{x-Xi): /=I ' здесь в@ — б-функция. При решении краевой задачи A3) —A4) методом ортогональной прогонки с точками ортогонализации Xi, ..., Xm-i наличие 6-функций в правых частях этой системы не вносит никаких осложнений: после интегрирования однородного уравнения A0) на отрезках [^j-i, X,] к получившемуся значению нужно добавлять величину — lQPyn]xi. Могло бы показаться, что такая замена неизвестной функции ничего не меняет, поскольку однородная система уравнений, соответствующая системам (9) и A4), является одной и той же. В действительности между этими двумя итерационными процессами имеется существенное различие. В первом случае приближения yn+i(Jc) получаются на каждом участке [X^-i, X,] как ли- г нейные комбинации "■^(х) + ^ c-^Vj^ (х) решений уравнений (9) и A0), 1=1 причем, поскольку правая часть (9) не стремится к нулю, то Un (д;O*0 и, соответственно, не стремится к нулю вектор коэффициентов с,„. Во втором случае также имеем г (=1 Поскольку векторы Un(Xj), 0(n(^j) ортогональны, а f„+i(X,)--^0, то Un(x)-^Q и Cin-*-0 при п.-*-оо. Функции v,„(x) умножаются на малые множители, и поэтому ошибки при их численном отыскании существенно меньше сказываются н^получаемых приближениях. Точно так же и для неоднородного уравнения относительно Ип (х) есть основания ожидать снижения тре- •бования иа шаг интегрирования вследствие стремления Un(x) к пулю. При грубой интегрированни уравнений для функций Un, 0(п итерационный процесс несколько видоизменится, не исключено, что произойдет некоторое замедление скорости сходимости; однако есть основания надеяться, что в целом свойства алгоритма улучшатся за счет меньшего объема вычислений на каждом шаге итерации. Поскольку высокая точность в определении частных решений систем A2), A4) не требуется, то, кроме непосредственного численного интегрирования A2), можно прибегнуть и к более грубым способам интегрирования. Для определения в точках Xj значений решений однородной A2) и неоднородной системы A4) при заданных условиях в точках Xj-\ требуется осуществить численное интегрирование уравнений в вариациях ц' = f^{x,QPyn)t\. Согласно определению QPyn удовлетворяет на [Х}-1, Xj] исходной системе (QPyny = f(x,QPyn). Пусть Уе{х)—решение этой же системы при начальном условии y,(Xi_,)=QPyJ^^_^ + BVj_,. Согласно выводу системы уравнений в вариациях вектор-функция (je (х) — — QPyn)e'^ при малых е приближает решение R{x) уравнения A2) при на-
« 9] АППРОКСИМАЦИИ СПЕЦИАЛЬНОГО ТИПА 593 чальном условии R(Xj-i) = oj_i. На каждом из отрезков [Xj_i, Xj] нам требуется найти г + 1 решение системы R' = /„(х, QPyn)R. Отыскание всех этих решений на каждом отрезке [Х^-1, Xj] по описанной выше процедуре потребует проинтегрировать систему у' = f (к, у) г •}-1 раза. К итерационным методам решения краевых задач в равной мере относятся рассуждения из гл. VII о целесообразности повышения точности вычислений лишь по мере приближения к решению. Из проведенных нами рассуждений по поводу последнего из описанных методов видно, что эту точность целесообразно существенно повышать лишь при вычислении правых частей неоднородных уравнений, т. е. величин [QPy]\Xj; таким образом, достаточно повышать точность лишь при интегрировании уравнения (QPVn)'^f(x.QPyn). Так же как в случае нелинейных алгебраических задач, можно привести много различных методов, которые сходятся к решению при достаточно хорошем начальном приближении. И так же как там, нельзя предложить метод, пригодный для эффективного решения любых нелинейных краевых задач. Поэтому при практическом решении конкретных нелинейных задач обычно приходится заниматься «доводкой» метода: предлагается какой-то специальный метод получения начального приближения, метод модернизируется с целью расширения области начальных условий, при которых он сходится для данного конкретного класса задач, н т. д. § 9. Аппроксимации специального типа Рассмотрим краевую задачу (^W^/;);-PWf/ = /W, f/@) = a, y{X) = b, (I) где p{x.) ^0, k{x) трижды, p{x), f{x)—дважды непрерывно дифференцируемы, за исключением конечного числа точек, где они или их производные k', ft", ft'", р', р", f, f" могут иметь разрывы первого рода. Пусть К, Р, Р — множества точек разрыва, соответственно, функций k, р, f или их производных; Q == КИ Р U F. Решением задачи (I) будем называть функцию у{х), удовлетворяющую следующим условиям: 1) у{х) непрерывна на fO, X]; 2) у{х) удовлетворяет уравнению всюду на [О, X], за возможным исключением точек множества Q; ,3) функция w{x) = k{x)y'^, называемая «потоком», непрерывна на [О, X]. Из последнего условия следует, что функция y^= ^;^. непрерывна всюду, за исключением точек разрыва функции k{x); в этих точках у'^ будет иметь разрывы первого рода.
594 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX Можно показать, что производные у'"(х) и y('^^(x) непрерывны и равномерно ограничены на множестве-[О, А!] \ Q. Если при построении разностной схемы не учитывается факт разрывности у'^, то может получиться разностная задача, решение которой не сходится к решению задачи A). Для построения конечно-разностных схем в случае уравнений с разрывами и другими особенностями коэффициенгов и решений полезно ввести новые переменные (функции или аргументы) так, чтобы решение новой задачи обладало большей гладкостью. Часто такой переход осуществляется не совсем явным образом, подобно тому, как показано ниже. Поскольку w{x) непрерывна, а производная w', = p{x)y + f{x) B) непрерывна, за исключением точек разрыва р{х) и /(jc), то ■функция w{x) непрерывно-дифференцируема. Как при целых, так и не при целых s будем обозначать Ха = sh. Интегрируя B) в пределах от JCq-v, до JCq+v,, получим г«К+1/2) —г1У(д:,-1/2)= \ (р{х) у(х) + f {x))dx. C) *<7+I/2 J *<7-I/2 Так как функция у{х) кусочно-дифференцируема, то у{х) = у (л;,) -f О (Л) при х-х^ = 0 (Л). Поэтому C) можно переписать в виде ■«Ч+1/2 w{x^+U2)-w{Xg-v2)= j {p{x)y{x,) + f{x) + 0{h))dx = 'fl-I/2 здесь yix,)p, + f, + Om; ■«<J+l/2 ■*<7+l/2 P, = i J Pix)dx, f, = } J f{x)dx. ^<7-l/2 *fl-l/2 После деления па fi получится соотношение '^(^„+l/2)-'^(^-l/2) /j Mix,) = f,-\-Oih). D)
S gj АППРОКСИМАЦИИ СПЕЦИАЛЬНОГО ТИПА 595 в случае, если интервал (Xj-i,Xj) содержит точки разрыва у\ W (Х,_,/,)) погрешность от непосредственной замены ——j^—-^ на , , ,1/ (ХЛ — !/(*,_,) *(-*/-i/2J ■—р—-—- может оказаться величиной порядка h-K Для получения лучшей аппроксимации введем в рассмотре- X ние вспомогательную независимую переменную /= 'ТГТ • ^^ о du , , V dii ограниченности производной по д: и равенства ~лТ^^^^>~д~ следует ограниченность производной по /. Функция w == =/г (д:)-^ = -^имеет ограниченную производную по д:, а следовательно и по t. Таким образом, вторая производная l)'l^ ограничена и можно написать равенство dy X dt ^^''^-^^'^-Ч О (/,-/,..); <;_,/2 '/-О-. здесь Поэтому После подстановки k{x)-y-\ в левую часть D) получим "* U<J±l/2 {'(*9 + l) —!/(*<?) y(Xq) — y(Xq-i) hk7L,9 /Ife~' r, = -^^^ r -^^^ Mix,)-f, = 0{\), F) *9+I/2 "«0-1/2 '4' где , _ 1 г rf* соответствующая конечно-разностная схема имеет вид Уд + 1-Уд Уд-Уд-\ Максимум погрешности аппроксимации у полученной схемы есть 0A); поэтому для получения оценки погрешности потребуется принять во внимание ряд дополнительных соображений.
696 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX В Предположении отсутствия округлений погрешность приближенного решения, согласно B.10), запишется в виде fc«=i Используя определение G„ (см. § 2) и полученные там оценки, можно получить соотношения max |G*|<D<oo, 0<,kh.nh<,X max |0^'-0*| = 0(Л). ^^ 0<th, пЛ<Х Из теории дифференциальных уравнений известно, что производные решения до четвертого порядка включительно равномерно ограничены всюду, за возможным исключением точек Q. Поэтому, если интервал (JCq-i, JCq+i) не содержит точек Q, оценку F) можно уточнить: в левой части F) разложим у{х), k{x), р{х) и f{x) по формуле Тейлора в точке Хд с остаточными членами порядка h^, h^, h^ и /i^ соответственно. После проведения элементарных выкладок с учетом равенства A) получится, что г, = 0{h^). Воспользовавшсь этой оценкой, получаем равенство /?„ = 0(Л=')-2'Л0^г,. Знак 2 означает, что суммирование ведется только по зна- k чениям k таким, что интервал {xk-u Xh+i) содержит точки разрыва коэффициентов уравнения или их производных соответствующего невысокого порядка. Для значений q = k, соответствующих S > представим rq в виде ^^_ >г_К1т _ ^^Л? р,у{х,)-и = -_}Е h где (О y(^/+i)-y(^/) /+1/2 АЬ-1 ^(^/ + ./2)- Согласно D) выражение в фигурной скобке есть 0{h), число точек разрыва конечно, и поэтому выражение погрешности уже можно записать в виде
$ gj АППРОКСИМАЦИИ СПЕЦИАЛЬНОГО ТИПА 597 Если интервал {х^, JCh+i) содержит точку разрыва, то соответствующее значение <йк+\а войдет в 2' с коэффициентом С* —G*"*"'; если этот интервал не содержит точки разрыва, то непосредственным разлйжением по формуле Тейлора убеж^ даемся, что шй+1/2= 0(/l^). Поэтому возможно дальнейшее преобразование выражения для Rn'- здесь S" означает суммирование по k, соответствующим интервалам (xk, Xh+i), содержащим точки разрыва k{x). Согласно E) имеем (Ок-ч, = 0(h) равномерно по всем k. Воспользовав» шись также (8), получаем окончательную оценку погрешности max |/?„| = 0(Л2). При использовании схемы G) вычислительный процесс не зависит от положения точек разрыва. Поэтому ее относят к классу однородных схем. Схема G) на первый взгляд обладает следующим. неудобством. Ее коэффициенты ^^^.i^ , р,, f, записываются как некоторые интегралы. На самом деле можно показать, что при погрешности в значениях этих коэффициентов O(ft') погрешность приближенного решения оказывается также О (А'). Поэтому, если интервал (jc^-i, Jc^+i) не содержит точек разрывов, то без потери порядка точности можно заменить pq на p(Xq), f, на f{Xq) и ^-+i/ на k (х^^ ,/^). Погрешность аппроксимации конечно-разностных методов численного интегрирования записывалась нами в виде fmi/<"'"'"''@ и поэтому равнялась нулю в случае, если решение было многочленом степени т. Может оказаться, что решение задачи лучше приближается не и<'ногочленами, а линейными комбинациями каких-то функций, отличных от одночленов хк Например, известно, что решения дифференциального уравнения Бесселя х^у"-\-xt/+ (х^ — v^)^ = О при больших д: представляются в виде (аоХ-ч^ + а^х-^1^ + ...)cosx+{boX-^!^ + b,x-^i^+ ...)sinA:. Предположим, по ходу решения задачи необходимо иметь в памяти ЭВМ таблицы функций Бесселя. Иногда оказывается целесообразным составить их путем численного интегрирования уравнения Бесселя, используя при больших х разностные аппроксимации точные на функциях л:-*-'/2соза;, л:-*-'/^ sin л:, /г = О, ...,/. Иногда бывает удобно в окрестности каждого расчегного узла приблизить рассматриваемое уравнение дифференциальным уравнением, интегрируемым в явном виде, и построить
598 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX разностную схему, точную для его решений. Один алгоритм такого рода уже предлагался на стр. 511—512. Рассмотри.м случай дифференциального уравнения li^y" + p(x)y==f{x), где jj, — малое число, р "> 0. В случае р = const решения этого уравнения ехр I ± i " ^ j колеблются с перидом 2niifYp, т. е. очень сильно. Характерный размер изменения решения (т. е. расстояние, на котором решение существенно изменяется) имеет порядок yk/YP' и поэтому при отказе от использования специфики данного уравнения для получения высокой точности необходимо выполнение довольно обременительного условия h <ti yi/Yp' В окрестности каждого узла jc„ рассматриваемое уравнение близко к уравнению li^y" + РпУ = !п, Рп = Р(Хп), fn = fixn)- Общее решение этого уравнения можно записать в виде j/U)==Z),exp(/^---;"^^)+fl.exp(-/<---;"^^^) + A., (9) найдем схему вида апУп+\+Ь„Уп + с„уп-1—({„ = 0, A0) точную на всех таких решениях. Для этого подставим (9) в соотношение A0). Получим + .„ (Z), ехр (- / ^) + D, ехр (/ -^)) + Pit Чтобы это равенство выполнялось при всех Di и D2, необходимо и достаточно равенства нулю коэффициентов при Di и Dz и свободного члена. Приравниваем их к нулю: а„ ехр (/А]^)-f 6„-f .„ ехр (-/ AJ^) = О, a„exp(-/-^) + 6„-fc„exp(/A^) = 0, A1) (a„ + ^„ + cji^-rf„ = 0. Рп
^ Щ АППРОКСИМАЦИИ СПЕЦИАЛЬНОГО ТИПА 599 Полагая ап=1, получим с„=1. 6„=-2cos^. .„ = B-2cosAl^)^. Общее решение системы (И) пропорционально полученному частному решению. Помножим все коэффициенты а„, б», Сп, dn па \i^h~^. Тогда получим схему Это соотношение мы примем за разностное уравнение, соответствующее узлу Хп', такая нормировка схемы A2) является наиболее естественной: если вместо уп подставить в A2) у{Хп) и при фиксированном Хп устремить /i к О, то в пределе получится исходное дифференциальное уравнение \>-'y"-p{Xn)y-!{Xn)^Q. При получении новых стандартных программ принято производить проверку их качества на типичных задачах. При отработке одной стандартной программы решения задачи Коши для систем дифференциальных уравнений второго порядка методом Штерм<!ра было решено проверить качество программы на примере составления таблицы солнечных затмений \\а несколько веков вперед в заданной точке поверхности Земли. Была выбрана Егеподвиж- иая система координат, связанная с Землей, и относительно этой системы координат были выписаны дифференциальные уравнения движения Луны и Солнца. После осуществления численного интегрирования оказалось, что результаты вычислений расходятся с таблицами солнечных затме'ний, составленных много веков назад до появления всяких ЭВМ и даже диффер^н- циального исчисления. В этом случае желательно повторить вычисления, взяв другой шаг по времени. Результаты вычислений с различными шагами существенно отличались, что указывало на большую ошибку вычислений. Делались попытки объяснять ошибку низким 'Качеством стаЕ1дартных программ, однако последние были виноваты лишь косвенно. Просто рассматриваемая задача не принадлежит к классу задач, для решения которых рассчитана данная стандартная программа. В выбранной системе координат за один день Луна и Солнце совершают примерно один оборот, и, следовательно, характерный размер измерения решения раь'чется одним суткам. При применении стандартных методов решевгня задач для малости погрешности нужно, чтобы шаг был существенно менее этого характерного размера (т. е. суток). Век содержит около 36 000 суток, и поэтому число шагов, необходимое для расчета затмений в течение века должно быть где-го порядка сотен тысяч. Как мы увидим далее, вычислительная погрешность метода Штермера может накапливаться как п^. Поэтому относительная вычислительная погрешность результата будет величиной где-то около 10"'2~'; здесь t — разрядность чисел в машине. Этим и объясняется большая погрешность полученного решения. Для удовлетворительного решения этой задачи нужно или построить разностные схемы специального вида или производить интегрирование в какой-то специально выбранной системе коорлинат. Для повышения точности интегрирования колеблющихся и резко меняющихся решени1"Е иногда используются следующие приемы. Рассматривается уравнение, интегрируемое в явеюм виде, с таким же характером поведения решений, как исходное Находят функции от решений этого уравнения, являющиеся гладкими функциями ЕЕезависнмой переменЕЮЙ.
600 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX Затем эти функции принимают за новые неизвестные и интегрируют численно получающуюся систему уравнений. Рассмотрим уравнение nV + p(/)x = 0. A3) При р = const имеем ц» (х'У + рх" = Со, arctg (х VJkx') = dt + С». Поэтому можно ввести новые неизвестные р = >^ц»(х'И + /)@«'. в = arctg (х KpUT/nJf'). При ц малом для решений A3) справедливы асимптотические соотношения -t^ + |^Й7Г x^ ~ С», e = arctg (^ffiH) ~ - i- f K^^dx. ¥ P(t) \ цд/ / Ц J В соответствии с этими соотношениями можно попробовать ввести новые неизвестные отсюда имеем Vp{t) i и новую независимую переменную (р>=« I Yp{i) di. t Для принятия решения, какай замена неизвестных в данном конкретном случае более целесообразна, необходимо Проведение пробных расчетов. Существо другого метода состоит в том, что на каждом шаге интегрирования рассчитывается еоэмущение решения упрощенной системы, проходя» щего через уже полученную расчетную точку. Для примера рассмотрим систему уравнений dx dg , , X „ „ ,1 -^ = У, -^ + * -р- + е II у II у = О, II дг II = г, е — малое. Пусть приближенные значения ж", у" величин x(t„), y(in) уже известны. Пусть Ж" (О, У" С) —решение упрощенной системы dx dy , , X ' при начальных условиях х", у". Эта система интегрируется в явном виде^ Вводим новые переменЕ1Ые Л (О = *п (О - *" (t). Y (О = Уп (/) - у" @. где Xn(t), уп@ —точное решение исходной системы при начальных условиях ж", у". Получаем некоторую систему дифференциальных уравнений относительно переменЕШх f\((), y(t). Осуществив шаг интегрирования каким-либо
§ 10] СОБСТВЕННЫЕ ЗНАЧЕНИЯ 601 ИЗ станд^артных методов при начальных условиях r\{tn) = О, у('я) = О, получаем прийлнжеиные значения г\" + ', Y""*"' велнчнЕ! tii'^+i), vCn+i)- Полагаем *''+'=*"(W.)+V+'. y'^^'=y'^(.tn+,)+r+'. В § 4 МЫ рассматривали уравнение D.13), решение которого могло обращаться в бесконечность, если р{х) < 0. Тем не менее при вычислении значений этого решения с помощью раС" четных формул D.9) оказывалось, что, согласно оценке D.19), погрешность приближенного решения после прохождения таких точек мала. Расчетные формулы D.9) представляют интересный пример схем, удовлетворяющихся с высокой точностью на особенностях решения типа (д: — а)'*. Задача. Посмотреть, как работает схема D.9) при приближении к особенности решения в случае р{х) ^ const > О, когда уравЕ1ение D.13) иИтё» грируется в явЕюм виде. На каких решениях она точна? § 10. Конечно-разностные методы отыскания собственных значений Рассмотрим простейшую задачу на собственные значения у"-р{х)у = Х9{х)у, г/@) = 0. у{Х) = 0. A) Зададимся шагом h = XN'^ и напишем сеточную задачу ^2 РпУп — ^9пУп< \^) п=1, ..., N—\, уа = уц = 0\ р„ = р{Хп), Р„ = р(а:„). Значения Я, при которых система уравнегшй B) имеет ненулевое решение г/о, .-•, yN, естественно назвать собственными значениями сеточной задачи. Пусть собственные значения задач A), B) упорядочены в порядке убывания ^1 ^ ^2 ^ • • • > > Рассмотрим модельный пример: р{х) ^0, р{х) ^ \; тогда A) приобретает вид у" = Ху, у{0)^у{Х) = 0. Собственные функции этой задачи w"'(х) ='sin i-~-\ и соответствующие собственные значения Я^^ —(-у^) . В случае сеточной задачи B), приобретающей вид Уп+\ — 2уп + Уп~\ _ 1 ,, ^ л „ _ „ _ п /J2 ^Уп — и, Уй — Уы — и, 20 Н. с. Бахвалов
602 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ (ГЛ..IX рассуждаем следующим образом: общее решение разностного уравнения записывается в виде где |i,, р,2 —корни характеристического уравнения ^l2-B + ЯЛ^)^l+l = 0; C) очевидно, H2 = p.f', и поэтому j/„ = C,p,« + C,(i;-'', Условия она имеет ненулевое решение если ее определитель цр'^—р,[*' = 0; отсюда -jff-j, m= .... -1, о, 1. Из C) можно выразить значения Я* через значения ц, ц, + цГ'-2 _ «Р(-1Г) + ^^Р1 лГ]-2 Hi=exp|^- Лт h -Щicos^-2) — 4J^si^^. Для определенности возьмем Ci = B/) ; тогда соответствующие собственные функции имеют вид Г„=^(ехр(-^)-ехр( ^)) = sin-^. Собственные значения Я?, ..., Адг_1 различны между собой; поэтому соответствующие им собственные функции sin-^, ... ... , sin—^—г:—-— также различны. Так как задача B) является задачей на собственные значения для матрицы размерности N— 1, то мы получим полную систему собственных функций; каждая из функций W^ при m ^ О или при т^ N равна тождественно нулю или пропорциональна одной из перечисленных выше функций W\, ..., W'^~\ Мы случайно вы- зли такой пример, где в узлах сетки Хп = nh выполняется равенство Г^ = гг»'"(п/г). В общем случае это равенство не имеет места; однако характер близости собственных значений этих задач типичен и для
f 101 СОБСТВЕННЫЕ ЗНАЧЕНИЯ 603 общего случая. Поскольку созд:=1 g" + ("^os б^) "оГ' ^Д^ |в|<1. то А _ Л^ (nW_ _ cose^ / пт у\ Лт — х^У N^ 12 \ N I )• ИЛИ ^*.= -(^f + ^(^L='. D) Из этой формулы видно, что 0(Л^ при фиксированном т; в то же время с ростом m как абсолютная, так и относительная погрешности монотонно возрастают и, например, Равенство D) можно записать в виде оценки j Я,т — ^т | ^ ^ CXmh , где С не зависит от Хт и /i. В случае дважды дифференцируемых р{х), р(х) можно получить такую же оценку. Укажем путь, на котором можно было бы получить оценку типа |Л^-Х^1<Со(Л^)Л^. E) Обозначим через w (х) решение задачи Кошн ш" — p{x)w = Xp(x)w, tti@)=0, tti'@) = l; через w^ обозначаем решение сеточнон задачи Кошн Wq=0, ai, = ft, ]f2 Рп'^п = ^Рп^п- Очевидно, нули функции g(X) = w (X) являются собственными значениями дифференциальной задачи, а нули функции g,, (А,) = а1дг—собственными значениями сеточной задачи. Вследствие оценок погрешности решения такой задачи Коши, приведенных в § 2, справедливо неравенство Стандартной техникой можно показать, что g'(X) ф О, если g(X) = 0; поэтому функция g(X) меняет знак в окрестности каждого своего нуля. Из рис. 9.10.1 видно, что функция §л(Х) также меняет знак вблизи нулей функции g(X) и не может обращаться в нуль вдали от ее нулей; поэтому нули функций gh{}.) и g(X) близки между собой. Количественная оценка E) близости нулей этих функций получается следующим образом. Пусть Х* и Л — близкие корни функции §л(Х) и g(X). Согласно последнему неравенству I^C^*)! ^'^i(^'')''^; это неравенство можно представить в форме к (Я") - g W I < С, (Я") ft^ или |г'(Я)(Л''-Л)|<С1(Я'')А^; 20*
604 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ IX отсюда Далее потребуется оценить снизу Ig'l^)] в области, где \g(k)\ ^Cl{k'^)k^, Кроме этого, потребуется доказать, что вблизи каждого нуля g{k) имеется только один корень функции йл(^). Для решения задачи A) с более высокой точностью можно воспользоваться любыми разностными аппроксимациями уравнения у" — д{х)у'=0 более '/Ц высокой точности. Рассмотрим пример. В § 1 была построена разностная схема, аппроксимирующая последнее уравнение с погрешностью 0(Л4): -^^ЧдпУп) = о F) (с несколько иными обозначениями). Уравнение A) записывается в рассматри- Рис. 9.10.1. Баемом виде при q{x) = = Р{х) ■i-'kp(x). Отсюда получаем сеточную задачу на собственные значения: (>''Уп 1 /l2 - {Рп 4- ^Рп) г/„ — -уз" 6^ Црп + ^Рп) Ул) = О, rt= 1, .... Л^—1, уд--=у„ = 0. G) Можно показать, что для собственных значений этой задачи выполняется оценка Система уравнений G) имеет вид Ау — ЯВу = О, формально несколько более сложный, чем B), поскольку матрица ' в не диагональная. При повышении порядка точности могут возникать сеточные задачи, имеющие на первый взгляд еще более сложны/! вид, например такая: требуется найти Ji, при котором система соотношений а„ {К h) Уп-1 - Р„ (К h) у„ 4- Y« {К h) y„+i = О, (8) rt= 1, ..., Л^—I, г/о=г/д, = 0, имеет ненулевое решение уп-
§ 101 СОБСТВЕННЫЕ ЗНАЧЕНИЯ 605 Рассмотрим случай у„ Ф 0. Фиксируем некоторое Я,, a»i ф О, например a»i = /i, и из соотношения «„С^. Л)Ч-.-Р„(^. ^X4-Y„(?^. Л)<+, = 0 (9) последовательно определим ш^, ,,., ш^;,. Если а»^ = 0, то это 7. окажется собственным значением и а»^ — собственной функцией; если а»*;, Ф О, то это Я, не является собственным значением задачи (8). Для отыскания собственных значений задачи (8), совпадающих с нулями ©j^, можно применить какой-либо итерационный метод отыскания нулей функции по ее значениям. Этот процесс облегчается следующим обстоятельством, имеющим место во многих случаях и позволяющим получить «вилку» для искомого корня; если функция га\ имеет / перемен знака па (О, X), то ^,j < Я, < ^,j+i. Для вычисления значений 'w^ при различных X, как правило, наиболее рационально воспользоваться непосредственно рекуррентными формулами (9). Предлагаемый алгоритм вычисления значений w\ совпа* дает с алгоритмом решения сеточной задачи Кош и для A), Если решения дифференциальной задачи Коши сильно растут, то, как и ранее, могут возникать большие вычислительные погрешности. Для отыскания собственных значений может применяться также и метод прогонки. Не повторяя идеи метода, ограни- ш\ чимся написанием расчетных формул. Положим —г— =С„, «'п + 1 тогда (9) перепишется в виде anC„_iC„ — ^пСп -f Vn = О, откуда Если Wn и а»„+1 одного знака, то Сп > О, если разного, то Сп <. 0. Поэтому, наблюдая за переменами знака у С„, можно определить число перемен знака у функции w^. Как мы видели в § 4, коэффициент С„ может оказываться очень большим, поэтому этот метод чаще применяется лишь для отыскания первого собственного значения. Рассмотрим еще один способ сведения краевой задачи на собственные значения к нахождению нулей некоторой функции. Пусть рассматривается задача у'-А(х)у-1С(х)у = 0, Ву{0) = 0, Dy{X) = 0. (И)
606 ЧИСЛЕННЫЕ МЕТОДУ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX Задаваясь X и осуществляя ортогональную прогонку, можнО' последовательно определить матрицы GsiX,), s= 1 m. Если система уравнений (см. § 6) D(G„(X^)n = 0 имеет ненулевое решение, то исходная задача A1) также имеет ненулевое решение и соответствующее значение i будет собственным. Таким образом, задача отыскания собственного значения равносильна здесь задаче нахождения корня уравнения det{DG„{X^)) = 0. § 11. Оптимизация распределения узлов интегрирования Решения дифференциальных уравнений и систем могут иметь различную гладкость на различных участках отрезка интегрирования. На примере оценки погрешности метода Рунге — Кутта было видно, что вклад от погрешности интегрирования на некотором шаге [Xj, Jtj+i] в суммарную погрешность пропор- G \ ционален в точке Xn = Хо + X множителю ехр I fy(x, y{x))dx , "I , зависящему от /. Поэтому для некоторых классов дифференциальных уравнений становится актуальной задача оптимизации распределения узлов интегрирования. Для простоты предполагаем, что начальное условие задано точно и округления отсутствуют. Погрешность результата численного интегрирования по методу Рунге — Кутта в точке хц в соответствии с (8.4.6) не превосходит 5^ = ^\Уг-У1-Лх])\ехрИ fy(x,yi(x))dx\. A) предположим, что •'^/ = ф(-^). ф@) = а^, фA) = -»:о + ^. ф@^ гладкая функция. Согласно формуле Лагранжа X/ - Х/_, = ф (-^) - ф (i^) = -^ Ф' (?/), где ^~ <?/<-^, и поэтому Я= max (jt, — л,_1Х-^тах|ф'@1, Я-»-0 при N^oo; 0<У<.Л " 10,1)
■S 111 ОПТИМИЗАЦИЯ РАСПРЕДЕЛЕНИЯ УЗЛОВ ИНТЕГРИРОВАНИЯ 607 лоэтому вследствие оценки из § 4 гл. VIII имеем max \у,{х) — у(х)\-*0 при iV—>оо. Следовательно, можно написать асимптотические равенства expl J fy(x,yi{x))dx\ -expl J fy(x, y(x))dx\, у I — yj-i (Xf) '^ Hj (Xj, у (Xj)) {Xf — ЛГ,.,)*"^' ^ ~*(.(i)..(.(i)))(i.'(i)r«. Тогда выражение A) для Sfj представится в виде ^'^--тЛ-^^Ш' B) где ^ /=1 к интегралу 1 Ф^ = |гр(ф(/). г/(фШ|(ф'@)*+'ехр J fy{x,yix))dx\. > C) При Ф@ гладкой и Л^->оо величина У]'57^("лг) стремится 1 I=jф(t)dt D) о и, таким образом, 1 Sn ~ iV"" J Ф (О dt. о Примем ф за новую переменную в интеграле /. Тогда он запишется в виде ^ х,+Х /= J L{(f)d(f, Xt где L (ф) = I Ц) (ф, у (ф)) I (Г (ф))-* ехр М /, (л:, у (х)) dx j . E) Задача минимизации этого интеграла в форме D) за счет выбора ф@ и в форме E) за счет выбора обратной функции t((p)
608 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX эквивалентны. Вследствие равенства -jr^"^ уравнение Эйлера d<(i \dt' j dt ~^ в данном случае приобретает вид -j^ [-gjr) = 0; отсюда следует, что /Х„+Х , -|^= - ^СгрСф, г/(ф))|(/'(ф)Г*'' ехрМ fy{:i, y{x))dx] = consL Возвращаясь к переменной ф, получаем /Х,+Х \ (Ф'@)*^'|1|'(Ф, ^/(Ф))|ехр f fy(x,y{x))dx] = Ci. F) V Решение этого дифференциального уравнения зависит от Ci и еще некоторой постоянной Сг; их значения следует определить из граничных условий ф@) = Ха, фA) =хо-\-Х. По поводу обоснования этих построений в случае, когда величины Ф(ф.^/(ф)) или /х„ + Х \ ехр( J fy(x, y{x))dx\ не ограничены или негладкие, можно привести соображения,, аналогичные случаю задачи численного интегрирования. Б той же мере к этой задаче относятся и высказанные ранее соображения о практическом использовании соотношения F). Отметим одно неочевидное обстоятельство. Уравнение F) может быть записано в виде (Ф' @)*+' \^(<Р,У (Ф)) I ехр I - J /^, (X, у {X)} dx\ = C, G) куда не входят ни начальная, ни конечная точки интегрирования. Вместе с функцией ф(/) этому уравнению удовлетворяет также функция ф(а/ + 6). Задавшись некоторым N, осуществим одновременное интегрирование исходного уравнения и уравнения G), выбирая каждый раз шаги интегрирования из условия Xj—Xj_i ~ -д^ф ('/_|)- Скорее всего мы придем в конечную точку jco + .^ с числом узлов N], отличным от N, и тогда это распределение узлов не будет являться оптимальным распределением узлов, соответствующим данному N. Это естественно, поскольку, начиная вычисления, мы не мсгли заранее предвидеть хода поведения решения и сказать, какую величину С следует взять в правой части G). Однако можно показать, что вследствие указанных свойств решения уравнения G) функция ф(/) будет искомой и- распределение узлов (f(jiN-i) оптимальным (с точностью до погрешности численного интегрирования), соответствующим числу узлов iVi.
§ 11) ОПТИМИЗАЦИЯ РАСПРЕДЕЛЕНИЯ УЗЛОВ ИНТЕГРИРОВАНИЯ 609 Непосредственное интегрирование уравнеЕ1ий A) и G) встречает затрудгге- ние вследствие необходимости вычисления значений функции \|j(^ (/(;с)). Вместо непосредственного вычисления значений этой функции целесообразно использовать величину контрольного члена точности на шаге. При численном интегрировании уравнения G) следует также иметь в виду, что эти соотношений носят асимптотический характер. В окрестности точек, где '\^{х,у(х)) = о, в остаточном члене начинают играть существенную рольсла- гаемые порядка {х, — .К)-])***. Дополнительное численное интегрирование уравнения G) может сильно усложнить решение задачи. Поэтому к вопросу оптимизации распределения узлов часто подходят следующим образом. Пусть решаются задачи из некоторого определенного класса. Рассмотрим модельную для этого класса задачу, где можно в явном виде" решить уравнение G). Постараемся на ее примере установить зависимосгь шага (или меры погрешности иа шаге (см. § 3 гл. VHl)) от поведения решения, при которой распределение узлов близко к оптимальному. Далее все задачи этого класса интегрируем с шагом, соответствующим этой зависимости. В других случаях aapariee задаются некоторой формой такой зависимости. Пусть система уравнений порядка m иг1тегрируется с контролем точности на шаге, например, по формулам (8.3.2). В случае системы уравнений контрольный член г будет некоторым вектором Гп = \г„,..., г'^\ В ряде программ шаг интегрирования выбирается из условия II'•nil/(max (М, \\уп\\)) « е = const, или из дающего большую гибкость условия \г'\ max , I ' I I,——-рг ^ e = const. l<ft<m max (I Mfcl, \(уп)к\) Параметры М, Mk подбирают из соображений оптимальности распределения узлов в условиях конкретной задачи. * Рассмотрим примеры оптимизации распределения узлов интегрирования. Пусть задача Коши у' = My при начальном условии у{0) решается методом Эйлера. Тогда tp (д;, у (х)) =~^у"{х)=-^у @) ехр (Мх) V уравнение F) имеет вид Af2 (фТ у @) I ехр (Мф) ехр {М {X — ф)) = const. Отсюда получаем ф^ = const, т. е. распределение узлов следует взять равномерным. Задача. Пусть мера погрешности на шаге р вычисляется, как и в § 3 гл. VHI, как разность просчета с двойным шагом и двух просчетов с одним шагом. Проверить, что в случае данного примера равномерное, т. е. оптимальное, распределение узлов, реализуется при условии -^ I » е = const Уп
610 ЧИСЛЕННЫЕ' МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX Обратимся к краевой задаче nV' — У = Нх) на отрезке [О, 1] при заданных (/@), у([) и малом |i. Представляет интерес изучение методо& решения этой задачи как модели задач с так называемым пограничным слоем. Решением этой задачи при 1(х) ^0 является ' HO.(e>p(-f)-»p(^)) + „n(.«p(^)-e,p(-^))^ |-„р(-1) Непосредственным дифференцированием убеждаемся, что U'*'W I = О (-i^ ИО) ехр (--^)) + О |-1^ </A) ехр (^^^j). При 1(х) Ф О вместо этой оценки имеет место оценка U.«Wl-0(-L„p(-i)) + 0(-Le,p(A^)) +0,0. ,8> Таким образом, дифференциальные свойства решения резко ухудшаются при малых Ц вблизи точек дс = 0идс=1, и там целесообразно применить более мелкий шаг интегрирования. Зададимся узлами интегрирования;с. = ф(-tt-I , ф@) = 0, фA)=1 и заменим производную у"(х^) удвоенной разделенной разностью </"(«.)« 2у(х,^, jc.; jc,,|). Получим систему разностных уравнений У,+\-У1 УI-У 1-х I {У,) = 2^^ ^/+'-*/ _1>~'1-' - ^ = / (9> /=1 N-\, y^ = y{Q), у^ = у{\). Согласно выражению разделенной разности через производную имеем где jcy_, < S/ < JC/.^.j. Поэтому гп=1{у (хп)) -fn = V-Чу" (In) - у" (хп)) = ^l^ (S„ - Хп) »<^> (%). A0) Отсюда следует неравенство кп l<an = ^*^(max(U„+,-Jc„|. U„-;c„_i|))( max \у^^'>{х)\). (П) Из (9) и A0) получаем уравнение для ошибки приближенного решения Rn = Уп—у(Хп) Далее следует получить асимптотическое представление погрешности и поставить и решить соответствующую асимптотическую вариационную задачу. Если нам требуется минимизировать максимум погрешности на всем отрезке, а не в отдельных точках, то такой путь приведет к громоздким вычислениям. Поэтому иы заменим оптимизационную задачу более простой.
4 III ОПТИМИЗАЦИЯ РАСПРЕДЕЛЕНИЯ УЗЛОВ ИНТЕГРИРОВАНИЯ 611 Предоставим читателю самому убедиться в справедливости неравенств так I /?„ К так 1 г„ |. п п Отсюда следует неравенство так I Лп К так | <т„ |. п п Поставим задачу минимизации правой части этого неравенства. При N -*■ оо лмеем сг„~-^ф'(«/Л^)|!/"'(ф(-^)) Поэтому асимптотически рассматриваемая задача сводится к минимизации выражения 2(ф)=такф'@и'^'(ф) I [0. I) лри условиях ф@) = о и фA) = 1. Покажем, что нижняя грань 2(ф), равная достигается при ф (О = (IJ/'^'(ф @) Uo) • Действительно, предположим, что для некоторой функции ф(/) при всех t справедливо ф'(') [^/'''(фС)') I < < Zo; из этого неравенства следует, что ф'@<и'"(Ф@)Г'2о. Интегрируя это неравенство от О до 1, получаем 1 1 = ФA) - Ф @)< J I (/<="(ф @) г' Zo dt = 1. О 1Лы пришли к противоречию. При таком ф'@ имеем р,ф' (О I j,C) (ф (,)) I = ^j.^ I = const. A3) В рассматриваемом случае, согласно (8), справедливо U<3.,)|<.(J,(exp(-£.) + exp(£^)) + l). Поэтому вместо A3) рассмотрим уравнение Это уравнение и граничные условия ф@) =0, фA) = 1 однозначно определяют функцию ф@- Отметим, что в действительности рассматриваемая схема имеет второй порядок аппроксимации и при реальных вычислениях распределение узлов следует выбирать с учетом этого обстоятельства.
612 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ IX' § 12. Влияние вычислительной погрешности в зависимости от формы записи конечно-разностного уравнения Как было устаноелено ранее, вычислительная погрешность имеет различный характер роста для различных способов решения дифференциальных уравнений. Рассмотрим теперь такой частный, но важный вопрос: как зависит вычислительная погрешность от формы записи конечно-разностных уравнений? Хотя все изложение ведется на примере задачи Коши, рассматриваемые соображения относятся в равной мере и к случаю решения краевых задач. Для примера обратимся к методу Эйлера Уп+1 = Уп-{-М(Хп, Уп). (О При реальных вычислениях будут получаться величины г/*, связанные соотношением y:+^=y:+hf(x^,y:)+\; B). наличие слагаемого 6„, как уже упоминалось, является след-^ ствием ряда причин — ошибок при вычислении значений функции /(л^, г/*), ошибки при округлении произведения Л/(л:„, г/*) и ошибки при сложении чисел г/* и округленного значения М{х,, У'пУ Введем обозначение г/* — г/„ = А^; на основании формулы Лагранжа имеем /К- yD-fi^'n' Уп)-КК^ где In = fy (Хп, Уп)- Предположим, что всегда | fy (х, г/) К L. Вычитая (I) из B), получаем откуда |A«+il<(I+/-A)|AJ + 6, б = тахб„. C) п Рассмотрим разностное уравнение Zn+i-=il+Lh)z„-{-6, называемое мажорирующим для C). Его решение при начальном условии 2о = |Ло1 бСТЬ Лемма. При всех « ^ О справедливо
§ 12) ВЫЧИСЛИТЕЛЬНАЯ ПОГРЕШНОСТЬ 613 Доказательство. При « = 0 утверждение D) очевидно. Пусть оно верно для некоторого п; тогда имеем |А„^.,|<A + ^ЛL + 6 = 2' п+1- Лемма доказана. Если интегрирование производится на отрезке [Ло, Лд-f .^1. то гаЛ < X, A + Lhf < (ехр {Lh)T < ехр {LX). Согласно формуле Лагранжа и поэтому il-{-Lh)"-l=nil+QLhT~^Lh, где 0<е<1. Отсюда получаем A + Lhf - 1 < «LA (ехр (L/i))""' < LX ехр (LX). В итоге имеем оценку I А„ I < 12°„ I < I До I ехр (LX) + 6ZA-' ехр (LX). Рассмотрим случай Ад = 0. Тогда погрешность А = у' — у при X фиксированном оценивается сверху через 0(бЛ~'). Эта оценка не улучшаема по порядку. Например, при Ло = О, /у ^ О, бп ^ б имеем An+i = А„ + б и, таким образом, ^^ = N6 = 6Xh~^. Вместо проведения этих аккуратных оценок можно привести правдоподобные рассуждения, из которых также следует, что погрешность округления может оказаться величиной порядка bh~^. Соотношение У«+1 = < + /»^К. Уп) + \ можно переписать в виде y'n+i = y'„ + hr{x„, У'„), где Таким образом, результат численного интегрирования уравнения y'='f(x,y) при наличии округлений будет такой же, как если бы без округлений интегрировалось уравнение со значениями правой части в узлах сетки f (л^, у'\. Рассмотрим случай бп ^ б. Разность между решениями дифференциальных уравнений y=f(x,y) и у = f (х, у)-{. bh~^
614 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX имеет порядок разности между правыми частями этих уравнений, т. е. бЛ"'. Нет оснований ожидать, что решения разностных уравнений 2/n+i = yn + hf (х„, у„) и г/*+, = г/* + Л (/ {х^, г/*) + 6А"') будут отличаться менее чем на величину того же порядка, т. е. порядка 6Л~'. Если б — порядка 2~', / — разрядность чисел в ЭВМ, то решение разностного уравнения изменится на величину порядка 2~'А~'. При получении этого вывода сделано допущение вп ^ б. Рассмотрим задачу вычисления интеграла f(x)dx, являющуюся частным случаем рас- 0 сматриваемой задачи при у@) =0. Пусть f{x) =2/3, А = 2-*, t — k — нечетно. При Хп>Уа Уп лежит в пределах ('/г. 1). Тогда после округления при сложении г/„ = 0, laj at А^„ = О, О ... 010 ... 10 1010 1 ... к i-k каждый раз происходит отбрасывание величины 2-'-О, 0 10 1 ... =GзJ-'. Таким образом, на этом участке действительно бп = б порядка 2 . Перейдем к случаю интегрирования уравнения у" = f{x,g) при помощи простейшего метода Штермера y„^,-2yn + yn:^_f^^^^y^ ПО расчетной формуле Уп + 1=2Уп — Уп~\ + ft^fiXn, Уп); реально получаемые значения г/* связаны некоторым соотношением yU^ = 4-y'n-i + f^'f{^n' У'п) + ^п- E) Значения у'^ можно рассматривать как получаемые без округлений при вычислениях по формуле где Рассмотрим случай бп ^ б. Решения дифференциальных уравнений у" = / (х, у) и y" = f (х, у) 4- 6А"^ отличаются между собой на величину порядка 8h~^. Можно показать, что в случае уравнения у" = а, а = const, возможен случай бп ^ б, б порядка 2~'. Так же как для уравнения пер-
$ 121 ВЫЧИСЛИТЕЛЬНАЯ ПОГРЕШНОСТЬ 616 вого порядка, делаем вывод, что для рассматриваемого Алгоритма суммарная вычислительная погрешность может оказаться величиной порядка 2-'Л" Рассмотрим случай, когда такая величина вычислительной погрешности оказывается недопустимо большой. Можно было бы записать рассматриваемое уравнение в виде системы уравнений первого порядка y'==v, v'^f{x,y) F) и применить какой-либо метод численного интегрирования этой системы. Как уже отмечалось, при этом произошла бы потеря эффективности вследствие того, что методы общего вида не учитывают специфики этой системы. Попытаемся записать рассматриваемую расчетную формулу как некоторую расчетную формулу интегрирования системы F). Введем новую дискретную переменную Уп — Уп-1 _^ . h ""' тогда уравнение E) запишется в виде вычисления последовательных значений уп, Zn будем производить при помощи пары расчетных формул Za+l=Zn-\-hf{Xn,yn), yn+l = yn + ftZn+i. G) при наличии округлений, соответственно, имеем <+1 = 2« + /г/ (*«. У'п) + ««• Уп+1 = Уп + '»<+! + Р„. где On, рп = 0B~')--Эти соотношения можно представить в виде ■ 2«+1 = 2« + А/' {х^, У„)' f к. y'i) = / (^„. Л + o.jr\ y'n+i =-y\ + h {z\^, + ё(j:„+,))' ё K+i)=М"'- Если формулы G) можно трактовать как формулы численного интегрирования системы z' = f{x,y), у' = z, то формулы (8) соответствуют системе z' = r{x,y), y' = z + g(x). правые части этих систем отличаются на величины порядка 0B~'А~*); поэтому есть какие-то основания ожидать, что и решения разностных задач, т. е. решение разностной аадачи с округлениями и разностной задачи без округлений будут отличаться на величину того же порядка. Конечно, к этому
616 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. tX заявлению следует отнестись с осторожностью; мы уже видели, что для некоторых конечно-разностных схем малые ошибки могут приводить к катастрофическому изменению результата. Приведенные рассуждения о влиянии вычислительной погрешности в конкретных методах интегрирования, уравнений первого и второго порядка опираются лишь на учет свойств конечно-разностной схемы, связанных с порядком дифференциального уравнения, Поэтому есть основания ожидать, что они переносятся на другие конечно-разностные методы. Например, при интегрировании уравнения «/<*' = f{x,y) и прямом использовании схемы -" t i=0 по-видимому, можно ожидать влияния вычислительной погрешности порядка 2-'Л-*. Поэтому в случае уравнений высокого порядка еще более актуальна задача преобразования схемы к форме, где влияние вычислительной погрешности будет меньше. Например, как и при ft => 2, можно ввести вспомогательные переменные z[ = VyJi-\ /=1, ..., ft-I. Попытаемся объяснить улучшение свойств разностной схемы E) при переходе к расчетным формулам G) с позиций оценки количества хранимой информации. При использовании расчетной формулы E) при каждом п з памяти хранятся величины уп-\ и г/п и все дальнейшие значения z/j определяются по этим значениям. Пусть для определенности 1/2 ^^ уп-\, 2/п ^ 1 и \уп — f/n-il^ Mh. Тогда в ячейке, содержащей значение г/п-1 = О, 1а2...а( имеется /—I независимых двоичных знаков «2, ..., at; разряды числа г/„ = 0,1р2 ■■■ h уж^ "^ все несут новую информацию. -Разность уп — г/n-i = ±0, Оуг-.-у по модулю меньше 2~', где / — наибольшее целое, такое, что Mh < 2-'. Поэтому Уп — Уп~1 = ± О, О ... Oy,+i ... Yi. и для задания г/„ — Уп-и а следовательно, и г/„ достаточен t — I ■\-\ двоичный знак (знак разности и уг+ь •••. Y')- Очевидно, /-^ log2((Af/i)-') и, таким образом, общее количество независимой инфор-мации, которое имеется в распоряжении при каждом п, составляет ^2t— \Qgi{{Mh)-^) двоичных разрядов. В случае вычислений по формуле G) все разряды чисел г/„ и 2„ независимы, и поэтому информация о решении задается независимыми двоичными разрядами.
§ 121 ВЫЧИСЛИТЕЛЬНАЯ ПОГРЕШНОСТЬ 617 Тот факт, что количество независимой информации для второго способа больше, конечно, сам по себе не означает, что этот способ лучше. Не исключено, что эта дополнительная информация не является содержательной и поэтому не позволяет точнее определить решение. Поясним, почему дополнительная информация при втором способе является содержательной. Для задания решения дифференциального уравнения второго порядка с точностью 0(e) необходимо задание с такой же точностью значения решения и его производной в некоторой точке. Для разностного уравнения роль этих величин играют Уп. и ^" ~/г^"~' • ^Р'' первом способе задание значений г/„ и Уп-\ с / двоичными знаками позволяет определить значение ■^—■^"~' с погрешностью порядка 0B-'Л-'). Таким образом, здесь по известной нам информации мы располагаем возможностью найти дальнейшие значения решения сеточной задачи с погрешностью порядка 0B~'Л~') (если все последующие вычисления будут производиться абсолютно точно). В случае второго способа мы имеем значения у„ и ^" ^^^"~' с / двоичными знаками и поэтому обладаем возможностью найти решение сеточной задачи с погрешностью порядка 0B~'). Таким образом, эта дополнительная информация действительно оказывается содержательной. На каждом шаге реального численного интегрирования ошибки округления вносят дополнительную неопределенность в значения вектора [уп, ^" ~/"~' ) ^^ втором случае порядка 0B"'), в первом — порядка 0{2-'/h). Это и приводит к тому, что суммарная вычислительная погрешность решения во втором случае может оказаться величиной порядка 0B-'Л-'), а в первом — порядка 0{2'^h-^). Обратим внимание на прием практической оценки вычислительной погрешности путем изменения масштабов. Пусть некоторым методом решается задача Коши ^ = f{x,y), у@)^а. Замена переменных х = ц1, у = Xz сводит эту задачу к задаче ^ = ^fH,t,Kz), z@) = ±. Предположим, что первая задача интегрировалась с шагами hi; осуществим численное интегрирование второй задачи тем же методом, по с шагами h'i = hi/ii. При отсутствии округлений будет иметь место равенство z/i ^ KZi; если Яиц оба не являются целыми степенями
618 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ. IX ДВОЙКИ, то разность между реально получаемыми значениями величин г/i и Хг,-, обычно дает определенное представление о величине вычислительной погрешности. Например, можно взять ц=Уз, Х=У2. В случае интегрирования с автоматическим выбором шага надо обратить внимание на выбор нового значения параметра е и начального шага ha с тем, чтобы равенство h'i = hil\i. имело место при всех i (см. подробнее § 17 гл. III). § 13. Оценка вычислительной погрешности при решении краевой задачи методом прогонки В разделе численных методов алгебры бы^ю обещано привести пример оценки вычислительной погрешности при решении алгебраических систем методом Гаусса. Произведем такую оценку на примере решения системы алгебраических Уравнений, возникаюш,ей при аппроксимации задачи A.3), A.4). Рассматриваемая система уравнений имеет вид r/^_,-B'+/)^A^)^^ + г/^^, = /^A^ /=i л^-i, у^^а, r/^y = ^>. (i> При решении методом исключения Гаусса при последовательности исключения неизвестных Уа J/n-i вычисления производятся по формулам ■с„+1 = B + р„А^-С„Г'. rt = 0 Л^-2. Со=0. B> фп+1 = Сп+1(<рп—/n+iA^)- 1 = 0 N — 2, фо = а, C> затем по формулам г/п=С„^п+1 + фп. n=N—\,...,\. D) Всякое число г, получаемое в результате арифметической операции над двумя числами в ЭВМ, округляется затем до некоторого числа 2* = zA4-e); при этом, как правило, выполняется неравенство |е| ^2"', где t — разрядность чисел в машине. Будем предполагать, что последнее неравенстЬо выполняется всегда; в настояще.м параграфе греческими буквами обозначаем величины, по модулю не превосходящие некоторую абсолютную постоянную, умноженную на 2-'; полученное в результате реальных вычислений значение какой-либо величины г обозначаем г'. Поскольку нас ингересует вычислительная погрешность в процессе решения системы, будем для простоты предполагать, что коэффициенты системы a,b,2 + p,h^ и f,h^ заданы без округлений. При наличии округлений соотношения B), C), D) запишутся в виде Ci = A:((B+ P«+l''^)-с;) A+ ?„)))(•+■««). E) ф;+,=(с;+, ((ф; - f„+,A2) (i+y„))) (i+a„), (в) г/;;=((c>;+l)(l+o)„)-^-Ф;)(l-fa„). m Здесь после каждой скобки вида (а«6), где • — какая-либо арифметическая операция, стоит множитель вида 1 -f- е, соответствующий реализации этой операции при наличии округлений. Соотношение E) можно переписать в
§ 131 ОЦЕНКА ПОГРЕШНОСТИ МЕТОДА ПРОГОНКИ 619 виде где Рп+1—Pn+i + Sfn+i. Sn+i'= (I 4- а„) А2 • ^^' Соотношение G) можно переписать в виде или здесь ф„ = ф„ + d„, а в "свою очередь . ^. • , ч'пК Подставим ф^=.фд — ^п' ^n+i — "Pn'+i "'^n+i " соотношение F), представленное в виде * (l+Y«)(l+a„) -'-'•+' '-"^'' f^+i" А- получим Фц+1 Дц+1 _.^» с " . , .2\ (l+Y«)(l+a„) - '^'•+' У'^- -"п- и." )• Отсюда 4'n+\='^n+\Kfn -fn+\'^)^ fn+\ ~fn+l — ^n+l ~ 1 \^«-1С„+,) \(i+Y«)(l+a„) + A+Y«)A+««)'"+');• ^^' Из приведенных выше равенств следует, что значения i/„, получившиеся при реальных вычислениях, совпадают со значениями, которые получатся при вычислениях без округлений в случае решения системы y'l-i-{2+py)y',+ y',^i=fy. /=1 ЛГ-1. , ^^^^ у'о = а, у'^^Ь. Оценка вычислительной погрешности свелась к оценке близости решений двух систем A) и A0) с близкими коэффициентами. Удобнее переписать эти системы в виде ^^^ {У1) ' 7^ ■ Р1У1 = fr A2)
620 ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ [ГЛ IX Мы ограничимся рассмотрением случая р(х) ^ О, где оценка погрешности производится наиболее просто; будем предполагать также, что Ipnfi'l^l и [fnli^l ^ const. Вычитая A2) из (II), можно получить уравнение для ошибки Ri=yj — Vj Вследствие леммы из § 1 имеем оценку погрешности laxi и, < -7 '"^''l^/l<T"'f''l''/I^T("'f''1^-^*-| + ('"?Ч/'/-Р/1)"'^ U/I)- <'3) Всякое число, не л^еньшее 2' (s — целое), округляется до числа, не меньшего 2\ а всякое число,не большее 2', округляется до числа, не большего 2'. Очевидно, С, =-^ гт ^ ~г ; если -г ^С„^ 1, то вследствие вышесказанного и рс- ' 2 + pih^ -^44" "^ куррентной^формулы B) также будет ^"+'~2-с;^2-1 "'■ ^''+'^4-с;^4- Таким образом, max|c;|<l, max|(c;)~'|<4. n п Поэтому на основании (8) имеем оценку max|g„l<c'2-'/i-2; п нз (9) следует оценка и„1<с-'А-^(|г/;_,1 + |,;| + |,;+,|) и, следовательно, max I q„ \^С'-'к-^тгх 1 у'^ \. п п Подставив этн оценки в правую часть A3), получим max I г/^. - yj I < C°2~'h~^ max | у] |, иначе |lг/-r,•||<C°2-'Л-^|lг/•|l. A4) Мы получили оценку приближенного решения сеточной задачи через его норму. Оценку через норму точного решения можно получить следующим образом. Из последнего неравенства следует, что 11г/*11<|1г/11 + с°2-'л-2|1г/*||, откуда получаем A - с°2-'л-2) II / II < II г/ II, II у- II < ^^V-r. 1 — C°2~'h~^ если 1—C^2-'h'> 0; подставляя теперь эту оценку в правую часть A4)> имеем II г/ - г/' II < ц \ .- II у II. 1 - C°2-'/t-"
$ 131 ОЦЕНКА ПОГРЕШНОСТИ МЕТОДА ПРОГОНКИ 621 При желании оценить вычислительную погрешность непосредственно через коэффициенты исходной системы следует воспользоваться неравенством max I г/; I < max (I i/q (, I г/^y () + - max | f. (. На первый взгляд могло бы показаться, что описанный метод решения системы A) плох, поскольку велика погрешность результата вследствие округлений при вычислениях. Однако погрешность такого порядка уже является следствием самой формы записи системы. Как правило, коэффициент 2 + Pj/t^ запишется в .машине с округлением Sj порядка 2~', т. е. вместо него будет стоять число Sj = 2 + p,h^ + ej. Иначе можно написать Sj = 2 + p'/h^, p'j = pj + e^Л"^. Таким образом, эти округления равносильны возмущениям коэффициента pj исходной системы на величину порядка 2~'hr^. Согласно рассуждениям из § 15 предшествующей главы это обстоятельство может привести к воз.муще- нию решения системы A) на величину того же порядка. Чтобы погрешность решения системы A) была существетю меньше, необходимо по крайней мере задавать ее в форме, где округления коэффицнен- toB системы равносильны существенно меньшим воз.мущениям коэффициентов исходной дифференциальной задачи. С этой целью .можно, например, перейти к системе Соответственно прн решении этой системы вместо рекуррентных соотношений B), C) относительно коэффициентов Ск, фл следует перейти к рекуррентным соотношениям D.9), D.10) относительно «л, Рл. Дополнительная литература к главе IX 1[1, 4, 5, 13], П[2, 3, 28, 40, 44]; § 1: II [27], 111 [16]; § 2: 11 [40], III [8, 42]; § 3: II [10], III [4, 20]; § 4: III [43]; §5: III [39]; §§ 6, 7: III[1, 2, 3, 4, 20, 21, 36, 52]; § 8: II [3, 41, 44]; § 9: II [40], III [14, 28, 37, 40, 42]; § 10: II [18, 44], III [38, 511; § 111 III [12, 49, 50]; § 12i II [2, 3], III [8]; § 13: III [8].
список ЛИТЕРАТУРЫ (в списке указывается литература, содержащая более подробное изложение отдельных вопросов) I. Учебная литература 1. Березки И. С, Жидков Н. П., Методы вычислений, т. 1, «Наука», 1966; т. 2, Физматгиз, 1962. . В о е в о д и н В. В., Численные методы алгебры. Теория и алгорифмы, «Наука», 1966. 3. Гавурин М. К., Лекции по методам вычислений, «Наука», 1971. 4. Годунов С. К., Рябенький В. С, Разностные схемы (введение в теорию), «Наука», 1973. 5. К о л л а т ц Л., Численные методы решения дифференциальных уравнений, ИЛ, 1953. 6 Коллатц Л., Функциональный анализ и вычислительная математика, «Мир», 1969. 7 Крылов А. Н., Лекции о приближенных вычислениях, Гостехиздат, М—Л., 1950. 8 Крылов В. И., Приближенное вычисление интегралов, «Наука», 1967. 9 Крылов В. И., Бобков В. В., Монастырный П. Н., Вычислительные методы высшей математики, 1, «Вышэншая школа», Минск, 1972. 10. Ланцош К., Практические методы прикладного анализа, Физматгиз, 1961. 11. Микеладзе Ш. Е., Численные методы математического анализа, Гостехиздат, 1953. 12. Милн В. Э., Численный анализ, ИЛ, 1951. 13 Милн В. Э., Численное решение дифференциальных уравнений, ИЛ, 1955. 14. Фаддеев Д. К., Фаддее в а В. Н., Вычислительные методы линейной алгебры, Физматгиз, 1960. 15 Форсайт Дж., М о л е р К., Численное решение систем линейных алгебраических уравнений, «Мир», 1969. 16. Хаусхолдер А. С, Основы численного анализа, ИЛ, 1956. 17. X е м м и н г Р. В., Численные методы, «Наука», 1972. II. Монографии и отдельные выпуски 1. Ал бе р г Дж., Нильсон Э., Уолш Дж., Теория сплайнов и ее приложении, «Мир», 1972. 2. Бабушка И., Витасек Э., Прагер М., Численные процессы решения дифференциальных уравнений, «Мир», 1969. .3. Б а X в а л о в Н. С, Вычислительные методы решения обыкновенных дифференциальных уравнений, Ин-т кибернетики АН УССР, Киев, 1970.
список ЛИТЕРАТУРЫ 623 4. Б р и л л ю э н Л., Наука н теория информации, Физматгиз, 1960. 5. Б у с л е н к о Н. П.,. Ш р е й д е р Ю. А., Метод статистических испытаний (Монте-Карло) и его реализация' на цифровых вычислительных машинах, Физматгиз, 1961. 6. В н т у ш к н н А. Г., Оценка сложности задачи табулирования, Физматгиз, 1959. 7. Воробьев Ю. В., Метод моментов в прикладной математике, Физматгиз, 1958. 8. Вычислительные методы линейной алгебры, под ред. Марчука Г. И., Изд-во СО АН СССР, Новосибирск, 1972. 9. Гельфоид А, О., Исчисление конечных разностей, «Наука», 1967. 0. Году не в С. К., Рябенький В. С, Введение в теорию разностных схем, Физматгиз, 1962. 1. Гончаров В. Л., Теория интерполирования и приближения функций, Гостехиздат, 1954. 2. Дженкнис Г., ВаттСД, Спектральный анализ и его приложения, т. 2, «Мир», 1972. 3. Е р м а к о в С. М, Метод Монте-Карло и смежные вопросы, «Наука», 1971. .4. Жил ей к ин Я. М., Хал ус Е., Стандартная программа для вычисления многократных интегралов с помощью квадратур Гаусса, вып. 39, ВЦ МГУ, 1970. 15. За гу скин В. Л., Справочник по численным методам решения алгебраических и трансцендентных уравнений, Физматгиз, 1960. 16. Зойтендейк Г., Методы возможных направлений, ИЛ, 1963. 17. К а н т о р о ви ч Л. В. и Крылов В. И., Приближенные методы высшего анализа, Гостехиздат, М.—Л., 1949. 18 К о л л а т ц Л., Задачи на собственные значения, «Наука», 1968. 19. Копчен ов а Н. В., Марон И. А., Вычислительная математика в примерах и задачах, «Наука», 1972. 20. Коробов Н. М., Теоретико-числовые методы в приближенном анализе, Физматгиз, 1963. 21. Крылов В. И,, Шульгина Л. Т., Справочная книга по численному интегрированию, «Наука», 1966. 22. Лаврентьев М. М., О некоторых некорректных задачах математической физики, Изд-во СО АН СССР, Новосибирск, 1962. 23. Л а т т е с Р., Лионе Ж.-Л., Метед квазиобращеиия и его приложения, «Мир», 1970. 24. Л и н и и к Ю. В., Метод наименьших квадратов и основы математико- статистической теории обработки наблюдений, Физматгиз, 1962. 25. Марчук Г. И., Лебедев В. И., Численные методы в теории переноса нейтронов, Атомиздат, 1971. 26. Метод статистических испытаний (метод Монте-Карло), СМБ, Физматгиз, 1962. 27. Микеладзе Ш. Е., Новые методы интегрирования дифференциальных уравнений и их приложения к задачам теории упругости, Гостехиздат, М.-Л., 1951. 28. М и X л и U С. Г., Численная реализация вариационных методов, «Наука», 1966. 29. М о и с е е в Н. Н., Численные методы в теории оптимальных систем,. «Наука», 1971. 30. М о р 3 Ф. М., К е м б е л л Д. Е., Методы исследования операций, «Советское радио», 1956. 31. Моррис У., Наука об управлении. Байесовский подход, «Мнр», 1971. 32. Налимов В. В., Чернова Н. А., Статистические методы планирования экстремальных экспериментов, «Наука», 1965. 33. Н и ко л ьс ки й С, М., Квадратурные формулы, Физматгиз, 1958.
624 список ЛИТЕРАТУРЫ 34 Островский А М, Решение уравнений и систем уравнений, ИЛ, 1963 35 Плэтт В, Информационная работа статистической разведки, ИЛ, 1958. 36 Процедуры численного интегрирования на языке Алгол, ВЦ МГУ, 1972. 37 РастригинЛ А, Статистические методы поиска, «Наука», 1968 38 Ремез Е Я, Общие вычислительные методы чебышевского приближения, Изд-БО АН УССР, Киев, 1957 39 Рябенький В С, Филиппов А Ф, Об устойчивости разностных уравнений, Гостехиздат, 1956 40 Самарский А. А, Введение в теорию разностных схем, «Наука», 1971 41 Современная математика для инженеров, под ред Беккенбаха Э Ф, ИЛ, 1958 42 Уилкинсон Дж X, Алгебраическая проблема собственных значений, «Наука», 1970 43 У о л ш Дж Л, Интерполяция и аппроксимация рациональными функциями в комплексной плоскости, ИЛ, 1961 44 Шаманский В Е, Методы численного решения краевых задач на ЭЦВМ, ч I, Изд во АН УССР, Киев, 1963, ч П, «Наукова думка», Киев, 1966 45 Я н о ш и Л , Теория и практика обработки результатов измерений, «Мир», 1968 46 Dahlquist Y, Stability and error bounds in the numerical integration of ordinary differential equations, Uppsala, Almqvist & Wiksells boktr C0 A959), 5—92 47 Stroud A H and Secrest D, Gaussian Quadrature Fornuilas, Prentice—Hall, Englewood Cliffs, N Y, 1966 III. Статьи 1 Абрамов A A, Вариант метода прогонки, Ж вычисл матем и матем. физ 1, № 2 A961), 349-351 2 Абрамов А А, О переносе граничных условий для систем обыкновенных дифференциальных уравнений (вариант метода прогонки), Ж вычисл матем и матем физ 1, № 3 A961), 542—543 3 Абрам'Ов А А, О переносе условия ограниченности для некоторых систем обыкновенных линейных дифференциальных уравнений, Ж вычисл. матем и матем физ 1, Л" 4 A961), 733—737 4 Абрамов А А, Андреев В Б, О применении метода прогонки к нахождению периодических решений дифференциальных и разностных уравнений, Ж вычисл матем и матем физ 3, Л"» 2 A963), 377—381 5 Бабурин О В, Лебедев В И, О вычислении интегралов в смысле главного значения, весов и узлов квадратурных формул Гаусса, ЖВМ и МФ 5, № 3 A965), 454-462 6 Бахвалов Н С, К оценке ошибки при численном интегрировании дифференциальных уравнений экстраполяционным методом Адамса, ДАН СССР 104, № 5 A955), 683—686 7 Бахвалов Н С, Некоторые замечания к вопросу о численном интегрировании дифференциальных уравнений методом конечных разностей, ДАН СССР, 104, Л» 6 A955), 805—808 8 Бахвалов Н С, О накоплении вычислительной погрешности при численном решении дифференциальных уравнений, Сб «Вычисл методы и программирование», вып I, Изд во МГУ, 1962, 47—68 9 Бахвалов Н С, Об определении начального шага и оценке главного члена погрешности при численном интегрировании с автоматическим выбором шага, Сб «Вычисл методы и программирование», вып I, Изд-во МГУ, 1962, 69—79
список ЛИТЕРАТУРЫ 625 10 Бахвалов Н С, Об оптимальных оценках скорости сходимости квад ратуриых процессов и методов интегрирования типа Монте-Карло на классах функций, Сб «Числ методы решения диффер и иптегр уравнений и квадратурные формулы», «Наука», 1964, 5—63 11. Бахвалов Н С, Об алгоритмах выбора шага интегрирования, Сб «Вычисл методы и программирование», вып V, Изд-во МГУ, 1966, 3-8 12 Бахвалов Н С, К оптимизации методов решения краевых задач прн наличии пограничного слоя, Ж вычисл матем и матем физ 9, № 4 A969), 841—859 13 Бахвалов Н С, Об оптимальности линейных методов приближения операторов на выпуклых классах функций, Ж вычисл матем и матем физ 11, №4 A971), 1014—1018 14 Бахвалов Н С, Об оптимизации методов решения обыкновенных дифференциальных уравнений с сильно осциллирующими решениями, Жвычисл матем и матем фиа 11, Кя 5 A971), 1318—1322 15 Бродский М Л, Асимптотические оценки погрешности при численном интегрировании систем обыкновенных дифференциальных уравнений разностными методами, ДАН СССР 93, № 3 A953), 599—602 16 Волков Е А, Эффективные оценки погрешности разностных решений краевых задач для обыкновенного дифференциального уравнения, Тр МИЛН 112 A971), стр 141—151 17 Валеев К Г, Ракитский Ю Р, Об отыскании разностными методами областей неустойчивости ретений системы линейных дифференциальных уравнений, Сб «Числ методы решения диффер и интегр уравнений и квадратурные формулы», «Наука», 1964, 110—122 18 ГайсарянС С, О построении начальных условий при интегрировании систем обыкновенных дифференциальных уравнений методом Адамса, Сб «Вычисл методы и программирование», вып III, Изд во МГУ, 1965, 262—265 19 ГельфандИ М, Цейтлин М Л, Принцип нелокального поиска в системах автоматической оптимизации, ДАН СССР 137, № 2 A961), 295— 298 20 Годунов С К, Метод ортогональной прогонки для решения систем разностных уравнений, Ж вычисл матем и матем физ 2, № 6 A962), 972—982 21 Годунов С К, О численном решении краевых задач для систем линейных обыкновенных дифференциальных уравнений, УМН 16, вып 3 A961), 171—174 22 Горбунов А Д, Шахов Ю А, О приближенном решении задачи Коши для обыкновенных дифференциальных уравнений с наперед заданным числом верных знаков, I, Ж вычнсл матем и матем физ 3, Ks 2 A963), 239—253, II, там же, 6, № 3 A964), 426—433 23 Гончар А А, О скорости рациональной аппроксимации непрерывных функций с характерными особенностями, Матем сб 73, вып 4 A967), 630—638 24 ДиткипВ А.ЛюстерникЛ А, Об одном способе практического гармонического анализа на сфере Сб «Вычисл матем и вычнст техника», Кя 1, Изд во АН СССР, 1953, 3—13 25 Долгополова Т Ф, Иванов В К, О численном дифференциро вании, Ж вычисл матем и матем физ 6, № 3 A966), 570—576 26 Дьякон овЕ Г, О построении итерационных методов на основе использования операторов, эквивалентных по спектру, Ж вычисл матем п матем физ 6, № 1 A966), 12—34 27 Ж II л е н к и н Я М , О квадратурных формулах на класса;^ функции, Ж вычисл матем и матем физ 8, № 3 A968), 507—516.
■626 список ЛИТЕРАТУРЫ 28. Ильин А. М., Разностная схема для дифференциального уравнения с малым параметром при старшей производной, Матем. заметки 6, К» 2 A969), 237—248. 29. Канторович Л. В., Функциональный анализ и прикладная математика, УМН 3, вып. 6 B8) A948), 89—181. 30. Колмогоров А. Н., Тихомиров В. М, е-энтропия и е-емкость множеств в функциональных пространствах, УМН 14, вып. 2 A959), 3—86. 31. Ким Г., О решении некоторых систем линейных алгебраических уравнений высокого порядка. Сб. «Вычисл. методы и програмйирование», вып. 3, Изд-во МГУ, 1965, 134—146. 32. К р е й н С. Г., Ш а б л и ц к а я И. О., Об устойчивости разностных схем для задачи Коши, Ж. вычисл. матем. и матем. физ. 6, № 4 A966), 648— 664. 33. М о р о 3 о в В. А., О восстановлении функции методом регуляризации, Ж. вычисл. матем. и матем. физ. 7, № 4 A967), 874—881. 34. Морозов В. А., О задаче дифференцирования и некоторых алгоритмах приближения экспериментальной информации, Сб. «Вычисл. методы и программирование», вып. 14, Изд-во МГУ, 1970, 46—62. 35. Мысовских И. П., О кубатурных формулах для вычисления интегралов по поверхности сферы, Сиб. матем. ж. 5, К» 3 A964), 721—723. 36. О г н е в а В. В., Метод «прогонки» для решения разностных уравнений, Ж. вычисл. матем. и матем. физ. 7, № 4 A967), 803—812. 37. П о в 3 н е р А. Я., Павлов Б. В., Об одном методе численного интегрирования систем обыкновенных дифференциальных уравнений, Ж. вычисл. матем. и матем. физ. 3, № 4 A973), 256—259. 38. Приказчиков В. Г., Однородные разностные схемы высокого порядка точнвсти для задачи Штурма—Лиувилля, Ж. вычисл. матем. и матем. физ. 9, №2 A969), 315—336. 39. Р я б е н ь к и ft В. С, Необходимые и достаточные условия хорошей обусловленности краевых задач для систем обыкновенных разностных уравнений, Ж. вычисл. матем. и матем. физ. 4, К» 2 A964), 242— 255. 40. Р а к и т с к н и Ю. В., Методика последовательного увеличения шага численного интегрирования систем обыкновенных дифференциальных уравнений, ДАН СССР 207, № 4 A972). 793-795. 41. Са ЛИХОВ Н. П., О полярных методах решения задачи Коши для систем обыкновенных дифференциальных уравнений, Ж. вычисл. матем. н матем. физ. 2, № 4 A962), 515—528. 42. Самарский А. А., Тихонов А. Н., Об однородных разностных схемах, Ж. вычисл. матем. и матем. физ. 1, № 1 A961), 5—63. 43. Соболев С. Л., Некоторые замечания о численном решении интегральных уравнений. Изв. АН СССР, сер. матем. 20, № 4 A956), 413— 436 44. Соболев С. Л., О формулах механических кубатур на поверхности сферы, Сиб. матем. ж. 3, № 5 A962), 769—796. 45. Тихонов А. Н., О решении некорректно поставленных задач и методе регуляризации, ДАН СССР 151, № 3 A963), 501—504. 46. Т и X о н о в А. Н., Об устойчивости алгоритмов для решения вырожденных систем линейных алгебраических уравнений, Ж. вычисл. матем. и матем. физ. 5, №4 A965), 718—722. 47. Тихонов А. Н., О некорректных задачах оптимального планирования, Ж. вычисл. матем. и матем. физ. 6, № 1 A966), 81—89. 48. Т и X о н о в А. Н., Горбунов А. Д., Асимптотические разложения погрешности разностного метода решения задачи Коши для системы обын- новенных дифференциальных уравнений, Ж. вычисл. матем. и матем. физ. 2, № 4 A962). 536—548.
список ЛИТЕРАТУРЫ 627 49. Тихонов А. Н., Горбунов А. Д., Оценки погрешности метода типа Руиге — Кутта и выбор оптимальных сеток, Ж. вычнсл. матем. и матем. физ. 4, № 2 A964), 232—241. 50. Тихонов А. Н., Горбунов А. Д., Г а й с а р я и С. С, Описание алгоритма построения оптимальных сеток при решении задачи Коши для обыкновенных дифференциальных уравнений методом Рунге — Кутта, Сб, «Вычисл. методы и программирование», вып. 6, Изд-во МГУ, 1966, 17—20. 51. Тихонов А. Н., Самарский А. А., Разностная задача Штурма — Лиувилля, Ж. вычисл. матем. и матем. физ. 1, Ms 5 A961), 784—^5. 52. Ш а п к и н А. Ф., Замыкание двух вычислительных алгоритмов, основан- HVX на идее ортогонализации, Ж. вычисл. матем. и матем. физ. 7, № 2 A967). 411—416. 53. Bull г sell R., Bemerkungen zur Romberg—Integration, Numer. Math. 6^ № 11 A964), 6—16. 54. Butcher I. G., A Modified Multistep method for the numerical integration of ordinary differential equations, J. Assoc. Comput. mach., vol. 12, № 1 A965), 124—135. 55. D a h 1 q u i s t Y., Convergence and stability in the numerical integration of ordinary differential equations, Math. Skand, vol. 4 № 1 A956]f, 33—53. 56. D is tela no G. P., Causes of instabilities in numerical integration techniques, Internat. J. Comput. Math. vol. 2, № 2 A968), 123—142. 57. F 11 i p p i S., К г a s к e F., Neue verallgemeinerte Multistep Methoden., ZAMM 48, № 8 A968), Sonderh, 65—66. 58. F у f e D. J., Economic evaluation of Runge — Kutta formulae, Math. Сотр. 20,95 A966), 392—398. 59. G r a g g W. В., S t e 11 e r H. 1., Generalized Multistep Predictor Corrector Methods, J. Assoc. Comput.' Mach., vol. 11, № 2 A964), 188—209. 60. G r a n e R. L., Klopenstein. A Predictor — Corrector Algorithm with an Increased Range of Absolute Stability, J. Assoc. Comput. Mach., vol. 12, № 2 A965), 227—242. 61. Haber S., Numerical evaluation of multiple integral, SIAM Rev., vol. 12, № 4 A970), 481—526. 62. Liniger W., A criterion for A stability of linear multistep integration formylae. Computing 3, № 4 A968), 280—285. 63. Reins ch R., Smoothing by Spline Functions, Numer. Mat. 10 A967), 177—183.
ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ Аппроксимация граничного условия 541 — дифференциального уравнения разностной cjteMofl 472, 538 Асимптотически оптимальный метод 147 Задача с пограничным слоем 610 Замыкание алгоритма 558 — метода прогонки 559, 577 — нерегулярное 558 — регулярное 558 Значащие цифры 20 Большое число 20 Балле — Пуссена теорема 225 Верная цифра 20 Весовая функция 96 Выделение весовой функции 186 — корней 420 Вычислительная погрешность при решении задач алгебры 330, 343, 618 задачи Коши 461, 483, 612 • краевых задач 549, 573 617, 618 — — — численном дифференцировании 92 интегрировании 614 интерполировании 76 Гарантированные оценки погрешности на классе функций 300 Главный член погрешности квадратур 159 численного интегрирования дифференциальных уравнений 466, 488, 539 Двусторонние методы интерполирования 528 — — решения дифференциальных уравнений 532 численного интегрирования 529 Bт + 1)-диагональная матрица 555 Дискретные коэффициенты Фурье 220 Диссипация 430 Дифференцирование численное 88 Изменение шага чкленного интегрирования 193, 459, 517 Интегрирование дифференциальных уравнений на большом отрезке 465, 493, 507, 510, 517 — осциллирующих функций 125 — системы уравнений 502 Интерполирование 32 — с кратными узлами 42 Интерполяционная формула Ньютона с разделенными разностями 40 Интерполяционные формулы 467 Бесселя 68 Гаусса 68 — — Лагранжа 36 Ньютона для интерполирования вперед 66 назад 66 — равных промежутков 66 Эверетта 72 Интерполяция 35 — квадратичная 70 — линейная 70 Итерационные методы построения многочлена наилучшего равномерного приближения 235 с использованием спектрально эквивалентных операторов 385 Квадратуры Гаусса 107 — Грегорн 166 — Лобатто 114 — Ньютона — Котеса 95 I— обобщенные 131
ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ 629 Квадратуры прямоугольников 95,99 — Ромберга 175 — Симпсона 100 •— со случайными узлами 311 — составные 131 — трапеций 95, 99 — Филона 126 - — Чебышева 102 — Эйлера 165 — Эрмита 117 Конечно разностные методы 467 схемы 467 Контроль погрешности на шаге 119, 459 Контрольный столбец системы 328 Линейная оценка погрешности 24 Линейно зависимая система элементов 30 ^ независимая система элементов 30, 79 Л"ииейное множество 30 — нормированное пространство 31 ^ подпространство 30 — разностное уравнение (fe-ro порядка) 47 — — — с постоянными коэффициентами 50, 56 Мажорирующая функция 542 Мажорирующее разностное уравнение 542, 612 Л^атрица ортогонализации 80 Машина с плавающей запятой 19 — — фиксированной запятой 18 Мера обусловленности задачи 570 матрицы 390 системы 389 Метод Адамса 468 — Адамса — Штермера 520, 522, 523 — Батчера 475 — вилки 419, 584 — вращений отыскагшя собственных значений 400 * — Гаусса 324 — — с выбором главного элемента 329 — Гершгорина 542 — градиентного спуска 369, 422 - — Зейделя 363, 408 — исключения Гаусса 324 — квадратного корня 330 — Ланцоша 377 — Милна 493 — Монте-Карло 301 Метод Монте-Карло решения системы линейных уравнений 378 — наименьших квадратов 272 ^ наискорейшего спуска 369, 422 — неопределенных коэффициентов 35, 109, 271, 471, 520 — Ньютона решения нелинейных уравнений 412 — оврагов 427 — оптимального покоординатного спуска 422 — ортогонализации 333 — парабол 420 — покоординатного спуска 366, 420, 422 — пристрелки 549, 584 >— прогонки 552, 574 — простой итерации 335, 407 — регуляризации 274, 393 — релаксации 368 — сверхрелаксации 368 — секущих 416 — сопряженных градиентов 372, 377 — спуска 420 — стрельбы 549, 584 — тяжелого шарика 431 — установления 429 — уточнения разностями высших порядков 540 > — Эйлера 450, 493 Л^етоды дифференциальной ортогональной прогонки 577, 580, 582 — интерполяционные 467, 520 — Рунге — Кутта 450 — с забеганием вперед 467 — экстраполяционные 467, 520 Л^етрическое пространство 30 Многочлен наилучшего равномерного приближения 225 Л^ногочлены Лагерра 86 ~у— Лежандра 85 —, наименее уклоняющиеся от нуля 58 — Чебышева 56 — — второго рода 85 первого рода 85 — Эрмнта 86 — Якоби 85 Многошаговый способ численного интегрирования 461 Наилучшее равномерное приближение 225 Начальные условия для конечно разностной схемы 512 Недетерминированный метод 313
630 ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ Некорректные задачи 391 Неравенство Чебышева 302 Неявная схема, метод 467, 514, 520 Неявно заданное дифференциальное уравнение 515 Норма 31 Нормировка конечно-разностной схемы 473 Нормы векторов и матриц 335 Область сходимости метода 406 Обратная интерполяция 78 Обратный ход метода Гаусса 328 прогонки 552 Обращение матриц 332 Обусловленность матрицы системы 389 — системы 389 Однородные схемы 597 Односторонние формулы численного дифференцирования 92 Одношаговые методы численного интегрирования 461 Оператор конечной разности 63 Оптимальные квадратуры 134, 139, 140 Оптимальный линейный итерационный процесс 360 многошаговый итерационный процесс 356 одношаговый итерационный процесс 356 — метод 60, 134 Оптимизация методов 60, 134 — оценки погрешности интерполирования 59 — распределения узлов интегрирования 147, 151, 606 — скорости сходимости итерационного процесса 352 Ортогональная прогонка 580 — система 79 Ортогональные многочлены 81, 85 Ортонормированная система элементов 81 Остаточный член формулы Лагранжа 37 Оценка вычислительной погрешности путем изменения масштабов 330, 617 Очень большое число 20 Параметризация задачи 438, 585 ^Ллохо обусловленные системы 391 ''^ Повышение порядка точности разностной схемы 538 Погрешность абсолютная 19 — аппроксимации дифференциального уравнения разностной схемой 472 — вычислительная 15 — квадратуры на классе функций 103, 139, 292 — математической модели 18 — метода 15 на классе задач 60, 103, 139 на шаге 452, 488 — неустранимая 15, 18 — относительная 19 — предельная 23 Понижение размерности задач оптимизации 425 нелинейных систем 428 Порядок метода 410 — погрешности аппроксимации 473 метода Рунге—Кутта 452 Правило Рунге 168, 492, 539 Практическая оценка погрешности интерполя^1ии 41, 67, 528 квадратур 119, 167 при решении дифференциальных уравнений 492, 539, 617 линейных систем 330, 349 Предельная точность интегрирования на классах 293, 296, 313 Преобразование Фурье быстрое 222 дискретное 218 Проблема собственных значений полная 394 частичная 395 Производная оператора 411 б^-процесс ускорения сходимости 351 Прямое произведение формул интегрирования, интерполирования, дифференцирования 288, 289, 320 Прямой ход метода Гаусса 328 прогонки 552 Разности вперед 62 — высшего порядка 62 — конечные 62 — назад 62 — первого порядка 62 — разделенные 37 — с кратными узлами 43 — центральные 62 Ряд Фурье дискретный, конечный 220 Сеточная функция Грина 542 Сжатое отображение 407 Сильный рост функции 19
предметный указатель 631 Симметризация системы уравнений 353, 362, 394 Случайный покоординатный спуск 422 Согласованные нормы 335 Спектр семейства матриц 343 Спектральный радиус матрицы 344 семейства матриц 344 > Сплайн 256 Стандартные программы численного интегрирования 193, 201 Строго нормированное пространство 31 Схема Эйткена 40 Схемы, точные на решениях специального вида 511, 597, 601 Таблица разделенных разностей функции 39 Телескопический метод 232 Теорема Балле — Пуссена 225 — о главном члене погрешности 489 — об оценке погрешности 484 — Чебышева 226 Точка спектра семейства матриц 343 Точки чебышевского альтернанса 226 Тригонометрическая интерполяция 220 Узлы интерполяции 35 Уплотнение таблиц 72 Уравнения в конечных разностях 47 Ускорение сходимости метода Монте- Карло 307, 311 Условие а 482 Условия сходимости при решении задачи Коши конечно-разностными методами 482, 484, 524 Формула Гаусса для интерполирования вперед 68 Формула Гаусса для иптерполирова- ^ ния назад 68 ^-^ прямоугольников 95, 99 ' с кратными узлами 99 — Ромберга 175 >-— Симпсона 100 ~ i— трапеций 95, 99 — Филона 126 Формулы Адамса 468 — Грегори 166 — Лобатто 114 ~~-«- Ньютона 66 — с забеганием вперед 467 — численного дифференцирования 88 — Эрмита 117 Фундаментальная система решений 54 Функция сильно растущая 20 Характеристическое уравнение 50 Характеристическое уравнение разностной схемы 477 Хорошо обусловленная (поставленная) краевая задача 569, 570 — обусловленные системы 391 Целевая функция 436 Шаг таблицы 62 Эквивалентные нормы 338 Элемент наилучшего приближения 210 Элементарные функции 249 Энтропия 263 е-энтропия 265 Явная схема, метод 467, 520
Николай Сергеевич Бахвалов ЧИСЛЕННЫЕ МЕТОДЫ М., 1975 г., 632 стр. с илл. Редакторы И. М. Овчинникова, Е. В. Шикан Техн. редакторы И. Ш. Аксельрод, А. П. Колесникова Корректор Л. Я. Боровина Печать с матриц. Подписано к печати 28/1 1975 г. Бумага 60x90'/ie. тип. На 2. Фяз. печ. л. 39,5. Усл. печ. л. 39,5. Уч.-изд. л. 38,1. Тираж.40000экз. Цена книги 1 р. 47 к. Заказ .Vq 466 Издательство сНаука» Главная редакция физико-математической литературы 117071, Москва, B-7I, Ленинский проспект, 15" Ордена Трудового Красного Знамени Ленинградская типография Ла 2 имени Евгении Соколовой Союзполнграфпрома при Государственном комитете Совета Министров СССР по делам издательств, полиграфии и книжной торговли 198052, Ленинград, Л-52, Измайловский проспект, 29