Текст
                    В. Ф. Формалев
Д.Л.Ревизников


числЕнныE
М Етоды


Под редакцией А.И. Кибзуна


ИЗДАНИЕ ВТОРОЕ, ИСПРАВЛЕННОЕ И ДОПОЛНЕННОЕ


Рекомендовано Научно-методическим советом
Министерства образования Российской Федерации
по теплотехнике в качестве учеБНОIО пособия
для студентов технических университетов


МОСКВА
ФИ3МАТЛИТ@
2006





УДК 519.6 ББК 22.19 Ф79 Формалев В. Ф., Ревизников д. л. Численные мето.. ды. Изд. 2 e, испр., доп. М.: ФИЗМАТЛИТ, 2006. 400 с. ISBN 5..922] 0737 ..2. В учебнике представлены основные численные методы решения за дач алrебры и анализа, теории приближений и оптимизации, задач для обыкновенных дифференциальных уравнений и уравнений математиче ской физики. Систематически изложены методы конечных разностей, конечных и rраничных элементов, методы исследования аппроксима ции, устойчивости, сходимости, оценок поrрешности. Каждый метод иллюстрируется подробно разобранным примером, даны упражнения для самостоятельной проработки. l{ля студентов и аспирантов технических университетов, специа.. лизирующихся в области теплотехники, прикладной механики и при.. кладной математики. Книrа ориентирована на двухсеместровый курс обучения. ISBN 5 9221 0737..2 @ ФИЗМАТЛИТ, 2006 @ В. Ф. Формалев, д. Л. Ревизников, 2006
ПРЕДИСЛОВИЕ Данный учебник написан на основе двухсеместровоrо курса лекций, читавшеrося авторами на протяжении пятнадцати лет студентам математических и механических специальностей Moc KOBcKoro авиационноrо института (rосударственноrо техническо ro университета) (МАИ). Он состоит из двух частей. Первая часть учебника содержит следующие разделы: элементы теории поrрешностей, численные методы алrебры (как линейной, так и общей), теорию приближений, численные методы решения за дач для обыкновенных дифференциальных уравнений и числен ные методы оптимизации. Вторая часть включает в себя численные методы решения задач математической физики, исследование аппроксимации, устойчивости, сходимости и консервативности конечно разност ных, конечно элементных и rранично элементных методов. Kpo ме этоrо, во вторую часть учебника вошли разделы по методу KO нечных разностей решения MHoroMepHbIx задач математической физики, среди которых такие методы, как методы расщепления, установления, прямых, характеристик, метод с. К. rодунова, а также методы конечных и rраничных элементов с анализом поrрешностей. Отбирая материал для учебника, авторы не заrромождали ero изложением Bcero множества существующих алrоритмов, а оrраничились описанием наиболее широко используемых на практике и популярных методов, а также изложением новых эффективных методов. Вместе с тем изложенные методы вычислений описаны на таком конструктивном уровне, с использованием решенных при меров и упражнений, что читателю нет необходимости при OCBO ении материала обращаться к друrим источникам по вычис лительной математике. Правда, он должен обладать знанием основ линейной алrебры, дифференциальноrо и интеrральноrо исчислений, обыкновенных дифференциальных уравнений, а для освоения второй части основами теории уравнений в частных производных.
4 Предисловие Книrа состоит из девяти rлав, первые пять из которых COCTaB ляют первую часть и содержат материал стандартноrо OДHoce MecTpoBoro курса численных методов, причем поскольку числен ные методы оптимизации читаются, как правило, в отдельном курсе, то в содержание rлавы 5 включены только алrоритмы безусловной минимизации. В существующих учебниках отсутствует систематическое изложение метода конечных элементов. Поэтому в данном учебнике, наряду с систематическим изложением метода конечных разностей в задачах для обыкновенных дифференци альных уравнений (ОДУ) и уравнений математической физики, подробно изложены методы конечных и rраничных элементов на основе метода взвешенных невязок rалеркина, а также метод конечных элементов на основе вариационноrо принципа. Кроме этоrо, в раздел «Методы расщепления численноrо решения MHoroMepHbIx задач математической физики>.> вклю чены разработанные авторами новые, экономичные, абсолют но устойчивые методы численноrо решения MHoroMepHbIx пара болических задач, содержащих смешанные дифференциальные операторы. Приведено доказательство теорем об аппроксимации и абсолютной устойчивости. В отличие от первой части, rде для усвоения каждоrо метода разбирается соответствующий пример, вторая часть изложена на основе конкретных задач, обобщающих материал рассматривае Moro раздела. Таким образом, с позиции содержания материала учебник носит универсальный характер. В этой связи первую часть учебника можно рекомендовать студентам, обучающимся по З1\,о'Но.мu'Чес1\,U.м u тех'Нu'Чес1\,U.м сnецuаль'Ностям с OДHoceMeCT ровым курсом «Численные методы» или «Численные MeTO ды и алrоритмы». Студентам, обучающимся по специально стям «Математическая экономика», «Прикладная математика», «Прикладная механика» и друrим специальностям с уrлублен ным изучением математических дисциплин, рекомендуется, Ha ряду с первой частью, и вторая часть учебника, соответствующая двухсеместровому курсу численных методов. Кроме студентов, обучающихся по упомянутым выше специ альностям, учебник полезен аспирантам, инженерам, научным работникам, а также преподавателям вычислительной MaTeMa
Предисловие 5 тики, которые, кроме Bcero прочеrо, MorYT использовать вторую часть для чтения специальных курсов. Значительное влияние на содержание учебника оказал чл. корр. РАН, заведующий кафедрой «Вычислительная Ma тематика и проrраммирование» МАИ, профессор У. r. Пирумов. Авторы выражают ему свою rлубокую блаrодарность. Авторы rлубоко признательны и аспирантам с. В. Миканеву, с. А. Колеснику, Т. А. Тихоновой, оказавшим неоценимую п мощь при компьютерном наборе рукописи учебника.
ВВЕДЕНИЕ В настоящее время появилось значительное число различных проrраммных продуктов (MathCad, Mathlab и т.д.), с помощью которых, задавая только входные данные и 'Не 6НU1\,ая в сущность аЛ20рuт.мов, можно решить значительное число задач, на обуче ние решению которых и направлен данный учебник. Безусловно, умение пользоваться этими проrраммными про дуктами существенно сокращает время и ресурсы по решению ряда важных задач. Вместе с этим бездумное использование упомянутых выше проrрамм без тщательноrо анализа метода, с помощью KOToporo решается задача, таит в себе следующие опасности. Во nервъtХ, все методы имеют оrраничения по входным па раметрам (например, по размерам матриц при решении систем линейных алrебраических уравнений), и попытка решить задачу с входными параметрами за пределами этих оrраничений прив дит К неудаче. Во вторъtХ, сами методы, в основном численные, имеют cy щественные оrраничения по применению. B тpeтbиx, незнание метода, с помощью KOToporo решалась конкретная задача в проrрамном продукте, приводит к ситуа ции, коrда трудно проанализировать качество решения (напри мер, поrрешность, скорость сходимости итерационных процессов, устойчивость и друrие важнейшие характеристики численных методов) . В 'Четверт'ЬtХ, стандартные проrраммные продукты значи тельно оrраничены количеством решаемых задач, среди которых в основном линейные задачи. Вне сферы их применения остается большинство задач, связанных с уравнениями математической физики и др. Поэтому при численном решении задач (а именно с помощью численных методов решается подавляющее число современных задач) вычислитель должен четко представлять каждый из сле дующих этапов: построение адекватной математической Moдe ли, выбор метода численноrо решения, разработку алrоритма, составление проrраммы, формальную, а затем и фактическую
Введе'Н,ие 7 отладку проrраммы, корректировку и исправление всех этапов, начиная с математической модели, на основе анализа тестовых результатов. Как видно из перечисления этапов решения задач, путь от постановки до получения результатов не краток. В этой связи следует заметить, что если неопытный вычислитель после ocy ществления первых четырех этапов считает, что задача решена, то опытный знает, что первый находится в начале сложноrо пути с неожиданными результатами и поворотами. Учебник состоит из девяти rлав, неравнозначных по объему. Самая краткая первая 2лава содержит элементы теории п rрешностей. В ней авторы обращают внимание на тот факт, что абсолютная поrрешность не превышает точности вычислений. С помощью введенноrо неравенства леrко проясняется существо фразы: «Решить задачу с точностью с », хотя всюду имеем дело с оценкой поrрешностей. Вторая 2лава посвящена численным методам решения задач алrебры (как линейной, так и общей). Здесь внимание обраща ется на следующие вопросы, связанные с применением итераци онных методов: 1. Сходится ли итерационная последовательность, т. е. суще ствует ли предел итерационной последовательности при CTpeM лении количества итераций в бесконечность? 2. Если такое предельное значение существует, то является ли оно решением задачи? з. Если получен положительный ответ на первые два вопроса, то, останавливая итерационный процесс на какой либо итерации, необходимо оценить сверху поrрешность решения итерационным методом по сравнению с точным (неизвестным, но существую щим) решением. Если при этом задана точность вычислений, то из неравенства «поrрешность не превышает точность» можно оценить нижнюю rраницу числа итераций для достижения за данной точности. Третья 2лава содержит основы теории приближений и вклю чает следующие разделы: интерполяцию, включая и сплайн интерполяцию, аппроксимацию с помощью метода наименьших квадратов, численное дифференцирование и численное инте rрирование. При этом обращается внимание на то, что метод численноrо дифференцирования с помощью отношения конеч ных разностей с оценкой поrрешности метода является OCHO
8 Введе'Н,ие вой конечно разностноrо решения задач как для обыкновенных дифференциальных уравнений, так и для уравнений в частных производных. Четвертая 2лава посвящена численным методам решения задач для обыкновенных дифференциальных уравнений (задач Коши и краевых задач). При этом известные и хорошо заре комендовавшие себя методы численноrо решения задач Коши, такие как методы Эйлера, Эйлера Коши, PYHre KYTTa, сформу лированы соответственно на основе квадратурных формул пря моуrольников, трапеций, Симпсона, что позволяет использовать для оценки поrрешности соответствующие оценки для KBaдpa турных формул. Конечно разностный метод решения краевых задач дЛЯ ОДУ с rраничными условиями, содержащими производные, описан так, что порядок аппроксимации дифференциальноrо уравнения сохранен при аппроксимации краевых условий. Это достиrается допущением о том, что rладкость решений на rраницах совпа дает со старшей производной, входящей в дифференциальное уравнение и дальнейшим использованием дифференциальноrо уравнения при аппроксимации краевых условий. Ниже, в шестой ['лаве будет показано, что такой подход не просто выравнивает порядок аппроксимации краевых условий с порядком аппрок симации дифференциальноrо уравнения, но и делает конечно разностную схему 1\,онсервативной, сохраняющей фундаменталь ные законы, на основе которых выведены дифференциальное уравнение и краевые условия. В пятую 2лаву включен материал по численным методам, безусловной минимизации функций одной и мноrих переменных, причем, как отмечалось выше, более сложные аспекты числен ных методов математическоrо проrраммирования включаются в отдельные курсы. Шестая 2лава посвящена методам решения задач для уравнений математической физики. Здесь, кроме конечно разностных схем в задачах для уравнений rиперболическоrо, па раболическоrо и эллиптическоrо типов и алrоритмов их решения, сделан акцент на cTporoe определение понятий аппроксимации, порядка аппроксимации, устойчивости, сходимости, порядка сходимости (порядка точности), консервативности, а также на описание различных методов исследования устойчивости и Ha хождения порядка аппроксимации. Проанализированы неявно
Введе'Н,ие 9 явные конечно разностные схемы, как следствие двусторонних методов, с исследованием аппроксимации и устойчивости для схем типа Кранка Николсона. Идеи, заложенные в этой схеме, активно используются в методах расщепления для MHoroMepHbIx задач математической физики. Здесь показано, что конечно разностная аппроксимация производных первоrо порядка в Kpa евых условиях с помощью отношения односторонних разностей без использования дифференциальноrо уравнения приводит, с одной стороны, к схемам пониженноrо порядка, а с друrой к схемам, не обладающим свойством консервативности То есть приведен при мер неконсервативной схемы, пользоваться которой не рекомендуется, так как численно решается задача, отличная от дифференциальной задачи. В rлаве на основе трудов А. А. CaMapcKoro подробно опи сан энерrетический метод исследования устойчивости конечно разностных схем, в котором энерrетическое тождество приводит к достаточным условиям устойчивости вследствие выполнения принципа максимума. Метод rармоническоrо анализа, также по дробно изложенный, дает только необходимые условия устой чивости. В седьмой 2лаве приведены численные методы решения MHO rOMepHbIx задач математической физики, такие как методы расщепления, метод характеристик для квазилинейных rипербо лических систем, метод прямых, метод сквозноrо счета С. К. ro дунова. Наряду с широко известными методами переменных направлений Писмена Рэчфорда и дробных шаrов Н.Н. Янен ко, рассмотрены экономичные абсолютно устойчивые методы переменных направлений с экстраполяцией и полноrо расщеп ления, принадлежащие авторам. В отличие от существующих методов, предложенные методы применимы к задачам, coдep жащим смешанные производные и любую размерность по про странственным переменным с сохранением при этом порядка аппроксимации и абсолютной устойчuвостu, что обосновыва ется доказательством соответствующих теорем. Для всех MeTO дов расщепления исследованы порядок аппроксимации и устой чивость. Восьмая и девятая 2лавъt посвящены систематическому из ложению методов конечных и ['раничных элементов COOTBeT ственно. Основное внимание уделено методу взвешенных невязок rалеркина, поскольку вариационные методы в методе конечных
10 Введе'Н,ие элементов (МКЭ) существенно оrраничивают Kpyr решаемых за дач, так как не для всякой задачи математической физики можно построить вариационный функционал. В rлаве показано, что Ba риационный Функционал с использованием метода Релея Ритца можно всеrда построить для дифференциальных уравнений, co держащих симметрический дифференциальный оператор. Изло жен метод нахождения поrрешности конечно элементноrо реше ния в классе функций, принадлежащих пространству Соболева wi. в этот класс, как известно, входят кусочно линейные базис ные функции, на основе которых строится решение. Метод rраничных элементов изложен для стационарных за дач математической физики в мноrосвязных пространственных областях, хотя для нестационарных задач можно поступить так же, как в методе конечных элементов, ['де дифференциальный оператор по времени аппроксимирован с помощью отношения конечных разностей, а пространственные с помощью метода конечных элементов.
Часть 1 числЕнныIE мЕтодыI АлrЕБрыI И АНАЛИЗА в первую часть включены следующие разделы CTaHдapTHO ro односеместровоrо курса «Численные методы»: 1) элементы теории поrрешностей; 2) численные методы алrебры; З) теория приближений; 4) численные методы решения задач для обык новенных дифференциальных уравнений; 5) численные методы оптимизации. rЛАВА [ элЕмЕнтыI ТЕОРИИ поrРЕШНОСТЕЙ Проrрамма Поrрешности, их источники, устранимые и неустранимые поrреш ности. Абсолютная и предельно абсолютная поrрешности. Абсолютные поrрешности выражений. Значащие и верные цифры. Точность, COOT ношение между поrрешностью и точностью. Окруrление чисел. Поrрешность решения задачи обусловливается следующими причинами. 1. Математическое описание и исходные данные являются неточными. 2. Применяемые методы являются чаще Bcero приближенны ми, мало Toro, решение не может быть получено за конечное число арифметических операций. з. В процессе вычисления проводятся окруrления. В COOTBeT ствии с этим поrрешности называют: 1) 'НеустраниМЪtМU nО2реш'Ностямu; 2) nО2реш'Ностямu метода; з) въt'ЧислuтеЛЬ'Н'ЬtМU nО2решностямu.
12 Элементъt теории nоzрешностеи [lЛ 1 Пусть а приближенное число для точноrо числа А. По rрешностью Да приближенноrо числа а называют разность Да == А а. Абсолютной nО2решностъю Д(а) приближенноrо числа а Ha зывают абсолютную величину поrрешности Д(а) == 'А аl , позволяющую отвлечься от знака поrрешности. Поскольку в большинстве случаев точное значение числа А неизвестно и, следовательно, невозможно вычислить абсолют ную поrрешность, вводят понятие nределъной абсолютной no 2решности Да приближенноrо числа а, удовлетворяющее сле дующему соотношению: Д(а) == 'А аl Да, или а Да А а + Да' При вычислении абсолютных (предельных абсолютных) по rрешностей выражений удобно использовать формулы диффе ренцирования, заменяя дифференциалЬJ независимых перемен ных абсолютными (предельными абсолютными) поrрешностями. Пример 1.1. Д(а + Ь) == Д(а) + Д(Ь) Да + Дь; Д(а Ь) == Ll(a) Д(Ь) Да + Дь. Пример 1.2. Д(а . Ь) == аД(Ь) + ЬД(а) аДь + ЬДа. Пример 1.3. Д ( а ) == Д(а)Ь аД(Ь) аДь ЬДа . Ь Ь 2 Ь При.мер 1.4. Вычислить Д ( ( а +;. с ) 2) . ........
lЛ. 1 J Элементъt теории nоzрешностей 13 Решение. Пусть dи(a,b,c,f)';:::;j д (( а+;ос )2). Тоrда 8и 8и 8и 8и д(и)';:::;j да д(а)+ аьД(Ь) + ih"Д(с) + д/ ди)== == 2 ( а +; . с ) [ /2 д (а) + Д(b) + д(c) + (a/ Ьс) Ди)] 2 ( а + ь. с ) ( Д .:.д д а + Ьс Д ) '" / / а + / ь + / с + /2 " Значащими цифрами приближенноrо числа а называются все цифры в ero записи, начиная с первой ненулевой слева. Пример 1.5. а == 0,0 2087 , а == 0,0 208700 (значащие цифрь] подчеркнуты) . Если приближенное число а имеет n значащих цифр , то за предельную абсолютную поrрешность числа а принимают половину единицы разряда, выражаемоrо n й значащей цифрой, считая слева направо. Пример 1.6. Пусть даны величины а с предельными абсо лютными поrрешностями Да: а 2 17 3,141 0,012 1795 , Да 0,005 0,0005 0,0005 0,5 Тоrда, например, для числа а == 2,17: 2,175 ( А 2,165 Относите.лъно'Й nО2решностъю 8 (а) приближенноrо числа а называется отношение в долях единицы: ( ) == IA al. == Д(а) v а lal lal . Преде.лъно'Й относите.лъно'Й nО2решностъю да приближенно ro числа а называют число, не меньшее относительной поrреш ности этоrо числа:
14 Элементъt теории nоzрешностеи [lЛ 1 д(а) == IA 1 :, аl да, или а lаlб а А а + lal8a. Ясно, что д'а иа == . Зна'Чащую цифру приближенноrо числа а называют верной, если абсолютная поrрешность этоrо числа не превышает полови ны единицы разряда, соответствующеrо этой цифре (не превы.. шает предельной абсолютной поrрешности числа). Пример 1. 7. Для приближенноrо числа а == 0,02087 с аб солютной поrрешностью Д(а) == 0,4 . 10 5 определить верные значащие цифры. Реш е н и е. Поскольку данная поrрешность числа не превы шает предельной абсолютной поrрешности этоrо числа, равной Да == 0,5 . 10 5, т. е. Д( а) == 0,4 . 10 5 < Да == 0,5 . 10 5, то Bep ными будут значащие цифры 7, 8, О, 2, т. е. а 0,0 2087 (верные цифры подчеркнуты). Вычислить приближенное число а с то'Чностъю до с == 10 n означает необходимость сохранить верной значащую цифру, CTO ящую В n",м разряде после запятой. Пример 1.8. Вычислить v2 с точностью с == 10 З. Реш е н и е. v2 == 1,414 2; третья цифра после запятой явля ется верной, т. к. д( J2) == 11,4142 1,4141 == 0,0002 < 0,0005 == == Да < с == 10 З. Следовательно, все подчеркнутые цифры яв ляются верными. Таким образом, из определения абсолютной поrрешности приближенноrо числа а и точности ero вычисления вытекает очевидная связь: Д(а) Да < с, т. е. абсолютна-я nО2решностъ и nределъна-я абсолютна-я nО2реш.. ностъ не nревыlаютт то'Чности. Относительная поrрешность суммы, разности, произведе ния, частноrо не превышает суммы относительных поrрешно стей операндов: 8(а::!: Ь) 8(а) + 8(Ь); б(а. Ь) ( 8(а) + 8(Ь); 8 (а / Ь) 8 ( а) + 8 ( Ь ) . Относительная поrрешность степени не
rл. 1 J Элементъt теории nоzрешностеи 15 превышает произведения показателя степени на относительную поrрешность основания: Ь(а т ) т8(а); 8( yIa) 8(а)/т. При ОКРУ2лении приближенноrо числа а до n й значащей цифры необходимо к цифре (п + l) ro разряда прибавить циф ру 5; если полученное число больше или равно 10, то к цифре п ro разряда добавляется единица, а разряды начиная с (п + l) ro отбрасываются; в противном случае разряды начиная с (п + 1) ro отбрасываются без прибавления единицы к n MY разряду. Пример 1.9. Окруrлить число 7r == 3,141592: а) до третьей значащей цифры; б) до четвертой значащей цифры. Решение. а) 3,14, так как 1,592 + 5 == 6,592 < 10; б) 3,142, так как 5,92 + 5 == 10,92 > 10.
r л А В А 11 числЕнныIE МЕТОДЬI АлrЕБрыI Проrрамма Прямые методы решения систем линейных алrебраических ypaBHe ний (СЛАУ). Метод raycca, ero применение для обращения ивычисле.. иия определителей матриц. Метод проrонки и циклической проrонки, их обоснование. Матричная проrонка. Нормы векторов и матриц, их соrласование. Итерационные методы решения С Л АУ. Метод простых итераций и метод 3ейделя с обоснованием сходимости. Методы реше ния нелинейных уравнений. Методы отделения и уточнения корней, rеометрический смысл, сходимость, поrрешность методов: половин.. Horo деления, Ньютона, секущих, простых итераций. Скорость схо.. димости, методы ускорения сходимости. Методы простых итераций, 3ейделя и Ньютона решения систем нелинейных уравнений. Числен ные методы решения задач на собственные значения и собственные векторы матриц. Метод вращения Якоби, степенной метод. В rлаве «Численные методы алrебры» рассматриваются чис ленные методы решения систем линейных алrебраических ypaB нений (СЛАУ), численные методы решения нелинейных ypaBHe ний и систем нелинейных уравнений, численные методы решения задач на собственные значения и собственные векторы матриц. Среди численных методов алrебры существуют прямые MeTO ды, в которых решение получается за конечное число операций, и итерационные методы, в которых результат получается за бесконечное число операций, но прерывая этот процесс на какой либо итерации необходимо сделать следующее: 1) доказать сходимость итерационной последовательности; 2) если итерационная последовательность сходится, необхо димо определить, является ли предельное значение решением задачи; 3) при утвердительном ответе на первые два вопроса и OCTa новке процесса на какой либо итерации необходимо уметь oцe нить поrрешность итерационноrо значения по сравнению с ТОЧ ным решением, которое неизвестно.
э 2 1 J Числе'Н'Нъtе методи реше'Ния еЛАУ 17 э 2.1. Численные методы решения СЛАУ Из прямых методов решения СЛАУ рассмотрим методы rayc са и проrонки [1,2]. 2.1.1. Метод raycca. в методе raycca матрица СЛАУ с по.. мощью элементарных алrебраических операций преобразуется в верхнюю (нижнюю) треуrольную матрицу, получающуюся в результате прямоrо хода. В обратном ходе определяются неиз вестные. Пусть дана СЛАУ а11 Х 1 + а12 Х 2 + . . . + а1n Х n == b 1 , а21 Х 1 + а22 Х 2 + . . . + а2n Х n == Ь 2 , .......... ...... ......... ....... а n 1 Х 1 + а n 2 Х 2 + . . . + аnnх n == Ь n . Запишем расширенную матрицу системы с контрольными суммами: Х1 Х2 ХЗ... х N Ь k'E Ведущая стро'К;а t n .. а11 а12 а 1з... а 1n b 1 :Е1 == Ь 1 + L: a1j 1==1 n а21 а22 а2З. . . а2n Ь 2 :Е2 == Ь2 + L: a2j j==l n аЗ1 аЗ2 азз. . . азn Ь з :Е з == Ь з + L: аЗj j==l . . . ............ . . . ................. n а n 1 а n 2 а nз. . .а nn Ь n :Е n == Ь n + L: anj 1. + Вед с.- j==l - ии ( а21 ) ( аЗ1 ) ( а п 1 ) all ; all ;...; all > 1 й шаz ущ столбец На первом шаrе алrоритма raycca выберем диаrональный элемент а11 #- о (если он равен О, то первую строку переставляем с какой либо нижележащей строкой) и объявляем ero ведущим, а соответствующую строку и столбец, на пересечении которых он стоит, ведущими. Обнулим элементы ведущеrо столбца,
18 Числе'Н'Нъtе методъ" алzебри [lЛ. 11 находящеrося под ведущим элементом. Для этоrо сформиру", ( а21 ) ( аЗl ) ( аnl ) ем числа ; ;...; и выпишем их около al1 аl1 аll ... " ( а21 ) ведущеи строки. .у множая ведущую строку на число , аll складывая со второй и ставя результат на место второй строки, по луч им вместо элемента а21 нуль, а вме:то э лементов ( а2j 2 ) == 2, N, Ь 2 и :Е 2 соответственно элементы a 2j == a2j + a1j , аll . 1 ( а 2 ] ) 1 ( а21 ) J == 2, N, Ь 2 == Ь2 + Ь 1 , :Е 2 == :Е 2 +:Е 1 . и так аll аll далее. Умножая ведущую строку на число ( аnl ) , складывая аll с n ой строкой и ставя результат на место n...ой строки, получим б вместо элемента а 1n 1 нуль, а ост ( аль:::е ) эл мен ь ты Э ь той ( с: к ) и удут иметь вид: anj == anj + a1j , ь n == n + 1 , all аll E == :Е n + :Е1 ( аnl ) . Сохраняя ведущую строку неизменной, аll получим в результате l ro шаrа алrоритма raycca следующую матрицу (при этом сумма преобразованных элементов какой либо строки и правой части должна быть равна преобразованной по тому же алrоритму контрольной сумме; если это не так, то в соответствующей строке сделана ошибка, которую необходимо устранить) : Х1 Х2 ХЗ... х N Ь k'E а11 а12 а1з... а 1n Ь 1 :Е 1 Ведуща-я стро'К;а 1 1 1 ь 1 :Е 1 ( 1) (1) О аЗ2 а п2 а22 а 2з . . . а2n -:r ; ...; 2 2 а22 а 22 О 1 1 1 ь 1 Е 1 ) а З 2 азз. . . а зn З З 2 й шаz ... ............... о 1 1 1 ь 1 :Е 1 а n 2 аnз. . .а nn n n Ведущий столбец На втором шаrе алrоритма raycca в качестве ведущеrо эле мента выбирается элемент a 2 =1 о (если он равен нулю, то BTO
92 1 J Числе'Н'Нъtе методъ" реше'Ния еЛАУ 19 рую строку меняем местами с ни еле ащеи строкой). Форми руются числа ( a 2 ) ; . . . ; ( a 2 ) , которые ставятся около а 22 а 22 ведущей строки. Умножая ведущую строку на число ( a 2 ) , а22 складывая с третьей строкой и ставя результат на место третьей строки, получим вместо элемента a 2 нуль, а вместо элементов 1 . Ь 1 1 2 1 1 ( аз2 ) . а зj , J == 3, n, з' из элементы а Зj == а Зj + a 2j , J == а 22 == 3, n , b == b + b ( а!2 ) , :E == :E + :E ( a 2 ) . и так далее. а 22 а22 Умножая ведущую строку на число ( a 2 ) , складывая резуль а 22 тат с n ой строкой и ставя полученную сумму на место n ой строки, получим вместо элемента a 2 нуль, а вместо элементов 1 Ь 1 l 2 1 1 ( а n 2 ) . 3 Ь 2 a nj , n' и n элементы a nj a nj + a 2j ' J , N, n а 22 == ь 1 + Ь1 ( a 2 ) :Е2 == :Е 1 + :Е1 ( a 2 ) Сох р аняя l ю и 2 n 2 l' n n 2 l' а 22 а 22 Ю строки матрицы неизменными, получим в результате BToporo шаrа алrоритма raycca следующую матрицу (при этом сумма преобразованных элементов какой либо строки и правой части должна быть равна преобразованной контрольной сумме; если это не так, то в соответствующей строке сделана ошибка): Х1 Х2 ХЗ ... х n Ь k'E а11 а12 а1З . . . а1n b 1 :Е 1 О 1 1 1 Ь 1 :Е 1 а22 а 2з . . . а 2n 2 2 О О 2 2 ь 2 :Е 2 азз . . . а зn З З ........ . . . . ....... . . . . . . о о 2 2 Ь 2 :Е 2 а nз . . . а nn n n ) з il шаz > (n l) й шаz IIосле (n l) ro шаrа алrоритма raycca получаем следую щую расширенную матрицу с контрольными суммами, содержа..
20 Числе'Н'Нъtе методъ" аЛ2ебрЪt [lЛ. 11 щую верхнюю треуrольную матрицу СЛАУ: Хl Х2 Хз Х N Ь k'E аll а12 аlЗ аln ыl :Е 1 О 1 1 1 ь 1 :Е 1 а22 а2З а2n 2 2 О О 2 2 ь 2 :Е 2 азз а зn 3 3 ............... О О О n 1 bn 1 :En 1 . . . а nn n n Прямой ход алrоритма raycca завершен. В обратном ходе алrоритма raycca из последнеrо уравнения сразу определяется Х n , из предпоследнеrо Xn 1 И т. д. Из первоrо уравнения определяется Хl: an 1x == bn 1 nn n n => Х n , n 2 + n 2 b n 2 an 1n 1 Xn 1 an lnXn == n 1 => Xn 1, .. .... ....... ... ........ ..... .......... аll Х l + . . . + аln Х n == Ь 1 => Хl. Замечание 1. Если элементы какой либо строки матрицы си стемы в результате преобразований стали равными нулю, а пра вая часть не равна нулю, то СЛАУ несовместна, поскольку не выполняются условия теоремы Кронекера Капелли. Замечание 2. Если элементы какой либо строки матрицы си стемы и правая часть в результате преобразований стали paBHЫ ми нулю, то СЛАУ совместна, но имеет бесконечное множество решений, получающихся с помощью метода raycca дЛЯ СЛАУ порядка т, rде r paHr матрицы исходной СЛАУ. Замечание 3. В результате прямоrо хода метода raycca можно вычислить определитель матрицы А исходной СЛАУ: d t А 1 2 n 1 е == аll а 22 а зз . . . . . а nn . При этом в случае перестановки строк в процессе прямоrо хода необходимо учитывать соответствующие перемены знаков Замечание 4. Метод raycca можно применить для обращения невырожденной (det А =1 О) матрицы.
э 2.1 ] Числе'Н'Нъtе методъ" реше'Ния СЛАУ 21 Действительно, пусть требуется обратить невырожденную матрицу А == [aij], i,j == 1, n . Тоrда, обозначив A l == Х, Х == == [Xij], i, j == 1, n , можно выписать матричное уравнение АХ == == Е, rде Е единичная матрица 1 О О О 1 О Е== о о . .. 1 на основе KOToporo можно записать цепочку СЛАУ Хll 1 Х12 О Хln О Х21 О Х22 1 Х2n О А. А. , ... , А. , Х n l О Х N О Х nn 1 каждую из которых можно решить методом raycca. При этом, поскольку верхняя треуrольная матрица для всех этих СЛАУ будет одной и той же, то метод raycca применяется один раз. Для этоrо строится следующая расширенная матрица с контрольны ми суммами: Хln Х2n .. . Х nn ............... Х12 Х22 Х n 2 Хll Х21 Х n l Ь 1 Ь 2 . Ь N k'E аll а12 аln 1 О О :Е 1 а21 а22 а2n О 1 О :Е 2 а n l а n 2 ... а nn О О . .. 1 :Е n
22 Числе'Н'Нъtе методъ" алzебры [ lЛ. 11 в результате применения (n l) ro шаrа метода raycca п лучаем Хlп Х2п . . . Х пп ............... Х12 Х22 Х п 2 Хl1 Х21 Х п l Ь 1 Ь 2 ь п k'E аll а12 аlп Ь 11 Ь 12 Ь 1п :Е 1 1 1 b l b 2 b п :Е 1 а 2 2 а 2п 2 О О п l b п l b п l b п l п l . . . а пп . пl п2 ... пп п При этом первый столбец (Хll Х21 ... Х п l )Т обратной матрицы определяется в обратном ходе метода raycca с правой частью ь 1 , столбец (Х12 Х22 .. . Х п 2 )Т С правой частью Ь 2 и т. д. Столбец (Хlп Х2п .. . Хпп)Т определяется с правой частью ь п . Пример 2.1. Методом raycca решить СЛАУ 10Хl + Х2 + Хз == 12, 2Хl + 10Х2 + Хз == 13, 2Хl + 2Х2 + 10хз == 14. Решение. Прямой ход: Хl Х2 Хз Ь k'E 10 1 1 12 24 ( 2/10); ( 2/10) 2 10 1 13 26 ) l й шаz 2 2 10 14 28 Хl Х2 Хз Ь k'E 10 1 1 12 24 > О 9,8 0,8 10,6 21,2 ( 1,8/9,8) > l й шаz 2 й шаz О 1,8 9,8 11,6 23,2
э 2.1 J Числе'Н'Ные методъ" реше'Ния СЛАУ 23 Хl Х2 ХЗ Ь k'E 10 1 1 12 24 > О 9,8 0,8 10,6 21,2 2 й шаz О О 9,653 9,653 19,31 Обратный ход: 9,653хз == 9,653, хз == 1 9,8Х2 + 0,8хз == 10,6, Х2 == 1 10Хl + Х2 + ХЗ == 12, Хl == 1. Ответ: Хl == Х2 == ХЗ == 1. Пример 2.2. Методом raycca вычислить определитель MaT рицы и обратить матрицу СЛАУ из примера 2.1 10 1 1 А == 2 10 1 2 2 10 Решение. det А == 10 . 9,8 .9,65 == 945,994 (точное значение 946). Прямой ход: ХIЗ Х2З Хзз Х12 Х22 ХЗ2 Хll Х21 ХЗl Ь 1 Ь 2 Ь З k'E 10 1 1 1 О О 13 ( 2/10); ( 2/10) 2 10 1 О 1 О 14 > l й шаz 2 2 10 О О 1 15
24 Числе'Н'Нъtе методъ" алzебрЪt [lЛ. 11 ХIЗ Х2З Хзз Х12 Х22 ХЗ2 Хl1 Х21 ХЗl Ь 1 ь 2 Ь З k'E 10 1 1 1 О О 13 о 9,8 0,8 0,2 1 О 11,4 О 1,8 9,8 0,2 О 1 12,4 ( 1,8/9,8) > 2 й шаz ХIЗ Х2З ХЗЗ Х12 Х22 ХЗ2 Хl1 Х21 ХЗl ь 1 ь 2 ь З k'E 10 1 1 1 О О 13 > О 9,8 0,8 o 2 1 О 11,4 2 й шаz , О О 9,653 0,163 0,184 1 10,31 Обратный ход: 9,653ХЗl == 0,163, 9,8Х21 + 0,8Х31 == 0,2, 10Хll + Х21 + ХЗl == 1; 9,653ХЗ2 == O,184, 9,8Х22 + 0,8ХЗ2 == 1, 10Х12 + Х22 + ХЗ2 == о; 9,653хзз == 1, 9,8Х2З + 0,8хзз == о, 10ХIЗ + Х2З + ХЗЗ == о. Хll Х12 ХIЗ 0,104 0,0085 0,0095 Отсюда А 1 == Х21 Х22 Х2З 0,O19 о, 104 0,0085 ХЗl ХЗ2 ХЗЗ 0,0169 0,019 0,104 Проверка:
92 1 J Числе'Н'Нъtе методъ" реше'Ния СЛАУ 25 10 1 1 0,104 0,0085 0,0095 A.A l== 2 10 1 0,019 0,104 0,0085 2 2 10 0,O169 0,019 0,104 1,004 О 0,0005 0,001 1,004 О 0,001 0,001 1,004 т. е. с точностью до ошибок окруrления получена единичная MaT рица. УПР АЖНЕНИЯ. 2.1. Методом raycca решить СЛАУ: 10Хl 3Х2 2хз == 5, 10Хl + Х2 3Хз == 8, а) хl + 10Х2 4хз == 7, б) 2Xl + 10Х2 ХЗ == 7, 2Хl 3Х2 + 10хз == 9; Xl 3Х2 + 10хз == 6. 2.2. Решить примеры из задания 2.1 методом raycca, приведя матрицы СЛАУ к нижнему треуrольному виду. 2.3. Методом raycca вычислить определители матриц и обра тить матрицы СЛАУ из задания 2.1. 2.4. Показать с помощью метода raycca, что СЛАУ 5Хl Х2 + ХЗ == 5, Хl + 5Х2 + ХЗ == 7, Хl + 5 Х 2 + ХЗ == 10 несовместна. 2.5. Показать с помощью метода raycca, что СЛАУ 5Хl Х2 + ХЗ == 5, Хl + 5 Х 2 + ХЗ == 7, 2Хl + 10Х2 + 2хз == 14 имеет бесчисленное множество решений. Найти их.
26 Числе'Н'Ные методы алzебры [lЛ. 11 2.6. Методом raycca обратить матрицу 321 А== 253 136 2.1.2. Метод проrонки. Метод проrонки является одним из эффективных методов решения СЛАУ с трехдиаrональными матрицами, возникающих при конечно..разностной аппроксима ции задач для обыкновенных дифференциальных уравнений (ОДУ) и уравнений в частных производных BToporo порядка, и является частным случаем метода raycca. Рассмотрим следу.. ющую СЛАУ: аl == о Ь 1 Х l + СI Х 2 == d 1 , а2 Х l + Ь2 Х 2 + С2 Х З == d 2 , аЗ Х 2 + ЬзХз + СЗ Х 4 == d з , (2.1) .... ............ ........ ... .......... an lXn 2 + bn lXn l + Cn lXn == dn l, anXn l + ЬnХ n == d n , Сп == О, решение которой будем искать в виде Xi == A i X i+l + B i , i == 1, n, (2.2) rде A i , B i , i == 1, n , проrоночные коэффициенты, подлежащие определению. Для их определения выразим из первоrо уравне.. ния СЛАУ (2.1) Хl через Х2, получим Сl d 1 Х1 == Ь-; Х 2 + ь; == А 1 Х 2 + В 1 , (2.3) откуда Cl d 1 А1 == Ь-;' В 1 == Ь;. Из BToporo уравнения СЛАУ (2.1) с помощью (2.3) выразим Х2 через Хз, получим C2 d 2 а2Вl Х2 == Хз + == А 2 х з + В 2 , Ь 2 + а2 А l Ь 2 + а2 А l
9 2.1 J Числе'Н'Нъtе методъ" реше'Ния ел АУ 27 откуда А2 == C2 , В2 == d 2 a2 B l . Ь 2 + а2 А l Ь 2 + а2 А l Продолжая этот процесс, получим из i ro уравнения СЛАУ (2.1) : Ci d i aiBi l Xi == Xi+l + , b i + aiAi l b i + aiAi l следовательно: Ci A i == b i + aiAi l ' В . d i aiBi l 'l, . b i + aiAi l Из последнеrо уравнения СЛАУ имеем Cn d n anBn l В х n == Ь А Хn+l + ь А == О . Хn+1 + n, n + а n n l n + а n n 1 т. е. В d n anBn l n == Хn' Ь n + anAn ] Таким образом, прямой ход метода проrонки по определению проrоночных коэффициентов A i , Bi, i == 1, n , завершен. В pe зультате проrоночные коэффициенты вычисляются по следую щим формулам: Аn == о (т.к. СП == О), C' A . z 'l, , b i + aiAi l d i aiBi l B i == i == 2, n 1; b i + aiAi l ' (2.4) Cl А 1 == Ь-;' d 1 В 1 == Ь 1 ' так как а1 == О, i == 1; (2.5) А О О В dn anBn l n == , т. к. Сп ==, n , == n. Ь n + anAn ] Обратный ход метода проrонки осуществляется в COOTBeT ствии с выражением (2.2): (2.6) Х п == АnХn+1 + Вn == О . Хn+1 + Вn == Вn, Xn l == An lXn + Bn 1, Xn 1 == An 2Xn 1 + Bn 2, (2.7) . ......... ........... ......... ......... Х1 == А 1 Х 2 + В1.
28 Числе'Н'Нъtе методъ" алzебрЪt [lЛ. 11 Формулы (2.4) (2. 7) формулы правой nрО20'Н'Х;и. Аналоrично, начиная с последнеrо уравнения СЛАУ (2.1) можно вывести формулы .левой nрО20'Н'Х;и. Общее число операций в методе проrонки равно 8n + 1, т. е. пропорционально числу уравнений. Такие методы решения СЛАУ называют э'Х;о'Номи'Ч'Н'Ьtми. Для сравнения метод raycca требует n (2n 2 + 9n + 1) операций, т. е. число операций пропор 6 ционально n з [1]. Пример 2.3. Методом проrонки решить СЛАУ 8Х1 2Х2 == 6, X1 + 6Х2 2хз == 3, 2Х2 + 10хз 4Х4 == 8, ХЗ + 6 Х 4 == 5. Решение. Cl 2 А 1 == == == О 25 Ь] 8 " d 1 В 1 == ь; == о, 75; .... С 2 А 2 == Ь 2 + а2 А l 6 1 О 25 == о, 3478, , В 2 == d 2 а2 В l == (3 + 1 . о, 75) == о, 6522; Ь 2 + а2Аl 5, 75 Сз Аз == ь А == 0,374, з + аз 2 В з == d з а З В 2 == 0,626; Ь з + аз А 2 А4 == О (С4 == О), В4 == d 4 а4 В З == 1 о; Ь 4 + а4 А з ' Х4 == А4 Х 5 + 84 == 1, О, ХЗ == АЗХ4 + В з == 1, О, Х2 == А 2 х з + 82 == 1, О, Хl == А1Х2 + В1 == 1, О. Очень часто приходится решать замкнутые СЛАУ с трехдиа rональными .матрицами без краевых условий (а1 =1 О, сП =1 О), .......
9 2.1 J Числе'Н'Нъtе методъ" реше'Ния еЛАУ 29 т. е. СЛАУ вида а1 Х n + Ь1 Х 1 + С1 Х 2 == d 1 , aiXi l + biXi + Ci X i+1 == d i , i == 2, n 1, (2.8) anXn l + ЬnХn + С n Х 1 == d n , которые при а1 == О, сП == О совпадают с системой (2.1). Такие СЛАУ решаются с помощью формул ци'Х;личес'Х;о'й nРО20н'Х;и [2]: (2.9) Х i == P i Х n + Q i , i == 1, n 1; Аn+l Ql + Вn+l . Х n == 1 С n + 1 A n + 1 Pl ' (2.10) Pi == Ai+1 P i+1 + Ci+1, Qi == Ai+1Qi+1 + Bi+1, (2.11) Рn == 1, Qn == О, i == n 1, 1; А Ci В d i aiBi С aiCi i+1 == b i + ai A ; , i+l == Ь; + a;A i ' i+1 == b i + aiAi ' i == 1, n , А 1 ==0, 81==0, С 1 ==1. (2.12) Сначала по формулам (2.1 2) вычи сляются проrоночные K эффициенты A i , B i , C i , i == 1, n + 1, прямоrо хода. Затем по формулам (2.11) вычисляются проrоночные коэффициенты об paTHoro хода: P i , Qi, i == n, n 1, . .. , 1. Наконец, по (2. 10) вычисляется Х n , а затем по формулам (2.9) Xi, i == 1, n 1. Пример 2.4. Методом циклической проrонки решить СЛАУ 2Х4 + 6Х1 2Х2 == 6, X1 + 6Х2 2хз == 3, 2Х2 + 10хз 4Х4 == 8, Хз + 6 Х 4 + Х1 == 6.
30 ЧислеНН'Ьtе метод'Ь" аЛ2ебр'Ьt [lЛ. 11 Решение. 1) A1 == о, B1 == О, C 1 == 1; Cl А2 == == 0,3333, Ь 1 + аl А l 82 == d 1 аl В l == 1,0, Ь 1 + аl А l С 2 == al С 1 == o 3333' Ь 1 + аl А l ' , Аз == 0,3529, А4 == 0,3736, В З == 0,7059, С З == o 0588' , , В4 == 0 6154, С4 == 0,01098; А5 == 0,777, В5 == 1,1758, С5 == 0,001952. 2) Р4 == 1,0, Q4 == о, Р З == А 4 Р 4 + С4 == 0,3846, Qз == A4Q4 + + 84 == 0,6154; Р2 == АзР з + С З == 0,07693, Q2 == АзQз + В З == 0,9231, P 1 == А 2 Р 2 + С 2 == 0,3077, Q1 == A 2 Q2 + В 2 == 1,3077; Х4 == A 5 Ql + В5 == 1,0, Р Q 1 О ХЗ == З Х 4 + з == , , 1 С 5 А5 Рl Х2 == Р 2 Х 4 + Q2 == 1,0, X1 == P 1 X 4 + Q1 == 1,0. Для устойчивости метода проrонки (2.4) (2.7) достаточно BЫ полнения следующих условий [2]: Ibil lail + ICil, i == 1, n , ai =1 о, i == 2, N , Ci =1 о, i == 1, n 1, (2.13) причем cTporoe неравенство имеет место хотя бы при одном i. Здесь устойчивость понимается в смысле ненакопления поrреш ности вектора неизвестных оператором проrонки при малых по rрешностях входных данных (правых частей и элементов MaT рицы СЛАУ). Аналоrично и для циклической проrонки. При выполнении (2.13) проrоночные коэффициенты A i (A i , C i , P i В методе циклической проrонки), i == 1, n , не содержащие правых частей d i СЛАУ, по модулю меньше единицы: I At I < 1 в методе проrонки и IAil < 1, 'В,I < 1, ICil < 1 в методе циклической проrонки. УПР АЖНЕН ИЯ. 2.7. ДЛЯ СЛАУ (2.1) составить формулы левой проrонки в Ha правлении от i == n (Сп == о) к i == 1 (a1 == о). ..........
9 2.1 ] ЧислеНН'Ьtе метод'Ь" решения ел АУ 31 2.8. Для задач и aixi l biXi + CiXi+1 == d i , Ibil lail + /Cil, ai i=- о, Ci i=- о, i == 1, n 1; Хо == COX1 + d o , i == о; Х n == CnXn l + + d n , i == n, составить формулы правой и левой проrонки. По казать, что проrоночные коэффициенты, не содержащие правых частей, меньше единицы. А 1 2 1 ( ) 2' 2.9. ДЛЯ СЛ у 2Ui 1 2 Ui + 2 Ui+l + ui == h , == 1, n, h h h ио == Un+1 == 1, h == 0,1, n == 10 достаточные условия устой чивости (2.13) не выполняются. Является ли метод проrонки устойчивым? 2.10 Используя метод левой проrонки, выписать форму лы точноrо решения системы aiXi } biXi + CiXi+1 == d i , Ibil lai/ + /Cil, ai i=- о, Ci i=- о, i == 1, n 1; ХО == СоХ} + аХб + d o , i == о; Х n == CnXn l + d n , i == n, rде нулевое уравнение является нелинейным; а == 10 lO. 2.11. Доказать, что метод проrонки дЛЯ СЛАУ (2 1) есть метод raycca. 2.12. Записать формулы циклической проrонки дЛЯ СЛАУ aiui l biUi + CiUi+1 == d i , i == о, n ; U l == и n , Un+1 == ио; I b i I I ai I + 1 Ci 1, ai i=- о, Ci i=- о (cTporoe неравенство имеет место хотя бы для одноrо i). 2.13. Найти р ешение разностной системы Ui l 2Ui + Ui+1 == == о, i == 1, n 1; ио == 1; и n == 2; n == 6. 2.14. Найти решени е разн остной системы Ui l + 2Ui Ui+1 == h 2 sin(ih), i == 1, n 1; ио == U1 h; и n == 1; nh == 7r /2. Определить поrрешность путем сравнения с решением задачи d 2 и. dи(o) ( 7r ) + Sln Х == о; d == 1; U == 1. dx х 2 2.1.3. Обоснование метода проrонки. Метод проrонки содержит операцию деления и следовательно возможно накоп ление ошибок при увеличении числа уравнений в СЛАУ (2.1) или числа узлов сетки при конечно разностной аппроксимации краевых задач. Поэтому необходимо rарантировать 'Корре'Ктностъ, т. е. BЫ полнение условия b i + aiAi l =1- о, i == 1, n , (2.14) и устоu'Чивостъ, т. е, ненакопление ошибок при увеличении чи сла уравнений СЛАУ (2.1).
32 ЧислеНН'Ьtе метод'Ь" аЛ2ебр'Ьt [lЛ. 11 Пусть проrоночные коэффициенты A i , B i , i == 1, n , вычисле ны точно, а при вычислении Х N допущена ошибка Еn: Х N == Х п + + Еn. Тоrда из (2.7) имеем следующие равенства: Xi == AiXi+1 + B i , i == n 1, . .. , 1, Xi == AiXi+l + B i , i == n 1, . .. , 1. Вычитая из первоrо равенства второе, получаем Ei == AiEi+1' i == n 1, n 2, . . . , 1, т. е., если выполняются условия IAil < 1, i == 1, n , (2.15) то алrоритм метода проrонки не накапливает ошибок и является устой'ЧивъtМ. Для корректности и устойчивости метода проrонки, т. е. для реализации неравенств (2.14), (2.15), существует следующая лемма. Лемма 2.1 (достато'Ч'Ное условие 'Корре'К;т'Ности и ycтoй 'Чивости метода nрО20'Н'К;и): Пусть коэффициенты СЛАУ (2.1) удовлетворяют условиям I ai I о, \ b i I > о, I ci I О, i == 1, n , (2.16) Ibil lail + ICil, i == 2,n 1; Ib 1 \ IC11 , 'Ьn' 'аn' , ( 2.1 7) причем хотя бы в одном из неравенств (2.16) или (2.17) выпол няется cTporoe неравенство, т. е. матрица СЛАУ (2.1) имеет диа rональное преобладание. Тоrда имеют место неравенства (2.14) и (2.15), rарантирующие корректность и устойчивость метода проrонки. \ I ICll Действительно, из (2.17) имеем неравенство Al == Ibl\ 1, а из (2.16) неравенства I A .; I == ICil /' Ibil lail Ibil laillAi ll " 1, Ib i + aiAi ll Ib i + aiAi ll Ibi + aiAi ll i == 2, n 1.
9 2.1 ] ЧислеНН'Ьtе метод'Ь" решения еЛАУ 33 Кроме этоrо, из условия (2.16) леммы имеем Ibi+aiAi ll Ibil laiIIAi ll lail+lcil laiIIAi ll ICil >0, т. е. b i + aiAi l # О, что и требовалось доказать. 2.1.4. Матричная nporOHKa. При численном решении MHoroMepHbIx задач математической физики, например ДBYMep ных задач для уравнений Лапласа, теплопроводности и т. п., результирующая СЛАУ имеет пятидиаrональную матрицу, которую можно представить следующей системой BeKTopHO матричных уравнений: AiXi l + BiX i + CiX i + 1 == F i , i == О, N, Ао == С N == е, (2.18) rде е нулевая матрица. Здесь A i , B i , C i , i == О, N , квадратные матрицы размерно сти М х М; X i , F i , i == О, N, соответственно искомые векторы и векторы правых частей размера М. При этом должно выпол няться условие det B i -# О, i == О, N. Так же как и в методе скалярной проrонки, решение ищется в виде (2.19) X i == PiXi+l + Qi, i == О, N, rде Pi, Qi, i == О, N, соответственно проrоночные матрицы и проrоночные векторы, подлежащие определению. Для их опре деления выразим из нулевоrо векторно матричноrо уравнения системы (2.18) ХО через X 1 , получим ХО == B01COX1 + B01 Fo == POX 1 + Qo, (2.20) откуда РО == B01CO, Qo == B01 Fo. Далее из первоrо векторно матричноrо уравнения системы (2.18) выразим Х 1 через Х 2 с использованием (2.20), получим X 1 == (B1 + A1PO) lC1X2 + (B 1 + A1PO) 1(Fl A1Qo) == == P 1 X 2 + Q1, 2 В.Ф. Формалев, д.л. Ревизников
34 ЧислеНН'Ьtе метод'Ь" аЛ2ебр'bll [lЛ 11 откуда P 1 == (B1 + A1PO) lC1' Q1 == (В 1 + A1PO) 1(F1 A1Qo). Продолжая этот процесс, получим проrоночные матрицы P i и проrоночные векторы Q i В следующем виде: P i == (Bi + AiPi l) lCi, Qi == (Bi + AiPi l) l'(Fi AiQi l), i == О, N, Ао == 8, С N == 8. (2.21) Прямой ход метода матричной проrонки завершен. Искомые векторы Xi определяются из соотношений (2.19): Y N == PNXN+1 + QN == QN (PN == 8), XN l == PN lXN + QN l, (2.22) ХО == POX1 + Qo, называемых обратным ходом метода матричной проrонки. Матричная проrонка неэкономична, так как она включает в себя операцию обращения матриц. Алrоритм (2.21), (2.22) устой'Чив и 'К;орре'К;те'Н, если выполне ны следующие условия: det B i f:. О, i о N' , , A i f:. 8, i == 1, N; Ci f:. 8, i == О, N 1; IIB01CoII < 1; IIB N 1CNII < 1; IIB;lCill + IIB;l Aill < 1, i == 1, N 1. Здесь норма матрицы может быть выбрана любой (см. сле дующий раздел). 2.1.5. Нормы векторов и матриц. Для исследования сходимости численных методов решения задач линейной алrебры вводятся понятия I:fОрМЫ векторов и матриц.
9 2.1] ЧислеНН'Ьtе метод'Ь" решения еЛАУ 35 Нормой ве'Ктора х == (X1, Х2, . . . , хп)Т (обозначают Ilxll) в n MepHOM вещественном пространстве векторов х Е R n называ ют неотрицательное число, вычисляемое с помощью компонент вектора и обладающее следующими свойствами: а) Ilxll о (11xll == о тоrда и только тоrда, коrда х нулевой вектор х == 'lЭ); б) 110: . xll == IQI. \\xll для любых чисел Q' (действительных или комплексных) ; в) Ilx + yll \\xll + \\yll. Нормой матрицъt Аnхn (обозначается IIAII) с вещественными элементами в пространстве матриц называют неотрицательное число, вычисляемое с помощью элементов матрицы и обладаю щее следующими свойствами: а) IIAII > о (IIAII == о тоrда и только тоrда, коrда А нулевая матрица А == е); б) 110: . AII == 'й' . IIAII дЛЯ любых действительных и комплекс ных чисел й; в) IIA + в" IIAII + \\BII; r) \\А. В\\ IIAII'IIB\\ дЛЯ всех n х n матри.ц А и В paCCMaT риваемоrо пространства. Как видно из определения норм векторов и матриц (опреде ления аналоrичны, за исключением последнеrо свойства нормы матрицы), норма матриц должна быть соrласована с нормой векторов. Это соrласование осуществляется связью IIAx\\ IIA\\ IIxll. (2.23) Наиболее употребительными являются следующие нормы векторов: \\ х 111 == т x I х i I , ( 2.24 ) n IIxll2 == L IXil, i==l (2.25 ) IIxl13 == i х; == V(x, х) . (2.26) 2*
36 ЧислеНН'Ьtе метод'Ь" аЛ2ебр'Ьt [lЛ 11 Соrласованными с ними с помощью связи (2.23) нормами матриц будут соответственно: n IIAII1 == т x laijl, j==l (2.27) n IIAI12 == т x laijl, 3 . 1 == IIAI13 == J mrx IЛilАТ А · (2.28) (2.29) Можно показать [3], что нормы матриц (2.27) (2.29) соrла сованы с помощью связи (2.23) с соответствующими нормами векторов (2.24) (2.26). Под знаком квадратноrо корня в норме матрицы IIAI13 находится спектральный радиус симметрической матрицы А т А, дЛЯ которой, как известно, все собственные зна чения являются действительными. Из линейной алrебры известно, что собственные значения матриц не превышают их норм. Действительно, из равенства Ах == лх и свойств норм векторов и матриц следует: 11 лх 11 == == Iлlllхll == IIAxll IIAllllxll, Iлl IIAII, или р(А) IIAII, rде р(А) == m?Lx IЛil максимальное по модулю собственное значение или спектральный радиус матрицы А. Таким образом, за норму матрицы можно принять ее спектральный радиус. Пример 2.5. Показать соrласованность нормы вектора IIxll} (2.24) и нормы матрицы IIAI11 (2.27). Решение. n IIAxlll == m?Х 'Ахl == m?Х L aijXj j==l n n m x L IЩjХjl m x IXil m x L laijl == 3==1 j==l n IIAxl1 1 n == Ilxlll mr x laijl Ilxll mr x IЩjl. . j==l 1 j==l Таким образом, условие соrласования (2.23) выполнено
921] ЧислеНН'Ьtе метод'Ь" решения ел АУ 37 Для исследования поrрешностей, возникающих при реше нии СЛАУ, вводят понятие 'Числа обусловле'Н'Ности матриЦЪt cond(A) [4]: cond(A) == IIAII '1IA lll. Если в качестве нормы матрицы принять ее спектральный радиус т x I Лi 1, то 1 сопd(А) == m x IЛil . 1>. 1 1, nn П i поскольку спектральный радиус обратной матрицы А 1 равен обратной величине минимальноrо собственноrо значения исход ной матрицы. Число обусловленности характеризует степень зависимости относительной поrрешности решения СЛАУ от поrрешности входных данных (правых частей и элементов матрицы). Можно показать, что справедливы следующие неравенства: IILlxl1 d А IILlbll Ilxll "соп Ilbll' IILlxll IILlAII Ilxll сопd А IIA + ДАII . Таким образом, чем больше число обусловленности, тем силь нее влияние поrрешности входных данных на конечный резуль тат. Матрица считается плохо обусловленной, если cond(A) » 1. Чем ближе cond(A) к 1, тем матрица лучше обусловлена. Примером может служить ортоrональная матрица. Прuмер 2.6. Вычислить число обусловленности для MaT рицы А [ 1, О 0,99 ] . 0,99 0,98 Решение. Для этой матрицы det А == 10 4 =1 о; А 1 == 104 Х [ О, 98 o, 99 ] 11 1 11 4 х ; IIAI11 == 1, 99; A 1 == 1,99.10 ; cond(A) == o, 99 1, О == 39601. УПР АЖНЕНИЯ. 2.15. Используя неравенство Коши Буняковскоrо Ix T yl IIxll lIyll, доказать второе и третье свойства для норм вектора, определяемых соотношениями (2.24) (2.26).
38 ЧислеНН'Ьtе метод'Ь" аЛ2ебр'Ьt [lЛ. 11 2.16. Доказать соrласованность норм (2.25) вектора и (2.28) матрицы [3]. 2.17. Соrласованы ли нормы (2.26) и (2.29)? 2.18. Доказать, что для любой (п х п) матрицы А Xlaijl IIAII n. щ хlаijl. ,3 3 2.19. Доказать, что если матрица ортоrональна (А 1 == А Т), то cond(A) == 1. 2.20. Пусть А== 6 13 17 13 29 38 17 38 50 6 4 1 A l == 4 11 7 1 7 5 Л1 0,0588, Л2 0,2007, лз 84,74. Найти IIAII, IIA lll, cond(A). 2.1.6. Итерационные методы решения СЛАУ. Метод простых итераций. При большом числе уравнений (rv 100 и более) прямые методы решения СЛАУ (за исключением MeTO да проrонки) становятся труднореализуемыми на ЭВМ, прежде Bcero из за сложности хранения и обработки матриц большой размерности. Методы последовательных приближений, в которых при BЫ числен ии последующеrо приближения решения используются предыдущие, уже известные приближенные решения, называют ся итерацио'Н'Нъtми. В итерационных методах решение может быть вычислено за бесконечное число итераций (приближений), а поскольку это невозможно, то, останавливая процесс вычислений на какой либо итерации, необходимо уметь оценивать поrрешность метода итераций. Рассмотрим СЛАУ a11 x1 + a12 X 2 + . . . + a1nX n == b1, a21x1 + а22 Х2 + . . . + а2n Х n == Ь2, ( 2.30 ) ..... ... .......... ..... .... .... an1X1 + ап2Х2 + . . . + аnnх n == Ь n с невырожденной матрицей (det А f=. о).
9 2.1 ] ЧислеНН'Ьtе метод'Ь" решения еЛАУ 39 Приведем СЛАУ к эквивалентному виду: X1 == (31 + Q11X1 + Q12 X 2 + . . . + Q1nXn, Х2 == (32 + Q;21 X 1 + й22 Х 2 + . . - + й2n Х n, (2.31 ) .. ....... ....... ...................... Х n == (3n + Qn1X1 + аn2 Х 2 + . . . + йnnХn, или, в векторно матричной форме: х==(3+ах, (2.32) X1 (31 Q11 аln Х== (3== й== Х n (3n Qn1 аnn Такое приведение может быть выполнено различными спо собами. Одним из наиболее распространенных является сле дующий. Разрешим систему (2.30) относительно подчёркнутых неиз вестных при ненулевых диаrональных элементах aii f=. О, i == 1, n (если какой либо коэффициент на rлавной диаrонали равен HY лю, достаточно соответствующее уравнение поменять местами с любым друrим уравнением). Получим следующие выражения для компонентов вектора (3 и матрицы а эквивалентной системы: ь. (3 . . 1. , aii { aij ., 1 . . , 'l,J == , n, 'l I З; r\J .. ai'; '--"-1.] .. О, i==j, i== l,n . Отметим, что существуют и друrие способы приведения СЛАУ к эквивалентному виду. В качестве нулевоrо приближения х(О) вектора неизвестных примем вектор правых частей Х(О) (3, или ( (О) (О) (О) ) Т ( Т X 1 Х 2 ... Х n (31 (32 .. . (3n) . Тоrда итерационную последовательность векторов
40 Числе'Н'Н'Ьtе метод'Ь" аЛ2ебри [lЛ. 11 х(о) == (3, X(l) == (3 + ах(О) , х(2) == (3 + ax(l) , ( 2.33 ) X(k) == (3 + ax(k l). называют методом nростЪtХ итераций. При решении СЛАУ (2.30) методом простых итераций необ ходимо отвечать на следующие вопросы. 1. Сходится ли последовательность х(О) , x(l) , х(2), . . . (k) 1 . (k)? Е . . . , х , . . ., т. е. существует ли 1т х . сли предел k -----+ 00 существует ( lim x(k) == ), то необходимо ответить на второй k -----+ 00 вопрос. 2. Является ли предельный вектор решением СЛАУ (2.31) или (2.32)? Если решение, т. е. (2.32) удовлетворяется тож дественно == (3 + a , то необходимо ответить на третий вопрос. 3. Так как бесконечное число итераций осуществить невоз можно, то, останавливая процесс на k ой итерации, необходимо определить: какова поrрешность по норме II xk II? ИЛИ из условия заданной точности €, определить, каково число итераций k, удовлетворяющее этой точности? Для ответа на первые два вопроса существует Т е о р е м а 2.1. (достато'Ч'Ное условие сходимости метода nростЪtХ итераций) [1]. Метод nростЪtХ итераций (2.зз) сходится еди'Нстве'Н'Ному реше'Нию СЛАУ (2.32) (а следователъ'Но, и реше'Нию иcxoд 'Ной СЛАУ (2.30)) при любом 'На'Чалъ'Ном nриблиЭlCе'Нии х О , если а ая либо 'Норма матриЦЪt а э вивале'Нт'Ной систеМъt ме'Нъше еди'Ницъt: lIall < 1 v' Ilall и V'x O . До каз ател ьст во. Запишем последовательность (2.зЗ) в виде х(О) == (3, x(l) == (3 + а(3 == (Е + а)(3, х(2) == (3 + а(Е + а)(3 == (Е + а + ( 2 )(3,
э 2 1] ЧислеНН'Ьtе метод'Ь" решения ел АУ 41 х(з) == {3 + й(Е + Q + (2)(3 == (Е + Q + а2 + QЗ)(3, (2.34 ) X(k) == (E+Q+Q2+...+Qk)(3, ['де Е единичная матрица с нормой IIEII == 1. Переходя вначале в равенствах (2.34) к норме с использова нием свойств норм векторов и матриц: Ilx(k)11 == II(E+0:+0: 2 +---+o: k )/311 IIE+0:+0: 2 +.._ _ _ _ + o:kll-II/311 (IIEII + 110:11 + 110:112 + - - - + 110011 k ) -11/311, а затем к пределу при k -----+ 00, получим kl Ilx(k)1I [kl (1 + 110:11 + - - - + 1100II k )] -11/311. в квадратных скобках этоrо неравенства стоит ряд rеометри ческой проrрессии со знаменателем IIQII, который леrко сумми руется: lim Il x(k) 11 Нт 1 Ilall k 11/311 . k -----+ 00 k -----+ 00 1 11 а 11 При IIQII 1 данный предел не существует, а при IIQII < 1 сумма бесконечно убывающей rеометрической проrрессии равна 1 1 Ilall - Таким образом, lim Il x(k) 11 111311 k-----+oo " 1 Ilall ' т. е. предел итерационной последовательности (2.33) существует. Обозначим этот предел через : lim x(k) == . k -----+ 00 Ответим на 2 й вопрос: является ли этот предельный BeK тор решением эквивалентной СЛАУ (2.32), а следовательно, и исходной СЛАУ (2.30)? Для этоrо в равенствах (2.34) перейдем к пределу при k -----+ 00: lim x(k) == [ lim ( Е + Q + а2 + . . . + Q k )] . (3. k -----+ 00 k -----+ 00 (2.35)
42 ЧислеНН'Ьtе метод'Ь" аЛ2ебр'Ьt [lЛ. 11 в квадратных скобках равенства (2.35) стоит матричный ряд, формально являющийся биномиальным рядом с суммой: S == == (Е Q) l . Следовательно, lim x(k) == == (Е й) l . (3, k -----+ 00 откуда получаем следующую цепочку равенств: (E й) ==(3* a ==(3, или ==(3+a . (2.36) Сравнивая (2.36) и (2.32), заключаем, что решение СЛАУ (2.32), а следовательно, и СЛАУ (2.30). Ответим на 3 й вопрос. Покажем, что если процесс итераций остановить на k й итерации, то норма поrрешности II x(k) 11 будет оцениваться неравенством II x(k) 11 Ilallk+] 11/311. 1 lIall (2.37) Действительно, рассмотрим равенства (2.33) на двух coceд них итерациях, получим { x(k+l) == Qx(k) + (3, x(k) == Qx(k l) + (3, откуда Ilx(k+1) x(k)11 1100111Ix(k) x(k l)ll. На основе последнеrо неравенства можно записать следую щую цепочку неравенств: 11 x(k+2) x(k+l) 11 IIQIIII x(k+l) x(k) 11 ' Ilx(k+3) x(k+2)11 IIQI1 2 1I x (k+l) x(k)11 ' Ilx(k+ p ) x(k+p l) 11 IIQllp l Ilx(k+l) x(k) 11 ' используя которую в тождестве х(нр) x(k) == (x(k+1) x(k») + (х(Н2) x(k+1») + . . . . . . + (х(нр) x(k+P l») , .........
92.1] ЧислеНН'Ьtе метод'Ь" решения еЛАУ 43 получим неравенство Ilx(k+P) x(k) 11 (1 + 110:11 + 110:112+. . .+ 1I001IP 1) Ilx(k+l) x(k) 11, откуда при р -----+ 00 приходи м к неравенству (2.37) (при IIQII < 1): II( x(k) 11 1 1 а Ilx(k+l) x(k) 11 11 11 k k+l 11 allllall llx(1) х(О) 11 llIall ll/Зl1, (2.38) так как x(l) х(О) == ((3 + ах{О») (3 == Q . (3, х(О) == (3 Если задана точность €, то Ilall k + 1 1 Ilall ll /311 С:, откуда получаем априорную нижнюю оценку числа итераций k при IIQII < 1: k 1 2 19 с: 19 111311 + 19 (1 lIall) + ::r 19 11 а 11 . Это неравенство обычно дает завышенное число итераций k. Как правило, при выполнении достаточноrо условия сходимо сти итерационный процесс останавливается при удовлетворении условию с:(ч == Ilall Ilx(k) x(k l) 11 с: (иноrда используется 1 lIall более простое условие Ilx(k) x(k l) 11 Е), которое проверяется начиная с k == 2. После выполнения этоrо условия принимается x(k). Если используется метод Якоби (выражения (2.32) для экви валентной СЛАУ), то достаточным условием сходимости являет n ся диа20'Налъ'Ное nреоблада'Ние матриЦЪt А, т. е. laiil > 2: laijl j==l,i#j V'i (для каждой строки матрицы А модули элементов, стоящих на rлавной диаrонали, больше суммы модулей недиаrональных элементов). Очевидно, что в этом случае IIQlIl меньше единицы и, следовательно, итерационный процесс (2.33) сходится. Т е о р е м а 2.2 ('Необходимое и достаточ'Ное условие cxoди мости метода nростЪtХ итераций). Для сходимости итepaци О'Н'НО20 nроцесса (2.33) 'Необходимо u достаточ'Но, чтоБЪt cne тp матриЦЪt Q э вивале'Нт'Ной систеМъt леЭICал в'Нутри PY2a с pa диусом, рав'Нъt.м еди'Нице.
44 ЧислеНН'Ьtе метод'Ь" аЛ2ебр'Ьt [lЛ. 11 Спектр все собственные значения матрицы на комплексной плоскости (1', (3) (рис.2.1). Докажем только достаточность: если сnе'Ктр матриЦЪt Q Me'Нъ ше еди'НиЦЪt, то метод npo стъtх итераций (2.зз) cxoдит ся 'к еди'Нстве'Н'Ному реше'Нию системы (2.32). Доказател ь СТ во. Рассмотрим задачу на соб ственные значения и собствен р у Рис. 2.1. Спектр матрицы эквива лентной системы ные векторы матрицы а: йУ == == лу. Применяя к обеим ча стям этоrо равенства опера цию нормы и учитывая, что т x IЛil < 1, получим IIQyll == Iлl . 'у' < lIylI , Ilayll < 1 lIyll ' откуда, в соответствии с равенством (2.23), заключаем: 110:11 == Ilayll < 1 lIyll ' что достаточно для сходимости итерационноrо процесса (2.33) (см. теорему 2.1). Пример 2. 7. Методом простых итераций с точностью € == == 0,01 решить СЛАУ 10Xl + Х2 + ХЗ == 12, 2Xl + 10Х2 + ХЗ == 13, 2Xl + 2Х2 + 10хз == 14. Решение. Приведем СЛАУ к эквивалентному виду Xl == 1,2 0,lХ2 О,lхз, Х2 == 1,3 0, 2X l О,lхз, ХЗ == 1,4 O,2Xl О,2Х2
921] ЧислеНН'Ьtе метод'Ь" решения ел АУ 45 о o 1 o 1 , , (3 или х (3 + йХ, rде Q o 2 О o 1 , , O 2 o 2 О , , == (1,2 1,3 1,4)Т; IIQlll == 0,4 < 1, следовательно, достаточное условие сходимости метода простых итераций выполнено. Итерационный процесс выrлядит следующим образом: Х(О) == (3; x(l) == (3 + й(3 == (0,93 0,92 0,9) Т; E(l) == О, 333 > Е; х(2) == (3 + Qx(l) == (1,018 1,024 1,03 )Т; Е(2) == 0,0867 > е х(3) == (3 + йх(2) == (0,9946 0,9934 0,9916) Т; Е(3) == 0,0256 > е х(4) == (3 + ах(3) == (1,0015 1,00192 1,0024 )Т; Е(4) == 0,0072 < Е. Таким образом, вычислительный процесс завершен за 4 ите рации. Отметим, что точное решение исходной СЛАУ в данном случае известно: х* == (1 1 1) т. Отсюда следует, что задан ной точности Е == 0,01 удовлетворяло решение, полученное уже на третьей итерации. Но в силу использования оценочноrо BЫ ражения для поrрешности процесс останавливается только на четвертой итерации. Отметим также, что априорная оценка необходимоrо коли чества итераций в данной задаче дает: k + 1 ( 2 + Ig 0,6 Ig 1,4) / Ig 0,4 == 5,95, т. е. для достижения точности Е == 0,01, соrласно априорной оценке, необходимо сделать не менее пяти итераций, что иллюстрирует характерную для априорной оценки тенденцию к завышению числа итераций. 2.1.7. Метод Зейделя решения С Л АУ. Метод простых итераций довольно медленно сходится. Для ero ускорения суще ствует метод Зейделя, заключающийся в том, что при вычисле нии компонента x k+l) вектора неизвестных на (k + l) й итера
46 ЧислеНН'Ьtе метод'Ь" аЛ2ебр'Ьt [lЛ. 11 (k+l) (k+1) (k+1) ции используются X 1 , Х 2 ,. . ., Xi l , уже вычисленные на (k + l) й итерации. Значения остальных компонентов x k), X l' . . . , X ) берутся из предыдущей итерации. Так же как и в методе простых итераций, строится эквивалентная СЛАУ (2.31) и за начальное приближение принимается вектор правых частей: х(О) == ( (31 (32 . . . (3n )Т. Тоrда метод Зейделя для известноrо вектора ( xi k ) x k) . . . x ) ) т на k ой итерации будет иметь вид (k+1) (k) (k) (k) X 1 ==(31+ Q11Xl + Q1 2X 2 +...+Q1nXn , (k+1) (k+l) (k) (k) Х 2 == (32 + Q21 X l + й22Х2 +... + а2n Х n , (k+1) (k+l) (k+1) (k) (k) Х 3 ==(33+ Q 31 X l +а32Х2 + Q33Х з +...+азn х n , ... .......... ........... ... ... .... ........... ............ (k+1) (k+1) (k+l) Х n ==(3n+ Q n1 X l + аn2 Х 2 +... (k+1) (k) . . . + Qnn lXn l + аnnхn . Из этой системы видно, что x(k+1) == (3 + BX(k+l) + cx(k), rде В нижняя треуrольная матрица с диаrональными эле ментами, равными нулю, а С верхняя треуrольная матрица с диаrональными элементами, отличными от нуля, т. е. Q == В + + С. Следовательно, (Е B)x(k+1) == Cx(k) + (3, откуда X(k+1) == (Е B) lCx(k) + (Е B) l(3. Таким образом, метод Зейделя является методом простых итераций с матрицей правых частей а == (Е B) lC И BeKTO ром правых частей (Е B) l(3, и, следовательно, сходимость и поrрешность метода Зейделя можно исследовать с помощью формул, выведенных для метода простых итераций, в которых вместо матрицы Q подставлена матрица (Е B) lC, а вместо вектора правых частей (3 вектор (Е B) l(3. Для практи ческих вычислений важно, что в качестве достаточных условий сходимости метода Зейделя MorYT быть использованы условия, приведенные выше для метода простых итераций (IIQII < 1 или, если используется эквивалентная СЛА в форме (2.32), диа rональное преобладание матрицы А). В случае выполнения этих
92.1] ЧислеНН'Ьtе метод'Ь" решения ел АУ 47 условий для оценки поrрешности на k ой итерации можно ис пользовать выражение E(k) == 11011 Il x(k) x(k l) ll . 1 Ilall Отметим, что, как и метод простых итераций, метод Зейделя может сходиться и при нарушении условия IIQII < 1. В этом случае E(k) == Ilx(k) x(k l) 11. Пример 2.8. Методом Зейделя решить СЛАУ из приме ра 2.7. Решение. Приведение СЛАУ к эквивалентному виду аналоrично при меру (2.7). Диаrональное преобладание элементов исходной MaT рицы СЛАУ rарантирует сходимость метода Зейделя. Итерационный процесс выrлядит следующим образом: Х(О) == (1,2 1,3 1,4 )Т, xi 1 ) == 1,2 0,1 . 1,3 0,1 .1,4 == 0,93, x l) == 1,3 0,2 . 0,93 0,1 .1,4 == 0,974, x l) == 1,4 0,2 . 0,93 0,2 . 0,974 == 1,0192, xi 2 ) == 1,2 0,1 . 0,974 0,1 .1,0192 == 1,0007, x 2) == 1,3 0,2 . 1,0007 0,1 . 1,0192 == 0,998, x 2) == 1,4 0,2 . 1,0007 0,2 . 0,998 == 1,0003. Таким образом, уже на второй итерации поrрешность Ilx(2) x*11 < 10 2==E, Т.е. метод Зейделя, в данном случае сходится быстрее метода простых итераций. 2.1.8. Метод Зейделя для нормальных С Л АУ. Пусть дана СЛАУ a11 a12 a1 n X1 b 1 a21 а22 а2n Х2 Ь 2 (2.39) an1 а n 2 а пп х n Ь п
48 ЧислеНН'Ьtе метод'Ь" аЛ2ебры [lЛ 11 Если СЛАУ имеет диаrональное преобладание, т. е. laiil > n > :Е I aij 1, i == 1, n, методы простых итераций и Зейделя cxo j==l i#j дятся. Однако единственное решение СЛАУ (2.39) существует и тоrда, коrда нет диаrональноrо преобладания, но матрица А является невырожденной (т. е. det А =f=. о). С помощью элементарных преобразований можно из HeBЫ рожденной матрицы построить матрицу с диаrональным преоб ладанием, для которой рассмотренные итерационные методы бу дут сходиться. Однако существует более простой способ, а имен но нормализовать СЛАУ (2.39) с невырожденной матрицей А и применить к ней метод Зейделя. СЛАУ называется 'Нормалъ'Ной, если ее матрица симметрична (А == А Т) и положительно определена. П ОЛОЭlCителъ'Но onpeдe ле'Н'Ная матрица матрица, для которой квадратичная форма (Ах, х»О, или матрица, у которой все собственные значения по ложительны. По критерию Сильвестра для положительно опре деленной матрицы все диаrональные миноры матрицы положи тельны: a11 > О, a11 a12 > О, . .. , det А > О. a21 а22 Из любой невырожденной матрицы можно сделать нормаль ную, домножив ее на транспонированную слева. Умножим (2.39) слева на А Т, получим А Т Ах == АТЬ, или Вх == с, rде В == А Т А нормальная матрица, с + АТЬ. Справедлива следующая теорема т е о р е м а 2.3. Метод Зейделя все2да сходится для 'Нормалъ 'Нъtх СЛАУ. Пример 2.9. Для следующей СЛАУ применить один из итерационных методов решения: 2X1 + 10Х2 + хз == 13, 10X1 + Х2 + Х3 == 12, 2х} + 2Х2 + 10хз == 14. Решение. Эквивалентная СЛАУ и ее матрица имеют вид ..,
9 2.1 ] ЧислеНН'Ьtе метод'Ь" решения еЛАУ 49 X1 == 6,5 5Х2 0,5хз, Х2 == 12 10X1 Х3, Х3 == 1,4 0,2X1 0,2Х2, o 5 , 1 О а== о 5 10 О o 2 o 2 , , IIQlll == 11 » 1, т. е. не выполнено достаточное условие сходимо сти метода простых итераций. Нормализуем исходную СЛАУ: А Т Ах == АТЬ, rде 108 34 32 А т А == 34 105 31 32 31 102 174 А Т Ь == 1 70 165 Результирующая СЛАУ имеет симметрическую матрицу и диа rональное преобладание. Следовательно, матрица эквивалент ной системы по норме меньше единицы, что достаточно для сходимости метода Зейделя. Отметим, однако, что рассмотренный способ нормализации существенно ухудшает обусловленность СЛАУ. Кроме Toro, ero применение к разреженным матрицам может приводить к потере этоrо свойства. Поэтому при решении СЛАУ большой размерно сти данный подход используется редко. УПР АЖНЕНИЯ. 2.21. Методом простых итераций с точностью Е == 10 3 pe шить СЛАУ, приведя к эквивалентной системе и оценив предва рительно число итераций: а) б) 12X1 3Х2 + 2хз Х4 == 8, X1 + 6Х2 Х3 + Х4 == 12, 3X1 + 2Х2 8хз + 2Х4 == 9, 2Хl Х2 Х3 + 5Х4 == 17; 6Хl + 2Х2 Х3 + Х4 == О, Xl 5Х2 Х3 + 2Х4 == 4, 3X1 + 2Х2 + 8хз + Х4 == 9, 2X1 Х2 + 2хз + 7Х4 == 7.
50 Числе'Н'Нъ"е .методъ" аЛ2ебръ" [rл 11 2.22. Методом Зейделя с точностью С == 10 3 решить задачи в задании 2.21 и сравнить по количеству итераций с методом простых итераций. 2.23. Методом Зейделя с точностью С == 10 3 решить СЛАУ, приведя их предварительно к виду, удобному для итераций: а) 2,7Xl + 9,3Х2 + 1,3хз == 2,1, 3,5Xl + 1,7Х2 + 2, хз == 1,7, 4,lxl + 5,8Х2 1,7хз == 0,8; б) 1,7xl 2,8Х2 + 1,9хз == 0,7, 2,lxl + 3,4Х2 + 1,8хз == 1,1, 4,2xl 1,7Х2 + 1,3хз == 2,8. 2.24. Оценить количество итераций k в задачах задания 2 21 для различных значений точности: Cl == 10 2; С2 == 10 3; С3 == == 10 4; С4 == 10 5. Построить rрафик зависимости k(c). 2.25. Сходится ли метод простых итераций для задач задания 2.23, матрицы которых не имеют диаrональноrо преобладания? Максимальное собственное значение оценить степенным методом (см. п. 2.4.3). э 2.2. Численные методы решения нелинейных u И трансцендентных уравнении Рассмотрим уравнение вида f(x) == О, ( 2.40 ) rде f(x) любая нелинейная или трансцендентная функция, например f(x) == exp(tgx) x 3 sinx. Для нахождения корней уравнения (2.40) различают следу ющие два этапа. 1. Отделение корней, т. е. нахождение таких интервалов по aprYMeHTY х, внутри каждоrо из которых существует только один корень уравнения (2.40). 2. Уточнение корней заключается в применении HeKoToporo итерационноrо метода, в результате KOToporo корень уравнения (2.40) может быть получен с любой наперед заданной точно стью С. При этом, останавливая процесс на какой либо конечной 2.2 ] Числе'Н'Нъ"е .методъ" реше'Ния урав'Не'Ний 51 итерации, необходимо оценить поrрешность по сравнению с точ ным корнем, который неизвестен. 2.2.1. Способы отделения корней. Наиболее употреби мыми на практике способами отделения корней являются следу ющие. 1. rрафический. 2. Метод половинноrо деления. В rрафическом способе строится rрафик функции f (х ) (рис.2.2) и приближенно определяются ее нули (или корни ypaB нения f(x) == О) i, i == 1,2,3, . .. Заключив эти нули в интервалы у JЗ1 О а 2 JЗ4 Х Рис. 2.2. rрафический метод отделения корней t Е (Cti, (3i), на rраницах которых выполняются условия f(Йi) х х f((3i) < О, i == 1,2, . . . , и знаки производных первоrо и BToporo порядков f'(x), f"(x) на интервалах (ai, (3i) постоянны, можно утверждать, что внутри каждоrо из этих интервалов находится один корень уравнения (2.40). Если при этом f( i) == f'( i) == О, а f"( i) =/: О, то корень i двукратный корень (точка 3 на рис.2.2); если f( i) == f'( i) == == f"( i) == О, а f"'( i) =/: О, то i трехкратный корень (точка 4 на рис.2.2) и т. д. В методе половинноrо деления область определения функции f(x) : х Е [а, Ь] делят на 2,4,8,16,32, . .. интервала и для каж доrо из них анализируют знаки функции на концах интервала; если они противоположны, то внутри интервала находится не менее одноrо корня; если знак первой производной на интерва ле постоянный, т. е. signf'(x)lxE(ai,f3i) == const (при выполнении предыдущеrо условия), то внутри интервала находится точно
52 Числе'Н'Нъtе .методъ" аЛ2ебръl, [rл. 11 один корень. В данном параrрафе рассматриваются однократные (простые) вещественные корни нелинейных уравнений (2.40). Пример 2.10. Отделить корни уравнения f (х) == х 2 e x/2 == о, х Е [ 3; 3] . Решение. Уравнению х 2 e x/2 == О соответствует эквивалентное ypaB нение х 2 == e x/2. Если построить rрафики функций Yl == х 2 И У2 == e x/2, то абсциссы точек пересечения rрафиков этих у 2 l 1 о 21 2 3 х Рис. 2.3. Отделение корней функций дадут искомые корни данноrо уравнения. Из рис. 2.3 видно, что l Е ( 2; l); 2 Е (о; 1). 2.2.2. Методы уточнения корней. Ниже рассматрива ются следующие итерационные методы уточнения корней нели нейноrо уравнения (2.40). 1. Метод половинноrо деления. 2. Метод Ньютона (касательных). 3. Метод секущих (хорд). 4. Метод простых итераций. Все эти методы являются итерационными. Предположим, что х приближенное значение корня, ero точное значение. Возникает вопрос, какова поrрешность х приближенноrо значения корня х по сравнению с ero точ ным значением , если последний неизвестен? 2.2 J Числе'Н'Нъtе .методъ" реше'Ния урав'Не'Ний 53 Для этоrо построим невяз'Ку f ( ) f ( х ) == f ( х ), т. к. f ( ) == == о. Применим к невязке теорему Лаrранжа о конечных прира щениях: f ( ) f( x ) == f' (а) (f, х ), а Е ( , х ), откуда I( x ) х == /' ( аУ Так как точное значение а неизвестно, эту поrрешность за меняют верхней оценкой: I x l 1/(х)1 . min 1/' (x)1 жЕ [a:i ,l3i] (2.41) Оценка поrрешности (2.41) является довольно rрубой. Поэто му в каждом итерационном методе уточнения корней, в силу оrраничений применения метода, можно вывести свою оценку поrрешности. 1. Метод половинноrо деления. Пусть f(x) == О и точное значение корня Е (а, Ь). В методе половинноrо деления функция f(x), х Е [а, Ь], дол жна удовлетворять следующим двум условиям: а) f(a)f(b) < о; б) f(x) непрерывна на отрезке х Е [а, Ь]. Метод половинноrо деления состоит в построении после довательности вложенных отрезков [ak, bk] с [ak l, bk l] С . . . . . . с [ао, Ь о ] [а, Ь], на концах которых удовлетворяются усло вия f (а k) f (Ь k) < О, k == О, 1, 2, . .. (рис. 2.4). Опишем один шаr итерационноrо метода половин Horo деления. Пусть на (k l) M шаrе найден отрезок [ak l, bk l] С [ао, Ь о ], на котором выполнено условие f (ak l) f (bk l) < о. Этот отрезок делится пополам точкой xk == (ak l + bk l) /2, и вычисляется f (Xk). Если f (Xk) == о, то Xk == (ak l + bk l) /2 корень уравнения (2.40). Если f (Xk) =/:0, то из двух половин отрезка выбирается та, на концах которой функция имеет противоположные знаки, так как корень находится внутри именно этой половины. Таким образом, ak == == ak l, b k == Xk, если f (ak l) f (Xk) < о; ak == xk, b k == bk l, если f (Xk) f (bk l) < о.
54 Числе'Н'Нъtе .методъ" аЛ2ебрЪt [ rл. 11 Если необходимо найти корень с точностью с, то деление пополам продолжается до тех пор, пока не выполнится условие bk ak == (1/2)k (Ь а) с. (2.42) Тоrда значение == (ak + b k ) /2 приближенно определяет корень с точностью с. у f(x) 0==00 х Х2 Ь==Ь О ==Ь 1 Рис. 2.4. К методу половинноrо деления Из (2.42) можно оценить число k итераций, необходимых для достижения заданной точности с: k log2 ((Ь а) /с). Отсюда видно, что для получения трех верных знаков (с == 10 3) необ ходимо сделать rv 10 итераций. Покажем, что процесс итераций по методу половинноrо деле ния сходится, и сходится к корню уравнения (2.40). Для этоrо на основании (2.42) запишем поrрешность, которая получится при остановке итерационноrо процесса на k й итерации: 1 Xk== 2k (b a). Пусть f(ak)f(b k ) < о. Из (2.43) видно, что (2.43 ) lim ( Xk) == k oo == lim lk (Ь а) == О, откуда следует lim Xk == , rде точный k-----+oo 2 k oo корень. Возьмем предел от произведения f(ak) . f(bk) при k .......-t 00. Поскольку функция f(x) непрерывна на х Е [а, Ь] по условию iI. 2 2] Числе'Н'Нъtе .методъ" реше'Ния урав'Не'Ний 55 задачи, то знак предела можно внести под знак функции, т. е. lim f(ak)f(b k ) == k oo == f ( li m а k ) f ( li m Ь k) == f ( ) f ( ) == f 2 ( ) < о, (2.44 ) k oo k oo что невозможно и, следовательно, f2( ) == о, или f( ) == о, т. е. является единственным корнем уравнения (2.40). При выводе (2.44) были использованы пределы lim ak == { k oo и lim b k == . Действительно, последовательность {ak} является k oo неубывающей, оrраниченной сверху значением {, а последова тельность {b k } является невозрастающей, оrраниченной снизу значением . Таким образом, пределом слева и справа является точный корень . д остои'Н,ства: а) метод половинноrо деления прост в алrоритмизации и про rраммировании; б) на функцию f (х) не накладывается никаких оrраничений, кроме требования непрерывности. Heдocтaтo : метод очень медленно сходится, Т. е. необ ходимо использовать большое число итераций для достижения заданной точности с. Априорная оценка количества итераций в соответствии снеравенством k log2 [( ь а) / с] может быть завышена, по этому на практике итерационный процесс останавливается при выполнении неравенства IXk+l xkl с, х k+ 1 + Х k . 2 Пример 2.11. Методом половинноrо деления уточнить наи больший корень уравнения х2 e X == О с точностью с == 10 2. Решение. Выделим наибольший корень: а == 0,5; Ь == 1,0. Е (0,5; 1,0). 1) ао а == 0,5; Ь о Ь == 1, о; Х 1 == (ао + Ь о ) /2 == О, 75; f (Xl) == 0,0901 > о; f (ао) f (Xl) == 0,З565 . 0,0901 < о; f, Е Е (ао, Xl); тоrда al == ао == 0,5; b 1 == Xl == 0,75; Ib 1 all == == 0,25 > с. Продолжая этот процесс, получаем на 6 й итерации: а6 == == 0,7032; Ь6 == 0,711; I b 6 а61 == 0,0078 < с; == (Ь 6 + а6) /2 == == 0,7071.
56 Числе'Н'Нъtе .методъ" аЛ2ебрЪt [rл 11 УПР АЖНЕНИЯ. Методом половинноrо деления с точностью с == 10 2 уточ нить корни следующих уравнений: 2.26. tg (l,9х) 2,8х == о; 2.27. ln (8х) == 9х 3; 2.28. sin (2,2х) Х == о; 2.29. ехр ( 0,8x) 4х == о; 2.30. 0,89х 3 2,8х 2 3,7х + 11,2 == о. 2. Метод Ньютона уточнения корней. Пусть для ypaB нения (2.40) на интервале Х Е (а, Ь) отделен корень . В методе Ньютона функция f (х) должна удовлетворять на отрезке Х Е [а, Ь] следующим условиям: 1) существование производных l ro и 2 ro порядков; 2) f'(x) =/: о; 3) производные l ro и 2 ro порядков знакопостоянны (sign{f'(x), f"(x)} == const) на отрезке х Е [а, Ь]. Пусть имеется значение корня на k й итерации xk. Тоrда значение корня на (k + l) й итерации вычисляется следующим образом: Xk+l == xk + hk, (2.45) rде h k шаr, который подлежит определению. Чтобы определить hk, подставим Xk+l в функцию f (х) и раз ложим ее в ряд Тейлора до TpeTbero слаrаемоrо включительно в окрестности точки х k, получим f (Xk+l) == f (Xk + hk) == f (Xk) + f' (Xk) h k + f" (а) h} , а Е (Xk, Xk+l). Положим в этом разложении линейную относительно hk часть равной нулю, в результате чеrо находим значение шаrа hk: f (Xk) h k == l' (Xk) , подставляя которое в (2.45), получаем f(Xk) Xk+l == Xk f'(Xk)' k == 0,1,2, . . . ( 2.46) 2 2] Числе'Н'Нъtе .методъ" реше'Ния урав'Не'Ний 57 За начальное приближение хо принимается один из концов отрезка (а, Ь], а именно хо == { а, если f(a). f"(a) > о; (2.47) Ь, если f(b). f"(b) > о. Выражения (2.46), (2.47) называют итерациО'Н'Н'Ьt.м Meтo дом Нъюто'На (или 'КасатеЛЪ'Н'ЬtХ) уточнения корней нелинейноrо уравнения (2.40). Чтобы не вычислять значение первой производной f'(Xk) на каждой итерации, достаточно вычислить ее в точке Хо и полу ченное значение подставить в выражение (2.46), получим f(Xk) XHl == Xk l' (хо) , k == о, 1, 2, · · . (2.48) Метод (2.47), (2.48) называют модифицирова'Н'Н'ЬtМ методом Нъюто'На. Он обладает неоспоримым преимуществом перед Me тодом (2.46), (2.47), но сходится медленнее. Справедлива следующая теорема. т е о р е м а 2.4. (достато'Ч'Н'Ые условия сходимости метода Нъюто'На). Пустъ f (х) оnределе'На и aBa a'bt диффере'Нцируе ма 'На oтpe 'Кe х Е [а, Ь], nри'Чем f ( а) . f ( Ь) < О, nроизвод'Н'Ые f' (х) и f" (х) з'На'КоnостОЯ'Н'Н'Ьt и f' (х) =/: О. ТО2да исходя из 'На'ЧМЪ'НО20 nри6ли е'Ния хо Е [а, Ь], удовлетворяюще20 'Нepaвe'Н ству f(xo) . f"(xo) > о, MO 'НO nостроитъ nоследователъ'Ностъ (2.46), сходящуюся'К еди'Нстве'Н'Ному 'Кор'Ню урав'Не'Ния (2.40) 'На отрез'Ке х Е [а, Ь] с nО2реш'Ностъю, оце'Ниваемой 'Нераве'Нством I \ h М 2 Xk+l 2 , тl М 2 == mах \f"(x)l, ml == min If'(x)l, х Е [а, Ь]. хЕ[а,Ь] хЕ[а,Ь] (2.49 ) Действительно, поскольку f (х) непрерывна, то взяв предел от (2.46) при k -----+ 00 и поменяв местами знаки предела и функ ции, получим 1 ( lim Х k ) 1 . 1 . k----+oo 1т Xk+l == 1т xk ' ( . ) . k oo k oo 111т Х k k ----+ 00 Поскольку последовательность {х k} невозрастающая (He убывающая) числовая последовательность, оrраниченная снизу
58 Числе'Н'Нъtе .методъ" аЛ2ебръl, [ rл. 11 (сверху), то она сходится, т. е. существует предел lim Xk == . k oo Тоrда из последнеrо равенства (f' ( ) =/: о по условию) имеем I( ) == I'(f.) ' откуда !( ) == о, т. е. предельное значение является корнем уравнения (2.40). Поскольку невязка равна f(Xk+l) f( ) == f(Xk+l), то из разложения f(Xk+l) в ряд Тейлора имеем выражение для невяз ки в виде !(ХНl) == !"(a) , подставляя которое в общую поrрешность приближенных MeTO дов (2.41) при X ==Xk+l, получаем верхнюю оценку поrрешности в виде (2.49), rде h k == Xk+l Xk. у f(x) а хо== Ь х Рис. 2.5. К методу Ньютона Для случая, приведенноrо на рис. 2.5, за начальное прибли жение принимается хо == Ь, так как f(b) . f"(b) > о. На основе (2.49) можно записать, что I Xk+ll (M2/2ml) I xkl 2 , И если M2/2ml < 1 и I Xkl < < 10 т, то ' Xk+ll < 10 2т, т. е. коrда приближение Xk Ir 2 2] Числе'Н'Нъtе .методъ" реше'Ния урав'Не'Ний 59 имеет m верных знаков, Xk+l будет иметь не менее 2т верных знаков, т. е. метод Ньютона имеет квадратичную сходимость. Поскольку верхняя оценка (2.49) сложна для вычисления, на практике итерационный процесс останавливают при выполнении условия IXk+l Xkl с, Xk+l, rде с заданная точность. Метод Ньютона называют еще методом касательных, по скольку В этом методе на каждой итерации к rрафику функ ции f(x) проводится касательная в точке (Xk, f(Xk)) до пересе чения с осью абсцисс (рис. 2.5). Пример 2.12. Методом Ньютона с точностью с == 10 2 уточнить наибольший корень уравнения f (х) == х2 e X == О, Х Е (0,5; 1, О). Реш е н и е. Начальное приближение ХО == 1, О, так как f (1, О) > о; f" (1, О) > о. Таким образом ХО == 1, о; Xl == 1 f (1) / f' (1) == == 0,733; Х2 == О, 733 f (0,733) / f' (О, 733) == 0,7038; ' Х 2 Xl\ == == 0,092 > с; Х3 == Х2 f (Х2) / f' (Х2) == 0,7034; I X 3 Х21 == == 0,3414 . 10 3 < с, т. е. 0,7034. УПР АЖНЕНИЯ. Методом Ньютона с точностью с == 10 3 уточнить корни следующих уравнений: 2.31. tg (1, 262х) 1, 84х == о; 2.32. ln (3, 66х) == 4, 12х 1, 5; 2.33. 2, 33 sin (2, 86х) == 2х; 2.34. О, 7 ехр ( o, 59х) Х == о; 2.35. 1, 2х3 3, 5зх2 1, 36х + 7, 11 == о. 3. Метод секущих (хорд). Заменяя в алrоритме Ньютона производную f' (х k) приближенно отношением конечных разно стей: f ' ( ) '(Ь) f(Xk) Xk , Ь Xk получим алrоритм метода хорд с неподвижным правым концом (рис. 2.6 а): I(Xk) ( ) Xk+1 == Xk I(b) I(xk) ь Xk, ХО == а, или с неподвижным левым концом (рис. 2.6 б): (2.50) I(x k ) ( ) XHl == Xk I(a) I(xk) а Xk, ХО == Ь. (2.51 )
60 числе'н,'н,'ы,e .метод'Ь" ал2ебр'ы, [rл 11 в качестве неподвижноrо конца отрезка принимается rрани ца х == Ь (формула (2.50)), если f(b) . f"(b) > о; тоrда хо == а, или х == а, если f(a) . f"(a) > о, тоrда хо == Ь (формула (2.51)). у у а б хо== Ь f(xo) !f(X2) f(хз) f(x}) b fzx х a fzx I t : : х f(Хз>j f(xt> f(X2) Рис. 2.6. К методу секущих (стрелки показывают направление сходимости) Сходимость и поrрешность метода хорд определяется так же, как и в методе Ньютона. На рис. 2.6 стрелками показано направление сходимости. 4. Метод простых итераций. Метод простых итераций уточнения корней уравнения (2.40) состоит в замене этоrо ypaB нения эквивалентным ему уравнением х == <р( х), х Е (а, Ь) (2.52) и построении последовательности Xk+l == <p(Xk), k == 0,1,2, . . . , (2.53) rде Хо Е (а, Ь), например Хо == (а + Ь)/2. Если не удается выразить Х из уравнения (2.40), то эквива лент ное уравнение и эквивалентную функцию можно построить, например, так: Х == Х + f(x), <р(х) == х + f(x). Последовательность (2.53) называют .методо-м nростЪtХ итe раций уточнения корней уравнения (2.40). Для ответа на вопросы: сходится ли последовательность (2.53)7 и, если сходится, является ли предельное значение корнем уравнения (2.52), а следовательно, и уравнения (2.40)7 имеет место следующая теорема.
э 2 2] числе'н,'н,'ы,e .метод'Ь" реше'Н,ия урав'Н,е'Н,ий 61 т е о р е м а 2.5 (достато'Чнuе условия сходи.мости -метода nростЪtХ итераций). Пустъ Фун'Кция <р( х) в э'Квивалентно-м уравнении (2.52) определена и дифференцируе-ма на отрез'Ке х Е Е [а, Ь]. ТО2да, если существует 'Число q та'Кое, 'Что I <р' ( Х ) I q < 1 (2.54) на отрез'Ке [а, Ь], то nоследователъностъ (2.53) сходится 'к eдиH ственно-му 'Корню уравнения (2.52) при любо-м на'Чалъно-м nрибли alCeHUU Хо Е [а, Ь]. Доказательство. Запишем итерационный процесс (2.53) на двух соседних итерациях: { Xk == <p(Xk l), Xk+l == <p(Xk). Вычитая из BToporo выражения первое, получим Xk+l Xk == <p(Xk) <p(Xk l). (2.55) Применим к правой части выражения (2.55) теорему Лаrран" жа о конечных приращениях, поскольку по условию <р(х) дифференцируемая функция: Xk+l Xk == <p'(a)(Xk Xk l), а Е (Xk l, Xk). Используя условия (2.54) теоремы, из последнеrо равенства получаем неравенство IXk+l Xkl q IXk Xk ll , на основе KOToporo можно выписать следующую цепочку Hepa венств: I X 2 ..... Хll q I X l ..... хоl , I X 3 ..... Х21 q I X 2 Хll q21xl xol , I X 4 ..... хзl q31xl ..... xol , (2 56) IXk+l ..... xkl qk 'Хl ..... xol. Тоrда на основе тождества Xk+l = Хо + (Хl хо) + (Х2 Хl) + . . . + (Xk+l Xk) инеравенства
62 числе'н,'н,'ы,e .метод'Ь" ал2ебр'ы, [rл. 11 IXk+ll Ixol + I X l ..... хо! + I X 2 хl! + . .. + !Xk+l Xkl с использованием в нем цепочки (2.56), получим следующую оценку: I X k+1! !хоl + (1 + q + q2 + . . . + qk) IXl хо! , (2.57) в круrлых скобках которой находится сумма rеометрической про rрессии. Взяв предел от (2.57) при k -----+ 00, получим выражение k lim IXk+l! !xol + I X l..... xollim "qn, k ----+ 00 k ----+ 00 L.J n==о в котором сумма ряда rеометрической проrрессии равна (1..... q) l, поскольку по условию теоремы Iql < 1. Таким образом, . ! I IXl Xol 11т Xk+l хо + < м < 00. k----+oo 1 q То есть существует конечный предел последовательности (2.53). Обозначим ero через , т. е. lim xk+l == . k ----+ 00 Для ответа на 2 й вопрос о том, является ли предельное значение корнем уравнения (2.52), перейдем в (2.53) к пределу при k -----+ 00 и, поскольку функция ер (х) дифференцируема и, следовательно, непрерывна, знаки предела и функции можно менять местами; получим lim Xk+l == ер ( lim X k ) , k----+oo k oo откуда следует равенство == <p( ), то есть является единственным корнем уравнения (2.52), а сле довательно, и уравнения (2.40). При ответе на 3 й вопрос о поrрешности метода можно пока зать, что если неизвестный точный корень уравнения (2 52) и итерационный процесс остановлен на k й итерации, то поrреш ность, которая допускается этим приближением, оценивается ...
э 2 2] числе'н,'н,'ы,e .метод'Ь" реше'Н,ия урав'Н,е'Н,ий 63 сверху выражением [1] I ..... xkl < q IXk..... Xk ll l q (2.58 ) или выражением qk I ..... xkl < I X l ..... xol. l q (2.59) Если задана точность €, то итерации можно остановить в случае выполнения условия, полученноrо из (2.58): IXk Xk ll < 1 Q e, q или из выражения (2.59) оценить минимальное количество ите раций для достижения заданной точности €: k 1 I с:(1 q) > п lnq IXl xal. Вывод выражения (2.58) или (2.59) аналоrичен выводу BЫ ражения (2.38) в методе простых итераций дЛЯ СЛАУ (п. 2.1.6), если вместо 110:11 использовать значение q. Неравенство (2.60) дает завышенное число итераций, поэтому на практике итерационный процесс останавливают при выполне нии условия (2.60 ) IXk+l Xkl €, Xk+l. у <р'(Х) < 1 D В о Х2 с: Х} ХО Х Рис. 2.7. К методу простых итераций в случае <р'(х) < 1 rеометрическая интерпретация метода простых ите... раций. Из рис. 2.7 видно, что 1<p'(x)1 < 1, так как TaHreHc
64 числе'н,'н,'ы,e м,етоды ал2ебр'ы, [rл 11 уrла наклона касательной к rрафику функции У2 == <р(х) MeHЬ ше tg( 450) == 1. Следовательно, для произвольноrо начальноrо приближения хо в соответствии с l й итерацией в (2 53) при k == == о определяется <р(хо), которое равно значению хl на rрафике функции Уl == х, а поскольку треуrольник ОАБ прямоуrольный и равнобедренный, то ОБ == хl. На второй итерации в (2.53) при k == 1 определяется <Р(Хl), которое равно значению Х2 на rрафике функции Уl == х, а поскольку треуrольник ОС D равнобедрен ный и прямоуrольный, то С D == О D == Х2, т. е. итерационные значения хо, хl, Х2, ... стремятся в сторону точноrо корня (указано стрелкой справа налево). у <р'(х) >1 <р (Xt) о Х} Х2 х Рис. 2.8. К методу простых итераций в случае <р'(х) > 1 На рис. 2.8 I <р' (х) 1 > 1. Из рисунка видно, что итерационный процесс расходится (приближения корня хо, хl, Х2, . .. стремят ся от корня ). На рис. 2.9 представлен случай 1<p'(x)1 < 1, <р'(х) < О Про цесс итераций сходится с двух сторон, т. е. приближения корня находятся то слева, то справа от точноrо корня . Итерационный процесс (2.53) можно использовать и в случае, коrда в эквивалентном уравнении 1<p(x)1 > 1. Для этоrо вернемся к исходному уравнению (2.40) и построим эквивалентное ypaBHe ние в виде f(x) х == х::l:: шах If' ( х ) I ' хЕ[а,Ь] rде берется знак минус, если f' (х) > О, и плюс, если f' (х) < о
э 2.2 ] числе'н,'н,'ы,e м,етод'Ь" реше'Н,ия урав'Н,е'Н,ий 65 у <р (хо) о х 1 Х2 .. . Хо х Рис. 2.9. К методу простых итераций в случае 1<p'(x)1 < 1, <р'(х) < О Тоrда в качестве эквивалентной функции ер( х) можно при нять функцию f(x) '1' ( х) == х::l:: шах I /' ( х ) I ' хЕ[а,Ь] для которой l' (х) '1" (х) == 1::1:: шах 1/' (х )1 < 1. хЕ[а,Ь] Пример 2.13. Методом простых итераций с точностью € == == 10 2 уточнить наибольший корень уравнения f (х) == х 2 ..... ..... e X == О, х Е [0,5; 1,0]. Решение. Эквивалентное уравнение х == ехр ( x/2); <р (х) == ехр (.....х/2); q == mах l<p' (x)1 == 0,3894 < 1; хЕ[0,5; 1,0] хо == (0,5 + 1:0) /2 == 0,75; Х1 == ехр (.....0,375) == 0,687; Х2 == ехр ( 0,3437) == 0,7091; IX2 Х11 == 0,02184 > (1 ..... q) . 10 2 / q == 0,015; Х3 == ехр (.....0,3546) == 0,7015; IX3 ..... Х21 == 0,007646 < 0,015; 0,7015. 3 В.Ф Формалев, д.л. Ревизников
66 числе'н,'н,'ы,e м,етод'Ь" ал2ебр'ы, [rл. 11 УПР АЖНЕНИЯ. Методом простых итераций с точностью € == 10 2 уточнить корни следующих уравнений: 2.36. tg (2,2х) ..... 3,2х == о; 2.37. In (4,6х) == 5,2х ..... 1,5; 2.38. 5,6 sin (4,8х) ..... 4,5х == о; 2.39. 0,8 ехр (.....0,6Х) ..... х == о; 2.40. 0,17х 3 О,57Х 2 ..... 1,6х + 3,7 == о. 2.2.3. Скорость сходимости. Процедура Эйткена ус... корения сходимости. Скорость сходимости одна из важ нейших характеристик итерационных методов нахождения KOp ней уравнения (2.40) [5]. Определение 1. ro в оря т, 'Что итерациО'Н'НЪtЙ метод схо.. дится со с'Коростъю 2еометри'Чес'Кой nрО2рессии, з'Наме'Нателъ 'Которой q < 1, если справедлива оце'Н'Ка I ..... Х k I со q k , k == о, 1, 2, . . . (2.61 ) Определение 2. Число р (р 1) 'Назъtвают nоряд'Ком cxoди мости метода, если в области сходимости имеет место оце'Н'Ка I ..... Xk+11 с .I ..... XkI P , с > о. Если р == 1 и с < 1, то метод обладает ли'Ней'Ной с'Коростъю сходимости, при р == 2 'Квадрати'Ч'Ной, р == 3 'Куби'Ч'Ной и т. д. Имеют место следующие утверждения. Лемма 2.2. Если итерациО'Н'НЪtй метод обладает ли'Ней'Ной с'Коростъю сходимости (nорядо'К сходи.мости р == 1), то этот .метод сходится со с'Коростъю 2еометри'Чес'Кой nрО2рессии со з'На ме'Нателе.м q == с и СО == ..... Хо и и.меет место оце'Н'Ка nО2реш 'Ноет и I Х k 1 q k I ..... Х О 1. Лемма 2.3. Если итерациО'Н'НЪtЙ метод обладает p .м no ряд'Ком сходимости (сверхли'Ней'Ная с'Коростъ сходимости при р > 1), то этот .метод сходится со с'Коростъю nо'Казателъ 'Ной фу'Н'Кции, имеющей ос'Нова'Ние q и nо'Казателъ стеnе'Ни pk, k nри'Че.м справедлива следующая оце'Н'Ка: I ..... Xkl с . qP , q == == c1/(p 1) . I xol. Таким образом, метод половинноrо деления обладает линей ной скоростью сходимости (р == 1), и, следовательно, сходится со скоростью rеометрической проrрессии со знаменателем q == 1/2 и со == Ь а (сравнить (2.43) с (2.61)).
э 2.2 ] числе'н,'н,'ы,e м,етод'Ь" реше'Н,ия урав'Н,е'Н,ий 67 Аналоrично, метод простых итераций также является Me тодом первоrо порядка сходимости и, следовательно, сходится со скоростью rеометрической проrрессии со знаменателем q == == mах I <р' (х) 1 и СО == I Х1 ..... Хо I / (1 ..... q ) (сравнить (2.59) с (2.61)). ХЕ[а,Ь] В соответствии с леммой 2.3 и оценкой (2.49) итерацион ный метод Ньютона обладает вторым порядком сходимости и, следовательно, сходится со скоростью показательной функции, имеющей основание q == С I хоl и показатель степени 2k: I ..... Х k I < СО . q2k , rде С == М2/2т1, со == l/с, те. значительно быстрее методов половинноrо деления и простых итераций. Для ускорения медленно сходящихся методов существуют различные способы ускорения, один из которых, процесс Эйт кена, основан на использовании нескольких предыдущих итера ционных значений. Рассмотрим процесс ускорения по Эйткену применительно к методу простых итераций. Из выражения (2.59) для оценки поrрешности в методе про стых итераций можно записать: Xk ..... == Aqk, rде А константа, не зависящая от q. Тоrда это выражение для трех соседних итераций можно записать следующим образом: Xk+1 == Aqk+1, Xk == Aqk, с А k l Xk l == q , откуда путем деления l ro равенства на 2 e и 2 ro на 3 e получим Xk+l Xk Xk Xk l Решая это уравнение относительно : 2 с Xk+lXk l Xk , Xk+l 2Xk + Xk l получим почти точное значение корня уравнения (2.40). Это значение можно принять за уточненное значение корня ypaB нения (2.40) по методу Эйткена на (k + 1) й итерации: 2 ( ) Xk lXk+l Xk Xk+1 т . у Xk+l 2Xk + xk l (2.62) з*
68 числе'н,'н,'ы,e м,етод'Ь" ал2ебр'ы, [rл. 11 Можно показать, что поrрешность метода простых итераций с использованием процедуры Эйткена теперь пропорциональна - k ( ) 2k не q , как в 2.59, а q : 2 k I ..... х k 1 Aq , т. е. процесс итераций сходится со скоростью показательной функции. 2.2.4. Замечания к методам отделения корней. Если уравнение f (х) == о является алrебраическим уравнением целой степени, п п l + О аох +а1 Х +... а п == , (2.53) то при отделении корней этоrо уравнения MorYT использоваться теоремы общей алrебры [1]. 1. Основная теорема аЛ2ебръt. Число 'Корней уравнения (2.63) (действителънъtХ, 'КратНЪtХ, 'Ко.мnле'КСНЪtх) в то'Чности равно n степени уравнения (2.63), nри'Че.м если 'Коэффициентъt ао, а 1, . . . , а п все действитеЛЪНЪtе, то вОЗМОaICнъtе 'Ко.мnле'Кснъtе 'Корни попарно СОnРЯalCеНЪt. 2. Теорема Дe apтa. Число nОЛОalCителънъtх дeйcтви телънъtх 'Корней уравнения (2.63) равно 'Числу nере.мен зна'Ков nоследователъности 'Коэффициентов ао, а1, ..., а п (не с'Читая нулевЪtХ 'Коэффициентов) или .менъше этО20 'Числа на 'Четное 'Ч исло . Следствие. Число действительных отрицательных корней уравнения (2.63) равно числу постоянства знаков в последова тельности коэффициентов ао, а1, ..., а п , не считая нулевых, или меньше этоrо числа на четное число. 3. Теорема rюа. Если все 'Корни уравнения (2.63) дeйcтви телънъt, то в nоследователъности 'Коэффициентов ао, а1, ..., а п 'КвадратЪt не'Крайних 'Коэффициентов болъше произведения со.. седних, т. е. a > ak lak+1, k == 1,2, . . . , n ..... 1. ( 2.64 ) Следствие. Если хотя бы для одноrо некрайнеrо коэффи циента условие (2.64) не выполняется, т. е. a ak lak+1, то имеется хотя бы одна пара комплексных корней. Пример 2.14. Определить количество действительных и комплексных корней уравнения х 4 + 8х 3 ..... 12х 2 + 104х 20 == о.
э 2.3 ] числе'н,'н,'ы,e етод'Ь,, реше'Н,ия систе-м, 'н,ели'н,ей'н,'ы,x урав'Н,е'Н,ий 69 Решение. Имеется три перемены знака. Значит, по теореме Декарта количество положительных корней должно быть равно одному или трем. Из 4 x корней по следствию из теоремы rюа имеет ся, по крайней мере, одна пара комплексных корней, так как (.....12)2 < 8 .104). Следовательно, среди действительных корней один положительный и один отрицательный. э 2.3. Численные методы решения систем u u нелинеиных уравнении При численном решении систем нелинейных уравнений пред полаrается существование искомоrо вектора решений, возмож ность нахождения начальноrо приближения искомоrо вектора и, наконец, применение эффективных процедур уточнения реше ний. Пусть дана система нелинейных уравнений F 1 (X1,X2,... ,Хn)==О, F2(X1,X2,... ,х n ) == о, (2.65) F n (X1,X2,... ,х n ) == о, или F(x)==fJ, (2.66) rде F == ( F1 Fn )Т, Х2 F 2 Х == ( Х1 Х2 Х N )Т, fJ==(O О . . . о )Т, и пусть имеется начальное прибли жение вектора неизвестных: х(О) 1 Xl х(О) == ( Х 1 (0) Х 2 (0) . . . Х n (О) ) Т. ( 2.67 ) Рис. 2.10. Начальное прибли жение в случае системы двух В случае системы двух нелиней нелинейных уравнений ных уравнений начальное прибли жение находят rрафически как точки пересечения rрафиков функций Р 1 (Х1, Х2) == о и F 2 (X1, Х2) == о (рис. 2.10).
70 Числе'Н'НЪLе методъ" аЛ2ебрЪL [rл. 11 2.3.1. Метод простых итераций и метод Зейделя pe шения систем нелинейных уравнений. Для использования метода простых итераций или метода Зейделя система (2.65) записывается в следующей э вивале'Нm'Ной форме: Xi == Фi(Хl, Х2, . . . , х п ), i == 1, n , (2.68 ) rде Фi(Хl, Х2, . .. , Х п ) э вива.ле'Нm'НЪtе функции. Эквивалентные функции MorYT быть построены, например, в виде Ф i ( Х 1, Х 2, . .. , Х п) == Х i + F i ( Х 1, Х 2, . .. , Х п ) , i == 1, n . Тоrда, если известно начальное приближение Х О ( (О) (О) (О) ) Т X 1 Х 2 . .. Х п , можно построить алrоритм метода простых итераций: x k+l) == Фi ( x k), x k), . .. , x »), i == 1, n , или алrоритм метода Зейделя: (2.69) (k+l) ( (k) (k) (k» ) X 1 == Фl Х} , Х 2 ,..., Х п , (k+l) Ф ( (k+l) (k) (k» ) Х 2 2 Х} , Х 2 ,..., Х п , (2.70) (k+l) Ф ( (k+l) (k+l) (k+l) (k» ) Х п п x 1 ' Х 2 , . .. , xn l , Х п . Можно показать, что метод простых итераций (COOTBeTCTBeH но метод Зейделя) сходится к решению системы (2.65), если какая либо норма матрицы Якоби, построенной по правым ча стям Фi (x(k»), i == 1, n , эквивалентной системы (2.68), меньше единицы на каждой итерации: IIJ (x(k») II < 1, J (x(k») == [ дФi (x(k») ] , 8xj (2.71) x=:.x k i, j == 1, n , k == О, 1, 2,... Метод простых итераций (2.69) (или Зейделя (2.70)) OCTaHaB ливается при выполнении условия Ilx(k+l) x(k)11 Е. Тоrда искомый вектор Х x(k+l). ( 2. 72 )
э 2.3 ] ЧислеННЪLе методъ" решения систем нелинейн'ых уравнений 71 Таким образом, методы простых итераций и Зейделя приме няются для дифференцируемых функций Fi(X), i == 1, n , в си стеме (2.65). Пример 2.15. Методом простых итераций с точностью с == == 10 2 найти решение нелинейной системы: { sin (х 0,6) у = 1,6 == О, 3х cos у 0,9 о. Соответствующая эквивалентная система имеет вид: { х==0,3+1/3СОSУ Фl(Х,У), у == 1,6 + sin (х 0,6) Ф2 (х, у) . Р е ц1 е н и е. 1) Начальное приближение Х(О) == 0,15, у(О) == 2,1 определя ется как точка пересечения rрафиков эквивалентных функций. 11 J (х(О), у(О») 111 == 0,31 < 1. 2) х(l) == 0,1317, y(l) == 2,035. Продолжая итерационный процесс, на 6 й и 7 й итерациях по лучим соответственно х(6) == 0,1539; у(6) == 2,034; х(7) == 0,151; у(7) == 2,0319; 11 (х(7)у(7») т (х(6)у(6») Т" == 0,0029 < Е. УПР АЖНЕНИЯ. 2.41. Коrда можно применять методы простых итераций иЗейделя? Методом простых итераций решить следующие системы уравнений с точностью с == 10 2: II I ! I : I 2.42. { cos(x 1) + у == 0,5, х cos у == 3; I 11 ! I ! I 2.43. { sin х + 2у == 2, cos(y 1) + х == 0,7; 2.44. { cos х + у == 1,5, 2х sin (у 0,5) == 1; { СОБ (у 2) + х == О, 2.45. sin (х + 0,5) у == 1;
72 ЧислеННЪLе методъ" аЛ2ебрЪL [rл. 11 2.46. { 2.47. { 2у cos (х + 1) == О, х + sin у == 0,4; cos (х + 0,5) у == 2, sin у 2х == 1. 2.3.2. Метод Ньютона. Рассмотрим систему нелинейных уравнений (2.65). Метод Ньютона решения систем вида (2.65) сводится к последовательному решению систем линейных алrеб раических уравнений, полученных путем линеаризации системы нелинейных уравнений. Для k ro приближения вектора неизвестных x(k) == ( (k) (k) (k» ) т x 1 Х 2 ... х п будем искать (k + l) e приближение в виде x(k+l) == x(k) + дх(k) , (2.73 ) rде вектор приращений дх(k) == (дх k) дх k) ... дх k») Т под лежит определению. Для нахождения этих приращений разложим функцию Fl (x(k+l») в ряд Тейлора в окрестности точки x(k) до производ ных первоrо порядка включительно (оставим только линейную часть относительно Дх) и приравняем это разложение нулю: Fl (x(k+l») == О, получим F ( (k+l) (k+l) (k+l» 1 Х 1 , Х 2 , . .. , х п ( (k) (k) (k» ) aFl (x(k») (k) == Fl X 1 , Х 2 ,..., Х п + aXl ДХ 1 + 8Р 1 ( x(k» ) 8Р1 ( x(k» ) + д дх k) + . . . + д ДX ) О. Х2 х п Осуществляя те же процедуры для остальных уравнений си стемы (2.65), получим следующую СЛАУ относительно вектора неизвестных дх(k) == (дх k) дх k) ... ДX »):
э 2.3 ] ЧислеННЪLе методъ" решения систем нелинеЙНЪLХ уравнений 73 aF l (x(k») (k) aF l (x(k») (k) а ДХ 1 + а ДХ 2 +... Х1 Х2 аР 1 ( x(k» ) .,. + д дx ) == Fl (x(k»), Х п aF 2 (x(k») (k) aF 2 (x(k») (k) а LlX 1 + а ДХ 2 +... Хl Х2 аР 2 ( x(k» ) . . · + д дx ) == F2 (x(k») , Х п .. ............ .... ..... ...... ......... ..... .... ..... ... aF n (x(k») (k) aF n (x(k») (k) а ДХ 1 + а ДХ 2 +... Хl Х2 aF ( x(k» ) . . . + n д дх k) == Fn (x(k») . Х п (2.74) Для существования единственноrо решения СЛАУ (2.74) необходимо и достаточно, чтобы матрица этой СЛАУ aF t (x(k») аХl aF l (x(k») аХ п J (x(k») == aFn(x(k») аХ1 aF n (x(k») аХ п была невырожденной (det J (х (k») ::f=. о), т. е. существовала обрат ная матрица (J (x(k»)) l. Матрицу J называют матрицей Якоби для системы (2.65), а ее определитель якобианом этой системы. Запишем (2.74) в векторно матричной форме: J (x(k») дх(k) == F (x(k»),
74 ЧислеННЪLе методъ" аЛ2ебрЪL [rл. 11 откуда дх(k) == J l (X(k») F (x(k») . (2.75) Подставляя (2.75) в (2.73), получим алrоритм Ньютона решения систем нелинейных уравнений (2.65): x(k+l) == x(k) J l (x(k») F ( x(k») (2.76) (сравнить с методом Ньютона для одноrо нелинейноrо уравнения x(k+l) == x(k) f (x(k») / f' (x(k»)). Итерационный процесс (2.76) заканчивается при выполнении условия Ilx(k+1) x(k) 11 Е, rде с заданная точность, а вектор х x(k+l). Таким образом, для применения метода Ньютона (2. 76) необ ходимо выполнение следующих двух условий: существование частных производных первоrо порядка от фун кци й Fi(Xl, Х2,. .. , х п ), i == 1, n , по всем переменным Xj, j==l,n; матрица Якоби для системы (2.65) на каждой итерации k == == о, 1, 2, . .. должна быть невырождена. Пример 2.16. Методом Ньютона с точностью с == 10 2 pe шить систему нелинейных уравнений { Fl (Xl,X2) xl 2x + 1 == О, F 2 (Xl, Х2) xI + 2Х2 1 == о. Решение. rрафически можно показать, что первое вектор решение pac положено в прямоуrольнике 0,8 < (Xl)I < 0,4; 0,5 < (X2)I < 1,0, а второе в прямоуrольнике 0,8 < (Хl)П < 1,1; 0,8 < (Х2)п < < 1,1. Уточним второе вектор решение. 1) Начальное приближение x O) == (0,8 + 1,1) /2 == 0,95; x O) == == (0,8 + 1,1) /2 == 0,95;
э 2.3 J ЧислеННЪLе методъ" решения систем нелинеЙНЪLХ уравнений 75 2) J (х СО ») == [ 1 3,8 ] ; J l (х(О») == 1 [ 2,0 3,8 ] ; 1 9 2 О 5,22 1 9 1 О , , , , 3) (x l)x l»)T ==(x o)x o»)T J 1(x(O»)(Fl(X(O»)F2(X(O»))T == == (1,00374 1,0023) Т; 4) (x 2) x 2») Т == (x l) x l») Т J l (х(1») F (х(1)) (1,0013 1,0034); Ilx(2) X(l) 11 == 0,0024 < Е. УПР АЖНЕНИЯ. 2. 8. В каких случаях нельзя применять метод Ньютона? Методом Ньютона с точностью Е == 10 3 найти BeKTOpы решения для следующих нелинейных систем [6]: { sin (х + 1) у == 1, 2.49. 2х + cosy == 2; { tg (ху + 0,2) == х 2 , 2.50. х 2 + 2 у 2 == 1; { 2x+tg(xy) ==0, 2.51. (у2 6)2 + lnx == о; { 0,6х + 7,5у + х 2 у == О, 2.52. cos у + 6х == о; { sin (х + 0,8) + 2у 1 == О, 2.53. cos (у + 0,6) + 0,6х == о; { tg х cos (1,5у) == О, 2.54. 2 у 3 х 2 + 4х 3 == о. 2.55. Сколько итераций требуется в методе Ньютона для СЛАУ?
76 Численнuе м,етодъ" аЛ2ебрЪL [rл. 11 э 2.4. Численные методы решения задач на собственные значения и собственные векторы матриц линейных преобразований 2.4.1. Основные определения и спектральные свойст ва матриц. Рассмотрим матрицу А пхп в n MepHOM веществен ном пространстве R n векторов х == (X1 Х2 ... Х п ) Т. 1. Собственным вектором Х матрицы А называется нену.левой вектор (х ::f=. {j), удовлетворяющий равенству Ах == АХ, (2. 77) rде ..\ собственное значение матрицы А, соответствующее pac сматриваемому собственному вектору. 2. Собственные значения матрицы А с действительными эле ментами MorYT быть вещественными различными, вещественны ми кратными, комплексными попарно сопряженными, комплекс ными кратными. 3. Классический способ нахождения собственных значений и собственных векторов известен и заключается в следующем: для однородной СЛАУ, полученной из (2.77), (А ..\ Е) Х == {j, {j == (О о ... О) т , ( 2. 78 ) ненулевые решения (х ::f=. {j, а именно такие решения и находятся) имеют место при det (А ..\Е) == О, (2.79 ) причем уравнение (2.79) называют хара'К:,mерисmu'Чес'К:,и-м уравне.. ние-м, а выражение в левой части хара'Кmерuсmи'Чес'К:,u.м -МНО" 20'Ч.лено-м ; каким либо способом находят решения A1, "\2, ..., ..\п алrеб раическоrо уравнения (2.79) n й степени (предположим, что они вещественны и различны); решая однородную СЛАУ (2.78) для различных собственных значений ..\j, j == 1, n , (А ..\j Е) х З == {j, j == 1, n,
э 2.4 ] ЧислеННЪLе методъ" решения зада-ч на собствеННЪLе зна-чения 77 получаем линейно независимые собственные векторы х З , j == == 1, n , соответствующие собственным значениям Лj, j == 1, n . 4. Если количество линейно независимых собственных BeKTO ров матрицы А пхп совпадает с размерностью пространства R n , то их можно принять за новый базис, в котором матрица А пхп примет диаrональный вид л == u l . А . и. (2.80) На rлавной диаrонали матрицы Л находятся собственные значе ния, а столбцы матрицы преобразования U являются собствен ными векторами матрицы А (матрицы Л и А, удовлетворяющие равенству (2.80), называются nодоБНЪt.ми). 5. ОС1tов1tъtе свойства собственных значений и собствен ных векторов: а) Теорема ПеррО1tа. Если все эле.ментъt 'К,вадратной .матриЦЪt nоло итеЛЪНЪt, то наиболъшее по -модулю собственное зна'Чение ее тa e nоло ителъно, является nростЪt-м (не 'К,jJaтНЪt-м) 'К,орне-м хара'К,теристи'ЧеС'К,О20 уравнения u е-му соответствует собствеННЪtЙ ве'К,тор с nоло итеЛЪНЪt.ми 'К,о-мnонента-м и; б) есл.и для собствеНI:Iоrо значения Лj найден собственный вектор х З , то вектор сх З , rде с произвольное число, также является собственным вектором, соответствующим собственному . . значению Лj, при этом векторы х з и сх ] являются линейно зависимыми. в) попарно различным собственным значениям COOTBeTCTBY ют линейно независимые собственные векторы; r) k KpaTHoMY корню характеристическоrо уравнения (2.79), построенноrо для nроизволъной матрицы А пхп , соответствует не более k ( k) линейно независимых собственных векторов; д) собственные значения nодоБНЪtХ -матриц Л и А, удовлетво ряющих равенству (2.80), совпадают; е) си-м-метри'Чес'К,ая -матрица А (А == А Т) имеет полный спектр Лj , j == 1, n , вещественнъtХ собственных значений; ж) nоло ителъно определенная си-м-метричес'К,ая -матрица (А == А Т, (Ах, х) > о) имеет nолнъtи сnе'К,тр веществеННЪtХ no ло итеЛЪНЪtХ собственных значений; з) k KpaTHoMY корню характеристическоrо уравнения (2.79) си-м-метричес'К,ой матрицы соответствует ровно k линейно неза висимых собственных векторов;
78 Числе'Н,'Н,'ые метод'Ы аЛ2ебр'Ьt [lЛ. 11 и) си-м-метри'ЧеС'J\,а,я -матрица имеет ровно n ортоrональных собственных векторов (в соответствии со свойством е), при няв которые за новый базис (т. е. построив матрицу преобра зования и, взяв в качестве ее столбцов координатные столбцы собственных векторов), -МОЭfC'НО nреобразоватъ си-м-метри'Чес'J\,УЮ -матрицу А 'J\, диа20'На.лъ'Но-му виду с помощью преобразова ния (2.80). к) для си-м-метри'ЧеС'J\,оi1 атриЦЪt А матрица преобразова ния U в (2.80) является ортоrональной u 1 == и Т , и, следова тельно, преобразование (2.80) имеет вид А==иТ.А.и. (2.81) Покажем, что собственные значения матриц А и А в COOT ношении (2.80) (или (2.81)) одинаковы, собственные векторы различны, а столбцы матрицы U суть координатные столбцы собственных векторов матрицы А. Действительно, в COOTBeT ствии с (2.80) характеристические мноrочлены матриц А и А одинаковы, поскольку det Л == d 1 . det А . det и == det А etU на основе свойства определителя произведения матриц и опреде лителя обратной матрицы, т. е. собственные значения матриц Л и А одинаковы. Обозначим собственные векторы матрицы А через у: Ау == лу, (2.82) а собственные векторы матрицы А через х, тоrда Ау == и lАИу == л. у, А(иу) == л . (Иу), но Ах == лх, откуда U у == х. ( 2.83) Для первоrо собственноrо вектора у(l) матрицы А paBeH ство (2.82) имеет вид Л1 о (1) У1 (1) У2 (1) У1 (1) == '\1 У2 (1) I уn '\2 о '\n (1) уn
9 2.4] Числе'Н,'Н,'ые метод'Ы реwе'Н,ия зада-ч 'Н,а собсmве'Н,'Н,'ые з'Н,а-че'Н,ия 79 Л1уl 1 ) == '\lyl 1 ), откуда Yl 1 ) == 1, '\2y 1) == '\ly l), '\2 =f=. '\1, следовательно y l) == о, ................................................ (1) (1) (1) '\пУп == '\lУп , '\п =f=. '\1, следовательно Уп == о. Таким образом, у(l) == 1 О у(2) == о 1 У(п) == о о о о 1 Из (2.83) для у(l) имеем U у(l) == х(l), откуда и11 и12 и1п 1 (1) Х 1 (1) Х 2 и21 и22 и2п о и п l и п 2 ... и пп о (1) Х п Аналоrично для всех остальных векторов y(j), j == 2, n полу чаем (1) Х 1 (1) Х 2 и11 (п) Х 1 и1п и21 (п) Х 2 и2п (1) Х п и п 1 (п) Х п и пп что и требовалось доказать, т. е. столбцы матрицы U суть соб ственные векторы матрицы А.
80 Числе'Н,'Н,'Ьtе метод'Ь" аЛ2ебр'Ы [rл. II УПР АЖНЕНИЯ. 2.56. Показать, что для любоrо собственноrо значе ния л (А) 'НевЪtрОЭfCде'Н'Ноi1 матрицы А справедлива оценка l/IIA l" Iл(А)IIIА lll Iл(А)1 "А" (использовать опре деление cond(A) в п. 2.1.5). 2.57. Доказать, что для симметрической матрицы А столбцы матрицы U в равенстве (2.80) являются собственными opToro нальными векторами (столбцы матрицы U ортоrональны, если U ортоrональная матрица, т. е. и 1 == и Т ). 2.58. Доказат , что собственные значения симметрической положительно определенной матрицы А (А == А Т , (Ах, х) > о) являются положительными числами. 2.59. Доказать, что у матрицы 2 0,4 0,4 А== 0,3 4 0,4 0,1 0,1 5 все собственные значения вещественны (использовать норму обе их частей равенства Ах == лх). Указать интервалы, которым принадлежат собственные значения. 2.61. Показать, что для экстремальных собственных значений л mах , Лmiп симметрической матрицы А справедливы оценки Л mаХ (А) max(aii); Лmiп (А) min(aii). 2.62. Показать, что у вещественной трехдиаrональной MaT рицы А все собс твенные значения вещественны, если ai+1 C i > > О, i == 1, n 1 (показать, что она подобна трехдиаrональной симметрической матрице). Элементы i й строки матрицы А ai, b i , Ci, i == 1, n. 2.4.2. Метод вращений Якоби численноrо решения задач на собственные значения и собственные векторы матриц. Метод вращений Якоби применим только для симмет рических матриц А пхп (А == АТ) и решает полную проблему собственных значений и собственных векторов таких матриц. Он основан на отыскании с помощью итерационных процедур MaT рицы U в преобразовании подобия [5,7] А == и 1 Аи, а поскольку
9 2.4 J Числе'Н,'Н,ъtе метод'Ы реwе'Н,ия зада-ч 'Н,а собсmве'Н,'Н,'Ые з'Н,а-че'Н,ия 81 для симметрических матриц А матрица преобразования подобия и является ортоrональной (и 1 == и Т ), то А == и Т Аи, ( 2.84 ) rде А диаrональная матрица с собственными значениями на rлавной диаrонали Л1 О А== о Л п rеометрически метод вращений представляет собой после довательное вращение системы базисных векторов в n MepHOM вещественном пространстве Rn в плоскости некоторых, спе циальным образом выбранных двух векторов. Такая последова тельность вращений осуществ ляется до тех пор, пока новые базисные векторы не совпадут с собственными векторами, т. е. в качестве базисных принима ются собственные векторы MaT рицы А. Поскольку симметриче ская мат р и ц а имеет полный Ha Р 2 11 ..., Р ис. . . 1 еометрическая инте бор ортоrональных собственных претация метода вращения на ( 2 4 1 ) плоскости векторов см. п. ..., то для нее можно построить алrоритм метода вращений на основе преобразования подобия (2.84). Пример 2.17. На плоскости R 2 с ортонормированным бази сом (i, j) построить матрицу преобразования вращения и около начала отсчета на уrол ер. Решение. В соответствии с рис. 2.11 имеем ./ ........ "" "" r==l , , \ ., \' :\ I :1 ;.sin <р о ;.cos<p /; / х { i' == i cos ер + j sin ер, j' == i sin ер + j cos ер,
82 ч исле'Н,'Н, 'bte метод'Ы аЛ2ебр'Ьt [lЛ II ( ., .' ) .. ( COS ер sin ер ) J == ( З). . ' Sln ер COS ер т. е. матрица вращения и на плоскости имеет вид и == ( c s ер sin ер ) . Sln ер cos ер Пример 2.18. В пространстве R З с ортонормированным базисом (i, j, k) построить матрицы вращения на уrол ер COOT ветственно в плоскостях (j, k), (k, i), (i, j). Реш е н и е. В 8] доказывается, что матрицы врашения их, и у , U z имеют вид 1 О О COS ер О Sln ер ИХ == О cos ер ' s i n <РI и у == о 1 О О Sln VJ cos ер ' s i n <РI О cos ер cos ер ' s i n <РI О U z == Sln ер COS ер О О О 1 из KOToporo видно, что номера базисных векторов в их упорядо ченной совокупности (i, j, k), находящихся в плоскости враще ния, совпадают с номером строки и номером столбца, на пересе чении которых стоит элемент Sln ер. Матрица полноrо вращения и около начала координат на некоторый уrол определяется как преобразование и == UxUyU z . Можно показать, что в n MepHOM пространстве R n в плоско сти вращения, содержащей базисные векторы с номерами i и j, матрица вращения имеет вид
9 2.4 J Числе'Н,'Н,'Ьtе метод'Ь" реwе'Н,ия зада-ч 'Н,а собсmве'Н,'Н,'Ьtе з'Н,а-че'Н,ия 83 . 1, J 1 О 1 cos ер I s i n <РI . . . . . . . ..... ..... и== 1 о О 1 ...... sin ер ..... cos ер ..... J 1 О О 1 Пусть дана симметрическая матрица А. Требуется вычислить для нее с точностью Е все собственные значения и COOTBeT ствующие им собственные векторы. Алrоритм метода вращений следующий [5]. Пусть известна матрица А (k), являющаяся приближением матрицы А на k й итерации, при этом для k == О А (О) == А. 1. Выбирается максимальный по модулю недиаrональный элемент a ) матрицы А (k) ( mах l a ) 1) . 1 i<j 1 2. Ставится задача найти такую ортоrональную матрицу u(k), чтобы в результате преобразования подобия А (k+1) == == U(k)T A(k)U(k) произошло обнуление элемента a +1) матрицы А (k+1). В качестве ортоrональной матрицы выбирается представ ленная ниже матрица вращения u(k). в ней на пересечении i й строки и j ro столбца находится элемент и ) == sin ep(k), rде ep(k) уrол вращения, подлежащий определению. Симметрично относительно rлавной диаrонали (j я строка, i й столбец) pac положен элемент и; ) == sin ep(k). Диаrональные элементы и :) и и\ ) Р авны соответственно и ) == cos {()(k) и . == cos (()(k). Д py 11 у, 11 у, rие диаrональные элементы и == 1, m == 1, n , m f=. i, m f=. j; остальные элементы в матрице вращения u(k) равны нулю. Уroл вращения ep(k) определяется из условия a +l) == о:
84 ч исле'Н, 'н, 'bte метод'Ь" аЛ2ебр'Ьt [lЛ. II (k) (k) 1 2a ij ер arctg (k) (k) , 2 а.. a.. н JJ (2.85 ) J 1 О 1 cos ё.p(k) siri ep(k) . ..... ..... ..... u(k) == 1 О О 1 sin ёp(k) cos ёp(k) . ...... ..... . . . . . J 1 о о 1 причем если a ) == a\ ) то ep(k) == 7r 11 ' 4 . з. Строится матрица A(k+1): А (k+1) == u(k) т А (k) u(k) , (k+1) О В котором элемент a ij . в качестве критерия окончания итерационноrо процесса ис пользуется условие малости суммы квадратов внедиаrональных элементов: ( ) 1/2 t ( А (k+1») == . . (a +1») 2 . ,1; <1 Если t (А k+1) > Е, то итерационный процесс А (k+1) == u(k) т А (k) U(k) == u(k) т u(k l) т ... . .. и(О) т А (О) и(О) и(l) . . . u(k) продолжается. Если t (Ak+l) < Е, то итерационный процесс OCTa навливается, и в качестве искомых собственных значений прини (k+l) (k+l) (k+1) маются: Л1 а 11 , Л2 а 22 ,. . . , Л п а пп .
9 2.4 J Числе'Н,'Н,ъtе метод'Ы реwе'Н,ия зада-ч 'Н,а собсmве'Н,'Н,ъtе з'Н,а-че'Н,ия 85 Координатными столбцами собственных векторов матри цы А в единичном базисе будут столбцы матрицы U == == и(О) и(1) . . . u(k), т. е. (хl) Т == (Ull и21 ... и n l) , (х2) Т == (ИI2 и22 о.. и n 2) , . .., ( х п ) т == (и 1 п и2п ... и п п) , причем эти собственные векторы будут ортоrональны между собой, т. е. (xl, х т ) О, l =f=. т. Остановимся подробнее на вычислении уrла вращения. Для определения уrла вращения ep(k) на k ой итерации при u (k+1) ( u равняем нулю внедиаrональныеи элемент a ij стоящим на месте максимальноrо по модулю элемента a ) в матрице A(k») в произведении A(k+1) == u(k)T A(k)u(k), получим . J 1 о 1 . ( k ) . . ( k ) cos ер . . . . Sln ер 1 1, А (k+1) == U(k)TA (k)U(k) == х о о .1. .. (k) . (k) . . . . . Sln ер .... cos ер ... . . J 1 о о 1 (k) (k) (k) (k) а 11 ... a 1i ... a 1j ... а 1п (k) (k) (k) (k) а. ...а.. ...а.. ...а. 1 1 п х х (k) (k) (k) (k) а. ...а.. ...а.. ...а. 11 1 11 1 п (k) (k) (k) (k) а ...а. ...а . ...а п1 п п1 пп
86 ч исле'Н,'Н, 'bte метод'Ы аЛ2ебрЪt [lЛ II 1, . J 1 о 1. . . (k) .. (k) . . . . . cos ер . . . . Sln ер .... 'l 1 х о о . . (k) . . . . . Sln ер 1 cos ё.p(k) . J 1 о о 1 . 1, J : (k+l): .а.. . 1, 1 : (k+1): . a ji . . J После перемножения на месте элемента a j+1 будет следую щее выражение, которое приравняется нулю: a +l) == ( a ) sin (/')(k) + a ) cos (/')(k» ) cos (/')(k) + 1 r 1 r r + ( a} ) sin ep(k) + a} ) cos ep(k») sin ep(k) == О, а поскольку A(k) симметрическая матрица (тое. a ) == a} »), из последнеrо равенства следует выражение (2.85). Пример 2.19. С точностью Е == О, 3 вычислить собственные значения и собственные векторы матрицы 4 2 1 А== 2 5 3 А (О) . 1 3 6
9 2.4 J Числе'Н,'Н,'Ьtе метод'Ь" реwе'Н,ия зада-ч 'Н,а собсmве'Н,'Н,'Ьtе з'Н,а-че'Н,ия 87 Решение. 1) Выбираем максимальный по модулю внедиаrональный эле мент матрицы А (О), т. е. находим a ) такой, что I a ) 1 ==T ! 1 a ) 1. И (О) 3 . 2 . 3 м является элемент а 2З == , т. е. 1, == , J == . 2) Находим соответствующую этому элементу матрицу Bpa щения: j==3 1 О О U (О) == О cos ер(О) sin ер(О) == 2; О sin ер(О) cos ер(О) (/')(0) == arct g 2. 3 == o 7033. sin (/')(0) == o 65. cos (/')(0) == о 76. r 2 5 6 ' , r "..,.., " 1 О О и(О) == о 0,76 0,65 О 0,65 0,76 3) Вычисляем матрицу А(l): 4 0,87 2,06 А (1) == и(О) т А (О) и(О) == 0,87 2,46 o 03 , 2,06 o 03 8,54 , В полученной матрице с точностью до ошибок окруrления эле мент a ) о. Проверяется окончание итерационноrо процесса: ( ) 1/2 t ( А (1») == . . (a ») 2 == (0,872 + 2,062 + ( 0,оз)2) 1/2 > е, ,1; <1 следовательно итерационный процесс необходимо продолжить.
88 Числе'Н,'Н,'Ьtе метод'Ь" аЛ2ебр'Ьt [lЛ. II Переходим к следующей итерации (k == 1): al == 2,06; (lal 1 == i,rrt j la )I), тое. i == 1, j == 3; j==3 cos ер(l) О sin ер(l) i == 1 и(1) == О 1 О sin ер(l) О cos ер(l) ( ) 1 2 . 2,06 ер 1 == arct g == o 3693. 2 4 8 54 ' , , sin ер(l) == 0,361; cos ер(l) == 0,933; 0,933 О 0,361 и(1) == О 1 О 0,361 О 0,933 3 19 0,819 0,005 , А (2) == и(1) Т А (1) и(1) == 0,819 2,46 0,28 0,005 0,28 9,38 ( ) 1/2 t ( А (2») == . . (a ») 2 == (0,8192 + 0,282 + 0,0052) 1/2 > € ,1;7,<1 Переходим к следующей итерации (k == 2): al == 0,819; (l al;) 1 == . x. l a ) I) , т.е. i == 1, j == 2; 7,,1, 7, < 1
9 2.4] Числе'Н,'Н,'Ьtе метод'Ь" реwе'Н,ия зада-ч 'Н,а собсmве'Н,'Н,'Ьtе з'Н,а-че'Н,ия 89 ( ) 1 2 . 0,819 (n 2 == arct g == О 5758. т 2 3,19 2,46 , sin с.р(2) == 0,5445; cos с.р(2) == 0,8388. j==2 0,8388 0,5445 О i == 1 и(2) == 0,5445 0,8388 О О О 1 3,706 0,0003 0,1565 А (3) == и(2) т А (2) и(2) == 0,0003 1,929 0,232 0,1565 0,232 9,38 t (А(З») == (0,000з2 + 0,15652 + 0,2322)1/2 == 0,078391/2 < с. Таким образом, в качестве искомых собственных значений принимаются диаrональные элементы матрицы А (3): Л1 3,706; Л2 1,929; Лз 9,38. Собственные векторы определяются из произведения 0,78 0,5064 0,361 и(О) и(1) и(2) == 0,2209 0,7625 0,6 o 58 0,398 0,7 , 0,78 0,5064 0,361 х 1 == 0,2209 х 2 == 0,7625 х 3 == 0,6 o 58 0,398 0,7 ,
r 90 Числе'Н,'Н,'Ьtе метод'Ь" аЛ2ебр'Ьt [lЛ. II Полученные собственные векторы ортоrональны в пределах заданной точности, т. е. (х1, х 2 ) == 0,00384; (х1 , х 3 ) == 0,0081; (х2, х 3 ) == 0,0039. УПР АЖНЕНИЯ. 2.63. По казать, что собственные значения матриц А и А в пре образовании подобия (2.84) одинаковы, а собственные BeKTO ры нет. 2.64. Показать, что для симметрической матрицы А матрица преобразования подобия U в (2.84) ортоrональна (и 1 == и Т ). 2.65. Для следующих матриц с точностью Е == 10 2 определить методом вращения собственные значения и собственные векторы: 1,0 1,3 1,2 0,6 1,0 2,1 а) 1,3 0,6 1,5 б) 1,0 1,4 0,5 1,2 1,5 0,8 2,1 0,5 1,0 2,2 0,3 0,5 1,2 1,5 0,3 в) 0,3 1,2 0,6 r) 1,5 0,4 2,0 0,5 0,6 1,0 0,3 2,0 1,2 1,3 0,6 0,8 1,6 1,2 0,4 д) 0,6 1,0 1,2 е) 1,2 0,5 1,0 0,8 1,2 1,5 0,4 1,0 0,8 1,2 0,4 2,5 0,7 0,8 1,3 ж) 0,4 1,4 0,6 з) 0,8 2,6 1,3 2,5 0,6 0,7 1,3 1,3 0,8
9 2.4 ] Числе'Н,'Н,ъtе меmОдЪL реwе'Н,ия зада-ч 'Н,а собсmве'Н,'Н,ъtе з'Н,а-че'Н,ия 91 1,2 2,0 0,5 и) 2,0 1,4 1,7 0,5 1,7 0,3 2.4.3. Частичная проблема собственных значений и собственных векторов матрицы. Степенной метод. Рассмотренный метод вращения решает полную проблему соб ственных значений и собственных векторов матриц (симметриче ских) в том смысле, что определяются все собственные значения и собственные векторы. Зачастую не нужно находить все собственные значения ( спектр) и все собственные векторы, а необходимо найти MaK симальное и минимальное из них. Существует степенной метод определения спектральноrо радиуса матрицы, т. е. максималь Horo собственноrо значения матрицы, и соответствующеrо ему собственноrо вектора. Пусть дана матрица А, и пусть ее собственные значения упорядочены по абсолютным величинам: I Л 11 > I Л 21 . . . Iлnl. (2.86) Тоrда, выбрав некоторый вектор у(О), например вектор, KOM поненты KOToporo равны единице у(О) == (1 1 ... l)Т, можно построить следующую итерационную последовательность: у(l) == Ау(О) , у(2) == Ау(l) == А 2 у (0) , у(3) == Ау(2) == А3у(О), (2.87) y(k) == Ay(k l) == А ky(O) , y(k+1) == А k+1 y (0).
92 Числе'Н,'Н,'Ьtе метод'Ь" аЛ2ебр'ЬL [lЛ. II Здесь в круrлых скобках индексов указаны номера итераций, а без скобок показатели степеней. Покажем, что алrоритм (2.87), называемый стеnе'Н'Нъt-м -мe тодо-м, можно использовать для получения максимальноrо co cTBeHHoro значения и соответствующеrо ему собственноrо BeKTO ра матрицы А. Разложим у(О) по собственным векторам матрицы А: (О) 1 1 n у == а1 Х + а2 Х +... + аn х , (2.88) и умножим слева левую и правую части выражения (2.88) на матрицу А k, получим y(k) == Aky(O) == Q1 AkX1 + Q2 AkX2 + . . . + QnAkxn. (2.89) Рассмотрим в (2.89) слаrаемое с сомножителем Ak x 1: Ах1 == Л1 х1 ; А2х1 == А(Ах 1 ) == Л1 Ах1 == лiх 1 ; А 3 х 1 == л х1; AkX1 == лtх 1 . (2.90) в соответствии с (2.90) выражение (2.89) можно записать следующим образом: y(k) == Aky(O) == Q1 л tх 1 + Q2л х2 + . . . + Qnл хn. (2.91) Записав выражение (2.91) для j ro компонента вектора y(k) на k й и (k + 1 ) й итерациях: (k) 1,k 2,k n,k yj == Q1 Х j Л 1 + Q2 Х j Л 2 + . . . + QnXj Л n , Y \k+1) == I\J X , k+1 + I\J X , k+1 + + I\J X "l" k+1 1 \...(.1 1 л 1 \...(.2 1 Л2 . . . \...(.n 1 л n , и разделив у;+l на yj, получим y)k+1) (31j л +l + (32j л;+l + . . . + (3nj л +l y)k) (31j л + (32j л + . . . + (3nj л
9 2.4 J Числе'Н,'Н,'Ьtе метод'Ь" реwе'Н,ия зада-ч 'Н,а собсmве'Н,'Н,'Ьtе з'Н,а-че'Н,ия 93 rде (3ij == QiX , i == 1, n . Разделим числитель и знаменатель последнеrо выражения на (31jл +1: (k+1) 1 k+1 k+1 Yj Л +r2j/L2 +...+rnj/Ln (k) 1 k k ' У . 1 + r2j М2 + . . . + ,nj Мn J (2 92) Лi . (3ij. rде J-Li == < 1, 1, == 2, n; lij == (3 , 1, == 2, n. Л1 1j Перейдя в (2.92) к пределу при k 00, y k+1) lim J == Л1, k----+oo (k) Yj а затем сняв знак предела, получим для оrраниченноrо k (k+l) У. \ J Л1 (k)' У- J (2.93) rде j любое из j == 1, n . С помощью выражения (2.93) приближенно вычисляется максимальное собственное значение Л1 матрицы А (ее спектраль ный радиус). Точное выражение дЛЯ Л1 может быть записано следующим образом: (k+1) Лl == Yj (k) + о (J.L2)k+1 , Yj Л2. б . 1 rде М2 == , з лю ое из J == , n. Л1 ДЛЯ приближенноrо вычисления собственноrо вектора, COOT ветствующеrо максимальному собственному значению Л1, поло жим В выражении (2.91) слаrаемые, начиная со BToporo, равными нулю при большом числе итераций, получим y(k) == Aky(O) Q1л х1, откуда х 1 1 k y(k) . (}1 Л 1
94 Числе'Н,'Н,'Ьtе метод'Ь" аЛ2ебр'Ьt [lЛ. II Поскольку -собственные векторы определяются с точностью ДО постоянной, то число 01 можно положить равным 1, тоrда Х 1 y (k) k . Л] ( 2.94 ) Таким образом, определяющими выражениями в степенном методе являются алrоритм (2.87) и выражения (2.93) для собственноrо значения и (2.94) для собственноrо вектора. При выполнении условий (2.86) итерационный процесс сходит ся к искомому собственному значению Л1 и соответствующему собственному вектору, причем скорость сходимости определяет ся отношением IЛ21/IЛ11 (чем оно меньше, тем выше скорость сходимости) . в качестве критерия завершения вычислений используется следующее условие: c(k) == I лl k ) лlk l) 1 с, rде Е задаваемая вычислителем точность расчета. С помощью степенноrо метода можно вычислить и мини мальное собственное значение матрицы А (BHYTpeHHero радиуса спектральноrо кольца). Для этоrо достаточно степенной метод применить к обратной матрице A l, т.е. получить IЛmах(А l)1 и взять обратную величину: 1 л . ( А ) mln лmах(А 1) . Соответствующий собственный вектор х n будет х n (А 1 )ky(O) [Лmiп (A)]k , ( (О» ) т у == (11 ... 1), или, с точностью до константы, х n == (А l)k . у(О). Конечно, вычисление минимальноrо собственноrо значения матрицы А требует ее обращения, поэтому этот способ вычисле ния Лmiп (А) не распространен широко.
. 9 2.4 J Числе'Н,'Н,'Ьtе метод'Ь" реwе'Н,ия зада-ч 'Н,а собсmве'Н,'Н,'Ьtе з'Н,а-че'Н,ия 95 Пример 2.20. Вычислить спектральный радиус матрицы 512 А== 1 4 1 213 с точностью Е == 0,1. Реш е н и е. В качестве начальноrо приближения собствен Horo вектора возьмем у(О) == (lll)Т. Реализуем итерационный процесс (2.87), (2.93), полаrая j == 1: ,(1) == y l) == 8 == 8 . у(1) == Ау(О) == (8 6 6) т , Л1 (О) 1 ' Уз (2) Л (2) == Y..L.. == 58 == 7 25. 1 (1) 8 " У1 у(2) == Ау(l) == (58 38 40) т, с(2) == I л 2) лl 1 ) 1 == 0,75 > с; (3) У (3) == А у (2) == ( 408 250 27 4 ) Т , Л (3) == Y..L.. == 408 == 7 034. 1 (2) 58 ' , У1 С(З) == I лр) л 2) I == 0,216 > с; (4) У (4) == А у (3) == ( 2838 1682 1888 ) Т , л (4) == Y..L.. == 2838 == 6 9559. 1 (3) 408 ' , У1 с(4) == Iлl4) лl з ) 1 == 0,078 < с. Таким образом, полученное на 4 ой итерации значение л 4) == == 6,9559 удовлетворяет заданной точности и может быть взято в качестве приближенноrо значения Л1. Искомое значение спек тральноrо радиуса р(А) == m x IЛil == IЛ11 == 6,9559. Рассмотренный выше пример наrлядно иллюстрирует суще ственный недостаток алrоритма (2.87), связанный с сильным возрастанием компонентов итерируемоrо вектора y(k) в ходе ите (k) Yj рационноrо процесса. Видно, что (k l) I Л 11. ВО избежание Yj
96 Числе'Н'н/ые .методъ" алzебръ" [rл. 11 неоrраниченноrо возрастания (при IЛ11 > 1) или убывания (при I Л 11 < 1) компонентов y(k) по мере увеличения числа итераций k обычно при проведении компьютерных расчетов применяется степенной метод с нормировкой итерируемоrо вектора. С этой целью алrоритм (2.87) модифицируется следующим образом: z{k) == A y (k l) , Л (k) zY) (k) z(k) 1 == y)k l)' У Ilz(k) 11" При этом в качестве начальноrо приближения у(О) берется вектор с единичной нормой. Широко распространена также версия степенноrо метода, использующая скалярные произведения: z(k) == Ay(k l) , (k) z(k} У Ilz(k) 11 ' л k) == (y(k), Ay(k») "
r л А В А 111 ТЕОРИЯ ПРИБЛИЖЕНИЙ Проrрамма Исчисление конечных и разделенных разностей. Задача интерпо ляции, единственность мноrочленной интерполяции. Интерполяцион ные мноrочлены Лаrранжа и Ньютона. Поrрешность мноrочленной интерполяции. Сплайн интерполяция. Вывод кубическоrо сплайна дe фекта один. Метод наименьших квадратов: точечный и интеrральный. Численное дифференцирование с помощью сrлаживающих функций и с помощью отношения конечных разностей. Порядок и уточнение формул численноrо дифференцирования. Численное интеrрирование. Методы прямоуrольников, трапеций, Симпсона; их rеометрическая интерпретация, поrрешность, порядок. Повышение порядка методов численноrо интеrрирования. в теории приближений изучаются методы приближения функций более простыми, хорошо изученными функциями, Me тоды численноrо дифференцирования и численноrо интеrриро вания. При этом исследуемая приближаемая функция может быть задана как в аналитическом, так и дискретном виде (в виде экспериментальной таблицы). Пусть дана некоторая функция f (х) на отрезке Х Е (а, Ь], KO торая является довольно сложной для исследования. Требуется заменить эту функцию некоторой простой, но хорошо исследуе мой функцией (например, мноrочленом). Для этоrо с помощью f (х) строят таблицу (ее называют сето'Ч'Нои функцией), Xi Ха Х1 . . . Х п Yi Уа У1 . . . Уп (3.1) которую можно заменить (сrладить) простой функцией с KOH тролируемой поrрешностью. Рассмотрим два подхода к такой замене 4 В.Ф. Формалев, Д.Л. Ревизников
98 Теория nрибли;же'Ний [rл. 111 1. Пусть приближенная функция, являющаяся мноrочленом n й степени, f (х) == аохn + a1xп 1 + . .. + а п , (3.2) rде n + 1 число узлов в таблице (3.1), с неизвестными пара метрами ai, i == О, n , так приближает сеточную функцию f (х), что Yi == f {Xi), i == О, n. (3.3) в этом случае rоворят, что функция f (х) и'Нтерnолирует сеточную функцию (3.1), а сама задача приближения называется зада'Чеи u'Нтерnо./tяцuu. Точки Xi, i == О, n , называют уз./tамu u'Нтерnо./tяцuu, а условие (3.3) ус.ловu u'Нтерnо./tяцuu. Появ ляется возможность вычислить значения f (х) не только в узлах интерполяции, но и между ними в точках Е (Xi l, Xi), i == 1, n , причем f ( ) f ( ). 2. При большом количестве точек Xi, i == О, n , интерполяция требует большой rладкости (по n й производной), что практи чески выполнить невозможно. Поэтому сrлаживание сеточной функции (3.1) осуществляют путем минимизации HeKoToporo функционала, построенноrо с помощью (3.1) и мноrочлена (3.2) степени т, например квадратичноrо функционала: п S (ао, al,... ,а т ) == L [Yi 1 (Xi)]2, т« n. (3.4) i==O Процедуру сrлаживания в этом случае называют annpo'l);cu мациеи заданной функции функцией (3.2), в частности, аппрок симацию с использованием функционала (3.4) называют аппрок симацией с помощью то'Че'Ч'НО20 -метода 'Hau-ме'Нъшuх 'l);вадратов. Если коэффициенты сrлаживающей функции"(3.2) определя ются путем минимизации функционала, Ь S ( ао, а 1, . .. ,а т ) == J [1 (х) 1 (Х)] 2 dx, а сrлаживание называют u'Нmе2ра./tЪ'Н'Ьt-М -методо-м 'Hau-ме'Нъшuх 'l);вадратов. Если в качестве сrлаживаемой функции задана эксперимен тальная таблица (3.1), то в методах сrлаживания практически ничеrо не изменяется. Изменяются методы оценки поrрешности сrлаживания.
в 3.1 ] и с'Ч,исление оне'Ч,НЪLХ разностей 99 При построении методов сrлаживания очень часто использу ется понятие конечных разностей. э 3.1. Исчисление конечных разностей Пусть дана сеточная функция (3.1) для функции f(x) или экспериментальная таблица (3.1). В вычислительной математике аналоrом понятия дифферен циала является понятие конечной разности, которое использу ется при построении методов теории приближений, в частности при построении интерполяционных мноrочленов. Определение 1. Конечной разностью первоrо порядка впе ред (назад) сеточной фу нкции ( 3.1) в узле Xi называют разность ДУi == Yi+l Yi, i == О, n 1 (Д У i == Yi Yi l, i == 1, п ). Определение 2. Конечной разностью BToporo порядка впе ред (назад) сеточной функции (3.1) в узле Xi называют разность первоrо порядка от разности первоrо порядка: д2 Уi == д (ДУi) == д (Yi+1 Yi) == ДУi+1 ДУi == == (Yi+2 Yi+1) (Yi+1 Yi) == Yi+2 2Yi+1 + Yi, i == О, n 2 (д2 У i == Yi+1 2Yi + Yi l, i == 1, n 1) . Определение 3. Конечной разностью 3 ro порядка вперед (назад) называется разность первоrо порядка от разности BTOpO ro порядка: Д3 Уi == Yi+3 3Yi+2 + 3Yi+1 Yi, i == О, n 3 (Д3 У i == Yi+2 3Yi+1 + 3Yt Yi l, i == 1, n 2) и т.д. По аналоrии запишем конечную разность k ro порядка впе ред (назад) в узле Xi: дk Уi == Yi+k C Yi+k l + C Yi+k 2 . . . ...+( l)kYi' i==O,n k ( Д k Y i == Yi+k l CtYi+k 2 + ClYi +k 3 . . . ...+( l)kYi l' i==l,n k+l). (3.5) 4*
100 Теория nрибли;жений [rл. 111 З С т k(k 1)(k 2)...(k m+l) десь k == , . т. Ясно, что конечной разностью сеточной функции (3 1) иy левО20 nор.яд'l);а в узлах Xi, i == О, n , являются значения Yi этой функции В этих узлах. э 3.2. Задача интерполяции Пусть на отрезке Х Е [а, Ь] задана функция f(x), с помощью которой построена сеточная функция (3.1) или задана экспери ментальная таблица (3.1). При сrлаживании функции (или экспериментальной табли цы) с помощью интерполяции в соответствии с условием интер поляции (3.3) значение интерполирующей функции и значение заданной функции в узлах сетки должны быть одинаковыми, следовательно, поrрешность интерполяции в узлах Xi, i == О, n, равна нулю (рис. 3.1). у , Уо Уl У2 Уп ХО Хl Х2 Х п Х Рис.3.1. К задаче интерполяции Задача интерполяции имеет не единственное решение, но в одном случае, коrда интерполирующей функцией является мноrочлен n й степени (n + 1 число узлов интерполяции)
в 3 2] Зада'Ча интерполяции 101 вида (3.2), интерполяция имеет единственное решение, т. е. KO эффициенты аа, . . . , а n определяются единственным образом. Действительно, используя таблицу (3.1) и мноrочлен (3.2), составим СЛАУ относительно неизвестных коэффициентов аа, . . . , а n : i==O n + n 1 + + ааХа а1Ха . . . а n == Уа, n n 1 аа Х 1 + а1 Х 1 + . . . + а n == У1, (3.6) i == 1 't == n n + n 1 + + аа Х n а1 Х n . . . а n == Уn. Неоднородная СЛАУ (3.6) имеет единственное решение для коэффициентов аа, . . . , а n , так как определитель матрицы этой СЛАУ не равен нулю: Х n n 1 а Ха 1 det Х N n 1 1 Х 1 1 # О, х n n n 1 Х n 1 поскольку все значения узлов интерполяции различны между собой и ни одна из строк не является линейной комбинацией дpy rих. Таким образом, зада'Ча М'НО20'Ч./tе'Н'Нои u'Нтерnо./tяцuu имеет еди'Нстве'Н'Ное реше'Нuе, так как коэффициенты аа, . . . , а n MorYT быть выбраны единственным образом. 3.2.1. Интерполяционный мноrочлен Лаrранжа. Для мноrочленной интерполяции можно и не решать СЛАУ (3.6), а мноrочлен (3.2) м жно составить следующим образом. Запишем систему мноrочленов n й степени: [о == (х Xl)(X Х2) . . . (х Х n ) (хо Хl)(ХО Х2) . . . (хо х n ) == { 1, О, { 1, О, Х == Ха, Х == Xi, i == 1, n ; [1 == (х Хо)(Х Х2) . . . (х Х n ) (Хl ХО)(Хl Х2) . . . (хl х n ) Х == Х1, Х == Xi, i == О, 2, n;
102 Теорuя nрuблu:JtCенuй [lЛ III [n == (х Ха)(Х Хl) . . . (х Xn 1) (Хn Ха)(Хn Хl) . . . (Хn Xn 1) { 1, О, Х == Х n , Х == Xi, i == О, п 1. Составим линейную комбинацию этих мноrочленов (их коли чество равно п + 1) с коэффициентами линейной комбинации, равными значениям Yi сеточной функции (3.1), получим MHoro член n й степени Ln (х) == n "'" (х Ха) (х Хl).. . (х Xi l) (х Xi+l) .. . (х Х n ) == Yi . . (Xi Ха) (Xi Хl).. . (Xi Xi l) (Xi Xi+l).. . (Xi Х n ) ==o (3.7) Мноrочлен (3.7) называют u'Нтерnоляцuо'Н'Нъt.м .м'НО20'Чле'Но.м Ла2ра'Н;)ICа п й степени, так как он, во первых, удовлетворяет условию интерполяции Ln (Xi) == Yi, i == О,п , и, BO BTOpЫX, имеет п ю степень. Интерполяционный мноrочлен Лаrранжа обладает тем Heдo статком, что в случае, коrда добавляются новые узлы интерполя ции в таблице (3.1), все слаrаемые в (3.7) необходимо пересчиты вать. Но, с друrой стороны, он обладает тем достоинством, что интервалы между узл ами Mor YT быть неравномерными: Xi+l Xi == h i =1 const, i == О, п 1. Выпишем наиболее употребляемые мноrочлены Ll (х ) и L2 ( Х ) . 1) Для таблицы с двумя узлами интерполяции Xi, Xi+l: Xi Xi+l L ( ) Х Xi+l Х xi 1 Х == Yi + Yi+l ; xi Xi+l Xi+l xi Yi Yi+l 2) Для таблицы с тремя узлами интерполяции Xi l, Xi, Xi+l: Xi l Xi Xi+l Yi l Yi Yi+l
э 3.2] Зада'Ча интерполяции 103 L ( ) (х Xi)(X Xi+l) 2 х == Yi l + (Xi l Xi)(Xi l Xi+l) (х Xi l)(X Xi+l) (х Xi l)(X Xi) + Yi ( ) + Yi+l ) . xi xi l (Xi Xi+l) (Xi+1 Xi l)(Xi+l Xi 3.2.2. Интерполяционный мноrочлен Ньютона. Пусть сеточная функция (3.1) имеет равномерный ш аr меж ду узлами интерполяции: Xi+l xi == h i == h == const, i == О, n 1. Будем строить интерполяционный мноrочлен следующим об разом: N n (х) == аа + аl (х ха) + а2 (х ха) (х хl) + . . . . . . + а n (х ха) . . . (х Xn 1). (3.8) Коэффициенты аа, ... , а n будем определять из условия интерполяции Nn(Xi) == Yi, i == О, n , с использованием табли цы (3.1): х == ха : Nn(xa) == Уа == аа => аа == Уа; (3.9) х == хl : N n (Xl) == аа + аl(Хl ха) == Уl Уо == Уl => аl == , Xl Хо llуо аl == ; h (3.10) х == Х2 : N n (X2) == аа + аl(Х2 ха) + а2(Х2 ха)(Х2 хl) == У2 2Уl Уо 112уо 112уо == У2 => а2 == 2h 2 2!h 2 ' а2 == 2!h 2 . (3.11) И так далее, II nУо а n == ' h n. n. (3.12) Подставляя коэффициенты (3.9) (3.12) в мноrочлен (3.8), полу чим ) llуо 112уо ) N n (х == Уа + h (х ха) + 2 (х ха (х хl) + . . . 1. 2!h II nУо . . . + 'h n (х ха) . . . (х Xn 1). (3.13) n. Мноrочлен (3.13) является интерполяционным мноrочленом, поскольку является мноrочленом n й степени и удовлетворяет условию интерполяции (3.3). Он называется u'НтерnОЛЯЦUО'Н'НЪt.м .м'НО20'Чле'Но.м Нъюто'На. Ero достоинство заключается в том, что .........J...
104 Теория nрибли:JtCений [lЛ. [11 он строится проще, чем Ln (х), и при добавлении новых узлов интерполяции в таблицу (3.1) все предыдущие слаrаемые не пе ресчитываются, а добавляются новые. К недостаткам мноrочле на N n (х) по сравнению с Ln (х ), можно отнести использование постоянноrо шаrа между узлами интерполяции (ниже, в п. 3.2.4, на основе понятия разделенных разностей строится интерполя ционный мноrочлен Ньютона с переменным шаrом). В силу единственности мноrочленной интерполяции ясно, что после раскрытия скобок получим Ln (х) == N n (х). 3.2.3. Поrрешность мноrочленной интерполяции. Ясно, что в узлах интерполяции поrрешность интерполяционно ro мноrочлена Ln (х) или N n (х) равна нулю: Ln (xi) Yi == о, i == о, n . N n (Xi) Yi Будем искать поrрешность Ln (х ) f (х) в виде разности меж ду значением интерполяционноrо мноrочлена Ln (х) и значением функции f (х) в точке х, не совпадающей с узлом интерполяции Для нахождения поrрешности составим следующую вспомо rательную функцию: 'Р (х) == f (х) Ln (х) а . w (х), (3.14) rде Q' подлежит определению, а w(x) мноrочлен (n + l) й степени: w (х) == (х ха) (х хl) . . . (х х n ) . (3.15) Из (3.14) и (3.15) видно, что [L n (x)](n+l) == о, [w (х)](n+l) == == (n + 1!). Будем искать а из условия, что ер (х) == о в точке, в которой исследуется поrрешность. Обозначим эту точку через х : f (х) Ln (х) а== w( x ) . (3.16) Функция ер (х) имеет (n + 1) корень в узлах интерполяции, так как там w (х) == О и поrрешность f (х) Ln (х) == о. Но если добавим еще точку х , в которой потребуем ер ( х ) == о, то ер (х) будет иметь уже (n + 2) корня. Итак 'Р (х) имеет (n+2) корня, ер'(х) имеет (n+1) корень, 'Р"(Х) имеет n корней и т.д.,
э 3.2 ] Зада'Ча интерполяции 105 ср(n+l) (х) имеет 1 корень.. Обозначим этот корень через Е Е (ха, х n ). Покажем, что увеличение порядка производной функции ер ( х) на единицу уменьшает количество корней этой функции на единицу. Действительно, из теоремы Ролля известно, что если функция ср (х) на [Xi l, Xi] непрерывна, дифференцируема на интервале (Xi l, Xi) и имеет на концах одинаковые значения, то внутри этоrо интервала найдется хотя бы одна точка, в KO торой производная этой функции равна нулю. Функция ср (х) на каждом отрезке удовлетворяет теореме Ролля (см. рис. 3.2). q> (х) х <р' (х) х Рис. 3.2. Соотношение количества нулей функций ер( х) и ер' (х) Вычисляя производную (n + l) ro порядка от (3.14) в точке и учитывая, что значение ер(n+l) (х) == О, так как ср(х) имеет (n + + 2) корня, получим f(n+l) ( ) о а . (n + 1)! == О, откуда f(n+l) ( ) а== . (n + 1)! Подставляя (3.17) в (3.16), находим поrрешность мноrочленной интерполяции в точке Х Е (Xi l, Xi), i == 1, n : (3.17)
106 Теория nрибли:JtCений [lЛ III f(n+l) ( ) f (х) Ln (х) == ( )' (х хо)(х хl)... (х х n ), n + 1 . (3.18) Е (ха, Х n ) (а, Ь); Х точка, в которой ищется поrрешность, не совпадает с узлами интерполяции. Поскольку точка Е (а, Ь) неизвестна, то вместо поrрешно сти (3.18) вводится верхняя оценка поrрешности в виде Jf( x ) Ln( x ) I . шах I f(n+l) (х) I х Е [ а, Ь] I ( ) ( ) ( ) I ( )' х хо х хl ... х х n , n + 1 . (3.19) которая и используется на практике. В случае, если интерполяционный мноrочлен строится для экспериментальной таблицы (3.1), функция f (х) отсутствует и поrрешностью в форме (3.18) или (3.19) воспользоваться не удается. Тоrда, добавляя к таблице (3.1) один узел интерполяции, можно записать верхнюю оценку поrрешности (3.19) с помощью отношения конечных разностей (n + l) ro порядка Ib. (пН) (Уо) I ly( x ) Ln( x )l Н( l( x XO)( X Xl)...( x xn)l, h n n+1)! т. е. с помощью добавочноrо (n + l) ro слаrаемоrо в интерполя ционном мноrочлене Ньютона. 3.2.4. Интерполяционный мноrочлен Ньютона, по... строенный с помощью разделенных разностей. В вычис лительной математике аналоrом понятия производной является понятие разделе'Н'Ной раз'Ностu. Разделенной разностью сеточной функции (3.1) 'Нуле6020 no р.яд'Ка в узлах xi, i == О, n , называются значения этой функции в этих узлах f(Xi) == Yi, i == О, n . Определение 1. Разделе нной ра зностью функции (3.1) nep 6020 nор.яд'Ка в узлах Х i, i == О, n 1, называют отношение f( ) !(Xi+l) f(Xi) Xi, Xi+l == Xi+l Xi Yi+l Yi , Xi+l Xi i == О, n 1.
э 3.2 ] Зада'Ча интерполяции 107 Определение 2. Раздел енной р азностью функции (3.1) 6тo р020 nор.яд'Ка в узлах xi, i == О, n 2, называют отношение f( ) !(Xi+l, Xi+2) !(Xi, Xi+l) xi, Xi+l, Xi+2 == == Xi+2 Xi !(Xi+2) !(Xi+l) f(Xi+l) f(Xi) Yi+2 Yi+l Yi+l Yi Xi+2 Xi+l Xi+l Xi Xi+2 Xi Xi+2 Xi+l Xi+l Xi Xi+2 Xi i == О, n 2. И так далее. Определение 3. Разделенной разностью функции (3.1) n 20 nор.яд'Ка в узле ха называют отношение f( ) !(Хl,. . . ,Х n ) f(xo, . .. , Xn 1) Ха,Хl,... ,Х n == . Х n Хо Если шаr сетки в таблице (3.1) постоянный, т. е. h i == Xi Xi l == const, i == 1, n , то разделенные разности совпадают с OT ношением конечных разностей. Например, разделенные разности 2 ro и 3 ro порядков в узле Х при Xi Xi l == const имеют вид I Y2 2Yl+YO 1 112уо f(xa, Хl, Х2) h==const == 2!h 2 == 2! . h2 , f(xa, Xl, Х2, хз)lh==сопst == !(Хl, Х2, ХЗ) !(Хо, Хl, Х2) Хз Хо 112Уl /:},,?уо 2!h 2 2!h 2 Зh llЗ Уо З!h З . Таким образом, если в интерполяционном мноrочлене Ньюто на коэффициенты при мноrочленах в слаrаемых заменить разде ленными разностями, т. е. мноrочлен Ньютона записать в форме Nn(x) == == f(xa) + f(xa, хl)(х ха) + f(xa, Хl, Х2)(Х ха)(х Хl) +... . . . + f(xa, Хl, . . . , хn)(х ха)(х хl) . . . (х Xn 1), (3.20) то при h == const эта форма превращается в обычную выведенную ранее форму (3.13): I II Уо 112 Уо ( ) . Nn(x) h t == Уа + 'h (х ха) + 2 х ха (х хl) + . . . ==cons 1. 2!h II nУо . . . + 'n (х ха)(х хl) . . . (х Xn 1). (3.21) n.h
108 Теория nрибли:JtCений [lЛ. III Итак, интерполяционный мноrочлен Ньютона (3.20) исполь зуется в случае задания таблицы (3.1) снеравномерным шаrом, а (3.21) для таблицы (3.1) с постоянным шаrом. 3.2.5.. Сплайн",интерполяция. Интерполяция, использу ющая сразу все n узлов таблицы (3.1), называется 2лобалъной uнтерnоляцuей. Начиная с n 7 rлобальная мноrочленная интерполяция становится неустойчивой в том смысле, что поrрешности возрас тают, так как записанный интерполяционный мноrочлен требует rладкости по производным 7 ro и высших порядков (рис. 3.3). " I \ , \ \ , \ , \ I \ I Ln(x) , , , Nn(x) , , У " , \ I , , , " , , , Уо:' Уl , У2 " , , , I I , , , , , , , , , Хо Хl Хз Уп Х п Х Рис. 3.3. Неустойчивость rлобальной мноrочленной интерполяции при n 7 Поэтому обычную мноrочленную интерполяцию осуществля ют максимум по 3 4 узлам (для 3 x узлов 2 ой степени, 4 x узлов 3 й степени). Интерполяцию по нескольким узлам таблицы (3.1) называют ло'Калънои: линейной по каждым двум узлам с по мощью интерполяционных мноrочленов L 1 (х), квадратичной по каждым трем узлам с помощью интерполяционных мноrочленов L2(X), и так далее. Однако такая локальная интерполяция с помощью Ln или N n страдает тем недостатком, что интерполирующая функция в узлах стыковки мноrочлена имеет непрерывность только HY левоrо порядка, т. е. локальные интерполяционные мноrочлены принадлежат классу функций са (см. рис. 3.4 дЛЯ L 2 , N2 в уз ле х *).
э 3.2] Зада'Ча интерполяции 109 От этих недостатков свободна сплайн интерполяция, которая требует непрерывности в узлах стыковки локальных мноrочле нов по производным соответственно порядка один, два и Т. д. Определение. Сплайном степени m дефекта r называется (т т) раз непрерывно дифференцируемая функция, которая I 11 у х* . х Р.»с.3.4. Локальная интерполяция по каждым трем узлам на каждом отрезке [Xi l, Xi], i == 1, n , представляет собой MHO rочлен степени т. Наиболее распространенными в науке и технике являются сплайны 3 й степени дефекта один, Т. е. m == 3, } => m r == 3 1 == 2, т==1 т. е. дважды непрерывно дифференцируемый мноrочлен 3 й CTe пени на каждом отрезке [Xi l, Xi], i == 1, n . Сплайны, удовле творяющие условию интерполяции, называются uнтерnоляцuон н ъt.мu. О<;новным достоинством интерполяционноrо кубическоrо сплайна S ( х) дефекта один является следующее: этот сплайн обладает минимумом интеrральной кривизны на всем заданном отрезке [а, Ь] по сравнению с друrими интерполяционными функ циями f (x), т. е. ь ь J [8" ( х ) ] 2 dx J [ f " (х ) ] 2 dx. а а rеометрически это означает, что если тяжелую упруrую нить
110 Теория nрибли:JtCений [lЛ III повесить на ряд rвоздей, то она примет форму кубическоrо сплайна дефекта 1, приведенную на рис. 3.5. Рис. 3.5. Тяжелая упруrая нить, rеометрически представляющая собой KY бические сплайны дефекта один Выведем интерполяционные кубические сплайны Sk(X), k == == 1, n , дефекта один в соответствии с таблицей (3.1). Кубический сплайн В(х) на отрезке Х Е [Xi l, Xi] и еет четыре неизвестных коэффициента. Количество отрезков [Xi l, Xi] в соответствии с таблицей (3.1) равно n. Для определения 4 х n коэффициентов имеются следующие условия в узлах интерполяции: условие интерполяции S(Xi) == Yi, i == О, n ; непрерывность сплайнов S(Xi О) == S(Xi + О), i == 1, n 1; непрер ывность производных l ro порядка S'(Xi О) == S'(Xi + + О), i == 1, n 1; непрерывность произ водных 2 ro порядка S"(Xi О) == == S"(Xi + О), i == 1, n 1. Таким образом, Bcero имеется (n + 1) + 3(n 1) == 4n 2 условий. В качестве двух недостающих условий задают значения производных l ro или 2 ro порядка в узлах Ха и Х n - Для вывода используем значения В"(Ха) == В"(Хn) == о. В этом случае сплайн называется естестве'Н'Нъt.м. Пусть В"(х) == q(x). На отрезке [Xi l, Xi] рассмотрим пове дение функции q(x) (см. рис. 3.6). Поскольку сплайн является мноrочленом 3 й степени, то на каждом отрезке [Xi l, Xi] 2 я производная будет линейна. Най дем ее с помощью интерполяционноrо мноrочлена Лаrранжа l й степени Ll(X): Х Х' Х xi l q( х) == qi l Z + qi . (3.22) Xi l Xi Xi Xi l Выражение (3.22) уже удовлетворяет условиям непрерыв ности производных 2 ro порядка. Действительно, подставим в (3.22) Х == Xi О, получим q(Xi О) == qi. Затем, выписывая выражение (3.22) для отрезка [Xi, Xi+l]:
э 3.2 ] Зада'Ча интерполяции 111 Xi+l Х Х Xi q(x) == qi h + qi+l h ' Х Е [Xi' ХНl] , i == 1, n 1, i+l i+l И подставляя в HerO Xi + О вместо Х, получим q(Xi + О) == Qi, что и требовалось показать. qi q(x)==L] (х) q(x)==L] (х) Xi l h. 1 Х. 1 hi+l Xi+l Рис. 3.6. Поведение функций в" (х) на элементарных отрезках Для нахождения сплайна проинтеrрируем дважды выраже ние (3.22), получим (Xi х)3 (х Xi 1)3 В(х) == qi l 6h; + qi 6h; + С 1 Х + С 2 , (3.23) rде 01 и 02 найдем из удовлетворения значений сплайна (3.23) в узлах Xi l, Xi, условиям интерполяции S(Xi l) == (Xi Xi 1)3 (Xi l Xi 1)3 О С == Yi l == qi l 6h; + qi 6h; + lXi l + 2, (Xi Xi)3 (Xz Xi 1)3 S(Xi) == Yi == qi l 6h; + qi 6h; + C 1 X i + С 2 . Решая эту СЛАУ относительно 01, 02 и подставляя их в (3.23), найдем следующее выражение для сплайна степени 3 дефекта 1: В ( ) . (Xi х)3 . (х Xi 1)3 ( Yi l _ h i ) Х Х q l 6h i + q 6h i + h i q l 6 Х (Xi х) + ( : qi :i ) (х Xi l) , Х Е [Xi l, Xi]. (3.24)
112 Теория nрибли:JtCений [lЛ. III в этом сплайне узловые значения для вторых производных qi пока неизвестны. Будем искать их из условий непрерывности первых производных в узлах Xi. Для нахождения производной S'(Xi + О) запишем (3.24) для отрезка [Xi, Xi+1] (Xi+l X)3 (X Xi)3 ( Yi hi+l ) В(х) == qi 6h + qi+1 6h + h qi 6 (Xi+1 i+l i+l i+l ( Yi+l hi+l ) х) + hi+l qi+1 6 (х Xi), Х Е [Xi' ХНl]. (3.25) Вычисляя производные первоrо порядка от (3.24) и (3.25) и подставляя в них значение Х == Xi, получим В ' ( . О) . h i + . h i + Yi Yi l X q l 6 q 3 h i ' В ' ( + О) hi+l hi+l + Yi+l Yi Xi qiз qi+1 6 h i + 1 . Приравняем эти выражения в соответствии с условиями непрерывности первых производных в узлах интерполяции X , получим h i h i + hi+l hi+l Yi+l Yi qi l 6 + qi 3 + qi+1 6 == h iH Yi Yi l h. t (3.26) i == 1, n 1; qa == qn == о. (3.27) Система (3.26) с заданными крае выми у словиями (3.27) СЛАУ относительно qi == S"(Xi), i == 1, n 1, имеет трехдиаrо нальную матрицу, и, следовательно, ее можно решать методом проrонки. Подставля найденные qi, i == О, n , в (3.24), полу чим кубические сплайны дефекта один на каждом отрезке Х Е Е [Xi l, Xi], i == 1, n . Таким образом, определяющими выражениями для нахож дения кубических сплайнов дефекта один являются выражения (3.24), (3.26), (3.27). Пример 3.1. Построить интерполяционные мноrочлены Лаrранжа и Ньютона, совпадающие с функцией f (х) == 3 Х , Х Е Е [ 1, 1], в точках Ха == 1, Xl == О, Х2 == 1. Вычислить значение
э 3 2] Зада'Ча интерполяции 113 сеточной функ'ции и оценить поrрешность мноrочленной интер поляции в точке х* == 0,5. Реш е н и е. Составим сеточную функцию и занесем ее в таб лицу. Поскольку n == 2, то необходимо построить интерполяци онные мноrочлены L2 (х) и N2 (х): Xi Хо == 1 Xl == О Х2 == 1 Yi Уо == 1/3 Уl == 1 У2 == 3 L ( ) (х Xl) (х Х2) (х Хо) (х Х2) 2 х == Уа + У1 + (Хо Xl) (Хо Х2) (Хl Хо) (Xl Х2) (х Хо) (х Хl) 2 2 4 1 + У2 == x + x + . (X2 XO)(X2 Xl) 3 3 Проверим условия интерполяции L 2 ( 1) == 1/3; L2 (О) == 1; L 2 (1) == 3. Для определения конечных разностей, входящих в интерпо ляционный мноrочлен Ньютона, удобно пользоваться таблицей конечных разностей, в которую конечная разность k ro порядка в узле xi определяется как jl(k)Yi == jl(k 1)Yi+1 jl(k l)Yi, k == == 1,2,...; i == О,n . Xz Yi llYi t:J.2Yi 1 1/3 1 1/3 == 2/3 О 1 2 2/3 == 4/3 3 1==2 1 3 Тоrда ( llуо 112уо N2 х) == Уа + h (х ха) + 2 (х ха) (х Х1) == 1. 2!h 1 2/3 4/3 2 2 4 == 3 + (х + 1) + 2 (х + 1) (х О) == x + x + 1. 1 . 1 2!1 3 3 Здесь использованы конечные разности в узле ха (подчерк нуты в таблице). Получен результат, подтверждающий Teope му о единственности мноrочленной интерполяции, поскольку L 2 (х) = N 2 (х). ...
114 Теория nрибли:JtCений [lЛ III Значение сеточной функции в точке х* == 0,5 вычислим по интерполяционному мноrочлену у (0,5) L2 (0,5) == 1,8333. Верхнюю оценку поrрешности интерполяционноrо мноrочле на определим в соответствии с выражением (3 19): шах 1//11 (x)1 1I (х*) L 2 (х*)1 xE[ l,l] , '(x* хо) (x* хl) (x* X2)1; 3. шах If'" (х)1 == шах IЗХ. In 3 з1 == 31 .ln 3 3 == 3,978; xE[ l, 11 xE[ l, 1] 1 з0,5 ( 2 . О 25 + 4 . О 5 + 1 ) I 3' 3' " 3,978 1(0,5 + 1) (0,5 О) (0,5 1)/ == 0,249. 6 Поскольку функция f (х) == 3 Х известна, то можно вычислить точное значение абсолютной поrрешности в точке х* == 0,5: I зх * L 2 (х*) I == 130,5 ( .0,25 + : .0,5 + 1) 1 == 0,1012, т. е. верхняя оценка поrрешности примерно в 2,5 раза превышает абсолютную поrрешность в точке х* == 0,5. Пример 3.2. Оценить поrрешность в точке х* == 0,5 MHoro членной интерполяции из примера 3.1 для случая, коrда задан ная таблица получена из эксперимента (функция f (х) OTCYT ствует) . Реш е н и е. В этом случае верхнюю оценку поrрешности мож но оценить с помощью (n + l) ro члена формулы (3.20)или (3.21), дополнив таблицу еще одним узлом интерполяции со значением функции, полученным с помощью, например, экстраполяции. Доп узел Х. Yi llYi 112Yi 113Yi 'l l 1/3 О 1 2/3 1 3 2 4/3 2 7 4 2 2/3 Iy (х*) L3 (х*)1 дЗ узо I(x* хо) (х* хl) (х* x2)1 == 3!h
э 3.2] Зада'Ча интерполяции 115 2/3 == 1(0,5 + 1) (0,5 О) (0,5 1)1 == 0,125, 3!1 т. е. получили поrрешность, близкую к истинной абсолютной поrрешности, равной 0,1012. Пример 3.3. Для заданной таблицы Xi Ха == 1 Хl == О Х2 == 2 Yi Уа == 1/3 Yl == 1 У2 == 9 составить интерполяционный мноrочлен Ньютона Реш е н и е. Таблица задана снеравномерным шаrом, поэтому для решения задачи воспользуемся мноrочленом Ньютона с раз деленными разностями (формула (З.20)): N 2 (х) == 1 (Ха) + 1 (Ха, Х1) (х Ха) + + 1 (Ха, Х1, Х2) (х Ха) (х Х1) , rде 1 (Ха) == Уа == l/З; 1 ( ) Yl Уа Ха, Х1 == Xl Ха 1 1/3 2 . 0+1 з' У2 Yl Yl Уа 9 1 1 1/3 I(Xa,X1,X2)== X2 Xl Xl Xa 2 0 0+1 Х2 Ха 2 + 1 10 16 Таким образом, N 2 (х) == x2 + x + 1. 9 9 Условия интерполяции соблюдены: N 2 ( 1) == l/З; N2 (О) == 1; N 2 (2) == 9. Пример 3.4. Для заданной таблицы с h == Xi xi l == 1 == == const выписать интерполяционные кубические сплайны дефек та один на каждом отрезке х Е [Xi l, Xi], i == 1,4 . Проверить непрерывность сплайнов и их производных до BToporo порядка включительно в узле х* == 2. 10 9 'l О 1 2 3 4 Х- Ха == 1 Xl == 2 Х2 == 3 Х3 == 4 Х4 == 5 'l Yi Уа == 1 Уl == 3 У2 == 6 Уз == 9 У4 == 21 qi О 18/7 30 /7 102/7 О
116 Теория nрибли:JtCений [lЛ III Реш е н и е. Под заданной таблицей сформируем дополни тельную строку для вторых производных сплайнов 8" (Xi) = qi, которая заполняется по мере их вычисления (сразу можно вписать в нее qo == q4 == О). ДЛЯ узлов Х1 == 2; Х2 == 3; ХЗ == 4 с учетом qo == q4 == О COCTaB ляется СЛАУ (3.26) относительно неизвестных q1, q2, qз: i == 1 : 2 1 У2 Уl Yl Уа 1 3 q1 + 6 q2 == 1 1 , i==2: 1 2 1 Уз У2 6 q1 + 3 q2 + 6 qз == 1 У2 Уl == О, 1 2 У4 Уз Уз У2 9 6 q2 + 3 qз 1 1 . Вычисляются проrоночные коэффициенты по формулам i==3: c. А . Z . , b i + aiAi l В . d i aiBi l . 1 2 3 , '1, == , , ; b i + aiAi l а 1 == С3 == О, 1 3 А 1 == ; В 1 == ; 4 2 4 2 А 2 == 15 ; В 2 == 5 ; А О В3 == 102 3 ==; == 7 и значения qi == A i qi+1 + B i , i == 3,2,1 : qз == А з q4 + В3 == В3 == 102/7; 4 102 2 30 q2 == А 2 qз + 82 == 15 . 7 5" == 7; 1 ( 30 ) 3 18 q1 == A 1 q2 + В 1 == 4 . 7 + 2 == 7. Заносим эти значения в дополнительную строку таблицы и для каждоrо из четырех интервалов выписываем сплай ны (3.24): (Xl x)3 (X Xa)3 i == 1 : 8 1 (х) == qo 6 . 1 + q1 6 . 1 + + ( O qo . ) (хl х) + ( 1 ql . ) (х хо) == == 18 (х 1)3 + (2 х) + 108 (х 1) х Е [ 1; 2]; 42 42' .
э 3.2 ] Зада'Ча интерполяции 117 ( ) (X2 X)3 (X Xl)3 i == 2: 8// Х == q1 6 . 1 + q2 6 . 1 + + ( Yl q1 1 ) (Х2 х) + ( У2 q2 1 ) (х хl) == 18 (3 х)3 + 1 6 1 6 42 + ( 30 ) (х 2)3 + 108 (3 х) + 282 (х 2) х Е [ 2; 3]; 42 42 42 ' . ( (хз х)3 (X X2)3 'l == 3: 8 / / / х) == q2 6 . 1 + qз 6 . 1 + + ( У2 q2 ) (хз х) + ( УЗ qз ) (х Х2) == 30 (4 х)3 + 1 6 1 6 42 + 102 (х 3)3 + 282 (4 х) + 276 (х 3) х Е [3; 4]; 42 42 42 ' i==4: 8 ( ) (X4 X)3 (х хз)3 /V Х == qз 6 . 1 + q4 6 . 1 + + ( З qз ) (Х4 х) + ( 4 q4 ) (х хз) == 102 3 276 ==42(5 x) +42(5 x)+21(x 4), ХЕ[4,5]. Проверим правильность построения сплайнов для узла х* == == 2. К нему примыкают сплайны 81 (х) и 8II (х): 81 (2 О) == 3; 8' ( 2 О ) == 120 . 1 42 ' 8" ( 2 О ) == 108 . 1 42 ' 8// (2 + О) == 3; 8 ' ( ) 120 / / 2 + О == 42 ; 57! (2 + О) == 108 . 42 УПР АЖНЕНИЯ. 3.1 Выписать интерполяционные мноrочлены Лаrранжа и Ньютона для узловых значений Yi, заданных функций У == == f (х) в точках Xi. Вычислить значение мноrочлена и оценить поrрешность в точке х*. а) у == cos х; ха == о; Х1 == 7r /6; Х2 == 7r /3; Х3 == 7r /2; Х4 == 27r /3; х* == 1. б) у == tg х; ха == 7r /3; Х1 == 7r /6; Х2 == о; Х3 == 7r /6; Х4 == 7r /3; х* ==0, 5. L ..............
118 Теория nрибли:JtCений [lЛ III в) у == ln х; Ха == 1; Х1 == 1,5; Х2 == 2; Х3 == 2, 5; Х4 == 3, о; х* == 2, 3. r) у == е Х ; Ха == о; Х1 == 0,1; Х2 == 0,2; Х3 == о, 3; Х4 == о, 4; х* == о, 25. ) х2 Д У == е ; Ха == 1; Х1 == 1, 1; Х2 == 1, 2; Х3 == 1,3; Х4 == 1, 4; х* == 1, 25. е) у == x l; Ха == 1; хl == 2; Х2 == 3; Х3 == 4;Х4 == 5; х* == 2,5. ж) у == sin х; Ха == о; хl == 7r /6; Х2 == 7r /3; Х3 == 7r /2; Х4 == 27r /3; х* == 1. 3.2. В заданиях упражнения 3.1 оценить поrрешность MHoro членной интерполяции для случая, коrда полученные в них таб лицы считаются экспериментальными (т. е. после формирования таблицы считать, что f (х) отсутствует). 3.3. Выписать интерполяционные мноrочлены Ньютона, ис пользуя разделенные разности. а) у == sin х; Ха == о; Х1 == 7r /6; Х2 == 7r/4; Х3 == 7r /2. б) у == cosx; Ха == о; Х1 == 7r /6; Х2 == 7r /4; Х3 == 7r /2. в) у == e X; Ха == о; Х1 == о, 5; Х2 == 0,8; Х3 == 1,5. r) у == tg х; Ха == о; Х1 == 7r /6; Х2 == 7r/4; Х3 == 7r /3. 3.4. Для заданий упражнения 3.1 выписать интерполяцион ные кубические сплайны дефекта один на каждом отрезке х Е Е [Xi l, Xi], i == 1,4 . Проверить непрерывность S (Х2), S' (Х2), S"(X2). э 3.3. Метод наименьших квадратов При наличии значительноrо числа экспериментальных точек сrлаживание с помощью мноrочленной интерполяции не имеет смысла не только из за неустойчивости (локальных выбросов) интерполирующей функции, но и из за сильноrо колебания за данных точек. Способы локальной интерполяции, например с по мощью сплайнов, также не дают приемлемых результатов.
э 3.3 ] Метод наименьших ""вадратов 119 в этом случае дискретно заданную функцию сrлаживают в среднем, чаще Bcero мноrочленом, коэффициенты KOToporo находят с помощью минимизации отклонения сrлаживающей функции от заданных точек в не'Которо.м сред'Неu'Нте2ралъ'Но.м с.мыlлеe (рис. з. 7). у F(x, ао, аl, ..., а т ) ХО Хl Х2 Yп l, Уп I I I I I I I I I Xп l Х п Х Уо YI У2 Рис. 3.7. К методу наименьших квадратов Одним из таких методов является .метод 'Наu.ме'Нъшuх 'Квaд ратов (МНК). Суть ero заключается в следующем. Пусть дана экспериментальная таблица (З.1). Составим MHO rочлен степени m (т « n) F(x, аа, а1, . .. , а т ) == аахт + a1xт 1 + . . . + а т . ( з. 28 ) Будем полаrать, что отклонение значений этоrо мноrочлена от заданных таблицей (З.1) значений Yi, i == О, n , минимально внекотором среднеинтеrральном смысле. В точечном методе наименьших квадратов строится функ ционал n S(ao, аl, . . . , а т ) == L [F(Xi, ао, аl, . о. , а т ) Yi]2 , (3.29) i==a который rеометрически представляет собой сумму квадратов отклонений значений Yi от значений аппроксимирующеrо MHO rочлена (З.28) в точках xi, i == О, n (на рис. З.7 показаны ДBYCTO ронними стрелками).
120 Теория nрибли:JtCений [lЛ. III Необходимым условием минимума функции мноrих перемен ных является равенство нулю ее частных производных первоrо порядка по независимым переменным. В функционале (З.29) такими независимыми переменными являются коэффициен ты ао, а1, . . . , а т мноrочлена (З.28), которые до их определения являются не постоянными, а варьируемыми переменными: ав n оа == 2L[F(Xi, ао, аl, . о. ,а т ) Yi] xr == о, а . О == n :: == 2L[F(Xi' ао, аl,... ,а т ) Yi] x l == о, 1 . О == ( З. ЗО ) ав n & == 2L[F(Xi' ао, аl, . о. ,а т ) Yi] Х? == о. m . О == Неоднородная СЛАУ (З.ЗО) порядка m + 1 относительно неизвестных ао, а1, . .. , а т является нормальной, и, следова тельно, ее матрица является симметрической и положитель но определенной. Решения ао, а1, . .. , а т доставляют .мини.му.м функционалу (З.29). Если представить СЛАУ (З.ЗО) в виде Ьооао + Ь о1 а 1 + . . . + Ьота т == Со, Ь 10 а о + Ь 11 а 1 + . . . + Ь 1т а т == С1, Ьтоао + b m1 a 1 + . . . + Ьтта т == С т , то м ожно выписать выражения д ля к оэффициентов bij == bji, i, j == О, т, и правых частей Ci, i == О, т: n Ь ОО == L Х т , i==O n Ь "'" 2т 1 01 == X i , i==O n Ь От == L Х r , i==O n Со == L Yixi; i==O ) , n Ь "'" 2т 1 10== xi , i==O n Ь "'" 2т 2 11 == x i , i==O
э 3 3] Метод наименьших 'К;вадратов 121 . .. , n Ь "'" т 1 1т == X i , i==O n "'" т 1 С1 == YiXi ; i==O .. -.... ........ ... ..... ........ ... ........ ..... ........ ... ..... .... n ЬтО == Lxr, i==O n Ь "'" т 1 m1== Xi , i==O n Ь тт == n + 1, С т == LYi. i==O Решив эту СЛАУ относительно ао, а1, ... , а т и подставив их в (З.28), получаем мноrочлен степени m « n, наилучшим образом сrлаживающий дискретную функцию (З.1) в cpeДHe квадратическом смысле. Для выбора степени мноrочлена (З.28) можно начинать с мно--- rочлена l й степени F(x, ао, а1) == аох + а1, решив задачу о TO чечном МНК дЛЯ KOToporo, находят коэффициенты ао, а1. Определяют максимальную по модулю величину относитель ной поrрешности: 18(Yi)lm == т x I(F(Xi) Yi)/Yil, и если она не превышает заданную точность с, то за аппроксимирующий мноrочлен принимают F(x) == аох + а1. В противном случае увеличивают степень мноrочлена на единицу и повторяют расчет и т.д. Однако на практике заданную таблицу представляют rpa фически и по заданным точкам приближенно определяют вид аппроксимирующеrо по МНК мноrочлена. В интеrральном методе наименьших квадратов рассматрива ется интеrрируемая с квадратом функция у == f(x), х Е [а, Ь], которая трудна для исследования (например, трудно вычислить производные) . Будем аппроксимировать эту функцию некоторой функцией с минимизацией заштрихованной площади (см. рис. З.8), напри мер с помощью мноrочлена . .. , F( ) m т 1 Х,ао,а1,... ,а т == аох + а1 Х +... + а т , rде ао, а1, . .. , а т находят из условия минимизации следующеrо квадратичноrо функционала: ь В(ао, аl, . о. , а т ) == J [F(x, ао, аl, . о. , а т ) l(x)]2 dx. (3.31) а
122 Теория nрибли:JtCений [lЛ III у Р(х) а ь х Рис. 3.8. К интеrральному методу наименьших квадратов Необходимые условия минимума функционала (З.З1) имеют вид дВ ь д == 2 f [F(x, ао, . .. , а т ) f(x)]xmdx == О, аа а д дВ == 2 J [F(x, ао, . о. , а т ) f(x)]xm ldx == О, аl а ....... ......... ............... ............. дВ ь д == 2 f [F(x, ао,... , а т ) f(x)]xOdx == О, а т а которые после интеrрирования приобретают форму следующей СЛАУ: ь Ьооао + Ь о1 а 1 + ... + Ьота т == f f(x)xmdx, а ь Ь 10 а о + Ь11 а 1 + . .. + Ь 1т а т == f f(x)xm ldx, а (З.З2) ........ ....... ..................... ...... ь Ьтоао + bm1al + . . . + Ьтта т == f f(x)xOdx. а в нормальной СЛАУ (З З2) относительно коэффициентов ао, а1, . .. , а т правые части MorYT не интеrрироваться в силу сложности исследуемой функции f (х ). в этом случае правые
э 3.3 ] Метод наименьших 'К;вадратов 123 части вычисляются с помощью методов численноrо интеrриро вания, которые рассматриваются ниже, в Э 3.5. Пример 3.5. Используя точечный метод наименьших KBaд ратов аппроксимировать заданную таблицу линейным и KBaдpa тичным мноrочленами. о 1 2 3 4 5 Xi О 1 2 3 4 5 Yi 2,8 6,1 10,9 18,1 27,3 38 F 1 (Xi) 0,4285 6,6229 13,6743 20,7257 27,7771 34,8285 F 2 (Xi) 2,82 5,9743 11,0796 18,1287 27,1287 38,078 8/ (Yi) 1,153 0,086 0,255 0,145 0,0174 0,083 8/1 (Yi) 0,0071 0,0206 0,0165 0,0016 0,0063 0,0021 Реш е н и е. Под заданной таблицей необходимо заrотовить таблицу для значений линейноrо F 1 (Xi) И квадратичноrо F 2 (Xi) мноrочленов, которые будут получены в результате решения задачи, а также для их относительных поrрешностей Для линейноrо мноrочлена (т == 1) F1 (Х, ао, а1) аОХ + аl составляется функционал (n == 5) S (ао, а1) 5 2 Е [(aOXi + а1) Yi] , частные производные от KOToporo по i==O неизвестным параметрам ао, а1 приравниваются нулю: as 5 {)а == 2 L [(aoxi + аl) Yi] Xi == о, а . О == as 5 {)а == 2 L [(aoxi + аl) Yi] . 1 == о. 1 . О == в результате получается СЛАУ 2 ro порядка относительно неизвестных параметров ао, а1: { Ьооао + Ь о1 а 1 == Со, Ь 10 а о + Ь 11 а1 == Сl,
124 Теория nри6ли:JtCений [lЛ. III 5 5 5 5 rде Ь ОО == L: х;; Ь 01 == L: Xi; СО == L: YiXi; Ь 10 == L: Xi; Ь 11 == 5 i==O 5 i==O i==O i==O == L: Х? == 6; С1 == L: Yi. i==O i==O Используя табличные значения Xi, Yi i == 0,5 , получим СЛАУ { 55ао + 15а1 == 381,4, 15ао + 6al == 103,2. Решая ее с помощью правила Крамера: llаа llаl 55 15 аО == т; а1 == ; д== == 105 i= о; II 15 6 381,4 15 55 381,4 ДаО == 740 4. Да1 == == 45, " 103,2 6 15 103,2 находим аО == 7,0514; а1 == 0,4285; F 1 (х) == 7,0514х 0,4285. Значения этоrо мноrочлена в заданных узлах Xi, i == о; 5 , зано сятся в первую строку дополнительной таблицы, а относитель ные поrрешности 81 (Yi) == (F 1 (Xi) Yi)/Yi в третью строку дополнительной таблицы. Максимальная по модулю относитель ная поrрешность т x 181 (Yi)1 == 1,153, т. е. более 100%, что зна чительно превышает заданную точность. Поэтому далее рассматривается квадратичная аппроксими рующая функция F 2 (Х, ао, а1, а2) == аох2 + а1Х + а2, дЛЯ KOTO рой функционал и нормальная СЛАУ имеют вид 5 S (ао, аl, а2) == L [(aox + alxi + а2) Yi]2 , 5 i==O :: == 2 L [(aox + al X i + а2) Yi] x == о, о . О == ав 5 да == 2 L [(aox + al X i + а2) Yi] Xi == о, 1 . О == ав 5 да == 2 L [(aox + al X i + а2) Yi] · 1 == о. 2 . О ==
э 3 3] Метод наименьших вaдpaтoв 125 Собирая коэффициенты при неизвестных ао, а1, а2, получаем Ьооао + Ь о1 а 1 + Ь0 2 а2 == Со, Ь 10 а о + Ь 11 а1 + Ь 12 а 2 == С1, Ь 20 а о + Ь 21 а 1 + Ь 22 а 2 == С2, 555 rде Ь ОО == L: xt; Ь О1 == Ь 10 == L: X ; Ь 02 == Ь 20 == L: X ; Ь 21 == Ь 12 == i==O i==O i==O 5 == L: xi; i==O 5 == L: Yi. i==O Тоrда в соответствии с табличными значениями Xi, Yi имеем (каждое уравнение разделено на коэффициент при аО) 5 5 5 Ь 11 == L: X ; Ь 22 == 6: Со == L: YiX ; С1 == L: YiXi; С2 == i==O i==O i==O аО + 0,2298аl + 0,05618а2 == 1,6337, аО + 0,2444аl + 0,06667а2 == 1,6951, аО + 0,2727аl + 0,1091а2 == 1,8764, откуда получаем аО == 0,9743; а1 == 2,18; а2 == 2,82. Таким обра зом, F2 (х) == 0,974зх 2 + 2,18х + 2,82. Значения этоrо мноrочлена заносятся во вторую строку до... полнительной таблицы, а относительные поrрешности 811 (Yi) == == (F2 (Xi) Yi)/Yi в четвертую строку этой таблицы, откуда видно, что максимальная по модулю поrрешность т x 1811 (Yi)1 == == 0,0206, что меньше заданной точности t == 0,05. Таким образом, мноrочлен F 2 (х) наилучшим образом в KBaд ратичном смысле приближает заданную таблицу с точностью t == 0,05. УПР АЖНЕНИЯ. 3.5. Точечным методом наименьших квадратов аппроксими ровать линейным и квадратичным мноrочленами следующие дискретно заданные функции и определить максимальную по модулю поrрешность аппроксимации: L...
126 Теория nрибли:JtCений [lЛ III а) Xi О 1 2 3 4 5 Yi 4,2 8,8 16,3 24,6 36,5 48,4 б) Х. О 1 2 3 4 5 7, Yi 3,2 7,8 15,3 23,6 35,5 47,5 в) Xi О 1 2 3 4 5 Yi 1,9 5,2 9,8 17,3 25,7 37,5 r) Xi О 1 2 3 4 5 Yi 1,1 3,9 9,2 16,8 25,3 35,7 д) Xi О 1 2 3 4 5 Yi 1,1 4,9 11,2 18,8 29,3 40,7 е) Xi О 1 2 3 4 5 Yi 1,1 5,9 13,2 21,8 33,4 45,4 ж) Xi О 1 2 3 4 5 Yi 2,1 6,9 13,7 23,4 33,6 47,5 з) Xi О 1 2 3 4 5 Yi 3,1 5,8 11,2 17,7 27,4 37,5 3.6. Показать, что в методе наименьших квадратов решения ао, а1, . . . , а т СЛАУ (3.30) доставляют минимум (а не макси мум) функционалу (3.29). 3.7. Интеrральным методом наименьших квадратов аппрок симировать линейным, квадратичным и кубичным мноrочлена ми следующие функции, заданные на отрезках х Е [а; Ь], и опре делить относительную поrрешность: а) у == sin (х), х Е [ 7r/4; 7r/4]; б) у == tgx, х Е [ 7r/4; 7r/4]; в) у == е Х , х Е [ 1; 1]; r) у == e X, х Е [ 1; 1]; д) у == ln х, х Е [О, 5; 2]; е) у == cos (х ), х Е [ 7r /4; 7r /4] . .......1
э 3.4 ] Численное дифференцирование 127 э 3.4. Численное дифференцирование Этот параrраф является основополаrающим для численноrо интеrрирования дифференциальных уравнений, как обыкновен ных, так и в частных производных. Пусть в некоторой точке х* требуется вычислить производ ные первоrо, BToporo и т. д. порядков от дискретно заданной функции (З.1). MorYT иметь место следующие два сл учая: а) точ ка х * Е (х i 1 , Х i ), i == 1, n , и б) точка х * == х i, i == 1, n 1, т. е. совпадает с одним из внутренних узлов заданной таблицы. Тоrда в nерво.м слу'Чае заданная таблица сrлаживается какой либо функцией ер (х), являющейся rлобальным (локальным) ин терполяционным мноrочленом или мноrочленом, полученным по МНК снекоторой поrрешностью Rn(x), в результате чеrо имеют место следующие равенства у ( х) == ер ( х) + Rn ( х ) , у' ( х) == ер' ( х) + R ( х ) , у" ( х) == ер" ( х) + R ( х ) , у(х*) == ер(х*) + Rn(x*); у' (х*) == ер' (х*) + R (х*); у" (х*) == ер" (х*) + R (х*); (З.ЗЗ) ..... ........ ..... ..... ... ........ ..... ... ..... ........ Следует отметить, что процедура численноrо дифференци рования является не'Корре'Кmной в том смысле, что близость искомой функции у(х) и сrлаживающей функции ер (х) не ra рантирует близости их производных (рис. З.9). Более Toro, они MorYT иметь в одной и той же точке х* производные различных знаков. Тем не менее формулы (З.ЗЗ) широко используются на практике. Во втором слу'Чае (х* == Xi, i == 1, n 1) используется ап парат разложения функций в ряд Тейлора, для чеrо функция в точке х* должна иметь достаточное число производных. С этой целью предполаrается, что заданная таблица (З.1) является ce точной функцией для некоторой функции у(х), имеющей в точ ке х* производные до четвертоrо порядка включительно, т. е. что Yi == Y(Xi). Тоrда внутренний узел х* == xi, i == 1, n 1, окружают уз лы Xi l, Xi+1 (рис. З.10), причем Xi+1 xi == xi Xi l == h. Тоrда, разлаrая значения Yi l, Yi+1 на то'Чной фун'Кцuи в ряд Тейлора в окрестности точки xi до производной четвертоrо по
128 Теория nрибли:JtCений [lЛ III У <р' (x*)==L:" (х*) q> (x)==L n (х) ,' I I I I I ., Уо У} У2 Уп. . . . . . . . . хо х} Х2 х* х п х Рис. 3.9. К понятию некорректности численноrо дифференцирования рядка включительно, получим ( ) , I/h 2 Yi l == У Xi h == Yi Yi h + Yi ""2 h 3 h 4 y " 6 + y/V ( ) 24 ' Е (Xi l, Xi), (3.34) ( ) , I/h 2 Yi+1 == У Xi + h == Yi + Yi h + Yi ""2 + + y " :3 + y/V ( ) : ' Е (Xi, ХНl). (3.35) Выразим вначале Y из (3.34), а затем из (3.35), разделив предварительно на h и оставляя слаrаемые с первой степенью шаrа h, полу.чим ......f. == Yi Yi l + O ( h ) == llY i + O ( h ) Y h h' (3.36) y == Y'+1h Yi + O(h) == Д:i + O(h). (3.37) Вычтем из (3.35) выражение (3.34), разделим полученное соотношение на 2h, получим следующее значение производной первоrо порядка в точке Xi (слаrаемые с производными четноrо ....1
э 3.4 ) Численное дифференцирование 129 порядка сокращаются за исключением слаrаемоrо с производной четвертоrо порядка): о У:== Yi+1 Yi l +O(h 2 ) == Zi +O(h 2 ), (3.38) о rде Д Yi== Yi+l Yi l центральная разность первоrо порядка. Выражение (3.36) определяет производную первоrо порядка в узле Xi с помощью отношения конечных разностей слева. Она имеет первый порядок аппроксимации относительно шаrа h. Выражение (3.37) определя ет производную первоrо поряд ка в узле Xi с помощью отноше ния конечных разностей справа. Она также имеет первый поря док аппроксимации относитель но шаrа h. Выражение (3.38) определя Рис. 3.10. Численное дифферен ет производную первоrо поряд цирование с помощью отношения ка в узле Xi с помощью OTHO конечных разностей шения центраЛЪНъtх разностей. Она имеет второй порядок аппроксимации относительно шаrа h. Сложим выражения (3.34) и (3.35), разделим на h 2 (слаrае мые с производными нечетноrо порядка сокращаются), получим Yi l У; Yi+l X, l h Х. 1 h Xi+l y"(Xi) == YHl 2 i + Yi l + O(h2) == д2;i + O(h 2 ). h h (3.39) Выражение (3.39) определяет производную BToporo порядка в узле X с помощью отношения центральных разностей BToporo порядка. Она имеет второй порядок аппроксимации относитель но шаrа h. Определим nорядо'К то'Чностu .метода численноrо дифферен цирования с помощью отношения конечных разностей, для чеrо рассмотрим, как из выражений (3.34), (3.35) получаются произ водные (3.36) (3.38). Например, производная (3.36) получена из (3.34) следующим образом: У У h h 3 == i h i l + y '"2 y " 2 + O(h 3 ). 5 В.Ф. Формалев, Д.Л. Ревизников
130 Теорuя nрuб./l,U:JfCе'Н,uй [rл. 111 Поскольку шаr h является дробной величиной, то rлавный член поrрешности содержит первую степень h (слаrаемое y ' ) , остальные члены поrрешности являются членами более BbIcoKoro порядка малости (слаrаемые, начиная с h 2 и далее), поэтому, отбрасывая их и сохраняя rлавный член поrрешности, следую щий сразу за отношением конечных разностей, получим форму лу (3.36). Аналоrично получены и остальные формулы. Пор.яд'Ком то'Чности метода численноrо дифференцирова ния с помощью отношения конечных разностей называют пока затель степени h в rлавном члене поrрешности. (По поводу связи поrрешности и точности см. rл. 1 и теорему эквивалентности в п. 6.з.4). Таким образом, односторонние производные (з.36) и (з.37) имеют l й порядок точности и поэтому менее точны, чем центральн разностная производная (3.38), имеющая второй по рядок точности. 3.4.1. Метод PYHre уточнения ФОРМУЛ численноrо дифференцирования. Из формул (3.36) (з.38) видно, что Me тод p ro порядка численноrо дифференцирования совпадает с по казателем степени шаrа h в rлавном члене поrрешности и имеет вид f'(x) == <p (x) + h P . 'Ф(х) + о (hP+l) + о (h P + 2 ) + ..., (з.40) rде f' ( х) <p ( х ) , а остаточный член имеет вид Rp == hP'ljJ(x) + о (h P + 1 ) + о (h P + 2 ) + . .. с целью повышения на единицу порядка точности MeTO да продифференцируем численно методом p ro порядка функ цию f(Xi) == Yi, i == О, n , с шаrом h, получим выражение (з.40). Затем продифференцируем численно функцию тем же методом p ro порядка, с шаrом kh, (k == 1/2; 1/4; 1/16; .. .), получим f'(x) == <P h(X) + (kh)P'ljJ(x) + о (hP+l) . (3.41 )
9 3.4 ] Численное дифференцирование 131 Вычитая из (3.41) выражение (3.40) и определяя из получен Horo равенства 'ljJ ( х ), находим hP'l/;(x) == lp,,(x) lpkh(X) + о (h P +1) . k P 1 (3.42) Выражение (3.42) можно использовать для оценки поrреш ности численноrо дифференцирования. Подставляя (з.42) в (3.41), получаем окончательно f'(x) == <Pkh(x) + kP lph(xkp ! h(X) + о (h p +1) . ( 3.43 ) Из (3.43) видно, что это уже метод порядка р + 1, т. е. на по рядок точнее. В этом и заключается процедура PYHre уточнения численноrо дифференцирования. Пример 3.6. Вычислить производную В точке х* == О, 5 от дискретно заданной функции примера 3.1. Оценить поrрешность производной. Реш е н и е. По заданной, таблице составляем интерполяцион ный мноrочлен L2(X) == 2 х 2 + 4 х+1 3 3 (см. пример 3.1) и поrрешность R2 (х) == 3,978 (х хо) (х Xl) (х Х2) == 6 == 3,978 (х + 1) . х . (х 1) . 6 Тоrда у (х) == L 2 (х) + R2 (х) ; у' (х) == L (х) + R (х) ; у' (х*) == L (х*) + R (х*) == ( 2 х2 + 4 з х + 1 ) ' + з х==х* + з,:78 [(х + 1) х (х l)] ==x* == ( : х* + ) + з,:78 (Зх*2 1) . у' (0,5) == С .0,5 + : ) + з,:78 (3 . 0,52 1) == 2 0,166. То есть у' (0,5) 2; R (0,5) 0,166. 5*
132 Теория nрибли:JfCений [rл. 111 Точное значение производной первоrо порядка в точке х* == == 0,5 будет У' == (зх) ==х* == з х * . ln 3 == 1,9028. Аналоrично вычисляются и производные 2 ro, 3 ro и т. д. порядков. В данном примере производная BToporo порядка по стоянна для Bcero отрезка [ 1; 1] и равна У" 4/З. Пример 3.7. Для узла Xi заданной таблицы с помощью отношения конечных разностей слева, справа и отношения цeH тральных разностей выписать выражения для производной Tpe Tbero порядка. Определить порядок аппроксимации во всех трех случаях. Реш е н и е. Заметим, что из формул численноrо дифферен цирования минимальное количество узлов, необходимое дЛЯ BЫ числения конечных разностей какоrо либо порядка, должно быть на единицу больше этоrо порядка. Следовательно, для вычисле ния конечных разностей TpeTbero порядка, входящих в конечно разностную производную, необходимо не менее четырех узлов. В соответствии с этим рассмотрим таблицу с пятью узлами, отстоящими друr от друrа на одинаковом расстоянии h == Х k Xk l, k == i 1, i, i + 1, i + 2. Xi 2 Xi l Xi Xi+l Xi+2 Yi 2 Yi l Yi Yi+l Yi+2 Тоrда для вычисления производных 3 ro порядка в узле Xi разложим Yi 2, Yi l, Yi+l, Yi+2, как значения дифференцируе мой необходимое число раз функции У == 1 (х), в ряд Тейлора в окрестности узла Xi до пятой производной включительно, по лучим Yi 2 == У (Xi 2h) == == Yi Y (2h) + y , (2 )2 y ,, (2 )3 + yfv (22 h [ + о (h 5 ), ( h) ' h "h2 ",h З /V h 4 О ( 5 ) Yi l == У Xi == Yi Yi + Yi 2 Yi (3 + Yi 24 + h, ( h) ' h "h2 ",h З /vh 4 ( 5 ) Yi+l == У Xi + == Yi + Yi + Yi 2 + Yi (3 + Yi 24 + о h ,
9 3.4 ) Численное дифференцирование 133 Yi+2 == У (Xi + 2h) == ( 2h ) 2 ( 2h ) З ( 2h ) 4 ==Yi+y (2h)+y ' 2 +y " 6 +yfV 24 +O(h 5 ). Выпишем различные выражения для производной 3 ro по рядка с помощью отношений конечных разностей: дз " Yi h З ДЗ У i " , "'-1 У i "'-1 h З Yi+l ЗУi + ЗУi l Yi 2 h З Yi+2 ЗУi+l + ЗУi Yi l h З У о '" 1 ( '" + У "' ) Yi+2 2Yi+l + 2Yi 1 Yi 2 i 2 Yi i 2h З Подставляя в эти формулы выше приведенные разложения в ряды Тейлора, получим _...Ш Yi+l 3Yi + 3Yi 1 Yi 2 + о (h) , Yi == h З УН2 3Yi+1 + 3Yi Yi l + о (h) , h З ,,, Yi о'" 1 Yi == 2 ( y " + y ") + О (h2) , откуда видно, что производные 3 ro порядка в узле Xi, вычислен ные с помощью отношения конечных разностей слева и справа, имеют первый порядок аппроксимации, а с помощью отношения центральных разностей второй порядок. УПР АЖНЕНИЯ. 3.8. В заданиях упражнения 3.5 вычислить в точке Х == 2, 5 значения производных первоrо и BToporo порядков. Оценить их поrрешность. 3.9. В заданиях упражнения 3.5 с помощью отношения конеч ных разностей вычислить в узле Х2 == 2 производные до ч:етверто ro порядка включительно в виде отношения конечных разностей слева, справа и отношения центральных разностей. Определить порядок аппроксимации полученных выражений. у к а з а н и е: для производной 4 ro порядка использовать сле дующее конечно разностное соотношение: yfV 4Yi/h4 == (Yi+2 4Yi+l + 6Yi 4Yi 1 + Yi 2)/h4.
134 Теория nрибли:JfCений [rл. 111 3.10. В заданиях упражнения 3.5 в узле Х2 == 2 вычислить значения лево и правосторонней производных первоrо порядка с помощью отношения конечных разностей с шаrом h == 1 и h == == 0,5 и уточнить эти производные с помощью процедуры PYHre. э 3.5. Численное интеrрирование функций Известно, что для подавляющеrо большинства функций не удается вычислить первообразные, вследствие чеrо приходится прибеrать к методам приближенноrо и численноrо интеrрирова ния функций. Методы приближенноrо интеrрирования исполь зуют разложение подынтеrральных функций в ряды Тейлора (Маклорена) и дальнейшеrо почленноrо интеrрирования членов ряда. К недостаткам методов приближенноrо интеrрирования относится требование дифференцируемости подынтеrральных функций до порядка, который требуется при разложении функ ций в ряд Тейлора. От этоrо недостатка свободны методы чис ленноrо интеrрирования, в которых подынтеrральная функция удовлетворяет только условию непрерывности (для существова ния определенноrо интеrрала). При численном интеrрировании по заданной подынтеrраль ной функции строится сеточная функция (3.1), затем эта функция с помощью формул локальноrо интерполирования с контролируемой поrрешностью заменяется интерполяционным мноrочленом, интеrрал от KOToporo хорошо вычисляется и cpaB нительно леrко оценивается поrрешность. Пусть на отрезке Х Е [а, Ь] дана непрерывная функция у == == f(x), требуется на х Е [а, Ь] вычислить определенный интеrрал Ь 1 == J f(x) dx. (3.44) а Заменим данную функцию f(x) на сеточную функцию (3.1). Вместо точноrо значения интеrрала (3.44) будем искать ero при ближенное значение с помощью суммы: п I Ih==LAihi, i==O h i == Xi Xi l, i == 1, n , ХО == а, Х п == Ь, ( 3.45 ) .........
9 3.5 ] Числе'Н,'Н,ое и'Н,те2рирова'Н,ие фу'Н,'К:ций 135 в которой необходимо определить коэффициенты A i и поrреш ность формулы (з.45). 3.5.1. Формула прямоуrольников численноrо инте... rрирования. Наиболее простой (и имеющей малую точность) является формула прямоуrольников. Она основана на определе нии определенноrо интеrрала как предела последовательности интеrральных сумм: Ь n J f(x)dx == Нт L f( i)llxi, i Е [Xi, Xi l], llXi == Xi Xi l. шах . 1 а Xi----+O == Если в этом определении снять знак предела и поло)Кить д.Хi == h i , i == 1, n , то появится поrрешность R np (за i можно принять левый или правый конец отрезка LlXi), т. е. Ь n J f(x)dx == f(Xi l)hi + R np , а ==l Ь n J f(x)dx == L f(Xi)h i + R np . а i==l ( 3.46 ) или (3.47) Формулы (3.46), (3.47) фОРМУЛЪt nрямоуzолънu'Ков 'Числен HOZO uнтеzрировани-я. Рассмотрим поrрешность Ri формулы прямоуrольников (3.46) на одном шаrе [Xi l, Xi] численноrо интеrрирования. Для этоrо предположим, что первообразная F (х) для подын теrральной функции f (х ) (она существует, поскольку f (х ) непрерывна на отрезке Х Е [а, Ь]) непрерывно дифференцируема. Тоrда, разлаrая F(Xi) в окрестности узла Xi l в ряд Тейлора до второй производной включительно и используя равенство F'(x) == f(x) == у(х), получим Xi R i == J f(x)dx Yi lh == [F(Xi) (Xi l)] Yi lh == Xi l [ ' ( ) " ( ) h ] := F Xi l h + F Yi lh == 2 h 2 h 2 == [Yi lh + Y'( )2] Yi lh == Y'( )2' Е (Xi l, Xi).
136 Теори.п nрибли:JfCе'Н,ий [rл. 111 На всем отрезке [а, Ь] эту поrрешность необходимо просум мировать n раз (Ь а == nh), получим , (Ь a)h Rnp==Rin==Y( ) 2 ' E(a,b). ( 3.48 ) Поскольку местоположение точки на интервале Х Е [а, Ь] неизвестно, то на основе поrрешности (3.48) можно выписать верхнюю оценку абсолютной поrрешности метода прямоуrоль... ников и при заданной точности метода выписать неравенства (Ь a)h IRпрl M 1 , 2 M 1 == шах If'(x)l. хЕ[а,Ь] Последнее неравенство можно использовать для верхней оценки шаrа h численноrо интеrрирования по методу прямоуrольников' h 2€ '" (Ь а) М 1 ' М 1 == шах If'(x)l. хЕ[ а,Ь] На всем отрезке х Е [а, Ь] формула прямоуrольников (3.46) имеет вид Ь n J f(x)dx L Yi lhi. i l а (3.49) Ее поrрешность определяется выражением (3.48). Таким образом, определяющими формулами метода прямо-- уrольников являются формула (3.49) численноrо интеrрирова... ния и формула (3.48) поrрешности. Из выражения для R i и (з.48) видно, что на каждом отрезке [Xi l, xi] формула прямоуrольников имеет поrрешность, про пор... циональную h 2 , а на всем отрезке х Е [а, Ь] шаrу численноrо интеrрирования h. В соответствии с этим метод nря.мОУ20лъ'Ни 'Ков является методом nервО20 nоряд'Ка то'Ч'Ности (2лав'Нъtй 'Чле'Н nО2реш'Ности nроnорцио'Нале'Н ша2У в первой стеnе'Ни) 3.5.2. Численное интеrрирование с помощыо фор... мулы трапеций. Рассмотрим интеrрал (3.44) на отрезке х Е Е [Xi l, Xi] и будем на этом отрезке вычислять ero приближенно, заменяя подынтеrральную функцию интерполяционным MHoro
935) Числе'Н,'Н,ое и'Н,те2рирова'Н,ие фу'Н,'К:ций 137 членом Лаrранжа первой степени, получим Xi xi J f(x)dx == J Ll(X)dx + Ri, Xi l Xi l (3.50) rде Ri поrрешность, которая подлежит определению (на рис. 3.11 заштрихована), а Ll интерполяционный мноrочлен у f"(x)<O О Xi l h х. 1 h Xi+l Х Рис. 3.11. К выводу формулы трапеций Лаrранжа первой степени, проведенный через два узла интерпо ляции Xi l И Xi: Х Х. Ll(X) == Yi l t xi l xi Х Xi l + Yi . xi Xi l Пусть Xi Xi l == h == const, rде i == 1, n . Обозначим Х xi l == t, h тоrда х xi == (х Xi l) (Xi Xi l) == t 1 d hd h h ' х == t, и мноrочлен Лаrранжа примет вид Ll(X) == Ll(Xi l + ht) == Yi l(t 1) + Yi t . При Х == Xi верхний предел t == 1, при Х == Xi l нижний предел t == О.
138 Теория nри6ли:JfCе'Н,ий [rл 111 Теперь интеrрал в (з.50) от мноrочлена L 1 (х) можно пред ставить в виде Xi l Xi Xi 1 f f(x)dx f Ll(X)dx == h f[ Yi l(t 1) + Yit]dt == X i l[ Yi l( t: t: + У /: ]: == (Yi l + Yi). (3.51 ) Выражение (3.51) называют формулой трапеций численноrо интеrрирования на отрезке Х Е [Xi l, Xi]. Для Bcero отрезка [а, Ь] необходимо сложить выраже ние (3.51) n раз: Ь ( n l ) J f (х) dx Уо + Уп + 2 Yi · а (3.52) ВЪtраж;е'Ние (3.52) 'Назъtвают формулой трапеций 'Чис.ле'Н'НО20 u'Нте2рирова'Ни,я для все20 отрез 'Ка [а, Ь]. Перейдем к оценке поrрешности Ri формулы трапеций на отрезке [Xi l, Xi]. Для этоrо будем предполаrать, что подынте rральная функция принадлежит классу с 2 (дважды непрерывно дифференцируема), тоrда для первообразной F (х) существует производная 3 ro порядка. В этом случае поrрешность на отрезке [Xi l, Xi] определяется следующим образом: Xi R i == J f(x)dx (Yi l + Yi) == Xi l h == [F(Xi) F(Xi l)] (Yi l + Yi). (3.53) 2 Разложим F(Xi) в окрестности точки Xi l в ряд Тейлора до 3 й производной включительно, получим (F(Xi) == F(Xi l + h)) F(Xi) F(Xi l) == F(Xi l) + F(Xi l) + ' ( ) " ( ) h2 "' ( ) hЗ с ( ) + F xi l h + F Xi l 2 + F 6' Е Xi l, xi ; F'(Xi l) == f(Xi l) == Yi l, F"(Xi l) == f'(Xi l) == Y l' F'''( ) == f"( ) == Y"( ). .........
935] Числе'Н,'Н,ое и'Н,те2рирова'Н,ие фу'Н,'К:ций 139 Тоrда Xi J f(x)dx == Yi lh + Y l 2 + у"(О 3 , Е (Xi l, Xi). Xi l (3 54) То же самое сделаем и со вторым слаrаемым в левой части равенства (з.53), т. е. разложим Yi в окрестности точки Xi l в ряд Тейлора до 2 ой производной включительно, получим h ( ) h [ , " ( ) h2 ] 2" Yi l + Yi == 2" Yi l + Yi l + Yi l h + У 2 == , h 2 " ( ) hЗ ( ) ( ) == Yi lh + Yi 12 + У 4' Е Xi l, Xi. 3.55 В соответствии с (3.53) вычтем (3.55) из (з.54), получим поrрешность формулы трапеций на одном шаrе h: Ri == y"( )h3 ( ) == Y"( ), (3.56) rде Е (Xi l, Xi). Из рис. 3.11 видно, что если f"(x) < О, то R i > О, что под тверждается выражением (3.56); если же f"(x) > О, то Ri < О. На всем отрезке [а, Ь] поrрешность (з.56) необходимо увели чить в n раз: R R . nh З " ( С ) (nh)h 2 " ( С ) Tp nt У У 12 12 == ь а h2 " ( С ) 12 У , Е (а, Ь). (з.57) Таким образом, метод трапеций метод втОрО20 nоряд'Ка то'Чности относителъно ша2а h (2лавнъtи 'Член nО2реш'Ности nроnорционале'Н ша2У в 'Квадрате). Поскольку положение точки на интервале (а, Ь) неизвестно, то, задавая точность € численноrо интеrрирования, можно за писать следующие неравенства, используемые для определения шаrа h численноrо интеrрирования: IRTpl шах If"(x)1 Ь;2 а h 2 е, хЕ[а,Ь]
140 Теория nрибли:JfCе'Н,ий [rл 111 откуда h 12 . € (Ь а)М2 ' М2 == тах If"(x)l. хЕ[а,Ь] (3.58) Итак, определяющими формулами метода трапеций являют ся выражения (3.52), (3.57), (3.58). Численное интеrрирование по методу трапеций в случае за данной точности е осуществляется следующим образом: 1) по формуле (з.58) определяется шаr численноrо интеrри рования h; 2) с помощью этоrо шаrа составляется сеточная функция Yi == == f(Xi), i == О, n , для подынтеrральной функции f(x) интеrра ла (3.44); 3) вычисляется приближенное значение интеrрала по фор муле (з.52), шаr h в которой rарантирует заданную точность е. Если точность е не задана, то выбирая шаr h численноrо инте rрирования, можно по формуле (3.57) оценить поrрешность R Tp формулы трапеций. 3.5.3. Формула Симпсона численноrо интеrриро... вания. Разобьем отрезок [а, Ь] на m пар отрезков h == Xi Xi l == const, i == 1, n, и через каждые три узла проведем интерполяционный мноrочлен L2(X) (рис. 3.12). rL.- ':.!2т.. у f(x) о Xi l h Х. 1 h Xi+l Х Рис. 3.12. К методу Симпсона численноrо интеrрирования
935) Числе'Н,'Н,ое и'Н,те2рирова'Н,ие фу'Н,'К:ций 141 Тоrда Xi+l X +l J f(x)dx == J L 2 (x)dx + Ri, Xi l Xi l rде L ( ) (х Xi)(X Xi+l) 2 Х == Yi l + (Xi l Xi)(Xi l Xi+l) (х Xi l)(X Xi+l) (х Xi l)(X Xi) +Yi ( )( ) +Yi+l ( )( ) . xi Xi l xi Xi+l Xi+l xi l Xi+l xi Сделаем замену Х xi l t d hd , Х == t, h тоrда Х Xi == (х Xi l) (Xi Xi l) == t 1; h h Х Xi+l == (х Xi l) (Xi+l Xi l) == t 2. h h Слаrаемые в L2 ( х) примут вид . (х Xi)(X Xi+l) == ( t l )( t 2 ) Yi l У", 1 h . 2h 2 ' . (х Xi l)(X Xi+l) == t ( t 2 ) . У", h.h У"" . (х Xi l)(X Xi) ! ( t 1 ) . Y",+l 2h. h 2 У",+l. При Х == Xi l: t == О ; при Х == Xi+l: t == 2. Тоrда Xi+l 2 J L2(X)dx == h J [ Yi;l (t l)(t 2) Yit(t 2) + Xi l О Yi+l t ] h ( + 2 (t 1) dt == 3 Yi l + 4Yi + Yi+1), откуда Xi+l Xi+l J f(x)dx;:::: J L 2 (x)dx == (Yi l + 4Yi + Yi+1). (з.59) Xi l Xi l ......
142 Теория nрибли:JfCе'Н,ий [rл. 111 C\J {' Выражение (3.59) называют формулой Симпсона численноrо ин теrрирования на паре шаrов от Xi l до Xi+l. На всем отрезке (а, Ь] выражение (з.59) необходимо сложить m раз, поскольку имеется m пар отрезков длиной h, полу чим формулу Си.мnсо'На 'Числе'Н'НО20 и'Нте2рирова'Ния оnределен НО20 инте2рала (3.44): ь ( m т 1 ) \.. f f(x)dx Уо + Уп + 4 f1 Y2i 1 + 2 f1 Y2i . а (3.60) Поrрешность формулы Симпсона на одной паре шаrов запи сывается следующим образом: Xi+l R i == J f(x )dx (Yi l + 4Yi + Yi+1)oo Xi l (3.61 ) Будем вычислять поrрешность в предположении, что f(x) Е Е с 4 , а F(x) Е 05, rде F'(x) == f(x). Перепишем поrрешность (з.61) в виде Xi+ h R i == J f(x)dx (Yi l + 4Yi + Yi+1). xi h (з.62) Тоrда на основе формулы Ньютона Лейбница можно записать Xi+ h J f(x)dx == F(Xi + h) F(Xi h)oo xi h (3.63) Разложим значения преобразованных F(Xi + h), F(Xi h) в ряды Тейлора в окрестности точки Xi ДО пятой производной включительно: ) ( ) ' ) " ( ) h 2 ", ( ) h 3 F(Xi + h == F Xi + F (Xi h + F Xi"2 + F Xi (3 + /V ) h4 V ) h5 + F (Xi 24 + F ( 1 120 ' 1 Е (Xi, Xi+l); F(Xi h) == F(Xi) F'(Xi)h + F"(Xi) 2 F"'(Xi) 3 +
9 3.5 ] Числе'Н,'Н,ое и'Н,те2рирова'Н,ие фу'Н,'Х;ций 143 F/ V ( . ) h4 FV ( C ) h5 + Xt 24 2 120 ' Тоrда, в соответствии с (з.63), получим 2E(Xi 1,Xi), Xi+ h J f(x)dx == 2F'(Xi)h + 2F"'(Xi) h 3 + [F v (6) + pV (6)] h 5 . 6 120 xi h Для непрерывных на отрезке [Xi l, Xi+l] функций найдется Ta кое Е ( 1, 2), что F V ( 1) + F V ( 2) == 2F v ( ), т. е. Xi+ h J 2hЗ h 5 f(x)dx == 2hYi + y ' + y/v ( ), 6 60 xi h Е (Xi l, Xi+l) . ( 3.64 ) Аналоrично, разложим Yi l и Yi+l в окрестности точки Xi в ряд Тейлора до производных 4 ro порядка включительно, получим Yi l == Y(Xi h) == Y(Xi) y'(xi)h + Y"(Xi) h 2 Y"'(Xi) h 3 + 2 6 /V h 4 +у ( 3) 24 ' зЕ(Хi 1,Хi), Yi+1 == Y(Xi + h) == Y(Xi) + y'(xi)h + Y"(Xi) 2 + Y"'(Xi) 3 + /V h 4 + у ( 4) 24 ' 4 Е (Xi, Xi+l); h ) h "2 h 4 [ /V ( /V J) з(Уi l + 4Yi + Yi+1 == 3 ,6 Yi + Yi h + 24 У 6) + У ( 4) , или h з(Уi l + 4Yi + Yi+l) == h З " h 5 /V ( ) ( ) ( ) == 2Yi h + з Уi + 36 У , Е Xi l, Xi+l. 3.65 В соответствии с (з.62), (з.64) и (з.65) получим поrрешность формулы Симпсона на двойном шаrе, которая пропорциональна 4 ой производной подынтеrральной функции и пятой степени шаrа h: IIL...
144 Теория nрибли:JfCе'Н,ий [rл. 111 Xi+l Ri == J f(x)dx (Yi l + 4Yi + Yi+1) == Xi l h 5 /V У ( С ), с Е ( X'; l , Х'; +l) . == 90 ., " Для Bcero отрезка [а, Ь] эту поrрешность необходимо умножить на m пар отрезков: Re == mR i == mh 5 flV (О == 2mh 5 flV ( ) == 90 180 == n oh4 flV ( ) == (Ь 8 h4 flV ( ), Е (а, Ь), (3.66) т. е. в формуле Симnсо'На 'На всем отрез'Ке [а, Ь] nО2реш'Ностъ nроnорцио'Налъ'На 'Четвертой стеnе'Ни ша2а, и, следователъ'Но, метод Симnсо'На является методом 'ЧетвертО20 nоряд'Ка то'Ч 'Ности (т. е. 2лав'Нъtй 'Чле'Н nО2реш'Ности nроnорцио'Нале'Н 'Четвер той стеnе'Ни ша2а h). Поскольку положение точки на отрезке [а, Ь] неизвестно, то в соответствии с (3.66) можно записать верхнюю оценку поrреш ности и при заданной точности е получить (Ь a)h 4 IRel 180 М4 с, М4 == тах If/ V (х)1 ' хЕ[а,Ь] откуда 180е (Ь а)М4 ' М4 == тах If/ V (x)l. хЕ[а,Ь] (з.67) Таким образом, определяющими формулами метода Симп сона являются выражения (3.60), (3.66), (з.67), в соответствии с которыми по заданной точности е из (з.67) находится шаr h численноrо интеrрирования, с ero помощью составляется сеточ ная функция Yi == f (Xi), i == О, n , n == 2т, а затем приближен но вычисляется интеrрал по формуле (з.60). Если точность е неизвестна, то, задаваясь шаrом h, можно по формуле (3.66) вычислить поrрешность численноrо интеrрирования. 3.5.4. Процедура Рупrе оценки поrрешности и уточ-- нения формул числепноrо интеrрирования. Процедура PYHre позволяет оценить поrрешность и повысить на единицу порядок метода путем MHoroKpaTHoro (в простейшем случае ДBY KpaTHoro) просчета с различными шаrами.
935] Числе'Н,'Н,ое иuте2рирова'Н,ие фу'Н,'К:ций 145 Пусть используется какой либо метод численноrо интеrриро вания с шаrами h и h/2. И пусть порядок выбранноrо метода равен р, тоrда 1 == Ih + 'ljJh P + O(h P + 1 ), (з.68) 1 == Ih/2 + 'l/; ( )P + O(h p +1), (з.69) rде 1 точное значение интеrрала; 1 h, 1 h/2 вычисленные значения интеrрала с шаrом h и h /2 соответственно; вторые слаrаемые справа rлавные члены поrрешности метода числен Horo интеrрирования порядка р. Для их вычисления вычтем из выражения (з.69) выражение (3.68), получим (Ih/2 I h ) + 'ф ( )P [1 2 Р ] + о (h p +1) == О, 'ф ( )P Ih/2 Ih + о (h P +1) . 2 Р 1 (з.70) Выражение (3.70) позволяет провести апостериорную oцeH ку поrрешности вычисленноrо значения определенноrо интеr рала. Подставим (з.70) в (3.69), получим формулу численноrо ин теrрирования уже порядка р+ 1: 11 1 == 1 + Ih/2 Ih + о ( hP+l ) . h/2 2 Р 1 (з.71) Таким образом, формула (3.71) простейшая процедура PYHre уточнения на один порядок формулы численноrо интеrри рования. Замечание. Если для подынтеrральной функции У == f (х ) построена сеточная функция Yi == f(Xi) С переменным ша rOM h i , то поrрешность численноrо интеrрирования определя ется как интеrрал от поrрешности интерполяционноrо MHoro члена. Пример 3.8. Методом трапеций с точностью € == 10 2 И Симпсона с точностью €l == 10 4 вычислить определенный интеrрал (вычисляемый точно): .... .............
146 Теория nрибли:JfCе'Н,ий [rл. 111 J l dx 1 == ln 11 + xl == lп2 == 0,69315. l+х О О Реш е н и е. 1) Метод трапеции. Исходя из заданной точ ности с == 10 2 вычислим шаr численноrо интеrрирования, для чеrо используется формула (3.58): h 12Е (b a)M2' 2 М2== шах If"(x)l== шах ==2; хЕ[О; 1] хЕ[О; 1] (1 + Х)3 h 12 . О, О 1 == v6 . о 1 == О 2449. (1 О) . 2 " Необходимо выбрать такой шаr, который удовлетворяет HepaBeH СТВУ h 0,2449, и чтобы на отрезке интеrрирования х Е [о; 1] он укладывался целое число раз. Принимаем шаr h == 0,2. Он удовлетворяет обоим этим требованиям. Для подынтеrральной функции f (х) == (1 + х) 1 С незави симой переменной Xi, изменяющейся в соответствии с paBeH ством xi == ХО + ih == О + i . 0,2, i == о, 5 , составляем сеточную функцию с точностью до BToporo знака после запятой: О 1 2 3 4 5 Xi О 0,2 0,4 0,6 0,8 1,0 Yi 1,0 0,83 0,71 0,63 0,56 0,5 Используется формула трапеций (3.52) численноrо интеrри рования (n == 5): J l d h ( n l ) О 1: х "2 УО + Уп + 2 Yi 02 == т [1,0 + 0,5 + 2 (0,83 + 0,71 + 0,63 + 0,56)] == 0,696
935] Числе'Н,'Н,ое и'Н,те2рирова'Н,ие фу'Н,'К:ций 147 Сравнивая это значение с точным, видим, что абсо лютная поrрешность не превышает заданной точности с: 10,69315 0,6961 < 0,01. Таким образом, за приближенное значение определенноrо интеrрала по методу трапеций с точностью с == 0,01 принимается значение 1 J dx 0,696. l+х О 2) Метод Симnсона. Исходя из заданной точности с} == 10 4 вычисляется шаr численноrо интеrрирования для метода Симп сон а по формуле (3.67): h 4 180е , М4 == шах If IV (x)1 == шах 24 24. (Ь а) М4 хЕ[О; 1] хЕ[О; 1] (1 + х)5 , 180 . 1O 4 == 1O 1 4175 == о 165. (1 О) .24 V I,И , I 111 Необходимо выбрать такой шаr, чтобы он удовлетворял нера... венству h 0,165, и чтобы на отрезке интеrрирования х Е Е [о; 1] он укладывался 'Четное 'Число раз. Принимаем h == 0,1. С этим шаrом для подынтеrральной функции f (х) == (1 + х) 1 формируется сеточная функция снезависимой перем енно й Xi, изменяющейся по закону Xi == ХО + ih == 0+ i .0,1, i == О, 10, n == == 10, m == 5, причем значения сеточной функции вычисляются с точностью до четвертоrо знака после запятой: 't О 1 2 3 4 5 6 7 8 9 10 х. О 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1,0 'l Yi 1,0 0,9091 0,8333 0,7692 0,7143 0,6667 0,625 0,5882 0,5556. 0,5263 0,5 Используется формула Симпсона (3.60) численноrо интеrри рования (n == 10, m == 5) 1 ( m m l ) J 1 х == . УО + Уп + 4 ?= Y2i 1 + 2 ?= Y2i == 0 1 . [1,0+ О ==1 z==l iIIIIO.. .............
148 Теория nрибли:JfCе'Н,ий [rл 111 +0,5 + 4 (Y1 + Уз + У5 + У7 + yg) + 2 (У2 + У4 + У6 + УВ)] == о 1 == [1,5 + 4 (0,9091 + 0,7692 + 0,6667 + 0,5882 + 0,5263) + 3 +2 (0,8333 + 0,7143 + 0,625 + 0,5556)] == == 0,1 (1,5 + 4. 3,4595 + 2 . 2,7281) == 0,1 20,7942 == 0,69314. 3 3 Сравнение этоrо значения с точным значением интеrрала по казывает, что абсолютная поrрешность не превышает заданной точности с 1 : 10,69315 0,693141 < 0,0001. Таким образом, за приближенное значение определенноrо интеrрала по методу Симпсона с точностью C1 == 0,0001 прини мается значение 1 J dx 0,6931. l+х о З а м е ч а н и е. Ясно, что для большинства интеrралов от непрерывных функций первообразная не вычисляется (однако она существует) и вычисленное приближенное значение сравни вать не с чем, однако шаr численноrо интеrрирования, вычис ленный по заданной точности, rарантирует эту точность вычис ления. УПР АЖНЕНИЯ. 3.11. Методом трапеций с точностью с == 10 2 И Симпсона с точностью с == 10 4 вычислить определенные интеrралы: 0,5 1 О а) J dx б) J cos (х + 1)2 dXj в) J 2 х2 dXj . , cosx О О 1 1 -rr/2 -rr/2 r) J е х2 dXj д) J sin x 2 dXj е) J cos x 2 dXj о о о
935) Числе'Н,'Н,ое и'Н,те2рирова'Н,ие фу'Н,'К:ций 149 0,5 1 1 ж) J dx з) J tg 2 Х dXj и) J esinxdx; сов х 2 , О О О 1 1 1 к) J ecos X dx; л) J ctg 2 Х dx; м) f tg x 2 dx. О 0,1 О Для одноrо из методов применить процедуру PYHre уточне ния формулы численноrо интеrрирования. 3.12. Сравнить по трудоемкости методы трапеций и Симпсона для одной и той же точности с (трудоемкость определяется по количеству вычислений подынтеrральной. функции). .... ............
r л А В А IV числЕнныIE мЕтодыI РЕШЕНИЯ ЗАДАЧ ДЛЯ оБыIновЕнньIхx диффЕрЕнциАльныIx УРАВНЕНИЙ Проrрамма Постановка задач Коши для обыкновенных дифференциальных уравнений (ОДУ) и систем ОДУ. Методы Эйлера, Эйлера Коши, PYHre KYTTa численноrо решения задач Коши дЛЯ ОДУ и систем ОДУ. Выбор шаrа численноrо интеrрирования. Порядок метода, процедура PYHre повышения порядка метода. Постановка краевых задач дЛЯ ОДУ. Конечно разностный метод с использованием метода проrон ки. Аппроксимация краевых условий, содержащих производные, со вторым порядком. Метод пристрелки с использованием различных методов решения нелинейных уравнений. В этой rлаве рассматриваются некоторые наиболее употре бительные методы численноrо решения задач Коши для обык J новенных дифференциальных уравнений (ОДУ) и систем ОДУ, а также некоторые численные методы решения краевых задач для ОДУ. э 4.1. Основные определения и постановка задач Коши для обыкновенных дифференциальных u уравнении Определение 1. Уравнение, связывающее одну независи мую переменную х, искомую функцию у ( х) и ее производные до n ro порядка, называется оБЪt'К'Нове'Н'НЪtМ диффере'НциаЛЪНЪtМ урав'Нением (ОДУ): F ( х, у, у', . .. , у ( n ») == О. (4.1 ) Определение 2. Пор.яд'Ком ОДУ называется порядок CTap шей производной искомой функции у(х). Уравнение (4.1) ОДУ n ro порядка. .......
94.1) Задшча Коши для об'Ьt'К:'Нове'Н'Н'ых диффере'НциаЛ'Ь'Н'ЬtХ урав'Не'Ний 151 Определение 3. ОДУ называется ли'неu'ныl,, если функ ция F линейна относительно искомой функции и ее производ ных. Определение 4. Если искомая функция или ее производные входят в ОДУ не в l й степени или под знаком трансцендентной функции, то уравнение называется 'нели'неu'ныl.. Определение 5. Общим и'Нте2ралом ОДУ называется функ ция, связывающая независимую переменную х, искомую функ цию у(х) и n постоянных интеrрирования: Ф (У (х ), Х, C1, С2, . . . , Сп) == о, т. е. У (х) входит в функцию Ф неявным образом. Определение 6. Общим реше'Нием ОДУ называется функ ция У ( х) == <р ( х, С 1 , С2, . . . , Сп) ) независимой переменной х и n постоянных интеrрирования, т. е. у(х) является явной функцией. Для определения постоянных интеrрирования, т. е. выделения из бесчисленноrо множества интеrральных кривых единственной, проходящей через заданную точку М(хо, Уо, Y1, . .. , Yn 1) В пространстве Rn+l, необходимо задать n дополнительных условий в виде значений производных искомой функции В точке Хо до порядка n 1 включительно. Эти дополнительные условия называют 'Началь'Ными условиями: у(хо) == Уо, У' (хо) == Y1, (4.2) y(n l)(XO) == Yn l' Задача нахождения решения уравнения (4.1), удовлетворяю щеrо n начальным условиям (4.2), называется задачей Коши дЛЯ ОДУ (4.1). Если старшая производная искомой функции, входящая в ОДУ, выражается явно через производные меньших порядков (такие ОДУ называются 'Ка'Но'Ничес'Кими), то задача Коши будет иметь вид (у(х) искомая функция)
152 Реше'Ние зада'Ч для оБЪt'К:'Нове'Н'НЪLХ диффере'НциаЛ'Ь'НЪtХ урав'Не'Ний [rл. IV У (п) == f ( Х, У, у', . .. , У (п 1») , ..,. У( ХО) == Уо, у'(ХО) == Y1, (4.з) y(n l)(XO) == Yn l. Определение 7. Система ОДУ назъtваетс.я нормалъной, если каждое уравнение, входящее в систему, слева содержит про изводную первоrо порядка от соответствующей искомой функ ции, а правая часть зависит от независимой переменной Х и n искомых функций Y1(X), У2(Х), ..., Уп(Х): Y (х) == f1 (Х, Y1, У2, . . . , Уп), y (x) == f2(X,Y1, У2,... , Уп), Y (х) == f n (Х, Y1 , У2, . .. , Уп). При формулировке задачи Коши для этой системъt ОДУ к ней необходимо присовокупить n начальных условий (по KO личеству неизвестных), задаваемых в одной и той же точке ХО: Y1(XO) == Y10, У2( ХО) == У20, Уп(ХО) == Упо' Пор.яд'Ком нормалъ'Ной систеМъt называют число уравнений в этой системе. Задачу Коши (4.3) дЛЯ ОДУ n ro порядка всеrда можно привести к задаче Коши для нормальной системы ОДУ Toro же порядка. Для этоrо сделаем обозначения:
9 4 1] Зада'Ча Коши для оБЪL'К:'Нове'Н'Н'ы,х диффере'нциал'ь'ны,x урав'Нений 153 ,. у' ( х) == zl ( Х ) , у" ( х) == Z ( х) == z2 ( Х ) , у'" (х) == z? (х) == Z (х) == z3 ( Х ) , y(n l) (х) == Z 2(x) == Zn l(X). в соответствии с этими обозначениями дифференциальное уравнение в задаче (4.3) преобразуется в уравнение у(n) (х) == Z l(X) == f(x, у, Zl, Z2,... , Zn l)' Собирая здесь подчеркнутые равенства и приписывая к ним начальные условия из (4.3), получим следующую задачу Коши для нормалъной системЪt: у'(х) == Zl(X), Z (х) == Z2 (х), Z (х) == Z3 (х), Z 2(X) == Zn l(X), Z l (х) == f(x, у, Zl, Z2, . .. , Zn l), у(хо) == уо, Zl(XO) == Y1, Zn l(XO) == Yn l. в этой задаче Коши искомыми являются n функций: у ( х ), Zl (х ), Z2 (х ), . . . , Zn 1 (х ). в соответствии с этим ниже рассматриваются численные Me тоды решения задач Коши дЛЯ ОДУ l ro порядка и задач Коши для нормальных систем ОДУ.
154 Решенuе задач для об'ы новенн'ых дuif4Jеренцuал'Ьн'ых уравненuй [rл IV э 4.2. Метод Эйлера численноrо решения задач .J Коши дЛЯ ОДУ и систем ОДУ Пусть дана задача Коши дЛЯ ОДУ l ro порядка: { у' == f ( Х, у), у( хо) == Уо- (4.4) (4.5) Заметим, что правая часть ОДУ (4.4) f(x, у) равна произ водной у' от искомой функции, и, следовательно, dy == у' dx == == f(x, y)dy. Для конечно разностноrо приращения Ду функции на шаrе Дх в точке xi имеет место равенство ДУi == f(Xi, Уi)ДХ. у УНl ./ ./ ./ ./ arctg./i ./ ./ fJ.Yi ./ ./ о Х. 1 h Xi+l х Рис. 4.1. rеометрический смысл метода Эйлера Интеrрируя уравнение (4.4) на отрезке h == Xi+l Xi, полу чим Xi+l Yi+1 == Yi + J f(x, y(x))dx. Xi к интеrралу в правой части этоrо выражения применим фор мулу прямоуrольников: Yi+l == Yi + hf(Xi, Yi) + O(h 2 ), уо == у(хо), i == 0,1,2, . - - (4.6) .......
9 4.2 ] Метод Эйлера числеННО20 решения задач Коши для ОДУ 155 Формула (4.6) аЛ20рuт.м .метода Эйлера 'Чuс.ле'Н/НО20 иHтe J 2рuрованu.я зада'Чu Кошu (4.4), (4.5). На каждом шаrе численноrо интеrрирования метод Эйлера имеет второй порядок поrреш ности. На всем интервале численноrо интеrрирования задачи Коши метод Эйлера, как и метод прямоуrольников, имеет поrрешность, пропорциональную шаrу в первой степени и, следовательно, яв ляется .методо.м nервО20 nор.яд-к;а то'Чностu. rеометрический смысл метода Эйлера: если известно Xi, Yi, то можно найти правую часть f (Xi, Yi) ОДУ (4.4), т. е. произ водную Y от искомой функции в точке Xi (TaHreHc уrла наклона касательной к интеrральной кривой, хотя последняя неизвестна). Продолжая касательную до пересечения с линией Xi+l == Xi + + h, получим Yi+l (рис. 4.1, на котором введено обозначение fi == == f(Xi, Yi)). 4.2.1. Метод Эйлера для нормальных систем ОДУ. Применительно к нормальным системам ОДУ рассмотрим метод Эйлера на примере задачи Коши для системы BToporo порядка: Y == fl (Х, Уl, У2), Y == f2(X, Уl, У2), Уl(ХО) == УI0, У2(ХО) == У20. (4.7) (4.8) (4.9) ( 4.10) Выбирая шаr h численноrо интеrрирования h == Xi+l Xi, запишем алrоритм (4.6) для каждоrо уравнения системы ОДУ ( 4. 7), (4.8) (i == О, 1, 2, . . . ): { Yli+1 == Yli + hfl(Xi, Yli, Y2i) + O(h:),ylO == Yl(XO)j Y2i+l == Y2i + hf2(Xi, Yli, Y2i) + O(h ),У20 == У2(ХО). (4.11) ( 4.12) Выражения (4.11), (4.12) описывают алrоритм метода Эйлера численноrо решения задачи Коши для нормальной системы ОДУ (4. 7) ( 4.10). Если задана задача Коши дЛЯ ОДУ n ro порядка, то она сводится к задаче Коши для нормальных систем. Рассмотрим это на примере задачи Коши для n == 2. ...
156 Решение зада'Ч для обы новенн'bLХ диif4JеренциаЛ'ЬН'ЬLХ уравнении [rл. IV У" == f (Х, У, у'), У' == z, ( 4.13) ( 4.14) ( 4.15) ( 4.16) К задаче (4.13) (4.16) можно применить алrоритм (4.11), (4.12), если обозначить fl(X, У, z) = z, f2(X, У, z) f(x, у, z), причем неизвестными функциями в этой системе являются функции z(x), у(х). z' == f ( х, У, z), у(хо) == Уо, у'(хо) == Уl, н у(хо) == уо, z(xo) == Уl. э 4.3. Метод Эйлера Коши (Эйлера с пересчетом) Пусть дана задача Коши (4.4), (4.5) дЛЯ ОДУ l ro порядка (4.4). Интеrрируя (4.4) на отрезке h == Xi+l Xi, i == О, 1, 2, . . . , получим выражение Xi+l Yi+1 == Yi + J I(x, y(x))dx. Xi Вычислим интеrрал в этом выражении с помощью метода трапеций численноrо интеrрирования с поrрешностью на каж дом шаrе, пропорциональной h 3 : Yi+1 == Yi + [1 (Xi, Yi) + 1 (Xi+l, Yi+l)] + О (h 3 ) . ( 4.17) Если каким либо образом вычислено приближение для Yi+l, то, приняв ero за нулевую итерацию и подставив в правую часть выражения (4.17), получим Yi+l на l й итерации. На этом oc нован метод Эйлера Коши, который выrлядит следующим об разом. Вычислим вначале Yi+l по обычному алrоритму Эйле ра и обозначим это значение через Yi +l. Затем это значение подставим в правую часть выражения (4.17), получим для i == == 0,1,2,..., (Уо == у(хо), Xi+l == Xi + h): { Yi+l == Yi + hf(Xi, Yi), (4.18) Yi+1 == Yi + [J(Xi, Yi) + 1 (Xi+l, Yi+l)] + о (h 3 ) . (4.19) Выражения (4.18), (4.19) описывают алrоритм метода Эйле ра Коши, называемый еще методом Эйлера с пересчетом. Он яв
9 4.3 ] Метод Эйлера Коши (Эйлера с nерес'Чето.м) 157 , , ляется частным случаем большоrо класса методов, который Ha зывается методами «предиктор корректор». Например (4.18) предиктор, (4.19) корректор. На рис. 4.2 представлена rеометрическая интерпретация это ro метода. Здесь введены обозначения fi == f(Xi, Yi), fi+l == == 1 (Xi+l, Yi +1), Icp == 1/2 (Ii + li +1)' Параллельные прямые указаны двусторонними стрелками. arctg.!i Yi+l ./ ./ ./ ./ ./ ./ ./ ,...., ,...., ,.., arctg.!i+l у ,...., arctgfcp У; о Х. 1 h X i +l Х ) Рис. 4.2. rеометрическая интерпретация метода Эйлера Коши Для известных Xi, Yi находят значение производной f(Xi, Yi) fi в левом узле шаrа и Yi +l по (4.18). Зная Xi+l, Yi+l, ожно определить значение производной в правом узле шаrа: fi+l f(Xi+l, Yi+l), с помощью KOToporo определяется Yi+l по формуле (4.19). Метод Эйлера Коши и.меет 3 й nорядо-к; nО2реш'Ности 'На -к;a дo.м ша2е, а 'На все.м и'Нтервале чис.ле'Н'НО20 и'Нте2рирова'Ни.я nО2реш'Ностъ nроnорцио'Налъ'На -к;вадрату ша2а, и nоэто.му .мe тод Эйлера Коши .явл.яетс.я .методо.м втОрО20 nор.яд-к;а. К (4.19) можно применить обычную итерационную обработку, а именно: ....., полученное значение Yi+l подставить в правую часть вместо Yi+l и получить Yi+l на следующей итерации. 4.3.1. Метод Эйлера Коши для нормальных систем. Рассмотрим метод применительно к задаче Коши для нормаль ных систем ОДУ 2 ro порядка (4.7) (4.10).
158 Решение задач для об'Ьt новеНН'ЬtХ дифференциаЛ'ЬН'ЬtХ уравнений [rл. IV Каждый этап алrоритма (4.18), (4.19) используется сразу для всех неизвестных (в данном случае Уl, У2), при этом УI0 == Уl(ХО), У20 == У2(ХО), Xi+l == Xi + h, i == 0,1,2, . . . : I .. Yl i+l == Yli + hfl(Xi, Yli, Y2i), Y2 i+l == Y2i + h!2(Xi, Yli, Y2i), Yli+1 == Yli + [!I(Xi, Yli, Y2i)+ fl(Xi+l, Yli+l, Y2 i+l)], ( 4.20) ( 4.21) ( 4.22) Y2i+1 == Y2i + [f2(Xi, Yli, Y2i)+ f2(ХЩ, Yl i+l, У2 Щ). (4.23) Выражения (4.20) (4.23) алrоритм .метода Эйлера Кошu решеuu.я задачи Коши (4.7) (4.10) дл.я 'Нормалъ'Ной систе.м'ы (4.7), (4.8) втОрО20 nор.яд-к;а. э 4.4. Метод PYHre KYTTa Метод PYHre KYTTa имеет поrрешность, пропорциональную h 5 на каждом шаrе численноrо интеrрирования и поэтому яв ляется одним из наиболее употребительных методов численноrо решения задач Коши дЛЯ ОДУ и систем ОДУ. Рассмотрим зада чу Коши (4.4), (4.5) дЛЯ ОДУ l ro порядка (4.4). Проинтеrрируем ОДУ (4.4) на шаrе h == Xi+l Xi, i == 0,1,2, . . . : Xi+l Yi+1 == Yi + J f(x, y(x))dx. (4.24) Xi Для вычисления интеrрала в (4.24) используем формулу Симпсона численноrо интеrрирования, имеющую на шаrе h точ ность 5 ro порядка. Для формулы Симпсона необходимо три узла (пара шаrов), а в (4.24) используются только два узла Xi, Xi+l. Возьмем промежуточную точку Xi+l/2 == Xi + h/2 (рис. 4.3), тоrда Xi+l Xi+l/2+h/2 Yi+1 == Yi + J f(x, y(x))dx == Yi + J f(x, у(х)) dx. x i xi+l/2 h/2 (4.25) Теперь для интеrрала в выражении (4.25) можно использо вать формулу Симпсона с шаrом h/2:
944] Метод PYH2e Kyттa 159 J h/2 [ Yi+l == Yi + 3 f(Xi, Yi) + 4f(Xi+l/2, Yi+l/2)+ + f(Xi+l, Yi+l)] + о (h 5 ). (4.26) Выражение (4.26) является основой для построения различ ных методов PYHre KYTTa численноrо решения задач Коши. У; у i+ 1/2 Yi+l h/2 h/2 Х ; == X i +1/2 h /2 X i +1/2 X i +l == X i +1/2 + h /2 Х Рис. 4.3. Разбиение шаrа h в методе Рунrе Кутта Поскольку выражение (4.26) является неявным (значения Yi+l и Yi+l/2 В правой части неизвестны), то для вычисления BToporo и TpeTbero слаrаемых в правой части полаrаем ( Дy ) 4f(Xi+1/2, Yi+1/2) + f(Xi+l, Yi+1) == 2! xi+l/2, Yi + 2 + ( Ду I ) + 2/ xi+l/2' Yi + 2 + f(Xi+l, Yi + ДУi), rде приращение ДY вычисляется по Xi, Yi как ДY == hf(Xi, Yi), т. е. как в методе Эйлера; Дy I вычисляется по значениям Xi+l/2, Yi + Дy /2; ДУi по значениям Xi+l, Yi + ду!I. В соответствии с такими вычислениями получаем метод PYHre KYTTa 4 ro порядка точности, который применяется в сле дующем виде (Уо == у(хо), Xi+l/2 == Xi + h/2, Xi+l == Xi + h, i == == 0,1, 2, . . . ): Yi+l == Yi + ДУi, ( 4.27) ДУi == [kI + 2kl + 2k + kt], (4.28)
160 Решение задач для об'Ьt новеНН'ЬtХ диif4JеренциаЛ'ЬН'ЬtХ уравнений [rл IV kI == hf(Xi, Yi), 2 ( ki ) k i == hf Xi+l/2' Yi + 2 ' 3 ( k; ) k i == hf Xi+l/2' Yi +"2 ' k; == hf (Xi+l, Yi + kr) . (4.32) Таким образом, метод Рунrе Кутта является четырехэтап ным; в нем k}, k:, kr, k; являются частными приращениями искомой функции соответственно в левом узле Xi шаrа (4.29), в узле Xi + h/2 (4.30) и (4.31) и в правом узле Xi + h шаrа (4.32). Их линейная комбинация с коэффициентами 1, 2, 2, 1 усредня ется в соответствии с (4.28). Поскольку метод Симпсона на всем интервале численноrо ин теrрирования является методом четвертоrо порядка, то и метод PYHre KYTTa, использующий метод Симпсона, также является .методом 'ЧетвертО20 nор.яд-к;а то'Ч'Ности. ( 4.29) ( 4.30) (4.31 ) I I I I 1 I Yi+1I2: arctg./i I , I , , I I , I I О х- h/2 X i + 1/2 h/2 Х;+l Х f ,.., arctg./i+l Yi+l , / I / : / : / II I У II , / arctg./i+ 1/2 ;+1/2 : / .,А /' у Рис. 4.4. rеометрическая интерпретация метода Рунr Кутта 4 ro порядка На рис. 4.4. представлена rеометрическая интерпретация Me тода PYHre KYTTa. Здесь приняты следующие обозначения: arctgfi == arctgf(xi,Yi),
9 4.4 ] Метод PYH2e Kyттa 161 arctg f1+1/2 == arctg f(Xi+l/2, Y +1/2)' arctg f1 1/2 == arctg f(Xi+l/2, Y 1/2)' arctg fi+1 == arctg f(Xi+l, Yi +l), 1 [ 1 11 ....., ] arctg fcp == 6 arctg fi + 2 arctg fi+l/2 + 2 arctg fi+l/2 + arctg fi . На рисунке параллельные прямые указаны двусторонними стрелками. 4.4.1. Метод PYHr KYTTa для нормальных систем ОДУ. Метод PYHre KYTTa для нормальных систем рассмотрим на примере задачи Коши для нормальной системы ОДУ BToporo порядка (4.7) (4.10): y == fl (Х , Уl, У2), y == f2 ( Х, Уl, У2) , Уl(ХО) == УI0, У2(ХО) == У20. Будем обозначать частные приращения для искомой функ ции Уl (х) через k}, k;, k , k;, а для искомой функции У2 (х) через [}, [;, [ , [;. Поскольку правые части системы ОДУ fl(X, Уl, У2), f2(X, Уl, У2) зависят от всех искомых функций (в данном случае от Уl И У2), то nрuраще'Нu.я д-л.я Уl ( х) и У2 ( х) uа -к;a дo.м этапе въtчuс-л.яютс.я од'Новре.меuuо. Тоrда метод PYHre Кутта четвертоrо порядка точности для нормальной системы ОДУ BToporo порядка примет вид Y1i+l == Yli + ДУli, Y2i+l == Y2i + ДУ2i, LlYli == 1 (Ч + 2k; + 2k + kt), 6 LlY2i == 1 Щ + 2l; + 2l + lt), 6 ( 4.33) ( 4.34) ( 4.35) ( 4.36) 6 В.Ф. Формалев, д.л. Ревизников
162 Решение зада'Ч для оБЪL новеННЪLХ дифференциаЛ'ЬНЪLХ уравнений [rл. IV kI == hfl(Xi, Yli, Y2i), [} == hf2(Xi, Yli, Y2i), 2 ( k! [ ) k i == hfl Xi+l/2' Yli + ; , Y2i + ' 2 ( k [ ) li == hf2 Xi+l/2' Yli + 2 ' Y2i + ' з ( k [ ) k i == hfl Xi+l/2' Yli + т' Y2i + ' з ( k [ ) li == hf2 Xi+l/2' Yli + т' Y2i + ' kt == hfl(Xi+l, Yli + kr, Y2i + lr), [; == hf2(Xi+l, Y1i + kr, Y2i + lr), ( 4.37) ( 4.38) ( 4.39) ( 4.40) (4.41 ) ( 4.42) ( 4.43) ( 4.44) rде Xi+l/2 == Xi + h/2, xi+l == Xi + h. Алrоритм (4.33) (4.44) метода PYHre KYTTa для нормальных систем ОДУ 2 ro порядка леrко распространяется на нормальные системы 3 ro, 4 ro и т. д. порядков. Например, для нормальной системы 3 ro порядка имеются три неизвестные функции Уl(Х), У2 (х ), Уз (х ), причем для каждой из них вводятся свои частные приращения, а именно: kI, k;, kr, kf для Уl (х); lI, [;, lr, [; для У2(Х); т}, т , т1, т; для УЗ(Х). Тоrда в методе (4.33) (4.44) к каждой паре формул добавляется еще одна для неиз вестной Уз ( Х ) . s 4.5. Выбор шаrа численноrо интеrрирования задач Коши При численном решении задач Коши дЛЯ ОДУ и систем ОДУ шаr численноrо решения можно выбирать апостериорно и апри орно. В обоих случаях первоначальное значение шаrа h задается. При аnостериорном вЪtборе ша2а последний изменяется в процессе счета на основе получаемой информации о поведении решения и на основе заданной точности с. Пусть с заданная точность численноrо решения, и пусть h первоначально выбранный шаr. Тоrда алrоритм дальнейше ro выбора шаrа следующий.
9 4.6 J Про'Цедура РУН2е o'ЦeH и nО2решности 163 1. Выбранным методом на отрезке Х Е [хо, Хl], Хl == Ха + h решается задача Коши с шаrом h с получением значения Y ==h. 2. Тем же методом с шаrом h/2 решается задача Коши с по h/2 h/2 лучением Yx==h/2 И Yx==h. з. Анализируется неравенство IY ==h y; / I Е. (4 45) Если неравенство (4.45) удовлетворяется, то значение шаrа численноrо интеrрирования на следующем шаrе увеличивается вдвое по сравнению с первоначально выбранным шаrом, т. е. становится равным 2h, и алrоритм повторяется начиная с п.l. 4. Если неравенство (4.45) не выполняется, то счет ведется с шаrом h/4 начиная с отрезка Х Е [Ха, Ха + h/4] и после полу чения значения Y: / /2 анализируется неравенство I h/2 h/4 I с Y x ==h/2 Yx==h/2"'" . Если оно удовлетворяется, то дальнейший счет ведется с ша rOM h/2 и т. д. При аnриор'Ном вЪtборе ша2а расчет ведется с первоначаль но выбранным шаrом h с получением функции [Y(Xi)]h' i == == О, 1, 2, . . . , и с шаrом h/2 с получением функции [Y(X2i)]h/2' i == О, 1, 2, . .. Затем анализируется неравенство mrx I [Y(Xi)]h [У( X2i)]h/21 Е. ( 4.46) Если оно выполнено, то решение [Y(Xi)]h/2' == 1,2,3, . . . , принимается за истинное, в противном случае расчет повто ряется с шаrом h/4 и сравниваются по норме (4.46) функ ции [Y(Xi)]h/2 И [Y(X2i)]h/4 И т. д. s 4.6. Процедура PYHre оценки поrрешности и уточнения численноrо решения задач Коши у всех рассмотренных методов численноrо решения задачи Коши порядок поrрешности относительно шаrа h на всем интер вале решения на единицу ниже порядка поrрешности на одном шаrе h. 6*
164 Решение зада'Ч для оБЪt новеННЪtХ дифференциаЛ'ЬН'Ьtх уравнений [rл. IУ Определение. Пор.яд-к;о'м метода назовем показатель р CTe пени h P в rлавном члене поrрешности метода. В методе Эйлера rлавный член поrрешности на шаrе h про порционален h 2 , а на всем интервале пропорционален шаrу h. Поэтому метод Эйлера метод l ro порядка. По той же причине метод Эйлера Коши метод 2 ro порядка, метод Рунrе Кутта метод 4 ro порядка (здесь порядок метода в точности совпадает с порядком соответствующей квадратурной формулы численноrо интеrрирования) . Пусть задача Коши решается методом p ro порядка с шаrом h с получением численных значений Yh и rлавным членом поrреш ности ep(x)h P , пропорциональным h P . Тоrда неизвестное точное решение у(х) можно представить в виде у(х) == Yh + ep(x)h P + о (h P + 1 ) . (4.47) Аналоrичное равенство с шаrом h / 2 представим следующим образом: У(Х) == Yh/2 + ep(x)(h/2)P + о (h P + 1 ) . Определим rp (х) ( ) Р вычитанием (4.47) из (4.48): ( ) ( h ) P == Yh/2 Yh + о ( h P + 1 ) . ер Х 2 2 Р 1 ( 4.48) ( 4.49) Выражение (4.49) дает апостериорную оценку поrрешности численноrо решения. Подставляя (4.49) в (4.48), получим уже метод (р + l) порядка: ( ) == + Yh/2 Yh + о ( hP+1 ) У Х Yh/2 2 Р 1 ' ( 4.50) так как rлавный член поrрешности в алrоритме (4.50) пропорци онален степени h P + 1 . Процедура (4.50) называется процедурой PYHre уточнения численноrо решения задачи Коши. Для ее применения задачу необходимо решать дважды с шаrами h и h/2. Процесс уточнения с применением формулы (4.50) можно применять и дальше, проводя расчеты с шаrами h/4, h/8 и т. Д., пока не выполнится условие шах IYh/2k 1 Yh/2 k I Е, k == 1, 2, ...
9 4.6 ] Про'Цедура РУН2е o'ЦeH и nО2решности 165 Пример 4.1. Методами Эйлера, Эйлера Коши и PYHre Кутта с шаrом h == О, 1 численно проинтеrрировать следующую задачу Коши дЛЯ ОДУ l ro порядка до значения Х == О, 2 вклю чительно (т. е. два шаrа): У' == Х + У, У (О) == 1, h == О, 1. Задача допускает аналитическое решение и для анализа точ ности численных методов; выпишем ero: y(x)==2eX x 1; у (О) 1; у (0,1) == 1,1103442; У (О, 2) == 1,242806. Метод Эйлера. { Yi+l == Yi + h . (Xi + Yi), i == 0,1,2, . .. , Уо == 1, Xi == Хо + ih == О + ih; i == о; Хо == о; Уо == 1 : Уl == Уо + h . (Хо + Уо) == 1 + 0,1 (О + 1) == 1,1; i == 1; Хl == 0,1; Уl == 1,1 : У2 == Уl + h . (Хl + Уl) == 1,1 + 0,1 (О, 1 + 1,1) == 1,22; Поскольку метод Эйлера является методом первоrо порядка точности, то только первая цифра после запятой является Bep ной, а вторая нет. Это подтверждает сравнение Уl с У (0,1) и У2 с У (0,2). Метод Эйлера Коши. Yi+l == Yi + h (Xi + Yi) , Yi+1 == Yi + [(Xi + Yi) + (ХНl + Yi+l)] , Уо == 1; h == 0,1; Х i == Х О + i h, i == О, 1, 2, . . . i == о; Хо == о; Х 1 == 0,1; Уо == 1 :
166 Решение зада'Ч для об'Ьt новеНН'ЬtХ дифференциаЛ'ЬНЪtх уравнений [rл. IV Уl == УО + h . (Хо + Уо) == 1 + 0,1 (О + 1) == 1,1, Уl == УО + [(Хо + УО) + (Хl + Yl)] == о 1 == 1 + [(О + 1) + (0,1 + 1,1)] == 1,11; 2 i == 1; Хl == 0,1; Х2 == 0,2; Уl == 1,11 : У2 == Уl + h (Хl + Уl) == 1,11 + 0,1 (0,1 + 1,11) == 1,231; У2 == Уl + [(Хl + Yl) + (Х2 + У2 )] == о 1 == 1,11 + т [(0,1 + 1,11) + (0,2 + 1,231)] == 1,24205; Поскольку метод Эйлера Коши является методом BToporo порядка точности, то первые две цифры после запятой счита ются верными (сравнить Уl с У (0,1) и У2 С У (0,2)). Метод Py1t2e Kyттa. Yi+l == Yi + ДУi, Д У ; == 1 ( k + 2k? + 2k + k ) 6 , kt == h . f (Xi, Yi) == h (Xi + Yi) , k == h . f (Х H ' Yi + k; ) == h . [( Xi + ) + (Yi + k; ) ] , kr == h . f (Х H ' Yi + k! ) == h. [( Xi + ) + (Yi + k! ) ] , k; == h. f (Xi+l, Yi + kr) == h [(Xi + h) + (Yi + kr)] ; == О. Х О == О. Х 1 == О 05. Х 1 == О 1. Уо == 1 . , , 0+ " , , . 2 Уl == Уо + дуо == 1 + 0,11035 == 1,11035, 1 1 ДУО == (k6 + 2k6 + 2kg + kб ) == .0,6621 == 0,11035, 6 6 k6 == h . (Хо + Уо) == 0,1 (О + 1) == 0,1; ...........
946] Про'Цедура РУН2е o'ЦeH и nО2решности 167 k6 == h . [ ( ХО + ) + (УО + )] == ==0,1 [0,05+ (1+ 0 1 )] ==0,11, k5 == h . [ ( ХО + ) + (УО + 5 )] == == 0,1 [0,05 + (1 + 0,;1 )] == 0,1105, kб == h. [(хо + h) + (Уа + k )] == == 0,1 [0,1 + (1 + 0,1105)] == 0,1211; i == 1; хl == 0,1; х 1 +! == 0,15; Х2 == 0,2; Уl == 1,11035 : 2 У2 == Уl + ДУl == 1,11035 + 0,13247 == 1,24282, 1 1 ДУl == (ki + 2kr + 2kf + ki ) == .0,7948 == 0,13247, 6 6 kf == h . (хl + Уl) == 0,1 (0,1 + 1,11035) 0,12104; ki == h . [ ( Хl + ) + (Уl + } )] == == 0,1 [(0,1 + 0 1 ) + (1,11035 + 0,1 104 )] == 0,132087, ч == h . [ ( Хl + ) + (Уl + )] == == о 1 [( о 1 + 0,1 ) + ( 1 11035 + 0,132087 )] == о 13264 , , 2' 2 " ki == h . [(хl + h) + (Уl + kf)] == == 0,1 [0,2 + (1,11035 + 0,13264)] == 0,1443 Метод PYHre KYTTa является методом четвертоrо порядка точности, поэтому цифры в первых четырех разрядах после запятой верны (сравнить Уl с у(О,l) и У2 с у(0,2)). Пример 4.2. Методами Эйлера, Эйлера Коши и PYHre Кутта с шаrом h == 0,1 численно проинтеrрировать следующую
168 Решение задач для об'Ьt новеНН'ЬtХ дифференциаЛ'ЬН'ЬtХ уравнений [rл. [У задачу Коши для нормальной системы BToporo порядка до зна чения Х == 0,2 включительно (т. е. два шаrа): y == Х + 2Уl + У2, y == 2х + Уl + 2У2, Уl (О) == 1, У2 (О) == 1. Задача допускает аналитическое решение, которое имеет вид ( ) 7 3х 1 х 1 Уl Х == 6 е 2 е + з ' ( ) 7 3х 1 х 2 У2 Х == 6 е + 2 е х 3; У1 (О) == 1; Уl (0,1) == 1,355583; Уl (0,2) == 1,848438; У2 (О) == 1; У2 (0,1) == 1,36075; У2 (0,2) == 1,86984. Метод Эйлера. Yli+l == Yli + h (Xi + 2Yli + Y2i) , Y2i+l == Y2i + h ( 2X i + Yli + 2Y2i) , УI0 == 1, У20 == 1; i == о; ХО == о; УI0 == 1; У20 == 1 : У11 == УI0 + h (хо + 2УI0 + У20) == 1 + 0,1 (О + 2 . 1 + 1) == 1,3; У21==У20 + h ( 2х о + УI0 + 2У20)==1 + 0,1 (2. 0+ 1 + 2.1) == 1,3; i == 1; Хl == 0,1; Уl1 == 1,3; У21 == 1,3 : У12 == Уll + h . (Хl + 2У11 + У21) == == 1,3 + 0,1 (0,1 + 2 .1,3 + 1,3) == 1,7; У22 == У21 + h . (2 . Х1 + Уll + 2У21) == == 1,3 + 0,1 (2 . 0,1 + 1,3 + 2 .1,3) == 1,71; ......... ..... ...... .... ... ... ..........
э 4.6 ] Про'Цедура РУН2е o'ЦeH и nО2решности 169 Метод Эi1.лера Коши. { Yli+l == Yli + h (Xi + 2Yli + Y2i) , У2 i+l == Y2i + h ( 2X i + Yli + 2Y2i) , Уl Нl == Yli + [(Xi + 2Yli + Y2i) + (ХНl + 2 Yl i+1 + Y2 i+1)], Y2i+1 == Y2i + [( 2X i + Yli + 2Y2i) + ( 2Х Нl + Yl i+1 + 2 Y2 i+l)]' УI0 == 1, У20 == 1; i == о; ХО == о; Хl == 0,1; УI0 == 1; У20 == 1 : { Уll == УI0 + h (хо + 2УI0 + У20) == 1 + о, 1 (о + 2 . 1 + 1) == 1,3; У2 1 == У20 + h (2хо + УI0 + 2У20) == 1 + о, 1 (2 . О + 1 + 2 .1) == 1,3; Уll == YlO + [(хо + 2YIO + У20) + (Хl + 2 Уll + Y2 1)] == о 1 == 1 + т [(О + 2 .1 + 1) + (0,1 + 2 · 1,3 + 1,3)] == 1,35; У21 == У20 + [( 2х о + YIO + 2У20) + ( 2Х l + Yl l + 2Y21)] == о 1 == 1 + т [(2 . О + 1 + 2 . 1) + (2 . 0,1 + 1,3 + 2 . 1,3)] == 1,355; i == 1; Хl == 0,1; Х2 == 0,2; Уll == 1,35; У21 == 1,355 : У1 2 == Уl1 + h (Хl + 2Уll + У21) == == 1,35 + 0,1 (0,1 + 2 .1,35 + 1,355) == 1,7655; У22 == У21 + h ( 2Х l + Уl1 + 2У21) == == 1,355 + 0,1 (2.0,1 + 1,35 + 2.1,355) == 1,781; Y12 == Yll + [(Хl + 2Yll + Y21) + (Х2 + 2 Y12 + У2 2)] == == 1,35 + [(0,1 + 2 .1,35 + 1,355) + 2 + (0,2 + 2 .1,7655 + 1,781)] == 1,8334;
170 Реше'Ние зада'Ч для обых;'Нове'Н'Н'ЬtХ диффере'НциаЛ'Ь'Н'ЬtХ урав'Не'Ний [rл. IV У22 == У21 + [( 2Х l + УН + 2У21) + (2Х2 + У1 2 + 2У22)] == о 1 == 1,355 + [(2 .0,1 + 1,35 + 2 .1,355) + 2 + (2 .0,2 + 1,7655 + 2 . 1,781)] == 1,8544; ..... ..... ..... ........... ..... ..... ...... ..... ........... ......... Метод PyH2e Kyттa. { Yli+l == Yli + ДУli, Y2i+l == Y2i + ДУ2i, flY1i == (k! + 2k; + 2kr + kt) , flY2i == ! (l! + 2l; + 2lr + lt) , 6 { kI == h . [Xi + 2Yli + Y2i] , [! == h . [ 2X i + Yli + 2Y2i] , k; == h [ ( Xi + ) + 2 (Yli + kl ) + (Y2i + [ ) ] , [; == h [2 ( Х i + ) + (Уl i + kl ) + 2 (Y2i + [ ) ] , kr == h [(Xi+ ) +2 (Yli+ kl ) + (Y2i+ [1 )], lr == h [2 ( Xi + ) + (Y1i + kl ) + 2 (Y2i + [1 ) ] , { k[ == h . [( Xi + h) + 2 (Yli + kr) + (Y2i + [Т)] , [[ == h . [2 (Xi + h) + (Yli + kr) + 2 (Y2i + [Т)] ; i == о; ХО == о; ХО+l/2 == 0,05; Хl == 0,1; УI0 == 1; У20 == 1 : { Уll == УI0 + д.УI0 == 1 + 0,35558 == 1,35558; У21 == У20 + ДУ20 == 1 + 0,36073 == 1,36073; 4.6 ] Процедура РУ'Н,2е оце'Н,х;и nО2реш'Н,осmи 171 ДУш == (kB + 2kб + 2k + k6) == 1 == 6 (0,3 + 2 . 0,35 + 2 . 0,3578 + 0,4179) == 0,35558; ДУ20 == ив + 2lб + 215 + [6) == 1 == 6 (0,3 + 2 . 0,355 + 2 . 0,363 + 0,4284) == 0,36073; { kб == h . [хо + 2УI0 + У20] == 0,1 (О + 2 .1 + 1) == 0,3; lб == h . [2хо + УI0 + 2У20] == 0,1 (2 . О + 1 + 2 .1) == 0,3; kб == h [ ( ХО + ) + 2 (УI0 + ) + (У20 + [; )] == == 0,1 [0,05 + 2 (1 + 0;3 ) + (1 + 0;3 )] == 0,35; lб == h [2 ( хо + ) + (уш + ) + 2 (У20 + [; )] == == 0,1 [2 . 0,05 + (1 + 0;3 ) + 2 (1 + 0;3 )] == 0,355; k5 == h [ ( ХО + ) + 2 (уш + ) + (У20 + [ )] == ==0,1 [0,05+2(1+ 0, 5 ) + (1+ 0, 55 )] ==0,3578; [ == h [2 ( хо + ) + (уш + k; ) + 2 (У20 + [ )] == == 0,1 [2 . 0,05 + (1 + 0, 5 ) + 2 (1 + 0, 55 )] == 0,363; kб == h . [(хо + h) + 2 (УI0 + k3) + (У20 + [3)] == == 0,1 [0,1 + 2 (1 + 0,3578) + (1 + 0,363)] == 0,4179; lб == h. [2 (хо + h) + (УI0 + k3) + 2 (У20 + [3)] == == 0,1 [2 . О, 1 + (1 + 0,3578) + 2 (1 + 0,363)] == 0,4284;
172 Реше'Ние зада'Ч для об'Ьtх;'Нове'Н'Н'ЬtХ диффере'НциаЛ'Ь'Н'ЬtХ урав'Не'Ний [rл. IV i == 1 ; Х l о 1. , , Хl+l/2 == 0,15; Х 2 == о 2. , , Уll == 1,35558; У2l == 1,36073 : { У12 == Уll + ДУll == 1,35558 + 0,49283 == 1,8484; У22 == У2l + ДУ2l == 1,36073 + 0,5090 == 1,8698; 1 ДУН == 6 (kt + 2k + 2kf + ki) == 1 == 6 (0,41719 + 2 . 0,4853 + 2 . 0,4958 + 0,57756) == == 0,49283; 1 ДУ21 == 6 (lt + 2l + 2lf + li) == 1 == 6 (0,4277 + 2 . 0,5013 + 2 . 0,5121 + 0,5997) == 0,5090; kt == h . [Хl + 2Уll + У2l] == == 0,1 (0,1 + 2 . 1,35558 + 1,36073) == 0,41719; lt == h . [ 2Х l + Уll + 2У2l] == == 0,1 (0,2 + 1,35558 + 2 .1,36073) == 0,4277; k == h [ ( Хl + ) + 2 (УН + ) + (У21 + [1 )] == == 0,1 [0,15 + 2 (1,35558 + 0,4 719 ) + + ( 1,36073 + 0,4;77 )] == 0,4853; [ == h [2 ( Хl + ) + (Yl1 + ) + 2 (У21 + [J )] == [ ( 0,41719 ) == 0,1 2.0,15 + 1,35558 + 2 + +2 ( 1,36073 + 0,4;77 )] == 0,5013; 4.6 ] Процедура РУ'Н,2е оце'Н,х;и nО2реш'Н,осmи 173 kf == h [ ( Хl + ) + 2 (УН + ) + (У21 + [; )] == [ ( о 4853 ) == 0,1 0,15 + 2 1,35558 + ' 2 + + (1,36073 + 0,5 13 )] == 0,4958; lf == h [2 ( Хl + ) + (УН + ) + 2 (У21 + [; )] == [ ( о 4853 ) == 0,1 2.0,15 + 1,35558 + ' 2 + +2 (1,36073 + 0,5 13 )] == 0,5121; ki == h. [(Хl + h) + 2 (Уll + k ) + (У21 + [ )] == == 0,1 [0,2 + 2 (1,35558 + 0,4958) + + (1,36073 + 0,5121)] == 0,57756; li == h . [2 (Хl + h) + (Уll + k ) + 2 (У21 + [ )] == == 0,1 [2 .0,2 + (1,35558 + 0,4958) + +2 (1,36073 + 0,5121)] == 0,5997. Таким образом, метод Эйлера для заданной системы ОДУ (решение которой растет по экспоненте) дает поrрешность уже в первой цифре после запятой, метод Эйлера Коши во BTO рой, И только метод PYHre KYTTa выдерживает теоретическую точность, сохраняя верными четыре цифры после запятой. УПР АЖНЕНИЯ. 4.1. Методом Эйлера, Эйлера Коши, PYHr KYTTa с шаrом h == 0,1 решить следующие задачи Коши дЛЯ ОДУ l ro порядка, сделав три шаrа: б) х 2 , у == + ' х у а) , 1 У == +x, у у (О) == 1; в) у' == у2 Х, у (1) == о; у (О) == 0,5;
174 Реше'Ние зада'Ч дл.я, об'Ьtх;'Нове'Н'Н'ЬtХ диффере'НциаЛ'Ь'Н'ЬtХ урав'Не'Ний [rл. IУ r) , sin у2 у == у2 + Х ' д) у (О) == 1; У ' == у + Х у 2 х + 1 ' е) у' == е Х / У + х, у (О) == 1; у(О) ==1. 4.2. Задачи упражнения 4.1 решить с точностью с == 0,01 для методов Эйлера и Эйлера Коши и с точностью Сl == 10 4 для метода PYHre KYTTa, приняв в качестве начальноrо шаrа h == 0,1. 4.3. Методом PYHre KYTTa с точностью с == 10 4 (ho == 0,1) решить следующие задачи Коши до значения aprYMeHTa Х КОН == == 1,0, сведя ОДУ 2 ro порядка к нормальной системе ОДУ 2 ro порядка: 1 у" == ху,2 у2, ,2 у" == + ху', у" == у у х2 + у2 , а) у (О) == 1, б) у (О) == 1, в) у (О) == 1, у' (О) == 1; у' (О) == 1; у' (О) == 1; , , у" == у + ху2 у" == e Y + ху, х+l у" == е Х / У + х, r) у (О) == 1, д) У (О) == 1, е) у (О) == 1. у' (О) == о; у' (О) == 1; 4.4. В заданиях упражнения 4.1 уточнить решения с помо щью процедуры PYHre, просчитав задачи с шаrами h == 0,1; h 1 == == 0,05. 4.5. Методами Эйлера, Эйлера Коши и PYHr KYTTa с ша rOM h == 0,1 дО Х КОН == 1 решить следующие задачи Коши для нормальных систем: , х 2 + yi , 1 Уl + У2 Уl y , Уl == n , Х+УIУ2 y == Х + Уl + У2, y == 2х + Уl 2У2, а) б) Уl (О) == 1, Уl (О) == 1, У2 (О) == 1; У2 (О) == 1; 4 7] Числе'Н'Н'Ьtе метод'Ь" реше'Ния x;paeB'btX зада'Ч для ОДУ 175 , х + Уl + У2 у' у2 + еХУ2 Уl х + e Y1 1 1 , y == х 2Уl + 3У2, у' еХ+У1 +У2 в) r) 2 , Уl (О) == 1, Уl (О) == 1, У2 (О) == 1; У2 (О) == 1; , x2 , 2 + 2 Уl == Уl е + ХУ2, Уl Уl Х У2 , y == 3х Уl + 2У2, , 2х + Уl д) е) У2 У2 Уl (О) == 1, Уl (О) == 1, У2 (О) == 1; У2 (О) == 1. э 4.7. Численные методы решения краевых задач для ОДУ 4.7.1. Постановка краевых задач дЛЯ ОДУ. PaCCMOT рим постановку краевых задач дЛЯ ОДУ 2 ro порядка с rранич ными условиями различных родов. Пусть на отрезке х Е [а, Ь] определена дважды непрерывно дифференцируемая функция у (х ), поведение которой описыва ется линейным неоднородным ОДУ 2 ro порядка. Принципиаль ным отличием краевой задачи от задачи Коши дЛЯ ОДУ явля ется задание дополнительных (краевых или rраничных) условий более чем в одной точке независимой переменной (в задаче Коши дополнительные условия задаются в одной точке, называемой начальной). Если на rраницах х == а и х == Ь заданы значения искомой функции у ( а), у ( Ь ), то такие условия называются 2рани'Ч/НЪtми услови,ями nервО20 рода, а задача у" + р(х)у' + q(x)y == f(x), а < х < Ь; у(а) == Уа, Х == а; у(Ь) == Уь, х == Ь ( 4.51) ( 4.52) ( 4.53) называется первой 'Краевой задачей дЛЯ ОДУ (4.51).
176 Реше'Ние зада'Ч для об'Ьtх;'Нове'Н'Н'ЬtХ диффере'НциаЛ'Ь'Н'ЬtХ урав'Не'Ний [rл. IV Если на rраницах заданы значения производных искомой функции, то такие условия называются ара'Ни'Ч/НЪtми услови,ями 2 ao рода: у'(а) == Уа; у'(Ь) == Уь, ( 4.54) ( 4.55) а задача (4.51), (4.54), (4.55) называется второй rк;paeвoй зада'Чей дЛЯ ОДУ (4.51). Если на rраницах заданы линейные комбинации искомой функции и ее первой производной: у'(а) + ау(а) == Уа, у'(Ь) + (3у(Ь) == уь, ( 4.56) ( 4.57) то такие условия называются ара'Ни'Ч'НЪtми услови,ями третъеао рода, а задача (4.51), (4.56), (4.57) называется третъей rк;paeвoй зада'Чей дЛЯ ОДУ (4.51). Чаще Bcero на разных rраницах задаются rраничные условия различных родов. Такие задачи называют краевыми зада'Чами со смеша'Н'НЪtми rк;раевЪtми услови,ями. 4.7.2. Конечно..разностный метод с использованием метода проrонки решения краевых задач дЛЯ ОДУ. Pac смотрим первую краевую задачу (4.51) (4.53) и будем решать ее конечно разностным методом, заменяя дифференциальные операторы отношением конечных разностей с использованием формул численноrо дифференцирования (см. Э 3.4). Для этоrо введем конечно разностную сетку с шаrом h: Wh == {Xi == ih, i == О, n } . Поскольку ОДУ (4.51) описывает поведение функции у(х) внутри расчетной области Х Е (а, Ь), то производные l ro и 2 ro порядков можно аппроксимировать с помощью отношения цeH тральных разностей со 2 M порядком аппроксимации: == Yi+l Yi l + О ( h2 ) . == 1 1. Y'l 2h ' 't , n , ( 4.58) , == Yi+l 2Yi + Yi l + О (h 2 ) . 1 1 . Y'l h 2 , 't , n , {р ( Х i ), q ( Х i ), f ( Х i )} = {р i, q i, f i}, i == 1, n 1. ( 4.59) ( 4.60) 4.7] Числе'Н'Нuе метод'Ь" реше'Ния x;paeB'btX зада'Ч для ОДУ 177 Подставляя (4.58) (4.60) в ОДУ (4.51), получим следующую конечно разностную схему: Yi+l 2Yi + Yi l Yi+l Yi l 2 h 2 +Pi 2h +qiYi==Ji+O(h), i==l,n l; Уо == Уа, i == о; Уn == Уь, 'l == N, которую можно представить в виде следующей СЛАУ с трехдиа rональной матрицей: aiYi l + biYi + CiYi+l == d i , i == 1, n 1, (4.61 ) rде 1 Pi ai== h2 2h ; 2 b i == 2 + qi; h 1 Pi Ci== h 2 + 2h ; d i == fi. При i==l первое слаrаемое в левой части (4.61) известно и paB но аlУО == аlУа; при i == n 1 последнее слаrаемое в левой части также известно и равно Cn lYn == Cn lYb. Поэтому СЛАУ (4.61) приобретает следующий вид: аl == О b 1 Yl + СIУ2 == d , d == d 1 аlУа, i == 1, .......... ..... ...... ...... ...... .......... ..... aiYi l + biYi + CiYi+l == d i , i == 2, n 2, ( 4.62) .... ...... ..... ... ......... ...... .... .... ....... an lYn 2 + bn lYn l == d l' d l == dn l Cn lYb, i == n 1, Cn 1 == о. Здесь коэффициенты аl и Cn 1 nолаааются равНъt.мu нулю толъ'К;о после вЪt'Чuсленuя nравЪtХ 'Частей di и d l. Теперь СЛАУ (4.62) приrодна для использования метода про rонки (она имеет трехдиаrональную матрицу и аl == Cn 1 == о).
178 Реше'Ние зада'Ч для об'Ьtх;'Нове'Н'Н'ЬtХ диффере'НциаЛ'Ь'Н'ЬtХ урав'Не'Ний [rл IV Проrоночные коэффициенты в прямом ходе определяются с помощью выражений Ci . A i == b i + aiAi l ' d i aiBi l B i == , i == 1, n 1, b i + aiAi l (4 63) причем А 1 == C1/b1, В 1 == d 1 /b 1 , так как а1 == о, An 1 == о, так как Cn 1 == о. Значения Yi, i == n 1, n 2, . .. ,1, находятся в обратном ходе с помощью равенств Yi == A i Yi+1 + Bi : i==n l: Yn 1 == An lYn + Bn 1 == Bn 1, Yn 2 == An 2Yn 1 + Bn 2, ( 4.64) i==n 2: i==l: У1 == А 1 У2 + В 1 - 4.7.3. Конечно разностная схема со вторым поряд u ком аппроксимации краевых условии, содержащих про изводные. В случае решения задачи дЛЯ ОДУ (4.51) с rранич ными условиями 2 ro или 3 ro родов на rраницах х == а и х == == Ь значения искомой функции у(а) и у(Ь) неизвестны и для их нахождения должны быть составлены алrебраические ypaB нения в rраничных узлах. Однако аппроксимаuию производных, входящих в краевые условия, с помощью отношения конечных разностей справа (в узле х == а) и слева (в узле х == Ь) можно осуществить только с первым порядком, в то время как диффе ренциальное уравнение аппроксимируется со вторым порядком. Следовательно, в этом случае вся 2 я (или 3 я) краевая задача будет аппроксимирована только с первым порядком. Для повышения на единицу порядка аппроксимации произ водных, входящих в краевые условия, предположим, что искомая функция у(х) дважды дифференцируема не только во BHYTpeH них точках расчетной области, но и на раницах, т. е. У (х) Е 02, Х Е [а, Ь]. Тоrда для решения этой проблемы можно использовать 4 7] Числе'Н'Нъtе методъ" реше'Ния х;раевЪtХ зада'Ч для ОДУ 179 аппарат разложения в ряды Тейлора приrраничных значений сеточной функции на точном решении в окрестности rраничных узлов. С этой целью разложим функцию 'На то'Ч'Ном реше'Нии в ряд Тейлора до 3 й производной включительно в окрестности уз ла х == а для левой rраницы и в окрестности узла х == Ь для правой rраницы и определим по этим разложениям У1 и Yn 1. Затем значения производных 2 ro порядка для rраничных узлов в этих разложениях заменяются значениями второй произ водной, определенными из ОДУ, после чеrо из полученных Bыpa жений определяются значения первой производной в rраничных узлах со вторым порядком, которые затем подставляются вместо производных первоrо порядка в краевые условия. Рассмотрим эту процедуру для левой rраницы ХО == а: Уl == у(хо + h) == уо + y h + y 2 + O(h 3 ). Из (4.51) находим yg: y == 10 роуЬ qoyo. Подставив (4.66) в (4.65) и разделив на h, получим , Уl Уа h (1 ' ) о ( h 2 ) уо == h "2 о РОУо qoyo + , (4.65) ( 4.66) откуда , ( ра h ) Уl Уа h ( ) О ( 2 ) уо 1 2 == h 2 10 Qoyo + h, или y == 2 2 h Yl Уо 2 h h ио QOyo) + O(h 2 ). (4.67) Ра h Ра Подставляя (4.67) в (4.56) (или в (4.54)), получим 2 2 h Yl УО 2 h h ио QOyo) + ауо == уа + O(h 2 ). (4.68) Ра h Ра Из (4.6 ) видно, что полученное уравнение для узла хо == == а содержит только два неизвестных уо и У1, а аппроксимация имеет второй порядок. Следовательно (4.68) можно представить в виде ЬОУо + СОУ1 == d o , ( 4.69)
180 Реше'Н,ие зада'Ч для объtх;'Н,ове'Н,'Н,ъtх диффере'Н,циаЛ'Ь'Н,ЪtХ урав'Н,е'Н,ий [rл. IV rде ао == о; 2 qoh Ь О == + + й; h(2 poh) 2 Poh hfo d o == Уа + 2 h . Ро Аналоrично для правой rраницы (х n == Ь): 2 СО == h(2 poh)' { Yп l == У(Х п h) == Уп y h + y 2 + О(h З ); y == / n PnY qnyn; , 2 Уn Yn 1 h (/ ) O ( h2 ) уn == 2 + pn h h + 2 + pn h n qnyn + . Подставляя это выражение в краевое условие (4.57) (или в (4.55)), получим уравнение для правой rраницы с двумя неиз вестными Yn 1, Уn и вторым порядком аппоксимации: 2 Уn Yn 1 h (/ ) (3 O ( h2 ) 2 + pn h h + 2 + pn h n Qnyn + уn == Уь + , которое можно представить в виде anYn l + ЬnУn == d n , (4.70) ('!де а n == 2 h(2 + pnh)' 2 Ь N == h(2 + pnh) Qn h (3 2 + pnh + ; Сп == о; d hfn n Уь 2 + pn h . Таким образом, результирующая СЛАУ с трехдиаrональной матрицей теперь будет содержать n + 1 уравнение, каждое из которых получено со вторым порядком точности, а именно: уравнение (4.69) при i == О, уравнения (4.61) для i == 1, n 1 и уравнение (4.70) для i == n. Для ее решения используется метод проrонки, поскольку ао == О и Сп == о. 4.7.4. Метод при стрелки численноrо решения крае.. вых задач дЛЯ ОДУ. Метод пристрелки сводит решение Kpa евой задачи дЛЯ ОДУ к решению итерационной последовательно сти задач Коши. Этот метод рассмотрим на примере следующей первой краевой задачи дЛЯ ОДУ 2 ro порядка: 4.7] Числе'Н'Нъtе методъ" реше'Ния х;раевъtХ зада'Ч для ОДУ 181 у" == f (х , у, у'), а < х < Ь; у(а) == Уо, х == а; у(Ь) == У1, Х == Ь. (4.71 ) (4.72) (4.73) Вместо краевой задачи (4. 71 ) ( 4.73) рассматривается следу ющая задача Коши: у" == f(x, у, у'), а < х < Ь; (4.74) у( а) == Уо, х == а; (4.75) у' (а) == tg а, а: у(Ь, а) == У1, (4.76) в которой интеrральная кривая у(х,а) зависит не только от переменной х, но и от параметра а, который называется У2ЛО.м у У (Ь, (1д у(Ь, (1*)==Yl У (Ь, (10) У (х, (10) Уо Lv(b, (1*) Yll E а Ь х Рис. 4.5. rеометрическая интерпретация метода пристрелки nрuстрел'Кu. Он выбирается из условия равенства значения ин теrральной кривой на правой rранице у(Ь, а) значению У1 с Ha перед заданной точностью с (рис. 4.5): Iy(b, а) У11 с. ( 4.77) у rол пристрелки, удовлетворяющий неравенству (4.77), обо значим через а*. Интеrральная кривая, полученная из решения
182 Реше'Н,ие зада'Ч для объtх;'Н,ове'Н,'Н,ъtх диффере'Н,циаЛ'Ь'Н,ЪtХ урав'Н,е'Н,ий [rл. IV задачи Коши (4.74) (4.76) с уrлом, близким к этому значению, в соответствии снеравенством (4.77) и будет решением краевой задачи (4.71) (4.73) с точностью с. Таким образом, алrоритм метода пристрелки следующий. 1. Выбирается ао, например из условия t Уl Уа g по == . b a 2. С этим значением ао одним из методов решается задача Коши (4.74) (4.76) с получением у(х, йО) и у(Ь, йО); если при этом выполняется условие (4.77), то краевая задача (4.71) (4.73) решена с точностью с. 3. В противном случае MorYT быть следующие два варианта: а) у(Ь, йО) > У1; тоrда уrол пристрелки каким либо способом уменьшается и решается задача Коши (4.74) (4.76) тем же MeTO дом до тех пор, пока не выполнится условие у(Ь, й1) < У1; б) у(Ь, йО) < У1; тоrда уrол пристрелки каким либо способом увеличивается и решается задача Коши до тех пор, пока не выполнится условие у(Ь, й1) > У1. 4. Таким образом, уrол пристрелки находится внутри интер вала Q Е (ао, (1), после чеrо истинное значение а* уrла при стрелки определяется методом половинноrо деления с реализа цией следующей цепочки : а) Qk+l == (Qk l + Qk) /2; б) у(х, Qk+1); в) у(Ь, Qk+1); r) анализируется неравенство Iy(b, Qk+1) У1/ с; если оно выполнено, то а* (Qk + Qk+1)/2 и у(х, й*) истинная инте rральная кривая; если неравенство не выполнено, то итерацион ный процесс повторяется начиная с п. 4 а. 4.7.5. Метод при стрелки с использованием итераци онной процедуры Ньютона. Метод половинноrо деления очень медленно сходится и приходится решать значительное число задач Коши для различных значений уrлов пристрелки Qk. Для ускорения сходимости итерационноrо процесса будем полаrать, что У1 == у(Ь, ао + Дй), rде Да подлежит определению. Для определения Да разложим у(Ь, ао + Дй) в окрестности ао в ряд Тейлора до второй производной включительно, получим у(Ь, 0:0 + До:о) == у(Ь, 0:0) + 8Y b, 0:0) ДО:о + о(д0:2) == Уl, Па
э 4.7] Числе'Н'Нъtе методъ" реше'Ния х;раевъtХ зада'Ч для ОДУ 183 откуда ДО:о == Yl у(Ь, йо) . ау( Ь, ПО) аn (4.78 ) ау(Ь, ПО) ДЛЯ определения аn выбирается малое приращение 8 уrла пристрелки и со значением уrла ао + 8 решается задача Коши (4.74) (4.76) с получением у(Ь, ао + 8). Тоrда для опре деления производной, входящей в выражение (4.78), используем отношение конечных разностей: ау(Ь, ПО) у(Ь, по + 8) у(Ь, ПО) аn 8 Подставляя (4.79) в (4.78), получаем (4.79) Уl у(Ь,nо) 0:1 == 0:0 + ДО:о == 0:0 + ( 8) ( ) 8. у Ь, по + у Ь, по Итерационный процесс продолжается до выполнения условия ( 4.77) с помощью процедуры Уl у(Ь, nk) O:k+1 == O:k + (Ь ) (Ь ) (O:k O:k l), У , nk У , nk l сходящейся значительно быстрее метода половинноrо деления. Пример 4.3. Методом конечных разностей с использова нием метода проrонки решить следующую краевую задачу дЛЯ ОДУ 2 ro порядка, приняв h == 0,25 (а == Хо == 1; Ь == Х4 == 2): 1 у" == у' + х2, х у' (1) + у (1) == 1, у (2) == 1. ( а) (6) (в) Реш е н и е. Эта задача допускает аналитическое решение, 11 имеющее вид у (х) == х 4 /8 x2 + 9/2, значения KOToporo у (Xi) 8 в узлах сетки хо == 1; Х1 == 1,25; Х2 == 1,5; хз == 1,75; Х4 == 2,0 занесем в таблицу (в эту же таблицу занесем и полученные ниже результаты численноrо решения Yi, i == 0,4 ).
184 Реше'Н,ие зада'Ч для объtх;'Н,ове'Н,'Н,ъtх диффере'Н,циаЛ'Ь'Н,ЪtХ урав'Н,е'Н,ий [rл. IV z О 1 2 3 4 Xi 1 1,25 1,5 1,75 2,0 у (Xi) 3,25 2,6568 2,039 1,462 1,0 Yi 3,18 2,60 2,00 1,44 1,0 Производные первоrо и BToporo порядков, входящие в диффе ренциальное уравнение, в узлах Xi аппроксимируются со вторым порядком: == Yi+l Yi l + о ( h2 ) . , == Yi+l 2Yi + Yi l + о ( h2 ) . Y 2h ' Y h 2 Подставляя эти выражения в дифференциальное уравнение для узлов Xi, i == 1, 3 , получим Yi+1 i + Yi l :i Yi+12 Yi l == x + О (h2), i == 1, 3 . (2) Поскольку на правой rранице (i == 4, Х4 == 2) задано rранич ное услuвие l ro рода, т. е. значение искомой функции в этом узле известно и равно У4 == 1, то уравнение для этоrо узла не выписывается (но значение У4 будет использовано н конечно разностной аппроксимации (2) при i == 3). Будем аппроксими ровать со вторым порядком левое краевое условие (б) в узле i == == О, ХО == 1. Разлаrая на точном решении У1 в ряд Тейлора в окрестности rраничной точки ХО == 1 до третьей производной включительно, получим ( ) ,,, h 2 О ( З ) У1 == У Хо + h == Уо + Yoh + Уо "2 + h . Подставим сюда вместо Уо значение второй производной из 1 дифференциальноrо уравнения (а) при ХО == 1: yg == YЬ + Хб . хо Затем разделим все выражение на h и выразим из полученноrо равенства значение Уа, получим уЬ == Уl Уо hX5 + о (h2) . h ( 1 + ) 2 ( 1 + ) 2хо 2хо Подставим это выражение в левое краевое УСJIовие (б) вместо производной первоrо порядка, получим (У (1) Уо) )
э 4.7] Числе'Н'Нъtе методъ" реше'Ния х;раевъtХ зада'Ч для ОДУ 185 Уl УО h ( 1 + ) 2хо hX6 О (h 2 ) ( h ) + УО == 1 + , 2 1+ 2хо откуда при хо==l и h == 0,25 получаем алrебраическое уравнение в узле хо == 1 со вторым порядком: 2,556yo + 3,556У1 == 1,111 + О (0,0625) . (д) Приписывая к этому уравнению алrебраические уравнения, полученные из аппроксимации (2) для i == 1,3 (Х1 == 1,25; Х2 == == 1,5; хз == 1,75; h == 0,25), получим следующую СЛАУ с Tpex диаrональной матрицей: 2.556yo + 3,556У1 == 1,111 (ао == о; Ь О == 2,556; со == 3,556; d o == 1,111); 1,lуо 2У1 + 0,9У2 == 0,0977 (а1 == 1,1; Ь 1 == 2; С1 == 0,9; d1 == 0,0977) ; 1,0831У1 2У2 + 0,9167уз == 0,141 (а2 == 1,0831; Ь 2 == 2; С2 == 0,9167; d 2 == 0,141); 1,071У2 2уз == 0,737 (аз == 1,071; Ьз == 2; сз == о; d з == o, 737) , которая решается методом проrонки: А == со == 3,556 == 1 3912. о Ь о 2,556 ' , в == d o == 1,111 == o 4347. о Ь о 2,556 ' , А 1 == Cl 0,9 == 1 9162. Ь 1 + аlАо 2 + 1,1 . 1,3912 ' , В1 == d 1 alBo == 0,0977 1,1 ( 0,4347) == 1,226; Ь 1 + аl А о 2 + 1,1 . 1,3912 А 2 == C2 0,9167 == 12 091. Ь 2 + а2Аl 2 + 1,0831 . 1,9162 "
186 Реше'Н,ие зада'Ч для объtх;'Н,ове'Н,'Н,ъtх диффере'Н,циаЛ'Ь'Н,ЪtХ урав'Н,е'Н,ий [rл. IV В 2 == d 2 а2 В l == 0,141 1,0831 ( 1,226) == 19 3765. Ь 2 + a2 A l 2 + 1,0831 . 1,9162 " Аз == о; В з == d з аЗ В 2 Ь з + аз А 2 o, 737 1,071 19,3765 == 1 4375. 2+1,071.( 12,091) , , Уз == А З У4 + В з == В з == 1,4375; У2 == А 2 уз + В 2 == 12,091 . 1,4375 + 19,3765 == 2,00; У1 == А 1 У2 + В 1 == 1,9162 . 2,00 + ( 1,226) == 2,60; Уо == А О У1 + Во == 1,3912 .2,60 + ( 0,4347) == 3,18. Эти значения занесем в 3 ю строку таблицы под значениями аналитическоrо решения, сравнение с которым показывает, что действительно конечно разностная аппроксимация (2) И (д) име ет второй порядок относительно шаrа (h 2 == 0,0625): д (Y)i == {lз,25 з,181 == 0,07; 12,6568 2,601 == 0,0568; 12,039 2,00/ == 0,039; 11,462 1,441 == 0,022; о} Для более точноrо расчета необходимо уменьшить шаr h. Пример 4.4. Методом пристрелки с использованием алrо ритма Эйлера с шаrом h == 0,25 и методом половинноrо деления и Ньютона уточнения корней нелинейных уравнений решить следующую первую краевую задачу дЛЯ ОДУ 2 ro порядка (точ ность с == 0,05): 1 У" == У' + х 2 , х у(l)==О, У (2) == 1. Эта задача допускает следующее аналитическое решение: 1 х 4 7 2 1 У (х) == x + . 8 24 6 4 7] Числе'Н'Нъtе методъ" реше'Ния х;раевъtХ зада'Ч для ОДУ 187 Сведем данную краевую задачу к следующей задаче Коши для Toro же ОДУ: 1 у" == y' + х2 , х у (1) == О, у' (1) == tga, а == а* : у (2, а*) == 1. Уравнение (4.76) для этой задачи, а именно уравнение f (а) == == у (2, а) 1 == О, как нелинейное уравнение относительно уrла пристрелки а можно решить одним из рассмотренных ранее итерационных методов с параллельным решением задачи Коши на каждой итерации. Здесь вначале будет использован метод половинноrо деления, а затем метод Ньютона. Метод nоловU'Н'НО20 деле'Нu,Я. 1 'я uтерацu'я. Пусть уrол пристрелки ао определен из COOT ношения tg ао == у (2) у (1) == 1; ао == 450. Тоrда задача Коши 2 1 дЛЯ ОДУ 2 ro порядка и соответствующая задача Коши для нормальной системы ОДУ 2 ro порядка будут иметь вид у (1) == О, +-+ у' (1) == tg ао == 1, , у == Z, 1 Z' == z + х2, х 1 у" == y' + х2, х у (1) == О, Z (1) == 1. Метод Эйлера с шаrом h == О, 25 для этой системы имеет вид { Yi+l == Yi + h . Zi, Zi+l == Zi + h (Zi/Xi + X ), i == 0,1,2,3,4 Решая эту систему, получаем > I О 1 2 3 4 х. 1,0 1,25 1,5 1,75 2,0 t Yi О 0,25 0,625 1, 173 1,953 Zi 1 1,50 2,19 3,1 4,33
188 Реше'Н,ие зада'Ч для объtх;'Н,ове'Н,'Н,ъtх диффере'Н,циал'Ь'Н,ъtх урав'Н,е'Н,ий [rл. IV у (2; 450) == 1,953. Итак, 11 (450) == у (2; 450) 1 == 1,953 1 == 0,953 > о. Следовательно, необходимо уменьшить уrол пристрелки 0:, причем так, чтобы / (о:) на следующей итерации было меньше нуля. Примем 0:1 == о, тоrда задача Коши будет иметь вид: 2 я итерация (0:1 == 00). 1 у" == y' + х 2 , х , у == z, 1 z' z + х2 , х у (1) == о, ++ у' (1) == tg 0:1 == о, у (1) == о, Z (1) == о. Методом Эйлера с шаrом h == 0,25, { Yi+1 == Yi + h . Zi, Zi+1 == Zi + h (Zi/Xi + x ) , i == о, 1,2, 3, 4, получаем о 1 2 3 4 Xi 1,0 1,25 1,50 1,75 2,0 Yi О О 0,0625 0,235 0,577 Zi О 0,25 0,69 1,368 2,33 у (2; 00) == 0,577; /2 (00) == У (2; 00) 1 == 0,577 1 == 0,423 < о. Следовательно, уrол 0:* находится внутри интервала 0:1 == == 00 < 0:* < 0:0 == 450. После этоrо для уточнения уrла пристрел ки о: используем метод половинноrо деления. "' 4.7] Числе'Н'Нъtе методъ" реше'Ния х;раевЪtХ зада'Ч для ОДУ 189 ( Ai 2 == 00 + 01 == 450 + 00 ) 3 я итерация == 22,50 ; tg 22,50 == 2 2 == 0,414. 1 у" == y' + х 2 , Х у' == z, 1 z' == z + х 2 , Х у(l)==О, у' (1) == tg а2 == 0,414, у (1) == о, z (1) == 0,414. Решая эту задачу Коши методом Эйлера с шаrом h == 0,25, получим 't О 1 2 3 4 Xi 1,0 1,25 1,5 1,75 2,0 Yi О 0,104 0,296 0,624 1,147 Zi 0,414 0,768 1,312 2,093 3,153 у (2; 22,50) == 1,147; 13 (22,50) == у (2; 22,50) 1 == 1,147 1 == 0,147 > о; 113 (22,50) I == 0,147 > с == 0,05. Сравнение значения функции 1 (а) на 2 й итерации (/2 (00) < о) и на третьей итерации (/3 (22,50) > о) означает, что 00 < а* < 22,50. ( 00 + 22 50 ) 4 я итерация аз == 2' == 11,250, tg 11,250 == 0,2 . Решение задачи Коши , у z, 1 z' z + x2 , х "' у (1) == о, z (1) == 0,2 методом Эйлера с шаrом h == 0,25 сведено в таблицу
190 Реше'Н,ие зада'Ч для объtх;'Н,ове'Н,'Н,ъtх диффере'Н,циаЛ'Ь'Н,ЪtХ урав'Н,е'Н,ий [rл. IV о 1 2 3 4 Xi 1 1,25 1,5 1,75 2,0 Yi О 0,05 0,175 0,423 0,853 z- 0,2 0,5 0,991 1, 719 2,73 't у (2; 11,250) == 0,853; f4 (11,250) == у (2; 11,250) 1 == 0,853 1 == 0,147 < о; I f4 (11,250) I == 0,147 > с == 0,05. Сравнение f (о:) на третьей итерации (f3 (22,50) > о) и на четвертой (f4 (11,250) < о) означает, что 11,250 < 0:* < 22,50. ( 11,250 + 22,50 5 я итерация 0:4 == 2 == 16,8750; tg 16,8750 == == 0,з). Решение задачи Коши У , z , 1 z' == z + х 2 , Х у (1) == о, z (1) == 0,3 методом Эйлера с шаrом h == 0,25 сведено в таблицу о 1 2 3 4 Xi 1,0 1,25 1,5 1,75 2,0 Yi О 0,075 0,23 0,515 0,99 Zi 0,3 0,625 1,14 1,89 2,93 у (2; 16,8750) == 0,99; f5 (16,8750) == у (2; 16,8750) 1 == 0,99 1 == 0,01; I f5 (16,8750) I == 0,01 < 0,05. ,
э 4.7] Числе'Н,'Н,'ые методъ" реше'Н,ия х;раевЪtХ зада'Ч для ОДУ 191 Таким образом, уrол пристрелки принимается равным а* == == 16, 8750. На этом уrле интеrральная кривая имеет значения Yi из последней таблицы. Метод Нъюто'На. Как видно из проведенноrо расчета, метод половинноrо дe ления при уточнении нуля а* функции j(a) очень медленно сходится. Для ускорения итерационноrо процесса применим Me тод Ньютона, для чеrо на первой итерации примем ао == 450. Результаты расчетов по методу Эйлера с использованием MeTO да половинноrо деления приведены в таблице первой итерации, из которой следует, что у (2; 450) == 1,953. Для про ведения 2 й итерации вычислим а 1 так: У (2) У (2; 450) 0:1 == 0:0 + До:о == 0:0 + у (2; 450 + <5) у (2; 450) д, rде 8 примем равным 100 (уrол а нужно уменьшать, поскольку 11 (450)==0,953>0, а l(a*)==O). с уrлом а == ао + 8 == 450 100 == 350 решается задача Коши методом Эйлера с шаrом h == 0,25. В результате получаем таб лицу о 1 2 3 4 Xi 1,0 1,25 1,50 1,75 2,0 Yi О 0,175 0,456 0,89 1,538 Zi 0,7 1,125 1,74 2,59 3,73 У (2; 350) == 1,538. На второй итерации о: == 450 + у (2) у (2; 450) . ( 100) == 22 50. 1 У (2; 350) У (2; 450) , , tg 22,50 == 0 404. с этим а1 на второй итерации решается задача Коши, результа ть] решения которой приведены в таблице на 3 й итерации метода половинноrо деления, откуда у(2; 22,50) == 1,147, а 1/2(22,50)1 == == 11,147 11 == 0,147 > с == 0,05.
192 Реше'Н,ие зада'Ч для объtх;'Н,ове'Н,'Н,ъtх диффере'Н,циаЛ'Ь'Н,ЪtХ урав'Н,е'Н,ий [rл. IV На 3 й итерации а == а + у (2) у (2; 22,50) (450 22 50) == 2 1 У (2; 45 О) У (2; 22,5 о ) , == 22 50 1 1,147 . ( 450 22 50 ) == 17 80. , + 1 953 1 147 ' , , , , tg 17,80 == 0,32. Решая задачу Коши с этим уrлом й2 == 17,80, получаем 'l О 1 2 3 4 Xi 1,0 1,25 1,5 1,75 2,04 Yi О 0,08 0,243 0,535 1,016 Zi 0,32 0,65 1,17 1,93 2,97 у (2; 17,80) == 1,016; 13 (17,80) == Iy (2; 17,80) 1\ == 11,016 1\ == 0,016 < с == 0,5. Таким образом, точность выполнена, и итерационный про цесс останавливается. Кроме этоrо, видно, что метод Ньютона сходится значительно быстрее метода половинноrо деления. Ответом являются значения y из этой таблицы. УПР АЖНЕНИЯ. 4.6. Методом конечных разностей с использованием метода проrонки решить следующие краевые задачи дЛЯ ОДУ 2 ro по рядка (аппроксимацию производных в краевых условиях выпол нить С О (h2), h == 0,1): а) у' (О) + у (О) == О, у' (1) == 1; б) у' (О) == О, У (1) == 1; у" == х 2 у' + е Х , у" == sin х . у' х 2 , 4.7] Числе'Н'Нъtе методъ" реше'Ния х;раевЪtХ зада'Ч для ОДУ 193 в) д) ж) у" == ху' е Х , у' (о) + у (о) == 1, у' (1) == о; r) е) з) у" == е Х . у' + ху, у' (о) у (о) == 1, у' (1) + у (1) == о; у" == е Х у' + х, у' (о) == 1, у'(l) у(l) == о; у" == ху + 1, у' (о) + у (о) == 1, у(l) == о; у" == 2Ху' + 2, у' (о) + у (о) == 1, у (1) == о; у" == xy' + 1, у' (о) 2 у (о) == 1, у' (1) == о. 4.7. Методом пристрелки с использованием метода половин Horo деления или Ньютона с точностью с == 0,01 решить следу ющие краевые задачи дЛЯ ОДУ 2 ro порядка (применить один из методов: Эйлера, Эйлера Коши или PYHre KYTTa): а) д) в) у" == cos х . у' х 2 , у (о) == 1, У (1) == 1,5; у" == еХу' + e X , у (о) == 1, у' (1) == 1; у" == х 2 у е Х , у (о) == 1, у (1) == о; 7 В.Ф. Формалев, д.л. Ревизников б) r) е) у" == xy' + е Х , у (О) == о, у (1) == 1; у" == sin х . у' cos х , у (о) == о, у' (1) == 1; у" == e Xy' + х, у (о) == о, у' (1) == 2;
194 Реше'Н,ие зада'Ч для объtх;'Н,ове'Н,'Н,ъtх диффере'Н,циаЛ'Ь'Н,ЪtХ урав'Н,е'Н,ий [rл. IV Указание: В случае задания rраничноrо условия 2 ro рода на правой rранице итерационный процесс осуществлять дО BЫ полнения условия у(l) у(l h) , ( 1 ) h У""" с, причем в качестве начальноrо уrла пристрелки можно принять 0:0 == arctgy'(l).
rЛАВА v числЕнныIE МЕТОДЬI ОПТИМИЗАЦИИ Проrрамма Численные методы безусловной минимизации функции одной пере менной, прямые методы: перебора, половинноrо деления, золотоrо ce чения. Методы минимизации, использующие производные. Численные методы безусловной минимизации функций мноrих переменных: rpa диентноrо спуска, наискорейшеrо спуска, сопряженных направлений э 5.1. Классификация численных методов оптимизации Задачи оптимизации, за редким исключением, решаются с помощью вычислительных процедур, поэтому названия' rла вы «Методы оптимизации» и «Численные методы оптимизации (ЧМО»> практически равносильны. Среди важнейших методов оптимизации широко распространены следующие методы. 1. Безусловной минимизации функций одной переменной: прямые методы (перебора, половинноrо деления, золотоrо ce чения) ; методы, использующие производные первоrо и BToporo поряд ка (Ньютона, ломаных, касательных). 2. Безусловной минимизации функций мноrих переменных; rрадиентноrо спуска; наискорейшеrо спуска; сопряженных направлений. з. Условной оптимизации: линейное и квадратичное проrраммирование; нелинейное проrраммирование; динамическое проrраммирование. Из перечисленных методов будем рассматривать только чис ленные методы безусловной минимизации, поскольку широкий класс методов математическоrо проrраммирования входит в OT дельный курс «Методы оптимизации». 7*
196 Числе'Н'Нъtе методъ" оптимизации [rл. v э 5.2. Численные методы безусловной минимизации функций одной переменной. Прямые методы Под .мu'Нu.мuзацuеи функции f (х) на множестве Х С R будем понимать следующую задачу: найти хотя бы одну mо'Ч1\,У .ми'Ни .му.ма х* и .ми'Ни.му.м f* == f(x*) на множестве х. Задача нахождения точки максимума х* функции f (х ) и максимальноrо значения функции f(x*) сводится к задаче ми нимизации функции f (х ), поэтому ниже будем рассматривать только задачу минимизации. Число х* Е Х называется mО'Ч1\,ои абсолюm'НО20 (2лобаЛЪ'НО20) .ми'Ни.му.ма функции f(x), а значение f(x*) 2лобалъ'Нъt.м .ми'Ни .му.мо.м, если f(x*) f(x) для всех х Е х. Число х Е Х называется mО'Ч1\,ои ЛО1\,аЛЪ'НО20 .ми'Ни.му.ма, ec ли существует такое число д > О, что выполняется HepaBeH ство f(x) f(x) для всех точек х, удовлетворяющих условию 'Х хl < д; значение f(x) называется ЛО1\,алъ'Н'Ы.м .ми'Ни.му.мо.м. Будем рассматривать у'Нu.модаЛЪ'НЪtе фУ'Н1\,цuu f (х) функ ции, имеющие один минимум в области х. Функция f ( х) называется унимодальной на отрезке [а, Ь], если она непрерывна на [а, Ь] и существуют числа о: и {3, а о: (3 Ь, такие, что 1) на отрезке [а, 0:] f ( х) монотонно убывает; 2) на отрезке [(3, Ь] f(x) монотонно возрастает; 3) на отрезке х Е [о:, (3] f(x) имеет минимум f* == min f(x). xE[o:,l1] Существует два критерия унимодальности, используемые на практике: 1) если функция f(x) дифференцируема на отрезке [а, Ь] и производная f' (х) 'Не уБЪtваеm на этом отрезке, то f (х) y'Ни.мo далъ'На. 2) Если функция f(x) дважды дифференцируема на отрезке [а, Ь] и f"(x) О на этом отрезке, то f(x) у'Нu.модалъ'На. Пример 5.1. Показать, что функция f(x) == х 4 10х 3 + + 36х 2 + 5х унимодальна на отрезке [3; 5]. Реш е н и е. Вторая производная функции f (х) равна f" (х) == == 12х2 60х + 72. Корни полученноrо квадратноrо трехчлена: Х1 == 2 и Х2 == 3. Следовательно f"(x) о при х Е ( oo, 2] U U [3,00). Пересечением этих промежутков с заданным отрезком
952] Методъ" безуслов'Н,ой ми'Н,имизации фу'Н,х:ций од'Н,ой nереме'Н,'Н,ой 197 будет отрезок [3; 5] и по второму критерию унимодальности заключаем, что f(x) унимодальна на х Е [3; 5]. Пря.мЪtе методы минимизации основаны на вычислении толь ко значений минимизируемой функции и не используют значе ний ее производных. Из прямых методов минимизации рассмотрим методы пере бора, половинноrо деления, золотоrо сечения. 5.2.1. Метод перебора. Метод перебора является про стейшим методом из прямых методов минимизации, но он яв ляется и самым надежным методом в смысле rарантированноrо нахождения минимальноrо значения. Пусть f(x) унимодальна на х Е [а, Ь]. Требуется найти точку минимума х* и минимум f(x*) с точностью с > о. b a Отрезок [а, Ь] разбивается точками xi == а + i . , i == О, n, n b a (в простейшем случае n == на n равных частей, rде n b a b a == с). n или € у /(Х т ) xo a Xl ... Х". Х b " Х Рис. 5.1. К методу перебора Вычислив значения f(Xi), i == О, n , путем сравнения находим (см. рис. 5.1) f(x m ) min f(Xi); х* Х т ; f* f(xm).
198 Числе'Н'Нъtе методъ" оптимизации [rл. v Ясно, что значения х* и f(x*) являются приближенными. Поэтому для вычисления минимума с большей точностью С1 (С1 < с) рассматривается отрезок х Е [Xт 1, Х т +1], rде находит ся минимальное значение f(x*), на нем вычисляются значения f(Xj), j == О, k , k == (Хт+1 Xт 1)/C1, И путем сравнения f(Xj) находим более точное значение минимума функции. Достоинства метода простота и надежность, недостаток большое число вычислений значений функции f ( х ) . Пример 5.2. Методом перебора с точностью с == 0,05 найти точку минимума х* и минимальное значение f* функции f(x) == == х 4 + 8х 3 6х 2 72х на отрезке [1,5; 2]. Реш е н и е. Функция f ( х ) на заданном отрезке уни модальна, так как по второму критерию унимодально сти f"(x) == 12х2 + 48х 12 О на промежутках х Е E( oo, 1 J2]U[ 1+J2,oo), rде 1:i:J2 KOp ни квадратноrо трехчлена 12х2 + 48х 12. Выбрав n == == (2 1,5)/0,05 10, вычисл им значение f(Xi) в точ ках Xi == 1,5 + i . 0,05, i == О, 10, поместив их в таб лицу: Xi 1,50 1,55 1,60 1,65 1,70 1,75 f(Xi) 89 4 90 2 91 2 91 8 92,08 92,12 , , , , Xi 1,80 1,85 1,90 1,95 2,00 f(Xi) 919 914 90 5 89,4 88,0 , , , Путем попарноrо сравнения значений f{Xi), i == О, 10, Haxo дим х* 1,75, f* == 92,12. 5.2.2. Метод деления отрезка пополам. Метод деления отрезка пополам сродни итерационному методу деления пополам уточнения корней нелинейных уравнен'ий. Он позволяет постро ить систему вложенных отрезков: [ak, b k ] с [ak l, bk l] С ... с [а, Ь], внутри которых содержится точка минимума х*. Пусть с требуемая точность определения х*. Выбрав 8 Е (о; 2с:), построим последовательности {ak}, {bk}, {x },
95.2] методыl безуслов'Н,ой ми'Н,имизации фу'Н,х:ций од'Н,ой nереме'Н,'Н,ой 199 {x }, k == 0,1,2,... (из интервала (0,2с) б выбирается как можно меньше) по следующей схеме (см. рис. 5.2): у у f( PJ) [( 1) f ( ) f( PJ) 00 == о (00+ Ь о )/2 X&OJ Ь == Ь О х 00 == о (00 + Ь о )/2 X&OJ Ь == Ь О х а б Рис. 5.2. rеометрическая интерпретация метода половинноrо деления аО а; ЬО Ь; (О) ао + Ь о б (О) ао + Ь о + б . х лев 2 ,Х пр 2 1) а1 == ао, Ь 1 == x , если f (x1 B) f (x ) (рис. 5.2 а); а1 == x1 B' Ь1 == Ьо, если f (x1 B) ;? f (x ) (рис. 5.2 б); k) (k l) ak l + bk l + б . Х пр 2 ' f (x1 ;1») f (x l») ; ak == x1 ;1), bk == bk l, если f (x1 ;1») ;? f (x l») . (k l) ak l + bk l б Хлев == 2 ' (k l) ak == ak l, b k == Х пр ,если Процесс останавливается, коrда выполняется неравенство b k ak Ck== C. 2 Окончательное значение точки минимума х* вычисляется ak + b k следующим образом: х* , f* f (х*). 2
200 Числе'Н'Н'Ьtе метод'Ь" оптимизации [rл. v Метод деления отрезка пополам использует значительно меньшее количество вычислений функции f ( Х ), чем метод пе ребора, т. е. является существенно более экономичным. Пример 5.3. Методом деления отрезка пополам решить задачу из примера 5.2. Реш е н и е. Положим 8 == 0,02 < 2с == 0,1 и построим после довательность [ak, bk] вложенных отрезков по выше приведен ному алrоритму: аО == 1,5, ЬО == 2,0 1 (О) ао + Ь о 8 3,5 0,02 1 74 . (О) ао + Ь о + 8 . Х лев 2 2 " Х пр 2 1,76; f (x1 B) == 92,135; f (x ) == 92,096. Поскольку f (x1 B) < f (x ), то х* Е (а о , x ); тоrда а1 == ао == 1,5; Ь 1 == (О) Ь] а} 1,76 1,5 == Х пр == 1,76; С1 == == == 0,13 > с == 0,05. 2 2 2 (1) аl + Ь 1 8 1,5 + 1,76 0,02 1 62 . (1) . Х лев 2 2 " Х пр аl + 1 + 8 == 1,64; f (x1 B) == 91,486; f (x ) == 91,696. Поскольку f ( x1 B) > f ( x ), то х* Е (x1 B' Ь 1 ); тоrда а2 == (1) Ь 2 а2 1,76 1,62 == Хлев == 1,62; Ь 2 == Ь 1 == 1,76; С2 == == == 0,07 > 2 2 > с == 0,05. 3 (2) а2 + Ь 2 8 1,62 + 1,76 0,02 1 68 . (2) . Хлев 2 2 , , Х пр с а2 + Ь 2 + 8 . ( (2» ) . ( (2» ) 2 1,70, f Хлев 91,995, f Х пр 92,084. Поскольку f(x1 B) > f(x ), то х* Е (x1 B,b2); тоrда аз == (2) Ь з аз 1, 76 1,68 == Хлев == 1,68; Ь з == Ь 2 == 1,76; сз == == 0,04 < 2 2 < с == 0,05. Заданная точность достиrнута, и, следовательно х* аз + Ь з * ) == == 1,72; f == f (1,72 == 92, 13. 2 5.2.3. Метод золотоrо сечения. Метод золотоrо сечения так же является nря.мЪt.м методом, не использующим производ ные функции f (х ). Он позволяет сократить вычисления функ ции f (х) по сравнению с методом деления пополам, вычисляя не два значения на каждой итерации, а одно.
95.2] Методъ" безуслов'Н,ой ми'Н,имизации фу'Н,х:ций од'Н,ой nереме'Н,'Н,ой 201 Деление отрезка на две неравные части так, что отношение длины Bcero отрезка к длине большей части равно отношению длины большей части к длине меньшей части, называется золо тЪtМ сечением. Золотое сечение отрезка [а, Ь] осуществим двумя точками Х1, Х2 (рис. 5.3): з V5 VБ 1 Х1 == а + 2 (Ь а), Х2 == а + 2 (Ь а), причем Х1 < Х2 И Х1 вторая (большая) точка золотоrо сечения отрезка [а, Х2], а Х2 первая (меньшая) точка золотоrо сечения отрезка [Х1, Ь]. Эти значения Х1 и Х2 получены следующим об разом. Пусть Х1 а == [1; Ь Х1 == [2, l == [1 + [2 == Ь а. Тоrда по определению золотоrо сечения [ [2 , [2 [1 откуда [ == (ll + l2)ll; ( ) 2 + 1==0; [2 [2 [1 [2 v5 1 2 { l V5 l l 1 2 2, [1 + [2 == [. Из этой системы находим [1 == 3 v5 [; 2 [2 == v5 l l. 2 Отсюда получаем 3 v5 х 1 == а + (Ь а) == а + 0,38 (Ь а), 2 v5 1 Х2==а+ (b a)==a+0,62(b a), 2 причем, зная одну из точек золотоrо сечения, можно найти дpy rую из равенств X1==a+b X2, X2==a+b X1. Таким образом, алrоритм метода золотоrо сечения следую щий (см. рис. 5.3 а и б):
"" 202 Числе'Н'Нъtе методъ" оптимизации [rл. v у у f( » f (х\О» f(x\°» f( » X ( l O) ==,...( 1 ) а 1 ==ао==а ""'2 xS.°)==b 1 Ь==Ь о х а==ао х\О)==а] x O)==X l) b 1 ==Ьо==Ь х б а Рис. 5.3. К методу золотоrо сечения Строится система вложенных отрезков [ak, b k ] С [ak l, bk l] С . . . с [а, Ь], внутри которых находится точка минимума х*, и последователь (О) (О) (1) (1) (k) (k) ности золотых сечении х 1 , Х 2 ; Х 1 , Х 2 ; ...; х 1 , Х 2 ; ..., (k) (k) причем Х 1 < Х 2 , k O 1,2, . . . , тоrда Рис. 5.3 а . аО а; ЬО Ь; а а . Ь Х (О). 1 == О, 1 2 , (1) (О) (О» ) ( (О» ) Х 2 == Х 1 , если f(x 1 f Х 2 , т. е. вторая точка х l)золотоrо сечения на (1) следующем шаrе имеется, вычисляем первую Х 1 : (1) (1) * ( (О» ) ( Ь ) . Х 1 == а1 + Ь1 Х2' Х Е ао, Х 2 == а1, 1 , Рис. 5.3 б (О) (1) (О) (О» ) f( ( О» ) а1 == Х 1 ; Ь 1 == Ь О ; Х 1 == Х 2 , если f(x 1 > Х 2 , т. е. первая точка x l) золотоrо сечения на (1) следующем шаrе имеется, вычисляем вторую Х 2 : (1) (1) Х 2 а1 + Ь 1 Х 1 , х * Е (х О) , Ь О ) (а 1, Ь 1 ) ; ...............................................................
95.2] Методи безуслов'Н,ой ми'Н,имизации фу'Н,х:ций од'Н,ой nереме'Н,'Н,ой 203 а а . Ь X (k l). k k l, k 2 , Рис. 5.3 а (k) (k l) f( (k l» ) ./ f( (k l» ) Х 2 Х 1 , если Х 1 Х2 , (k) (k) * (k l) . Х 1 ak + b k Х2 , Х Е (ak l, Х 2 ) == (ak, b k ), ( k l) ak == Х 1 ; b k == bk l; Рис. 5.3 б (k) (k l) f( (k l» ) > f( (k l» ) Х 1 X2 , если Х 1 х 2 , (k) (k) * ( (k l) Х 2 == ak + b k Х 1 , Х Е Х 1 , bk l) == (ak, b k ). Значение х* определяется следующим образом: х* х == { X ik }, если f(xi k }) f(x k}), x k}, если f(xi k }) > f(x k}). Останов происходит тоrда, коrда выполняется неравенство Ibk akl с. Поrрешность метода золотоrо сечения оценивается по фор муле ( J5 l ) k Ix* x l 2 (Ь а) , и если задана точность с, то, поскольку поrрешность не превы шает точности, из неравенства ( J52 1 )k (b a) c до начала процесса вычислений находим нижнюю оценку числа шаrов k: k ln € / ln ( VI5 1 ) ::::: 2,1 . ln Ь Е . \ b a 2 a Пример 5.4. Решить задачу примера 5.2 методом золотоrо сечения. Реш е н и е. В соответствии с алrоритмом аО == 1,5, ( О ) 3 VI5 (О) Ь О == 2; Х 1 == ао + 2 (Ь О аО) == 1,691; Х 2 == аО + J5 1 + (Ь О аО) == 1,809. 2
204 Числе'Н'Н'Ьtе метод'Ь" оптимизации [rл. v l й ша2. 1 (x o}) == 92,049; 1 (x o}) == 91,814. Поскольку 1 (x o}) < 1 (x o}), то х* Е (а о , x o}); аl == ао == 1,5; Ь 1 == x o} == == 1,809; еl == Ь 1 аl == 1,809 1,5 == 0,309 > е == 0,05; x l) == == x O) == 1,691. 2 й ша2. Значение x l) == 1,691 имеется, а также имеется 1 (x l») == 1 (x o») == 92,049. Вычисляем x l) == аl + Ь 1 x l) == == 1,5 + 1,809 1,691== 1,618 и f (x ) == f (1,618) == 91,464. По скольку 1 (x l}) > 1 ( x l»), то х* Е (x l), Ь 1 ) == (1,618; 1,809); а2 == x l) == 1,618; Ь 2 == Ь 1 == 1,809; е2 == Ь 2 а2 == 1,809 1,618 == == 0,191 > Е == 0,05; x 2) == x l) == 1,691. 3 й ша2 Значения x 2) == 1,691 и 1 (xi 2 }) == 1 (x l») == == 92,049 уже имеются. Вычисляем x 2) == а2 + Ь 2 x 2) == == 1,618 + 1,809 1,691 == 1,736 и 1 (x 2») == 1 (1,736) == == 92,138. Поскольку 1 (x 2») > 1 (x 2}), то х* Е (x 2); Ь 2 ) == == (1,691; 1,809); аз == x 2) == 1,691; Ь з == Ь 2 == 1,809; ез == Ь З аз == == 1,809 1,691 == 0,118 > е == 0,05; х з) == x 2) == 1,736. 4 й ша2. Значения хР) == 1,736 и 1 (x 3») == 1 (x 2») == 92,138 уже имеются. Вычисляем х з) == аз + Ь З x == 1,691+1,809 1,736 == 1,764 и l(x 3}) == 1(1,764) == 92,083. Поскольку 1 (xi 3 }) < 1 (x 3}), то х* Е (аз,х 3}) == == (1,691; 1,764); а4 == аз == 1,691; Ь 4 == х з) == 1,764; е4 == Ь 4 а4 == == 1,764 1,691 == 0,073 > е == 0,05; x 4) == х з) == 1,736. 5 й ша2. Значения x 4} == 1,736 и 1 (x 4}) == 1 (хР}) == == 92,138 уже имеются; x 4) == а4 + Ь 4 x 4) == 1,691 + 1,764 1,736 == 1,719; 1 (x 4}) == 1 (1,719) == 92,129. Поскольку 1 (x 4») > 1 (x 4}), то х* Е (x 4), Ь 4 ) == (1,719; 1,764); а5 == == 1,719; Ь 5 == 1,764; е5 == Ь 5 а5 == 1,764 1,719 == 0,045 < е == == 0,05.
s 5 3] Метод'Ь" минимизации. Метод Ньютона 205 Требуемая точность достиrнута. Поскольку f (x 4}) == == 92,138 < f (x 4») == 92,129, то в качестве точки минимума принимается точка х* x 4) == 1,736; f* == 92,138. 95.3. Методы минимизации, использующие ПрОИЗБодные. Метод Ньютона Метод Ньютона, как метод с квадратичной скоростью cxo димости, используется на завершающем этапе какоrо либо более rрубоrо метода. Он использует производные l ro и 2 ro порядков, что обеспе чивает очень быструю сходимость. Множество точек Х С R называется вЪtnуrк;.лЪt.м, если OTpe зок [Хl, Х2], соединяющий любые две точки Хl, Х2 Е Х, принад лежит множеству Х, т. е. точки а Хl + (1 а)Х2 Е Х, О < а < 1. Функция f (х) называется вЪtnуrк;.лой на множестве точек х Е Е Х, если для двух точек Хl, Х2 Е Х выполняется неравенство f(a хl + (1 а)Х2) а f(Xl) + (1 a)f(x2), О < а < 1. Будем рассматривать въtnуrк;.лъtе фу'Нrк;ции f (х) на отрезке х Е Е [а, Ь]. ДЛЯ Toro чтобы дваж;дЪt диффере'Нцируемая функция была вЪtnуrк;.лой на отрезке х Е [а, Ь], необходимо и достаточно, чтобы выполнялось неравенство f" (х) о для всех точек. Для выпуклой дважды дифференцируемой функции f (х) на х Е [а, Ь] метод Нъюто'На заключается в построении следующей итерационной последовательности (сравнить с методом Ньютона уточнения корней нелинейных уравнений (2.46), (2.47)): f'(Xk) Xk+l == Xk f"(Xk)' k == О, 1,2 . . . Отсюда видно, что производная BToporo порядка f" (х) на отрезке х Е [а, Ь] не должна быть равна нулю. Для выпуклых функций f (х) это действительно так, в противном случае точки, в которых f" (х) == О, являлись бы точками переrиба функции, а в этих точках минимум (или максимум) функции f(x) OTCYT ствует.
206 ЧислеНН'Ьtе метод'Ь" оптимизации [rл. v Если задана точность е, то останов осуществляется при BЫ полнении условия f'(Xk) с, т. е. коrда касательная к rрафику функции в точке (Xk, I(Xk)) почти rоризонтальна. Тоrда х* Xk и f(x*) f(Xk). Можно показать, что верхняя оценка поrрешности в методе Ньютона представима в виде следующеrо неравенства: I * 1 ./ 2т2 2 k х X k q """ м 1 ' q == 2 Ml If' (хо)1 , т2 k == О, 1, 2, . . . ; M 1 == тах 1/' (x)l; хЕ[а,Ь] т2 == min 1/" (x)1 , хЕ[а,Ь] причем для сходимости метода Ньютона достаточно, чтобы Ha чальное приближение ха удовлетворяло условию q < 1. Пример 5.5. Методом Ньютона найти точку минимума х* и минимальное значение 1* функции 1 (х) == (х 2)4 lnx на отрезке х Е [2; З] с точностью е == If' (xk)1 < 10 7. Реш е н и е. В окрестности этой точки функция f (х) являет ся выпуклой, поскольку f" (х) == 12 (х 2)2 + > О. Вычисле Х ния по методу Ньютона сводятся в следующую таблицу (за Ха принимается любой конец отрезка [2;3]): k xk f (Xk) f' (Xk) о 3 9 86 . 10 2 3,67 , 1 2,6972477 o, 7558859 0,985 2 2,5322701 0,8488508 0,208 3 2,4736906 0,8553636 0,0201 4 2,4663735 0,8554408 0,0003 5 2,4662656 0,8554408 5 . 10 8 < 10 7 Окончательно получаем х* 2,4662656, f* 0,8554408.
s 5.4] Безусловная минимизация Фунх;ций МНО2их nеремеННъtх 207 9 5.4. Безусловная минимизация функций мноrих переменных 5.4.1. Метод rрадиентноrо спуска. Будем рассматри вать выпуклые функции мноrих переменных 1 (х), х == (Хl Х2 . . . Хп)Т, определенные на выпуклых множествах Х из n MepHoro евклидова пространства х Е Х С Е п . Для Toro чтобы функция одной переменной была выпуклой, необходимо и достаточно, чтобы 2 ая производная на всем отрезке [а, Ь] была неотрицательна. Для функций мноrих переменных используется следующий критерий выпуклости. Если f (х) дваж;дЪt диффере'Нцируемая 'На въtnуrк;лом M'НO ж;естве Х С Е п фу'Нrк;ция и матрица ее 'Част'Нъtх nроизвод'НъtХ втОрО20 nорядк,а (.матрица recce) [ : ; ], i, j == 1, n , nолож;u те.лъ'Но оnределе'На для всех х Е Х, то фу'Нrк;ция 1 (х) является вЪtnуrк;ло'Й 'На .м'Нож;естве то'Чеrк; Х. С использованием критерия Сильвестра формулировка этоrо критерия упрощается и принимает следующий вид. Еслu все дuа20'НалЪ'Н'Ьtе .ми'Нор'Ы .матриц'Ы [f iX/X)]' i,j == == 1, n , nолож;ителъ'Нъt 'На м'Нож;естве то'Чеrк; х Е Х, то фу'Нrк; ция 1 (х) вЪtnуrк;.ла 'На этом м'Нож;естве то'Чеrк; Х. Понятие выпуклости функций является исключительно важ ным, поскольку в численных методах оптимизации выпуклых на множестве х Е Х функций задача о нахождении локальноrо минимума на всем множестве точек х Е Х совпадает с задачей нахождения rлобальноrо минимума на этом множестве. Пример 5.6. Выяснить, является ли функция 1 (хl, Х2) == == 2XI + x + sin (Х] + Х2) выпуклой в двумерном простран стве Е 2 . Реш е н и е. Составим матрицу вторых производных: f" (х) == [ f lXl f " Х2 Х l f lX2 ] == [ 4 sin (хl + Х2) f 2X2 sin (хl + Х2) sin (хl + Х2) ] 2 sin(xl+x2) , из которой видно, что диаrональный минор первоrо порядка Дl == 4 sin (хl + Х2) 3 > О на всей плоскости ХI0Х2, п скольку Isin (хl + Х2) I 1. Минор BToporo порядка 2 == 8
208 Числе'Н'Н'Ьtе метод'Ь" оптимизации [rл. v 6sin (хl + Х2) 2 > О по той же причине. На основании кри терия Сильвестра заключаем, что матрица вторых производ ных f" (х) положительно определена на всей плоскости Х1ОХ2, а следовательно, заданная функция является выпуклой на этом множестве. Пусть I(x), х == (хl . . . хп)т, выпуклая дифференциру емая функция на всем множестве точек х Е Х в евклидовом пространстве Е п . Требуется найти точку ее минимума х* и мини мум f(x*). Выбрав произвольное начальное приближение Х(О) Е Е Х С Е п , построим следующую итерационную последователь ность: х ( k + 1) == Х ( k) а k grad f ( х ( k) ) , k == О, 1, 2 . .. , ( 5.1 ) rде величины ak (параметрические шаrи) выбираются дocтa то'Чно маЛЪtми из условия f(x(k+l») < f(x(k»), k == 0,1,2. . . (5.2) Остановимся подробнее на векторном соотношении (5.1). По скольку rрадиент функции мноrих переменных в ортонормиро ванном базисе еl, е2, . . . , е п определяется как вектор grad f(x) == af(x) af(x) af(x) == д еl + д е2 + . . . + д е п , то координатами вектора хl Х2 х п радиента функции мноrих переменных являются частные пр af(x) . 1 .... Ф . изводные д ' z == , n, этои ункции по переменным Xi, z == Xi == 1, n. Тоrда алrоритм (5.1) в скалярной форме принимает вид (k+1) (k) а f (x(k») Х 1 == Х 1 Qk д ' Хl (k+1) (k) а f ( x(k») Х 2 == Х 2 Qk д Х2 (k+l) (k) а f (x(k») х п == х п ak д . Х п
s 5.4 ] Безусловная минимизация Фунх;ций МНО2их nеремеННъtх 209 Окончание процесса устанавливается по близости к нулю grad f(x(k»), Т. е. при выполнении неравенств of(x(k)) е, i == 1, n , (5.3) aXi rде е заданная точность, или Igrad f ( x(k») I == n ( Of(X(k)) ) 2 L ох. . 1 t == е. (5.4) Если условие (5.2) не выполняется, то Qk уменьшается вдвое и алrоритм (5.1) повторяется и т. д. При выполнении усло вий (5.3) или (5.4) полаrают х* x(k) и f(x*) f(x(k»). Алrоритм (5.1) для функции I(x, у) двух переменных приоб ретает вид x(k+l) == x(k) O'.k о f(x(k), y(k) , дх y(k+l) == y(k) O'.k о f(x(k), y(k) . ду Пример 5.7. Методом rрадиентноrо спуска с точностью е == == 0,05 минимизировать функцию 1 (х) == 1 (хl, Х2) == xI + 2x + + ехр (Xl + Х2). Реш е н и е. Вначале необходимо проверить выпуклость функции на множестве х Е Х С Е 2 , для чеrо составляется MaT рица частных производных BToporo порядка: " [ 2 + ехр (хl + Х2) 1 (х)== ехр (xl + Х2) ехр (хl + Х2) ] 4 + ехр (хl + Х2) == 8 + 6 ехр (Хl + Х2) > о, т. е. Д2 > о; Дl == 2 + ехр (Хl + Х2) > о. Таким образом, по критерию Сильвестра заданная функция BЫ пукла на всей плоскости Х1ОХ2-
210 Числе'Н'Н'Ьtе метод'Ь" оптимизации [rл. v Для решения задачи выберем начальное приближение х(О) == == (x O), X O») == (о; о) и 0:0 == 1. l й UШ2: k == о; x O) == о; x O) == о; 0:0 == 1; f (x O), X O») == 1, а f ( Х(О» ) а f ( Х(О» ) == 1; == 1. По формуле (5.1) аХl аХ2 а! ( х(о» ) а! ( х(о» ) Х (l) Х (О) r\J 1 ' Х (l) Х (О) r\J 1 . 1 1 o , 2 2 o , аХl аХ2 f ( х(l) х(l» ) 3 145 > 1 ( х(О) Х(О» ) == 1 l' 2 , l' 2 , т. е. условие (5.2) не выполнено, вследствие чеrо необходимо уменьшить параметрический шаr 00. Уменьшаем ero вдвое, при няв аО == 0,5, и повторяем по (5.1) вычисления с x O) == О и x O) == == о: x == о 0,5 . 1 == 0,5; x == О 0,5 . 1 == 0,5; f ( х(l) х(l» ) 1 118 > f ( Х(О) Х(О» ) 1. l' 2 , l' 1 , условие (5.2) не выполнено. Уменьшаем 00 вдвое: 00 == 0,25: а f ( х(о» ) x l) == x O) аО == О 0,25 . 1 == 0,25; аХl а f ( х(о» ) Х (l) Х (О) r\J О О 2 5 . 1 O 2 5 . 2 2 o а , " Х2 f ( х{l) х(l» ) f ( o 25' o 25 ) == О 794 < f ( Х(О) х(О» ) l' l' 2 ", , l' 2 , а f ( x l), x l» ) == 2x 1) + ехр ( x l) + x l» ) == аХl == 0,5 + ехр ( 0,25 0,25) == 0,106; а f ( x l), x l» ) == 4x 1) + ехр ( x l) + x l» ) == аХ2 == 4 ( 0,25) + ехр (x l) + x l») == 0,393;
s 5.4] Безусловная минимизация Фунх;ций МНО2их nеремеННъtх 211 Igrad f (x(l») I == J 0,1062 + ( 0,39з)2 == 0,407 > е == 0,05. 2 Й ша2. k 1. х(l) == o 25' х(l) o 25. 0 1 О 2 5 . . , 1 "2 " " а f ( X(l» ) х(2) == х(l) Q == o 25 О 25 . О 106 == o 2765. 1 1 1 а ", " Xl (2) (1) 8! ( x(l») Х 2 == Х 2 01 а == 0,25 0,25 . ( 0,393) == 0,1518; Х2 ( (2) (2» ) ( (1) (1» ) 1 Х 1 , Х 2 == 0,774 < f Х 1 , Х 2 == 0,794. Сохраняем значение а1, приняв 02 == 0,25: а f ( 2) (2» ) х;х: Х 2 == 2x 2) + ехр (xi2) + x 2») == 0,0983; а f ( 2) (2» ) х;х: Х 2 == 4x 2) + ехр (x 2) + x 2») == 0,0451; Igrad f (х(2») I == V O,0983 2 + 0,04512 == 0,108 > е == 0,05. з й ша2. k == 2. х(2) == o 2765. х(2) o 1518. а 2 О 25. . , 1 "2 , , " а f ( х(2» ) х(З) == х(2) 0 2 == o 2765 О 25 . О 09 8 3 o 301. 1 1 а ' " ,, Хl (3) (2) 8! (х(2») Х 2 == Х 2 02 а == 0,1518 0,25 . 0,0451 == 0,163; Х2 1 ( Х(З) Х(З» ) == О 772 < О 774. 1 , 2 , " jgrad f ( х(3») I == ( 8! (х(з») ) 2 + ( 8! (х(з») ) 2 aXl аХ2 == J 0,02622 + ( 0,02з)2 == 0,03486 < е. Точность достиrнута, следовательно, х* == (x ; Х 2 ) ( 0,301; 0,163); 1* 0,772.
212 Числе'Н'Н'Ьtе метод'Ь" оптимизации [rл. v 5.4.2. Метод наискорейшеrо спуска. Метод наискорей шеrо спуска отличается от метода rрадиентноrо спуска (5.1) оnтима.лЪ'НЪtм способом оnределе'Ния nараметри'Чесrк;О20 ша2а ak, который находится из условия 'Фk(аk) == min 'Фk(а), 0:>0 (5.5) rде 'Ф k ( а) == f ( х ( k) а grad f ( х (k ) ) ) . (5.6) Здесь f(x(k) а grad f(x(k»)) == ( д f ( { k } (k ) ) д f ( (k ) (k ) )) f (k) Х 1 , . . . , Х п (k) Х 1 , . . . , Х п Х 1 а д ' . .. , х п а д . Хl Х п После минимизации функции 'Ф(а) одной переменной а най денное значение а* принимается за ak, после чеrо реализуется метод rрадиентноrо спуска: х (k+ 1) == Х (k) а k grad f ( х (k) ) , k == о, 1, 2, . . . Окончание итерационноrо процесса устанавливается при BЫ полнении условия (5.3) или (5.4). Таким образом, на каждом шаrе метода наискорейшеrо спус ка решается задача минимизации (5.5), (5.6) функции 'Ф(а) одной переменной о. При таком выборе ak достиrается максимально возможное уменьшение функции f ( х ). Можно показать, что в методе наискорейшеrо спуска grad f(x(k») и grad f(x(k+1») ортоrональны, т. е. скалярные про изведения (grad f(x(k»), grad f(x(k+1»)) == о. Пример 5.8. Методом наискорейшеrо спуска решить задачу примера 5.7. Решение. 1 й ша2: k == о. Выберем начальное приближение х(О) == (xi O ), x O») == (о; о) .
s 5.4 ] Безусловная минимизация Фунх;ций МНО2их nеремеННъtх 213 Тоrда 8! (х(О») == 1; аХ1 8! (х(О») == 1; аХ2 'Фо ( о) == 1 (О о . 1, О о . 1) == 1 ( а, о) == 302 + ехр (20) . Для минимизации Фо (о) используем метод перебора, для чеrо составляется сеточная функция для функции 'Фо (о): а 0,18 0,20 0,22 0,24 0,26 'Фа (а) О, 7949 О, 7903 0,7892 0,7916 О, 7973 Отсюда ясно, что о == 00 == 0,22 и ( x l) ) == ( О ) 00 ( д! (х(0»)/ дХ 1 ) == ( о ) x l) О af(x(0»)/ aX 2 О ( 1 ) ( 0,22 ) о 22 . , , 1 0,22 Igrad f ( x(l») I == ( 8! (x(l») ) 2 + ( 8! (x(l») ) 2 аХ1 аХ2 == J (0,204)2 + ( 0,236)2 == 0,312 > с. 2 Й шаz. k == 1. х(l) == ( х(l) х(l» ) == ( o 22. o 22 ) . ., l' 2 "" 8! (x(l») . 8! (x(l») . а 0,204, а 0,236, Х1 Х2 'Ф1 (о) == f ( 0,22 0,2040; 0,22 + 0,2360) == == ( 0,22 0,2040)2 + + 2 ( 0,22 + 0,2360)2 + ехр ( 0,44 + 0,0320) == == 0,1452 0,11790 + 0,15302 + ехр ( 0,44 + 0,0320). Минимизируем 'Ф1 (о):
11"'"""""""" 214 Числе'Н'Н'Ьtе м,етод'Ь" оnтим,изации [rл. v а 0,28 0,30 0,32 0,34 0,36 'Ф1 (а) О, 774 О, 77384 0,7738 0,77387 0,7741 Т. е. о == 01 == 0,32; ( x 2 ) == ( 0,22 ) 0,32 ( 0,204 ) == ( 0,2853 ) ; х 2 2 0,22 0,236 0,1445 Igrad f ( х(2») I == ( 8! (х(2)) ) 2 + ( 8! (х(2)) ) 2 дХ1 дХ2 == J O,08 2 + 0,072642 == 0,1081 > е. з й ша2. k == 2. х(2) == ( х(2) х(2» ) ( o 2853. o 1445 ) . ., l' 2 , , , , д f ( х(2» ) д f ( х(2» ) == О 08. == О 07264. д " д " Х] Х2 'Ф2 (о) == ( 0,2853 0,080)2 + + 2 ( 0,1445 0,072640)2 + ехр ( 0,43 0,15260) . Минимизируем 'Ф2 (о): а 0,20 0,22 0,24 0,26 0,28 'Ф2 (а) 0,77273 0,77241 0,77240 0,77241 О, 77244 Т. е. о == 02 == 0,24. Тоrда ( (З» ) ( (2» ) : 3) == : 2) а2 8! ( х(2) ) дХ1 == ( 0'2853 ) 8! (х(2») 0,1445 дХ2 0,24 ( ::: 264 ) == ( =:::::: ) ;
s 5.4] Безусловная минимизация Фунх;ций МНО2их nepeMeHH'btX 215 ( 8! (х(З») ) 2 + ( 8! (х(З») ) 2 == Igrad f ( х(3») I == 8Xl 8Х 2 == J ( 0,018з)2 + ( 0,020з)2 == 0,0273 < с == 0,05. Заданная точность достиrнута. Следовательно, х* х(3) == ( 0,305; o, 162) ; f* f ( х(3») == 0,772. Можно показать, что если f (х) квадратичная функция, 1 f (х) == (Qx, х) + (Т, х), rде Q симметрическая матрица 2 коэффициентов при квадратичных слаrаемых (Q == QT), Х == == (Х1 Х2 . . . Хп)Т, r == (Т1, Т2, . .. , Тп)Т коэффициенты при линейных слаrаемых, (х, у) скалярное произведение, то вели чина параметрическоrо шаrа 0k может быть найдена в явном виде: °k == ( grad ! ( Х (k») , grad! (х (k) ) ) ( Q grad! (x(k») , grad! (x(k»)) , (5.7) причем grad f (x(k») == Qx(k) + Т. 5.4.3. Метод сопряженных направлений. Метод co пряженных направлений состоит в построении последовательно сти x(k+1) == x(k) OkP(k) , k == 0,1,2, . .. , (5.8) rде 0k выбирается так же, как и в методе наискорейшеrо спуска: 'Фk(Оk) == min 'Фk(О), 0:>0 'Фk(О) == f(x(k) О p(k»), а направление спуска р( k) С помощью выражения р ( k) == grad f ( х ( k») + (3 k Р ( k 1) , k == 1, 2, . . . (5.9) (30 == О, р (О) == grad f ( х (О) ) ; (5.10)
216 Числе'Н'Н'Ьtе м,етод'Ь" оnтим,изации [rл. v . n l [ 8 f ::k») ] 2 Igrad f(x(k»)1 2 fЗk == 2 2 . Igrad f(x(k l»)1 [ 8 f i l») ] (5.11) Критерием останова является выражение (5.3) или (5.4), т. е. { п [ д (k) ] 2 } 1/2 Igrad f(x(k»)1 == f :i) С. Таким образом, метод сопряженных направлений отличает ся от метода наискорейшеrо спуска только выбором направ ления уменьшения функции на каждом шаrе ( p(k) вместо grad f ( х ( k ) ) ) . Отметим, что p(k) в (5.9) определяется не только антиrра диентом grad f(x(k»), но и направлением спуска p(k l) на предыдущем шаrе. Это позволяет более полно, чем в методах rрадиентноrо и наискорейшеrо спуска, учитывать особенности функции f(x) при построении итерационноrо процесса (5.8). Для квадратичных функций в Е п требуется не больше n итераций метода сопряженных направлений. Пример 5.9. Методом сопряженных направлений найти точки минимума х* функции f (х) == xi + 2x + Х1 . Х2 7Х1 7 Х 2. Реш е н и е. Поскольку f (х) квадратичная функция, за данная в Е 2 , то точка минимума х* может быть найдена после двух шаrов метода сопряженных направлений. Шаz 1: k == о. Выбрав начальное приближение Х(О) == (о; 0), по формулам (5.9) (5.11) находим р(О) == grad f(x(O») == ( 2Х 1 + Х2 7; 4Х2 + Х1 7)lx(o) == == ( 7; 7) ; 'Фо (о) == 98 (2а 2 а) . Из условия 'Ф (00) == о минимума 'Фо (о) получим 00 == 0,25. Отсюда ( x l» ) == ( x o» ) 00 ( p O» ) == ( о ) 0,25 ( 7 ) == ( 7/4 ) (1) (О) (О) О 7 7/4 Х 2 Х 2 Р2
s 5.4] Безусловная минимизация Фунх;ций МНО2их nepeMeHH'btX 217 Шаz 2: k == 1; grad f ( x(l») == ( : ; : ) , откуда с учетом (5.11) имеем 1 (31 == 16 ' ( p l) ) == ( 7 /4 ) + ( 7 ) == ( 35/16 ) . p l) 7/4 16 7 21/16 49 ( 7 ) Поэтому 'Ф1 (о) == 02 40 392 и 01 == 4/7. 32 2 Окончательно: ( x i2 » ) ( x l» ) ( p l» ) ( 7/4 ) 4 ( З5/16 ) ( 3 ) x 2) == x l) 0:1 p l) == 7/4 7 21/16 == 1 . Итак, х* == (xi, х 2 ) == (3; 1); f* == f (х*) == 14. УП Р АЖНЕНИЯ. 5.1. Показать, что следующие функции на отрезке [а, Ь] ЯВ ЛЯЮТСЯ унимодальными: а) f (х) == х 2 3х + х .lnx, х Е [1; 2]; б)/(х)==lП(1+х2) Siпх, ХЕ[О; 1r/4]; в) f (х) == x2 sinx, х Е [о; 1]. 2 5.2. Методом перебора с точностью е == 0,05 найти точку минимума х* функции f (х) на отрезке [а, Ь] и минимум f*: а) f (х) == х 2 2х + e X, х Е [1; 1,5]; б) f (х) == tg х 2 sin х, х Е [о; 1r / 4] ;
218 Числе'Н'Н'Ьtе м,етод'Ь" оnтим,изации [ rл. v в) f (х) == х З 3sin х, х Е [0,5; 1,0] ; 1 r) f(x) == хЗ 5x+x .lnx, х Е [1,5; 2]; 3 д)f(х)== V 1+х2+е 2х, ХЕ[О; 1]. 5.3. Методом деления отрезка пополам с точностью е найти точку минимума х* функции f (х) на отрезке х Е [а, Ь] и мини мум f*: а) f (х) == х. sinx + 2cosx, х Е [ 5; 4], е == 0,02; х 2 б) f (х) == 10х .ln х з' х Е [0,.5; 1], е == 0,05; в) f (х) == зх 4 10х З + 21х 2 + 12х, х Е [о; 0,5], е == 0,01; 1 r) f (х) == е Х хЗ + 2х, х Е [ 1,5; 1], е == 0,01; 3 д) f(х)==х6+зх2+6х 1, XE[ l; О], е==О,l. 5.4. Методом золотоrо сечения с точностью е найти точку минимума х* функции f (х) на отрезке х Е [а, Ь] и минимум f*: а) f (х) == х 2 + 3х (lnx 1), х Е [0,5; 1], е == 0,05; х 2 б) f(х)==10х.lпх з, хЕ [0,5; 1], е ==0,05; в) f (х) == (х + 1)4 2х 2 , Х Е [ 3; 2], е == 0,025; r) f (х) == х 4 + 2х 2 + 4х + 1, х Е [ 1; О], е == 0,1; ......
s 5.4] Безусловная минимизаци.я Фунх;ций МНО2их nepeMeHH'btX 219 д) f (х) == х 5 5х З + 10х 2 5х, х Е [ 3; 2], е == 0,1. 5.5. Методом Ньютона на всей числовой оси минимизировать функции f (х) с точностью € == 10 4: а) f(x)==2x 2 +x+cos 2 x; б) f (х) == е Х + e 2x + 2х; в) f(x)==x 2 +x+sinx; r) f(x)==x2 x+e x; д) f (х) == х 2 + e X. 5.6. Убедиться в выпуклости следующих функций f (х) на всем пространстве Е2: а) f(X1' Х2) == J 1+xi+x ; 2 2 Хl Х2 б)f(Х1,Х2)==Х1+Х2 СОS ; 2 в) f (Х1, Х2, хз) == ехр (XI + x + x ) ; r) f (Х1, Х2, хз) == 5xI + 5x + 4x + 4Х1Х2 2Х2ХЗ. 5.7. Методом rрадиентноrо спуска с точностью е найти точку минимума х* и минимум f* на отрезке х Е [а, Ь]: а) f (х) == 2xI + x + Х1Х2 + Х1 + Х2, Х(О) == (о; о) для 00 == 0,265; 00 == 0,5;
220 Числе'Н'Нъtе м,етодъ" оnтим,изации [rл. v б) 1 (х) == xi + x + x + Х1ХЗ + Х2ХЗ, Х(О) == (о; 1; О) для 00 == О, 1; аО == О, 638; аО == 10. в) 1 (х) == ехр (х I) + (х 1 + х 2 + х з) 2, х (О) == (1; 1; 1); аО == 0,1; аО == 0,2127. 5.8. Методом наискорейшеrо спуска с точностью с == 0,05 найти точку минимума х* и минимум f*: а) 1 (х) == 2xI + x + Х1Х2, Х(О) == (о; О); б) 1 (х) == xi + x + x + Х1ХЗ + Х2ХЗ, х(О) == (о; 1; О); в) 1 (х) == ехр (xI) + (Х1 + Х2 + хз)2, Х(О) == (о; 1; О); r) 1 (х) == xI + 4Х1Х2 + 17x + 5Х2, Х(О) == (о; 1; О). 5.9. Методом сопряженных направлений с точностью е == == 0,001 найти точку минимума х* и минимум 1*: а) 1 (х) == Х1 + 5Х2 + ехр (XI + x ) ; б) 1 (х) == xi + 3x + cos (Х1 + Х2); в) 1 (х) == xI + ехр (xi + x ) + 4Х1 + 3 Х 2; r) 1 (х) == xi + 2x + XIX + 2Х1 + Х2; д) 1 (х) == ехр (XI + x ) + ln (4 + x + 2x ) ; е) 1 (х) == Х1 + Х2 5хз + ехр (xi + 2x + x ) .
Ч а с т ь 11 числЕнныIE мЕтодыI РЕШЕНИЯ ЗАДАЧ ДЛЯ УРАВНЕНИЙ МАТЕМАТИЧЕСКОЙ ФИЗИКИ Наиболее распространенными численными методами реше ния задач математической физики в настоящее время являются следующие: метод конечных разностей (МКР), метод конечных элементов (МКЭ), метод rраничных элементов (мrэ). Ниже наиболее подробно рассматриваются методы конечных разностей и конечных элементов. r л А В А VI МЕТОД КОНЕЧНЬIХ РАЗНОСТЕЙ Проrрамма Постановка задач математической физики для уравнений различ ных типов. Основные определения при замене дифференциальных операторов конечно разностными: сетка, сеточная функция, шаблон, временной слой, явная и неявная конечно разностные схемы. Конечно... разностные схемы для уравнений математической физики различных типов. Основные понятия, связанные с конечно разностной аппрокси мацией дифференциальных задач: аппроксимация и порядок аппрок симации, устойчивость, сходимость и порядок сходимости, KOHcepBa тивность и корректность. Теорема эквивалентности. Анализ порядка аппроксимации. Исследование устойчивости. Метод rармоническоrо анализа, принцип максимума, спектральный метод, энерrетический метод для явных и неявных схем. Метод конечных разностей pe шения параболических задач, однородные и консервативные схемы. Неявно явные схемы, схема Кранка Николсона. Методы прямых. Me
222 Метод х;оне'Ч,нъI,Х разностей [rл VI тод конечных разностей решения эллиптических задач, явные, неяв ные, неявно явные схемы. Конечно разностная аппроксимация Kpae вых условий, содержащих производные. Метод установления и ero обоснование для эллиптических задач. Разностно итерационный метод Либмана. 96.1. Постановка задач математической физики Чтобы поставить задачу математической физики, необходимо вывести дифференциальное уравнение в частных производных, описывающее рассматриваемый физический процесс, а также Ha чальные и краевые условия. При этом начальные условия ставят ся для уравнений, содержащих частные производные по времени (уравнения описывают нестационарные физические процессы). Краевые (rраничные) условия ставятся для уравнений, описыва ющих физические процессы в оrраниченных областях. Задачи математической физики, содержащие начальные и краевые условия, называются на'Чалъно rк;раевЪtми; задачи, co держащие только rраничные условия rк;раевЪtми, а задачи, содержащие только начальные условия (в бесконечных обла стях) зада'Чами Коши. Известно, что количество условий и вид начальных и Kpae вых условий зависят от типов уравнений математической физи ки, среди которых различают параболический, rиперболический и эллиптический типы, количества rраниц, количества разрывов в rраничных условиях, порядка дифференциальных уравнений. Вывод основных уравнений математической физики, началь ных и краевых условий к ним дается в курсе « Уравнения Ma тематической физики». Здесь же оrраничимся математической формулировкой типовых задач математической физики. 6.1.1. Постановка задач для уравнений параболиче... CKoro типа. Классическим примером уравнения параболиче cKoro типа является уравнение теплопроводности (диффузии). В одномерном по пространству случае однородное (без источников энерrии) уравнение теплопроводности имеет вид 8и 28 2 и == а О < х < l, t > О. 8t 8х 2 , (6.1)
r s 6.1 ] п остановх;а задач м,атем,атичесх;ой физих;и 223 Если на rраницах х ==0 и х == l заданы значения искомой функции и(х, t) в виде ( I I 1, и(О, t) == 'Pl(t), х == о, t > о, (6.2) u(l, t) == 'P2(t), х == l, t > о, (6.3) т. е. zра'Ни'Ч'НЪtе условия nepBOZO рода, и, кроме Toro, заданы Ha чальные условия и(х,о) == 'Ф(х), О х l, t O , (6.4) то задачу (6.1) (6.4) называют первой 'На'Чалъ'Но rк;раевой зада'Чей для урав'Не'Ни-я теnлоnровод'Ности (6.1). в терминах теории теплообмена и(х, t) распределение температуры в пространственно временной области n х Т == == {о х l; о t Т}, а 2 коэффициент температуропро водности, а (6.2), (6.3) с помощью функций 'P1(t), 'P2(t) задают температуру на rраницах х == О и х == l. Если на rраницах х == О и х == l заданы значения производных искомой функции по пространственной переменной: аи(О, t) == ( t ) ах 'Р1, х == о, t > О, (6.5) au(l, t) ( ) ах == 'Р2 t , х == l, t > о, (6.6) т. е. zра'Ни'Ч'НЪtе услови-я второzо рода, то задачу (6.1), (6.5), (6.6), (6.4) называют второй начально краевой задачей для уравнения теплопроводности (6.1). В терминах теории теплообмена на rpa ницах в этом случае заданы тепловые потоки. Если на rраницах заданы линейные комбинации искомой функции и ее производной по пространственной переменной: аи(О, t) ах + Q и (О, t) == 'Р1 (t) , х == О, t > О, (6.7) au(l, t) ах + (3 u(l, t) == 'P2(t), х == l, t > о, (6.8) т.е. 2ра'Н'lL'Ч'НЪtе услови-я третъеzо рода, то задачу (6.1), (6.7), (6.8), (6.4) называют третьей начально краевой задачей для уравнения теплопроводности (6.1). В терминах теории теплообмена rранич
224 Метод х;оне'ЧНЪtХ разностей [rл. VI ные условия (6.7), (6.8) задают теплообмен между f1азообразной или жидкой средой с известными температурами 'P1(t)/0 на rранице х == О и 'Р2 (t) / (3 на rранице х == l и rраницами расчетной области с неизвестными температурами и(О, t), и(l, t). Коэффи циенты О, (3 известные коэффициенты теплообмена между rазообразной или жидкой средой и соответствующей rраницей. Для пространственных задач теплопроводности в области n == n + r первая начально краевая задача имеет вид ди ( а 2 и а2и а 2 и ) a == а 2 """"""""2 + """"""""2 +""""""""2 , М ( х, у, z) Е п, t > о; t ах ау az (6.9) и(М, t) == 'Р(М, t), М(х, у, z) Е r, t > о; (6.10) и(М, о) == 'Ф(М), М(х, у, z) Е п , t == о. (6.11) Аналоrично ставится вторая и третья начально краевые за дачи для пространственноrо уравнения (6.9). На практике часто ставятся начально краевые задачи теп лопроводности со смешанными краевыми условиями, коrда на rраницах задаются rраничные условия различных родов. 6.1.2. Постановка задач для уравнений rиперболиче... CKoro типа. Классическим примером уравнения f1иперболиче cKoro типа является волновое уравнение, которое в области О < < х < l, t > О имеет вид а 2 и 2 а2и ==a а t 2 а х 2 , о < х < l, t > о. Здесь и(х, t) малые продольные или поперечные переме щения (колебания) стержня, а скорость звука в материале, из KOToporo изrотовлен стержень. Если концы стержня движутся по заданным законам, то есть на концах заданы перемещения (или значения искомой функ ЦИИ), то первая на'Чалъно rк;раевая зада'Ча для волновО20 уравнения имеет вид (причем, если концы стержня жестко закреплены, то 'P1(t) == 'P2(t) == о)
т s 6.1 ] п остановх;а задач м,атем,атичесх;ой физих;и 225 а 2 и а 2 и == a2 О < х < l, t > о; а t 2 а х 2 , (6.12) и(О, t) == 'P1(t), х == О, t > о; (6.13) и(l, t) == 'P2(t), и(х,о) == 1/J1(X), аи(х,о) '1/, ( ) а t 0/2 Х , х l , t > о; (6.14) о х l, ( 6.15) t == о; о х l, ( 6.16) t == о. Как видно, в задачах для волновоrо уравнения, кроме Ha чальноrо распределения искомой функции, задается еще распре деление начальной скорости перемещения. Если на концах стержня заданы значения силы, которые пропорциональны значениям производной перемещения по -про странственной переменной (т. е. на концах заданы значения первых производных по переменной х), то ставится вторая 'На'Ча.лъ'Но rк;раевая зада'Ча д./tя вол'НовО20 урав'Не'Ния: а 2 и а 2 и == a2 О < х < l, t > о; а t 2 а х 2 , а и(О, t) == ( t ) ах 'Р1, а и(l, t) == ( t ) а х 'Р2, и(х, о) == 1/J1(X), ди(х,о) fJ/, ( ) 0/2 Х , at х == О, t > о; х == l, t > о; о х l, t == о; O x l, t==o. в условиях, коrда концы стержня сво60д'НЪt, функции 'Pl(t) == == 'P2(t) == о. Наконец, в условиях, коrда концы закреплены УnРУ20, т. е. на концевые заделки действуют силы, пропорциональные переме щениям, ставится третъя 'На'Ча./tъ'Но rк;раевая задача для во./t'Новоzо урав'Не'Ния: д 2 и 2 д2и ==a д t 2 д х 2 , о < х < l, t > о; д и(О t) д х,' + аи(О, t) == rp1 (t), 8 В.Ф. Формалев, д.л. Ревизников х == о, t > о;
I 226 Метод х;оне'ЧН'ЬtХ разностей [rл. VI а и(l t) д ; + (3 u (l, t) == 'Р2 (t), х == l, t > о; и( х, о) == 'Ф1 (х), о х l, t == о; ди(х,о) r)/, ( ) 0/2 Х , at о х l, t == о. Аналоrично ставятся двумерные и трехмерные начально краевые задачи для двумерноrо и TpexMepHoro волновоrо ypaB нения. Необходимо отметить, что волновое уравнение леrко TpaHC формируется в систему уравнений arк;ycтиrк;и, являющихся про стейшей линейной моделью rазодинамических течений. Действительно, введем следующие обозначения: ди д t == Р, ( 6.1 7) ди д х == v. (6.18) Продифференцируем (6.17) по переменной t, а (6.18) по пе ременной х, результат подставим в волновое уравнение, получим др 2av {)i==a дх . (6.19) Продифференцируем затем (6.17) по х, а (6.18) по t и, полаrая, что смешанные производные от и(х, t) по переменным х и t не зависят от порядка дифференцирования, получим av др ( 6.20 ) at дх. Здесь Р, v возмущения (слабые колебания) давления и CKO рости В акустической волне, а систему (6.19), (6.20) называют уравнениями акустики. Поскольку (6.19), (6.20) линейное при ближение уравнений rазовой динамики, они используются для исследования устойчивости численных методов решения ypaBHe ний rазовой динамики. 6.1.3. Постановка задач для уравнений эллиптиче.. CKoro типа. Классическим примером уравнения эллиптическо ro типа является уравнение Пуассона
s 6 1] п остановх;а зада'Ч м,атем,ати'Чесх;ой физих;и 227 а 2 и а 2 и 8х2 + 8у2 == f(x,y) или уравнение Лапласа при I(x, у) о. Здесь функция и(х, у) может иметь различный физический смысл, например: стационарное, независящее от времени, распре деление температуры, скорость потенциальноrо (безвихревоrо) течения идеальной (без трения и теплопроводности) жидкости, распределение напряженностей электрическоrо и маrнитноrо по лей, потенциала в силовом поле тяrотения и т. п. Если на rранице r расчетной области П == П + r задана ис комая функция, то соответствующая nерва-я rк;раева-я задача для уравнения Лапласа или Пуассона называется зада'Че'Й Дирихле: а 2 и а 2 и 8 х 2 + 8у2 == f(x, у), (х, у) Е П; и(х, y)lr == ср(х, у), (х, у) Е r. (6.21) (6.22) Если на rранице r задается нормальная производная искомой функции, то соответствующая втора-я rк;раева-я задача называется задачей Неймана для уравнения Лапласа или Пуассона: а 2 и а 2 и 8 х 2 + 8 у2 == f ( х , у ) , аи(х,у) ап (х,У)ЕП; (6.23 ) == ср(х, у), r (х,у) Е r. ( 6.24 ) При этом n направление внешней к rранице r нормали. Более приемлемой является координатная форма KpaeBoro условия (6.24): аи аи 8 х cos ( n, 1,) + 8 у cos ( n, з) == 'Р ( х, у ) , ............... ............... rде cos(n, i), cos(n, j) направляющие косинусы внешнеrо BeK тора единичной нормали к rранице r, i и j орты базисных векторов. Наконец третья краевая задача для уравнения Пуассона (Ла пласа) имеет вид 8* 228 Метод по'Н,е.ч,'Н,'ьI,Х раз'Н,остей [lЛ VI а 2 и 8 2 и 8х 2 + 8у2 == f(x,y), (х,у) Е Пj 8 и(х, у) + Q ul r == <р(Х, у), (Х, у) Е 1. 8п r За.ме'Чание: следует отметить, что в вышеперечисленных по становках 'Число 1-tа'чалъныlx условий равно nоряд у дифферен'Ци аЛЪНО20 уравненu.я, по времени, а старший порядок производной по времени в начальных условиях на единицу меньше порядка дифференциальноrо уравнения по времени. Старший nорядо производной по nространственной nepe менной в раевыlx условиях равен порядку дифференциальноrо уравнения по пространственной переменной минус единица. Ko личество краевых условий для MHoroMepHbIx задач не оrрани чено, так как на разных участках rраницы MorYT быть заданы rраничные условия различных родов. В одномерных задачах с одной пространственной переменной количество rраничных условий точно равно порядку дифферен циальноrо уравнения по пространственной переменной. 6.2. Основные определения и конечно--разностные u схемы для различных задач математическои физики 6.2.1. Основные определения. Основные определения, связанные с методом конечных разностей, рассмотрим на при мере конечно разностноrо решения первой начально краевой за дачи для уравнения теплопроводности (6.1) (6.4). В этом же параrрафе будут рассмотрены простейшие конечно разностные схемы для задач математической физики, содержащих диффе ренциальные уравнения различных типов. Нанесем на прос:rранственно временную область О Х [, О t Т конечно разностную сетку Wh, т: Wh,T == {Xj == jh, j == О, N; t k == kr, k == О, К}, (6.25) с пространственным шаrом h == l / N и шаrом по времени r == == Т/К (рис. 6.1). Введем два вре.менн'ыlx слоя: нижний t k == kr, на котором pac пределение искомой функции U(Xj, t k ), j == О, N, известно (при
э 6.2 ] Оnределе'Н,ия и схем'Ы для зада'Ч математи'Чеспой физипи 229 k == О распределение определяется начальным условием (6.4) U(Xj, tO) == 'ljJ(Xj)), и верхний временной слой t k + 1 == (k + l)т, на котором распределение иско мо й фу нкции U(Xj, t k + 1 ), j == == О, N, подлежит определе нию. Сето'Чной фун цией зада 'Чи (6.1) (6.4) (обозначение uj) назовем однозначное отобра жение целыlx aprYMeHToB J , k в значения функции uj == == U(Xj, t k ). На введенной сетке (6.25) введем сеточные функции и j , uJ+1, первая из которых из вестна, вторая подлежит определению. Для ее определения в задаче (6.1) (6.4) заме ним (аппроксимируем) дифференциальные операторы отноше нием конечных разностей (см. Э 3.4 «Численное дифференциро вание» ), получим t j6 k+l j 16 k+l j+16 k+l J6 k k+l J6 j 16 k j+l k J6 k ,. tk+ 1 't tk о 1 х h Рис. 6.1. Конечно..разностная сетка 8и k 8 t . J 2 k k 2 k k 8 и == иj+l иj + иj l O ( h 2 ) . 8 х 2 . h 2 + J и +l и 1 1 +0(т), т (6.26) (6.27) Подставляя (6.26), (6.27) в задачу (6.1) (6.4), получим явную оне'Чно разностную схе.му для этой задачи в форме и7+1 uj 2 u j+1 2uj + uj l О ( h2 ) т а h 2 + т + , j==I,N l, k O K I. , , (6.28) и +1 == <Р1 (t k + 1 ), ut+ 1 == <Р2 ( t k + 1 ), k == О, К; и == 'ljJ(Xj), j == О, N. в каждом уравнении этой задачи все значения сеточной функции известны, за исключением одноrо, uJ+1, которое может быть
230 Метод поне'Чн'ых разностей [lЛ VI определено яв'Н,о из соотношений (6.28). В соотношения (6.28) краевые условия входят при значениях j == 1 и j == N 1, а Ha чальное условие при k == о. Если в (6.27) дифференциальный оператор по пространствен ной переменной аппроксимировать отношением конечных разно стей на верхнем временном слое: 8 2 k+1 k+l 2и k + 1 + и k+l и и j + 1 j j l 2 8 х 2 . h 2 + O(h ), (6.29) J то после подстановки (6.26), (6.29) в задачу (6.1) (6.4) получим 'Н,еяв'Н,ую 'Х;о'Н,е'Ч'Н,о раз'Н,ост1-tую схе-му для этой задачи: и +l и и k + 1 2и k + 1 + k+l 1 1 == а2 j+l j иj l + О(т + h2), т h 2 j==1,N 1, k== O K l. , , (6. ЗО) и +l == 't'1(t k + 1 ), и +1 == 'P2(t k + 1 ), k О К 1. , , и == 'ljJ(Xj), j == о, N. Теперь сеточную функцию и +1 на верхнем временном слое J можно получить из решения СЛАУ (6.ЗО) с трехдиаrональной матрицей. Эта СЛАУ в форме, приrодной для использования метода проrонки, имеет вид аl == о; Ь U k+1 + С U k+1 d 1 1 1 2 1, j == 1, k+1 Ь k+l k+1 d ajUj 1 + jU j + CjU j + 1 == j, j == 2, N 2, CN 1 == о; k+1 Ь k+1 d aN lUN 2 + N lUN l == N l, J . N 1 , r д е а. о" З . 2 N 1. Ь. ( 1 + 20" ) З . 1 N 1. с. о" З , , , З , , , З , j == 1, N 2; d j == uj, j == 2, N 2; d 1 == (и + 0"'t'l(t k + 1 )); а 2 т dN l == (u l + o-Ip2(t k + 1 »j о- == h 2 . Шабло'Н,о-м конечно разностной схемы называют ее rеометри ческую интерпретацию на конечно разностной сетке. На рис. 6.2 приведены шаблоны для явной (6 28) инеявной (6.ЗО) конечно разностных схем при аппроксимации задачи (6 l) (6.4) .
э 6.2 ] Оnределе'Н,uя u схемъ" для зада'Ч математu'Чес'К;ой физu'К;u 231 k+l j l j j+l k+l k j l j j+l k а 6 Рис. 6.2. Шаблоны явной (а) инеявной (6) конечно разностных схем для уравнения теплопроводности 6.2.2. Конечно..разностная аппроксимация задач для уравнений rиперболическоrо типа. Рассмотрим первую начально краевую задачу для волновоrо уравнения (6.12) (6.16). На пространственно временной сетке (6.25) будем аппроксими ровать дифференциальное уравнение (6.12) одной из следующих конечно разностных схем: и +l 2и + и l 2 и +l 2и + и l 1 1 1 == а 1 1 1 + о ( т2 + h 2 ) , т 2 h 2 j == 1, N 1; k == 1, 2, . .. (6.З1) с шаблоном на рис. 6.З а и k+l k+l k k j l j+l k l k l J j l J j+l а 6 Рис. 6.3. Шаблоны конечно разностных схем для волновоrо уравнения и +l 2и + и l и +l 2и +1 + и +l 1 т.; 1 == а 2 1+1 2 , l + о (т + h 2 ) , с шаблоном на рис. 6.З б. j == 1, N 1; k == 1,2, . .. (6.З2) 232 Метод поне'Чнъl,Х разностей [lЛ. VI При эт ом схема (6.З1) является яв'Н,ой. С ее помощью решение uJ+1, j == 1, N 1, k == 1,2, . . . , определяется сразу, поскольку значения сеточных функций uJ l, uj на нижних временных слоях должны быть известны. В соответствии с шаблоном для этой схемы порядок аппроксимации равен двум как по пр странственной, так и по временной переменной (достаточно раз ложить на точном решении нецентральные значения сеточной Ф k l k+1 k k 'т1 u ункции U j ,U j , Uj l' U j + 1 в ряд еилора в окрестности центральноrо узла (Xj, t k ) до производных четвертоrо порядка включительно соответственно по переменным t ИХ). Схема (6.З2) является 'Н,еяв'Н,ой схемой, ее можно свести к СЛАУ с трехдиаrональной матрицей, реализуемой методом про rонки. В обеих схемах необходимо знать значения uJ l, uj, j == 1, N 1, k == 1,2, . . . , на нижних временных слоях. Для k == 1 это делается следующим образом: и == 'Фl(Хj), j == О, N, (6.ЗЗ) rде 'Фl(Х) функция из начальноrо условия (6.15). Для определения и} можно воспользоваться простейшей ап проксимацией BToporo начальноrо условия (6.16): 1 о иj иj т == 'Ф2 ( Х j ) . Отсюда для искомых значений и} получаем следующее BЫ ражение: и} == 'Ф1(Хj) + 'Ф2(Хj)Т. Недостатком TaKoro подхода является первый порядок ап проксимации BToporo начальноrо условия. Для повышения по рядка аппроксимации воспользуемся следующей процедурой. Разложим и} в ряд Тейлора на точном решении по времени в окрестности t == о: о 8 2 О 2 1 ( О 8и и т 3 Uj == и Xj, О + т) == Uj + 8 т +"""""""""2 + О(т ). t. 8t. 2 J J Для определения второй производной в полученном выраже нии воспользуемся исходным дифференциальным уравнением 2 о 2 О 8 и 2 8 и 2 " ( ) """""""""2 == а == а 'ljJ 1 Х j . 8t. 8х. J J
""1 э 6.2 ] Оnределе'Н,uя u схем'Ь" для зада'Ч математu'Чеспой фuзuпu 233 в результате получаем искомое значение сеточной функции и} со вторым порядком точности: 2 UЗ == Фl(Хj) + Ф2(Хj)Т + а 2 фr(Хj) . ( 6. З4) Для определения и; из схемы (6.З1) или (6.З2) достаточно (6.ЗЗ), (6.З4) под ставить в соответствующие схемы. При k == 2 значения из, и; сеточной функции известны, а и определяются из схемы (6.З1) или (6.З2) и т. д. Краевые условия (6.1З) и (6.14) в схемах (6.З1), (6.З2) исполь зуются автоматически соответственно при j == 1 и j == N 1, так же как в схемах (6.28), (6.зО) для задачи теплопроводности. 6.2.3. Конечно..разностная аппроксимация задач для уравнений эллиптическоrо типа. Рассмотрим краевую задачу для уравнений Лапласа или Пуас сона (6.21), (6.22) в прямоуrольнике Х Е i,j+l Е [О, [1], У Е [О, [2], на который наложим ceT ку i l,j i,j i+ l,j Wh 1 ,h2 == {Xi == ih 1 , i == О, N1; (6.З5) i,j 1 Yj == jh 2 ,j == О, N2}. Рис. 6.4. Центрально симметричный шаб лон для уравнения Лапласа На этой сетке аппроксимируем задачу (6.21), (6.22) с помощью отношения конеч ных разностей по следующей с хеме (ввод ит ся сеточная функция Uij, i == О, N 1 , j == О, N 2 ): иi+l,j 2иi,j + иi l,j + иi,j+l 2иi,j + иi,j l + о ( h2 + h 2 ) == h2 h 2 1 2 1 2 == f(Xi, Yj), i == 1, N1 1, j == 1, N 2 1, (6.З6) которая имеет второй порядок аппроксимации по переменным х и У, поскольку шаблон центрально симметричен (рис. 6.4). СЛАУ (6.З6) имеет пятидиаrональный вид. Решать ее мож но различными методами линейной алrебры, например методом raycca, итерационными методами, методом матричной проrонки и т.п.
.... 234 Метод 'К;оне'ЧнъI,Х разностей [lЛ. VI Рассмотрим разностно итерационный метод Либмана числен Horo решения задачи Дирихле (6.21), (6.22). Для простоты изло жения этоrо метода примем h 1 == h 2 == h, тоrда из схемы (6.З6) получим (n номер итерации) (n+1) 1 [ (п) (п) (п) (п) h 2 f ] и". и " +1 . + и" 1 " + и. " 1 + и. . 1 . i З " ,} 4 ,] ,] ,з ,з+ " fi,j == f(Xi, Yj), i == 1, N 1 1, j == 1, N2 1. (6.З7) На каж дой координатной линии (например, Yj == const, j == == 1, N 2 1) с помощью линейной интерполяции (см. рис. 6.5) <р (О, Yj) Ulj U2j ... u(N) l}j <р (11' Yj) Yj о lh 2h ... (N 1 1 ) h 11 х Рис. 6.5. К разностно итерационному методу Либмана rраничных значений rp(x, у) определим и ] на нулевой итера ции, подставив которые в (6.37), получим распределение и ] на первой итерации: (1) 1 [ (О) (О) (О) (О) 2 ] и" . и " +1 . + и. 1 " + и" " +1 + и" " 1 h . fi З " , ,] 4 ,} ,} ,} ,] , i == 1, N 1 1, j == 1, N 2 1. Это распределение и ] снова подставляется в (6.37), полу чаем распределение и 2 и т. д. Процесс Либмана прекращается, " ,] коrда "и(п+1) и(п)" с, 11 и(п) 11 == IIf lи 11 ' rде с наперед заданная точность.
""'1 э 6 3 ] осно6ны,e nонятuя поне'Чно разностной аnnро'К;симации зада'Ч 235 З а м е ч а н и е. Метод простых итераций для решения СЛАУ, возникающих при аппроксимации уравнения Пуассона (Лапла са), отличается довольно медленной сходимостью. Этот Heдo статок может стать существенным при использовании мелких сеток, коrда число уравнений в системе становится большим. С более эффективными методами решения таких СЛАУ можно познакомиться, например, в [2]. 6.3. Основные понятия, связанные u u с конечно... разностнои аппроксимациеи дифференциальных задач к основным понятиям, связанным с методом конечных раз ностей, относятся следующие: аппроксимация, порядок аппрок симации, устойчивость, сходимость, порядок сходимости (или точность), консервативность и корректность. Определим каждое из этих ПОНЯТИЙ. 6.3.1. Аппроксимация и порядок аппроксимации. Запишем дифференциальную задачу в операторной форме LU == f, rде L один из дифференциальных операторов: 8 2 82 д фф &,., а и узuо'н'ныl.. 8t 8х 2 , а 2 82 2 &,., а вол'Новоu. 8t 2 8х 2 ' 82 82 + лаnласuа'Н. 8х 2 8у2 , U (х , у) искомая функция, удовлетворяющая дифференциаль ной задаче; f входные данные (т. е. начальные и краевые условия, правые части и Т. п.). Операторная форма (LU)h == fh описывает дифференциальную задачу в узлах сетки, а оператор ная форма LhUh == fh описывает конечно разностную схему на точном решении И(х, t) , т. е. в конечн разностной схеме вместо значений сеточной функции подставлены точные (неизвестные) значения искомой функции. Для перечисленных дифференци альных операторов L конечно разностные операторы Lh имеют вид L==
11""'"- 236 Метод поне'Чнъl,Х разностей [lЛ. VI Ll 2 Ll2 д фф с.- а и у зио'н,'н,ыl.. 7 h 2 , д2 Ll2 a2 вол'Н,овой. 72 h 2 д2 Ll2 + лаnласиа'Н,. hi h Наконец, операторная форма конечно разностной схемы (Ha пример, схемы (6.28) или (6.ЗО)) имеет вид Lh == LhUh == fh. ( 6. З8) Введем норму сеточной функции с помощью выражения Ilиkll == mj' lиjl, k == 0,1,2,... (6.З9) Определение. Ко'Н,е'Ч'Н,о раз'Н,ост'Н,ая схема (6.З8) аnnро'Х;си.. -мирует диффере'Н,циалъ'Н,ую зада'Чу 'Н,а то'Ч'Н,о-м реше'Н,ии, если 'Х;а'Х;ая либо 'Н,ор-ма раз'Н,ости ('Н,е обязателъ'Н,о в виде (6.З9)) II(LU)h LhUh/1 стре-мится'Х; 'Н,улю при т, h о: I/(LU)h LhU h // ) о. T,h O ( 6.40 ) Определение. Ко'Н,е'Ч'Н,о раз'Н,ост'Н,ая схема (6.З8) annpo'X;cи -мирует диффере'Н,циалъ'Н,ую зада'Чу 'Н,а то'Ч'Н,о.м реше'Н,ии с nоряд 1\,о-м р по вре-ме'Н,и и nоряд'Х;о-м q по nростра'Н,стве'Н,'Н,ой nереме'Н,'Н,ой, если 'Х;а'Х;ая либо 'Н,ор-ма раз'Н,ости //(LU)h LhU h // удовлетворяет раве'Н,ству I/(LU)h LhU h // == о (Т Р + h q ) . (6.41 ) Таким образом, если конечно разностная схема аппроксими рует дифференциальную задачу, то речь идет о близости диффе ренциальноrо и конечно разностноrо операторов в узлах сетки. 6.3.2. Устойчивость. Пусть в конечно разностной схеме (6.З8) входные данные fh получили возмущения и приняли зна чения fh. Тоrда сеточная функция Uh также получит возмуще ние и примет значение Uh. Определение. Ко'Н,е'Ч'Н,о раз'Н,ост'Н,ая схема (6.З8) устой'Чива по вход'Н,ъt-м да'н,'н,ыlм,, если 'Н,айдется та'Х;ая 02ра'Н,и'Че'Н,'Н,ая 'X;O'Н, ста'Н,та К > о, 'Н,е зависящая от сето'ч'н,ыlx хара'Х;теристи'Х; Т,
э 6.3 ] OCHoвHЪte понятия поне'Чно..разностной аnnропсимации зада'Ч 237 h и вход'Н,ых да'Н,'Н,ых f h, 'Что выnол'Н,яется 'Н,ераве'Н,ство IIUh Uhl! к Ilfh lhll. (6.42) Таким образом, понятие устойчивости интерпретируется сле дующим образом: конечно разностная схема устойчива, если для малых возмущений входных данных (начально краевых условий и правых частей) конечно разносная схема (6.З8) обеспечивает малые возмущения сеточной функции Uh, т. е. решение с помо щью конечно разностной схемы находится под контролем BXOД ных данных. Если во входные данные fh входят только начальные условия или только краевые условия, или только правые части, то rOBo рят об устоu'Чивости соответственно по 'Н,а'Чалъ'Н,ъt-м услови.я.м, по 'КраевЪt-М услови.я.м или по npaвъt.м 'Частя-м. Определение. Ко'Н,е'Ч'Н,о раз'Н,ост'Н,ая схе-ма (6.З8) абсолюm но (безусловно) устой'Чива, если 'Н,ераве'Н,ство (6.42) вЪtnОЛ'Н,Я ется при люБЪtХ з'Н,а'Че'Н,иях сето'Ч'Н,ъtх хара'Ктеристи'К Т и h, т. е. 'Н,а шаzи сет1\,и 'Не 'Н,а'Кладъtвается 'Н,и'Ка'Ких 02ра'Н,и'Че'Н,ий. Определение. Ко'Н,е'Ч'Н,о раз'Н,ост'Н,ая схема (6.З8) условно устойчива, если 'Н,ераве'Н,ство (6.42) въtnол'Н,яется для сето'Ч'Н,ъtх хара'Ктеристи'К т и h, 'Н,а 'КоторЪtе 'Н,а'Кладъtваются оnределе'Н,'Н,Ъtе 02ра'Н,и'Че'Н,ия 6.3.3. СХОДИМОСТЬ И ПОРЯДОК СХОДИМОСТИ. Оnределе ние. Реше'Н,ие Uh, nолу'Че'Н,'Н,ое с nо-мощъю 'Ко'Н,е'Ч'Н,о раз'Н,ост'Н,ой схе-мъt (6.З8), сходится 'к то'Ч'Н,о-му реше'Н,ию И, если 'Ка'Кая либо 'Н,ор-ма раз'Н,ости 11 и Uh 11 стремится 'к 'Н,улю при стре-мле'Н,ии 'к 'Н,улю сето'Ч'Н,ъtх хара'Ктеристи'К Т, h: НИ Uhll ) о. T,h O ( 6. 4З ) Определение. Ко'Н,е'Ч'Н,о раз'Н,ост'Н,ая схема (6.З8) и-меет p й nорядо'К сходи-мости (nорядо'К то 'Ч'Н,0сти ) по вре-ме'Н,и и q и nоря до'1'\, сходи-мости по nростра'Н,стве'Н,'Н,ой nepe-ме'Н,'Н,ой, если 'Ка'Кая либо 'Н,ор-ма раз'Н,ости IIU Uhll удовлетворяет раве'Н,ству IIU Uhll == О (Т Р + h q ) . ( 6.44 ) Таким образом, порядок сходимости (порядок точности) xa рактеризует близость конечно разностноrо и точноrо (неизвест Horo) решения.
,..... 238 Метод поне'ЧнЪtх разностей [lЛ. VI 6.3.4. Теорема эквивалентности о связи аппроксима.. ции и устойчивости со сходимостью. При численном реше нии задач математической физики в общем случае необходимо исследовать и аппроксимацию, и устойчивость, и сходимость. Однако следующая теорема утверждает, что достаточно исследо вать аппроксимацию и устойчивость, и, в случае положительноrо ответа, сходимость будет обеспечена. Теорема з'К;вивалентности. Если 'Ко'Н,е'Ч'Н,о раз'Н,ост'Н,ая схе-ма (6.З8) аnnро'К;симирует 'Н,а то'Ч'Н,о-м реше'Н,ии диффере'Н, циалъ'Н,ую зада'Чу с p -м nоряд'Ко-м по време'Н,и и q M nоряд'Ко-м по nростра'Н,стве'Н,'Н,ой nepe-ме'Н,'Н,ой и эта схе-ма устойчива, то реше'Н,ие с nо-мощъю этой 'Ко'Н,е'Ч'Н,о раз'Н,ост'Н,ой схемъt сходится 'к реше'Н,ию диффере'Н,циалъ'Н,ой зада'Чи с p -м nоряд1\,О-М по вре-ме'Н,и и q M nоряд1\,О-М по nростра'Н,стве'Н,'Н,ой nереме'Н,'Н,ой. Действительно, следующая цепочка доказывает теорему: IIU Uhll к 11I Ihll == к II(LU)h LhUh11 == о (Т Р + h Q ), откуда IIU Uhll == О (Т Р + h Q ) , что и требовалась доказать. В приведенной выше цепочке первое неравенство записано по условию устойчивости, а последнее равенство по условию аппроксимации. 6.3.5. Консервативность и корректность. Все диффе ренциальные, интеrральные и прочие уравнения характеризу ют некоторые за'Ко'Н,ъt сохра'Н,е'Н,ия какой либо субс rанции (массы, энерrии, импульса и т. п.). Заменяя дифференциальную задачу конечно разностной схемой, можно нарушить эти законы coxpa нения. Определение. Ко'Н,е'Ч'Н,о раз'Н,ост'Н,ая схема 'К;онсервативна, если для 'Н,ее въtnол'Н,яются за'Ко'Н,ъt сохра'Н,е'Н,ия, 'Н,а ос'Н,ове 'КотОрЪtХ nоставле'Н,а диффере'Н,циалъ'Н,ая зада'Ча. В противном случае конечно разностная схема является не'К;онсервативнои, т. е. решение с ее помощью не COOTBeT ствует решению дифференциальной задачи (решается друrая задача). Поэтому неконсервативными схемами пользоваться не рекомендуется. Свойство 'Корре'Кт'Н,ости конечно разностных схем вытекает из свойств аппроксимации и устойчивости.
э 6.4 ] Аналuз nоряд'К;а аnnро'К;симации разностнъl,Х схем 239 Определение. Диффере'Н,циалъ'Н,ая зада'Ча nосmавлена 'К;op ре'К;шно, если въtnол'н,е'н,ыl следующие два условия: 1) зада'Ча од'Н,оз'Н,а'Ч'Н,о разреши-ма при люБыlx вход'н,ыlx да'н,'н,ыl;; 2) реше'Н,ие зада'Чи 'н,еnрерыl'н,оo зависит от вход'н,ыlx да'н,'н,ыl.. По аналоrии определяется и корректность разностной задачи. Определение. Ко'Не'Ч'Но раз'Ност'Ная зада'Ча (6.З8) nocтaв лена 'К;орре'К;шно, если при люБыlx достато'Ч'Н,о аЛЪlХ ша2ах т и h сет'Ки выlол'н,е'н,ъll условия: 1) реше'Н,ие Uh существует и еди'Н,стве'Н,'Н,о при всех вход'н,ыlx да'н,'н,ыlx из 'Н,е'КотОр020 доnустиМ020 семейства; 2) реше'Н,ие Uh 'н,еnрерыl'н,0o зависит от вход'н,ыlx да'Н,'Н,ъtх fh, nри'Че-м эта зависимостъ равномерна от'Н,осителъ'Н,о вели'чи'н,ыl шаzов сет'Ки (т. е. 'Ко'Н,е'Ч'Н,о раз'Ност'Ная схе-ма устой'Чива). Таким образом, основными характеристиками конечно разностной схемы 1 которые обязателъ'Н,о должны быть проана лизированы, являются: аnnро'Ксимация, устой'Чивостъ и 'Кo'Н,cep ватив'Н,остъ. 6.4. Анализ порядка аппроксимации разностных схем Из определения порядка аппроксимации ясно, что чем выше порядок аппроксимации, тем лучше конечно разностная схема приближается к дифференциальной задаче. Это не означает, что решение по разностной схеме может быть так же близко к решению дифференциальной задачи, так как разностная схема может быть условно устойчивой или абсолютно неустойчивой вовсе. Для нахождения порядка аппроксимации используется аппа рат разложения в ряды Тейлора то'ч'н,ыlx (неизвестных, но диф ференцируемых) решений дифференциальной задачи в узлах сетки (подчеркнем: значения сеточной функции Uh дискретны, следовательно, не дифференцируемы и поэтому не разлаrаются в ряды Тейлора). В соответствии с определением порядка аппроксимации про анализируем порядок аппроксимации конечно разностной схемы (6.28), для чеrо эту схему запишем на точном решении uj: U k + 1 U k k k k . " 2 U " +1 2и. + и" 1 1 1 == а 1 1 1 2 . h т (6.45 )
..........---- 240 Метод 'К;оне'ЧнъI,Х разностей [lЛ VI Разложим в ряды Тейлора по переменной х значения Uj+1' Uj 1 в окрестности узла (j, k) до четвертой производной вклю чительно, а значение и';+1 в ряд Тейлора по переменной t в окрестности узла (j, k) ДО второй производной включительно, получим uj+1 == и ( Xj + h, t k ) == k 2 k 2 3 k 3 U k 8 и I h 8 и h 8 и h О (h 4 ) .+ + + + , 1 8 х j 8 х 2 . 2 8 х З . 6 1 1 ( 6.46) Uj l == и (Xj h,t k ) == k 2 k 2 3 k 3 == U 8 и I h + 8 и 8 и + о ( h 4 ) , 1 8 х j а х 2 . 2 8 х З . 6 1 1 (6.47) и +1 == и ( х. t k + 7 ) == U + 8 и I k r + о ( 72 ) . 1 l' 1 8t j Подставляя (6.46) (6.48) в (6.45), находим ( 6.48 ) u +1 U 2 U З +1 2U з + U З l LhU h == J J а т h 2 == ( 8U a2 82 ) k +O(r+h2)==(LU)h+O(r+h2). 8t 8х j Таким образом, II(LU)h LhUhll == о (т + h 2 ) , т. е. явная схема (6.28) для уравнения теплопроводности име ет nервыlй nорядо'К аnnро'Ксимации по време'Н,и и второй по nростра'Н,стве'Н,'Ной nереме'Н,'Н,ой. Аналоrично, тот же порядок ап проксимации можно получить и для неявной схемы (6.ЗО). 6.5. Исследование устойчивости конечно--разностных схем Поскольку устойчивость является одной из основных xa рактеристик конечно разностных схем, то в данном параrрафе рассматриваются различные методы исследования устойчивости
.. э 6.5 ] и сследованuе устой'Чuвостu 'К;оне'Чно разностнЪtх схем 241 конечно разностных схем по начальным условиям. Наиболее pac пространенными методами исследования устойчивости являются следующие [10 14]: метод rармоническоrо анализа (Фурье); принцип максимума; спектральный метод; энерrетический метод. Каждый из этих методов имеет достоинства и недостатки. 6.5.1. Метод rармоническоrо анализа. Из математи ческой физики известно, что решение начально краевых задач представляется в виде следующеrо ряда: 00 и ( х t ) и е iЛnх , L.....i n , n==1 rде Л N собственные значения, а ехр(iлnх) == соs(лnх) + + i sin( лnх) собственные функции, получаемые из решения соответствующей задачи Штурма Лиувиля, т. е. решение может быть представлено в виде суперпозиции отдельных rармоник иn(х, t) == un(t) ехр(iлnх), каждая из которых есть произведе ние функции времени t и функции пространственной перемен ной х, причем последняя по модулю оrраничена сверху единицей при любых значениях переменной х. В то же время функция времени и n (t), называемая амплитуд ной частью rармоники, никак не оrраничена и является источ ником неконтролируемоrо входными данными роста функции, а следовательно, источником неустойчивости. Таким образом, если конечно разностная схема устойчива, то отношение амплитудной части rармоники на верхнем временном слое к амплитудной части на нижнем временном слое по модулю должно быть меньше единицы. Если разложить значение сеточной функции uj в ряд Фурье по собственным функциям: 00 uj == L 'ТlknеiЛnХj , (6.49) n==l rде амплитудная часть 'Тlkn может быть представлена в виде произведения 'Тlkn == и n . qk, (6.50) 242 Метод поне'Чнъl,Х разностей [lЛ. VI и n размерный и постоянный сомножитель амплитудной части, а k показатель степени (соответствующий номеру BpeMeHHoro слоя) сомножителя, зависящеrо от времени, то, под ставив (6.49) в конечно разностную схему, можно по модулю оценить отноше ние амплитудных частей на соседних временных слоях. Однако поскольку операция суммирования линейна и соб ственные функции ортоrональны для различных индексов CYM мирования, то в конечно разностную схему вместо сеточных зна чений достаточно подставить одну rармонику разложения (6.49) (при этом у амплитудной части убрать индекс п), т. е. u k 'Тl еiЛn(Хj:f::h) и з == 'Тlk еiЛn(Хj) , uk+1 'Тl еiЛn(Хj) j:f::1 k, j k+1 . (6.51) Таким образом, если конечно разностная схема устой'Чuва по 'на'чалъ'ныlм да'н'ныlм,, то 'f/k+1 1 ""'" , 'f/k т. е. условие (6.52) является 'необходu-мыlм условием устойчи вости. ( 6.52) 6.5.2. Исследование устойчивости методом rармони" u u ческоrо анализа явнои и неявнои схем для уравне.. ния теплопроводности. Подставим выражения (6.51) в яв ную конечно разносную схему (6.28) для уравнения теплопро водности, получим 'Тlk+1 == 1 40- . sin 2 )"n h , о- == а 2 ; . (6.53) 'f/k 2 h Здесь использована формула, вытекающая из формулы Эй лера: ехр(iлnh) 2 + ехр( iлnh) == 4sin2 )"n h , 2 и формула 1 cos лnh == 2 sin 2 )"n h , причем О < sin 2 )"n h 1, 2 2 поскольку л n i= о и h i= о. в соответствии с (6.5З) получаем выражение 'f/k+1 'f/k . 2 лnh I I 1 40" Slll == 1 4О"т , 2 . 2 лnh m == SIП , 2
э 6.5 ] и сследова'Н,uе устой'Чuвостu по'н,е'ч'н,о раз'н,ост'н,ы,x схем 243 или, с учетом (6.52), неравенство 11 4О"тl 1. Отсюда получаем следующие два неравенства: 1 1 40" m + 1, из которых правое выполнено всеrда, а из левоrо следует зна менитое условие устой'Чuвостu Кура'Н,та: ит 1/2, или более жесткое для о" условие а 2 т 1 о" == """"2 . h 2 (6.54) Из (6.54) следует, что яв'Н,ая схема для уравнения теплопро водности услов'Н,о устой'Чuва с условием (6.54), накладываемым на сеточные характеристики т и h. Подставим теперь rармоники (6.51) в неявную конечно разностную схему (6.ЗО) дЛЯ уравнения теплопроводности, по лучим ( ) 1 . 2 лnh 'lJk+1 == 1 + 40" Slll 2 'lJk, откуда 'fJk+l 'fJk 1 4 . 2 лnh 1 + а Slll 2 1 всеrда, так как (J" и квадрат синуса больше нуля. Следовательно, 'Н,еяв'Н,ая схема для уравнения теплопроводно сти абсолют'Н,о устой'Чива, так как для выполнения неравенства 'fJk+l h 1 на сеточные характеристики т и не накладывалось 'fJk никаких оrраничений. а 2 т Комплекс """"2 называют числом Куранта для уравнения теп h лопроводности. 6.5.3. Исследование устойчивости методом rармони" u u ческоrо анализа явнои и неявнои схем для волновоrо уравнения. Конечно разностные схемы (6.З1) и (6.32) для вол HOBoro уравнения являются трехслойными, а не двухслойными, как для уравнения теплопроводности, поэтому подстановка в эти схемы rармоник в форме (6.51) не приведет к неравенству (6.52). 244 Метод поне'Чнъl,Х разностей [lЛ. VI При исследовании устойчивости конечно--разностных схем для волновоrо уравнения методом rармоническоrо анализа в конечно разностные схемы подставляется отдельная rармоника ряда (6.49) с амплитудной частью в форме (6.50), т. е. rармоники вида u k u . q k . еiЛП(Хj::f:h) uk: == и п . q k . еiЛПХj , j::f:1 п , J ( 6.55) и ::f:1 == U n . qk::f:1 . е iлп Х j . J Подставляем (6.55) в явную схему (6.З1), получаем KBaдpaT ное уравнение относительно параметра q: q2 q (2 4О"т) + 1 == о, а 2 т 2 0"== 2 ' h . 2 лnh m == Sln > о, 2 с корнями Ql,2 == (1 2о-т) ::l: V (l 2о-т)2 1 а 2 т 2 Комплекс о" == 2 называют числом Куранта для волновоrо h уравнения. Таким образом, если явная схема (6.З1) устойчива, то в COOT ветствии с (6.50) и (6.52) величина q по модулю не превышает единицы (1 2о-т) ::l: V {1 2о-т)2 1 1, ( 6.56 ) или 1 (1 2о-т) ::l: V {1 2о-т)2 1 +1. Здесь правое неравенство выполняется всеrда. Из левоrо неравен ства (6.57) им еем :l: v (O"m 1) О"т О"т 1. (6.57) ( 6.58) Для положительноrо знака в левой части (6.58) получаем, что О"т > 1. Действительно, в этом случае выполняется следующая цепочка неравенств: (О"т 1)О"т (О"т 1)2, (О"т 1)(О"т О"т + 1) о. Однако при этом не выполняется исходное Hepa венство (6.56), в чем можно убедиться непосредственной подста новкой О"т 1 в (6.56).
э 6.5 ] и сследова'Н,uе устой'Чuвостu по'н,е'ч'н,о..раз'н,ост'н,ы,x схем 245 Для отрицательноrо знака в левой части (6.58) име ем: (J"m 1, поскольку выполняются неравенства: v (o"m 1)О"т 1 О"т,. (О"т 1)О"т (1 О"т)2, (1 О"т)(1 О"т + + О"т) О, О"т 1. Это неравенство не противоречит HepaBeH СТВУ (6.56), а поскольку О < m < 1, то вместо неравенства О"т 1 принимается более жесткое неравенство о" 1 или а 2 т 2 о" == 2 1. (6.59) h Таким образом, яв'Н,ая 'Ко'Н,е'Ч'Н,о раз'Н,ост'Н,ая схема (6.З1) для вол'Н,ов020 урав'Н,е'Н,uя услов'Н,о устой'Чuва с условuем (6.59), накла дываемым на сеточные характеристики т и h. Для неявной схемы (6.З2) результатом подстановки в нее rap моник (6.55) с амплитудой в форме (6.50) является квадратное уравнение q2 (1 + 4О"т) 2q + 1 == О, решением KOToporo являются комплексные числа 1 :f: . 2..j(iiii q1,2 == 1 + 4ат 1 + 4ат . Модуль этих комплексных чисел всеrда не больше единицы: I 1 .Jl + 4<тт 1 Q1,2 1 + 4ат , что доказывает абсолют'Н,ую устой'Чuвостъ 'Н,еяв'Н,ой схемыl (6 З2) для вол'Н,ов020 урав'Н,е'Н,uя. 6.5.4. Принцип максимума. В математической физике известен принцип, в соответствии с которым решение начально краевой задачи внутри расчетной области не может превышать значений искомой функции на пространственно временной rpa Нице. Этот принцип положен в основу метода исследования устойчивости конечн разностных схем, называемоrо nри'Н,циnо-м .ма'Кси.му-ма. Для ero использования рассмотрим явную конечно разностную схему (6.28) для уравнения теплопроводности в форме k+ 1 k ( 1 2 ) k k U j == O"Uj+1 + о" Uj + O"Uj 1 (6.60 )
246 Метод по'Н,е'Ч'Н,ъI,Х раз'Н,остей [lЛ. VI и введем норму сеточной функции u j в виде 11 u k 11 == Ш) I u j 1. Тоrда из (6.60) получим IIu k +111 == mjX 100uj+1 + (1 20-) uj + o-uj ll Ш) lujl == lIukll. (6.61) Если 1 а , 2 (6 62) то из (6.61) имеем неравенство IIuk+111 lIukll ' откуда, продол)Кая цепочку неравенств вплоть до начальноrо условия, получим Ilu k +111 lIukll о.. lIuoll = mjx Iф{Хj)1 , ( 6. 6З ) ['де 'Ф(х) начальное условие (6.4). Неравенства (6.6З) в вычислительной математике называ ют nри'Нциnо-м а'Кси-му-ма. Он является достаточным условием устойчивости явной схемы (6.60) для уравнения теплопровод ности. Таким образом, если выполнено условие Куранта (6.62), то из цепочки (6.6З) видно, что значение сеточной функции на лю бом временном слое по норме не превысит начальноrо условия, т. е. рассматриваемая схема устойчива по начальному условию, причем условие (6.62) является теперь не только 'необходu-мыlм в соответствии с методом rармоническоrо анализа, но и дocтa то'Ч'Н 'blM. 6.5.5. Спектральный метод исследования у стой чи" вости. Рассмотрим сеточные функции uj и uJ+1, j == О, N, на двух временных слоях t k == kT И t k + 1 == (k + l)т и представим конечно разностную схему в следующей операторной форме: u k + 1 == S . u k , (6.64) rде S оператор перехода от слоя t k к слою t k + 1 . Такой оператор МО)КНО построить не для всякой конечно разностной 1
"11 э 6.5 ] Исследова'Н,uе устой'Чuвостu по'н,е'ч'н,о..раз'н,ост'н,ы,x схем 247 схемы (например, метод проrонки нельзя представить в форме (6.64)). Для явной конечно разностной схемы (6.28) оператор 8 представляется следующей матрицей перехода: 1 20" о" О о" 1 2а о" s== о" 1 20" о" о" 1 20" Составим от левой и правой частей равенства (6.64) опера цию нормы и используем свойство нормы: норма произведения операторов не превышает произведения норм, получим 11 иk+111 == 11 8и k 11 11 811 .11 и k 11. (6.65 ) Если выполнено неравенство вида 11811 1, ( 6.66) то из условий (6.65) и (6.66) следует принциn максимума Ilи k +111 Ilиkll lIиk lll о.. lIиOl1 == 111jJ(x)II. Таким образом, если схема устойчива, то норма оператора перехода 8 не превышает единицы и, следовательно, условие (6.66) является н,еобходuмыlм условием устойчивости конечно разностных схем. Почему этот метод называют спектральным? Для ответа на этот вопрос рассмотрим векторы и k и u k + 1 на соседних временных слоях в виде произведения сомножите.. ЛЯ qk, зависящеrо от времени (здесь k показатель степени), на вектор v(x), зависящий от пространственной переменной (для Линейных задач метод разделения переменных леrко обосновы вается), получим равенства и k == qk . v, u k + 1 == qk+l . v, подставляя которые в (6.64), будем иметь Sv == qv. (6.67) 248 Метод по'Н,е'Ч'Н,ъI,Х раз'Н,остей [lЛ. VI Равенство (6.67) является задачей на собственные векторы v и собственные значения q оператора перехода 8. Составим от (6.67) операцию нормы, получим Ilqvll == 118vll 11811 .I'vll , откуда Iql 118/1 . (6.68) Но для необходимоrо условия устойчивости выполняется Hepa венство (6.66), т. е. из (6.66) и (6.68) следует неравенство 'q' 1. (6.69) Таким образом, если схема устойчива, то выполняется Hepa венство (6.69), называемое условием устой'Чивости фон Нейма на, из KOToporo ясно, что в этом случае все собственные значе ния qj (или полный спектр оператора 8) находятся внутри Kpyra радиуса единица с центром в начале координат на комплексной плоскости. 6.5.6. Энерrетический метод исследования устойчи" БОСТИ конечно..разностных схем. Как видно из предыдущих разделов, метод rармоническоrо анализа и спектральный Me тод являются 'необходи-мыlмии условия-ми устой'Чивости конечно разностных схем, а принцип максимума достато'ч'ныlм усло вие-м устой'Чивости. В данном пункте рассматривается один из самых мощных и распространенных методов энерrетический метод, развитый в работах А. А. CaMapcKoro и базирующий ся на понятиях энерrетическоrо пространства с энерrетической нормой, энерrетическоrо тождества (неравенства) и принципа максимума. Ниже будет показано, что условия, используемые в энерrетическом методе, являются достато'ч'ныlмии условиями устойчивости конечн разностных схем. Для понимания энерrетическоrо метода рассмотрим примене ние ero с целью исследования устойчивости конечн разностных схем при численном решении следующей первой начально краевой задачи для уравнения теплопроводности с однородными краевыми условиями: 8и 2 82и ==a 8t 8х 2 , х Е (о; 1), t > о. , (6.70 )
э 6.5 ] и сследова'Н,uе устой'Чuвостu по'н,е'ч'н,о раз'н,ост'н,ы,x схем 249 и(О, t) == о, х == о, t > о. , (6.71 ) u(l, t) == о, х == 1, t > о; ( 6. 72 ) и(х, о) == 'Ф(х), х Е [о; 1], t == о. ( 6. 7З) На сетке (6.25) будем аппроксимировать эту задачу с по мощью явной (6.28) инеявной (6.ЗО) конечно разностных схем, записанных в векторно операторной форме следующим образом: и k + 1 и k Ли k , т (6.74) и k + 1 и k == Ли k + 1 , т (6.75) rде конечно разностный оператор Л аппроксимирует дифферен циальный оператор по пространственной переменной Х, т. е. Ли k == a 2 (uj+1 2uj + uJ 1)/h2. Э'Н,ер2ети'Чес'Кое nростра'Н,ство. Введем энерrетическое пр странство Н А сеточных функций Uh, являющееся rильбертовым пространством, в котором определено скалярное произведение для двух элементов Uh Е Н А и vh Е Н А: N (Uh, Vh)A == (AUh, Vh) == L AUjvjh, j==1 (6.76) и, следовательно, с нормой IIUhllA == (AUh, Uh)1/2 == [ t AUjUjh ] 1/2 . J==l Как известно, rильбертово пространство это полное HOp мированное пространство, в котором определено скалярное про изведение. Здесь nол'Н,ота определяется в том смысле, что если последовательность сеточных функций {uh n } сходится к своему пределу при h n О (в данном случае к решению диффе ренциальной задачи), то она является фу'Н,даме'Н,талъ'Н,ой, т. е. выполняется условие Коши (6.77) IIUh n Uh Тn 11 > о. n,т oo (6.78)
..... 250 Метод по'Н,е'Ч'Н,ъI,Х раз'Н,остей [lЛ. VI Действительно, если конечно разностная схема аппроксими рует дифференциальную задачу и устойчива, то по теореме эк вивалентности решение с помощью конечно разностной схемы сходится к решению дифференциальной задачи при uз-мелъ'Че'Нuu сет'Ки. Для двух сеточных функций иh n и Uh m (двух элементов rильбертова пространства НА) на различных сетках с шаrами h n и h m понятие полноты означает, что при измельчении сетки, т. е. при h n О (или h m О) последовательности {UhnJ и {Uh m } сходятся к одному и тому же пределу, т. е. выполняется (6.78). В дальнейшем потребуются следующие понятия, характери зующие конечно разностные операторы: сопряженность, caMOCO пряженность, положительная определенность. Определение. Конечно разностный оператор А * называется соnря:JIcе'н'ныlм оператору А, если выполняется равенство (Аи, v) == (и, A*v). (6.79) Определение. Конечно разностный оператор А называется са.мосоnря:JIcе'н'ныlм,, если выполняется равенство (Аи, v) == (и, Av). (6.80 ) Например, если оператор А симметрическая матрица с дей ствительными элементами (А == АТ), то А самосопряженный оператор (это можно проверить непосредственно). Определение. Конечно разностный оператор А называется nОЛО:JICuтелъ'Но оnределе'н'ныlм (А > О) или nОЛО:JICuтелъ'Но nолу оnределе'н'ныlм (А О) на rильбертовом пространстве сеточных функций Uh Е НА, если (Aиh, Uh) > О или (AUh, Uh) о. (6.81 ) Можно показать, что разностный оператор Л == А является самосопряженным, т. е. ( Ли,v)==(и, Лv). с целью определения собственных функций и собственных значений конечно разностноrо оператора А, рассмотрим вначале задачу на собственные значения и собственные функции опера тора Л: Л'Р == Л'Р. ( 6.82)
""'11 э 6.5 ] и сследова'Н,uе усmоu'Чuвостu по'н,е'ч'н,о..раз'н,ост'н,ы,x схем 251 Собственные функции <Рп (х j) должны удовлетворять следу ющим условиям: 1) быть ортоrональными на отрезке х Е [о; 1] при n #- т, т. е. (<Рп, 'Рт) == О на Х Е [о; 1] при n -# т; 2) удовлетворять однородным краевым уравнениям (6.71), ( 6. 72) ; З) их число должно совпадать с числом собственных значе ний А п . Таким условиям удовлетворяют функции: ( ) . n1rX j 'Рп Х j == Sln l ' Xj ==jh, l == 1, 1 h== N ' т. е. ( ) . n1rJ 'Рп Xj == Sln N' Для нахождения собственных значений А п подставим (6.8З) в (6.82), получим ( 6.8З) j == о, N; n == 1, N 1. л( . n1r j ) Sln N \ . n1rJ == Лп Sln , N или а 2 [ . n 1r (j + 1) 2 . n 1r j . n 1r (j 1) ] \ . n 1r J Sln Sln + Sln == Л п Sln N ' h 2 N N N откуда 4а 2 . 2 n 1r А п == h 2 Sln 2N ' n == 1, N 1. Из (6.84) видно, что все собственные значения оператора Л отрицательны, а собственные значения оператора А == л поло жительны, т. е. оператор А == л nОЛОaICuтелъ'Н,о оnределе'Н,. Прu uсследова'Н,uu устой'Чuвостu яв'Н,ой 'Ко'Н,е'Ч'Н,о раз'Н,ост'Н,ой cxe-мыl (6.74) э'Н,ер2етu'Чес'Кu-м -методо-м воспользуемся следующи ми тождествами: ( 6.84 ) и k + 1 и k Ut== и k + 1 + и k u k == . 2 т и k + 1 и k т Ut. 2 2 и k + 1 + и k 2 (6.85 ) 252 Метод 'К:о'Не'Ч,'Н'ых раз'Ностей [rл VI Умножим скаляр но явную схему (6.74) на вектор 27Ut, полу чим 2т (Ut, Ut) + (Au k , 2TU t ) == о, или, после подстановки сюда тождеств (6.85), 2т(Ut,щ) + (Au k +1,u k +1) (Auk,u k ) т 2 (Ащ, Ut) (Au k +1, u k ) + (Au k , u k + 1 ) == о. в силу самосопряженности оператора А и коммутативности скалярноrо произведения, последние два слаrаемых сокращают ся, после чеrо получим следующее энерlети'Ч,ес ое тождество: 2т ((Е ; А) ut,u t ) + (Auk+1, uk+1) == (Auk,u k ). (6.86) Если оператор Е (7/2) А О, (6.87) то из (6.86) получаем следующее энерlети'Ч,ес ое нераве'Нство: (Au k +1, u k +1) (Au k , u k ) , (6.88) или lIu k +1IIA lIu k 11 А ' откуда сразу следует принцип максимума 11 u k+111 А 11 u k 11 А . .. 11 u о 11 А == 111/J (х) 11 А , являющийся достаточным условием устойчивости. Если теперь от неравенства (6.87) вычислить любую норму (IIEII == 1), например норму, которая равна максимальному по модулю собственному значению оператора А, то с использовани ем выражения (6.84) получим т 2 IIAlle IIEII , 4а 2 "Alle == шах /л n / == ; n h 4а 2 . т 1 h 2 2 , откуда а 2 т 1 . h 2 (6.89) I э 6.5 ] к о'Н,е'Ч'Н,о раз'Н,ост'Н,'ый .метод реше'Н,uя nараболu'Чес-к:uх зада'Ч 253 Таким образом, условие устойчивости Куранта (6.54) явной конечно разностной схемы для уравнения теплопроводности, BЫ веденное с помощью метода rармоническоrо анализа, является и достато'Ч'Нъt.м ус.ловuем. Исследуем теперь устойчивость неявной конечн разностной схемы (6.75) энерrетическим методом, для чеrо к тождествам (6.85) добавим тождество и k + 1 + и k т u k + 1 == и k + 7 . Ut == + Ut. (6.90) 2 2 Умножим скалярно схему (6.75) на вектор 27 . Ut, получим 2т (ut, Ut) + А (u k + т' Щ, 2т, щ) == О, ( ( Т ) ) ( иk+l + и k и k + 1 и k ) 2т Е +"2 А Ut, Ut + 2т А 2 ' T == О, 2т ((Е+ ; А) ut,U t ) + (Au k +1,u k +1) (Auk,u k ) (Au k +1,u k ) + (Au k ,u k +1) == О. Таким образом, для неявной схемы э'Нерlетu'Чес ое тожде ство имеет вид 2т (( Е + ; А) Ut, щ) + (Au k +1, u k +1) == (Au k , u k ). (6.91) Здесь первое слаrаемое всеrда положительно определено, п этому э'Нерlетu'Чес ое 'Нераве'Нство имеет вид (Au k +1,u k +1) (Auk,u k ), lIu k +1IIA Ilu k "А ' (6.92) откуда следует принцип максимума Ilu k +1I1A Ilukll A ... IluOIl A == 111/J(x)II A . Таким образом, 'Неяв'Ная схема (6.75) безус.лов'Но устой'Чива, т так как оператор Е + А всеrда положительно определен. 2
254 Метод о'Не'Ч'Н'ых раз'Ностей [rл. VI э 6.6. Конечно...разностный метод решения задач для уравнений параболическоrо типа Конечно разностные схемы и методы численноrо решения одномерных и MHoroMepHbIx по пространству начально краевых задач для уравнений параболическоrо типа, излаrаемые в этом параrрафе, можно использовать и для соответствующих задач для уравнений rиперболическоrо типа, а некоторые методы расщепления и в задачах для уравнений эллиптическоrо типа. 6.6.1. Однородные и консервативные конечно... раз... ностные схемы для задач теплопроводности с rранич", ными условиями, содержащими производные. В задачах математической физики вообще, и в задачах теплопроводности в частности, rраничные условия l ro рода аппроксимируются точно в узлах на rранице расчетной области и этот факт никак не влияет на порядок аппроксимации во всей расчетной области. Этоrо нельзя сказать об аппроксимации rраничных условий 2 ro и З rо родов, поскольку в них присутствует производная перво ro порядка искомой функции по простраIj<ственной переменной, в результате чеrо порядок аппроксимации в rраничных узлах может быть ниже порядка аппроксимации во внутренних узлах расчетной области. В этой связи необходимо ввести понятия ло аЛЪНОlО nоряд а аппроксимации порядка аппроксимации в отдельно взятом уз ле, и lлобаЛЪНОlО nоряд а аппроксимации порядка аппроксима ции во всей расчетной области. Анализ порядка аппроксимации, рассмотренный в 9 6.4 осуществлен для отдельноrо узла сетки, и, следовательно, там речь идет о локальной аппроксимации. Для задач с rраничными условиями l ro рода на равномерной ceт e локальный порядок аппроксимации совпадает с rлобальным. Для задач с rраничными условиями, содержащими производ ные, порядок аппроксимации в rраничных узлах может быть ни же порядка аппроксимации во внутренних узлах, если конечно разностная схема в rраничных узлах не использует дифферен циальное уравнение (ниже будет показано, что в этом случае нарушается консервативность). Тоrда rлобальный порядок ап проксимации равен наименъше.му относительно всех узлов сетки порядку аппроксимации. Рассмотрим методолоrию сохранения на rраницах с rранич ными условиями 2 ro и З rо родов порядка аппроксимации, KO
э 6 6] к о'Н,е'Ч'Н,о разностН'ЬtЙ .метод решенuя nараболu'Чес-к:uх зада'Ч 255 торый дает аппроксимация дифференциальноrо уравнения во внутренних узлах, т. е. получение конечно разностной схемы с однородной аппроксимацией. Для этоrо рассмотрим третью начально краевую задачу для уравнения теплопроводности, co держащеrо как конвективные члены (пропорциональные произ водной ди/дх), так и источниковые члены, содержащие искомую функцию и(х, t): 8и 282и 8и 8 == а + b 8 + си, О < х < [, t > о; (6.93) t 8х х 8и (О, t) о: 8х + {3и (О, t) == 'Ро (t) , х == О, t > о. , ( 6.94 ) 8и(l,t) / 8х + 8 и (l, t) == 'Рl .( t) , и(х,о)==ф(х), O x l, х == [, t > о; (6.95) t == о. ( 6.96) Во внутренних узлах конечно разностной сетки (6.25) неяв ная конечно разностная схема для уравнения (6.93) имеет вид и +l и 2 Ь J J == ( u +l 2и +l + u +l ) + ( и +l u +l ) + т h 2 J+l J J l 2h J+l J l + си';+l + о (7 + h 2 ), j == 1, N 1. (6.97) Если производные первоrо порядка в rраничных условиях (6.94) и (6.95) аппроксимировать по следующей схеме (с помо щью отношения конечных разностей справа и слева): 8и k+l 8х j==O и k + 1 и k + 1 1 о h + о (h); 8и k+l 8х j==N то rраничные условия аппроксимируются с первым порядком, и rлобальный порядок будет равен первому порядку, несмотря на то что во всех остальных узлах порядок аппроксимации по про странственной переменной равен двум. Для сохранения порядка аппроксимации, paBHoro двум, в rраничных узлах разложим на то'Чно-м решении сеточную функцию в окрестности точек х == О и k + 1 u k + 1 N h N l + о (h) ,
256 Метод оне'Чн'Ых разностей [rл VI и х == l в ряды Тейлора по переменной х до третьей производной включительно, получим (в предположении что функция и.(х, t) в rраничных узлах имеет первые производные по времени и BTO рые по х): и +1 == u ( О + h, t k +1) == 8 k+l 2 k+l 2 == u k + 1 h 8 и О ( h 3 ) а + 8 + 8 2 2+ , х а х о (6.98 ) и +11 == u (l h, t k +1) == k+l 2 k+l 2 == u k +1 ди h + д u + О (h 3 ). (6.99) N ах N 8х 2 N 2 Подставим сюда значения второй производной в rраничных узлах, полученные из дифференциальноrо уравнения (6.93): 8 2 и k+l ( 1 8и Ь 8и С ) k+l дх 2 ;==O,N == а 2 ' at а 2 . дх а 2 u ;==o,N' и найдем из полученных выражений (6.98), (6.99) значения 8и k+l первой производной в rраничных узлах с порядком 8х . o N J , о (7 + h 2): 8и k+l 2 а 2 . ( и +l u +l ) 8х о h (2а 2 bh) k+l h . 8и ch . u k + 1 О ( h2 ) 2а 2 bh at О + 2а 2 bh О + , 8и k+l 2а 2 . ( u k + 1 u k + 1 ) + 8х N h(2a 2 +bh) N N l h 8 k+l h + . с . u k + 1 + о ( h2 ) 2а 2 + bh 8t N 2а 2 + bh N
t 6.6 ] к о'Не'Ч'Но раз'Ност'Н'ЬtЙ .метод решенuя nараболu'Чес-к:uх зада'Ч 257 8и k+l 8и k+l Подставляя 8 в (6.94), а 8 в (6.95) и аппрокси х О Х N мируя полученные соотношения в соответствующих rраничных 8 k+l 8 k+l узлах (при этом д о == (и +1 и8) / Т + О (Т), д N == == (и +1 u'N) /Т + о (Т) ), получим алreбраические уравнения для rраничных узлов, в каждом из которых два неизвестных: Ь о . u +l Со . и +1 == d o + о (7 + h 2 ), j == о; (6.100) ао == о, 2а 2 h 2 Ь о == + ch (2а bh) ; h т о: 2а 2 Со == т; h k ( k+l ) 2а2 bh do == т . ио 'Ро t . Q ; aN. u 7v+ 1 l + bN. u7v+ 1 == dN + о (7 + h 2 ), j == N; (6.101) 2а 2 h 8 2 bN== + ch+ .(2a +bh); h т / d h k (t k + 1 ) 2а2 + bh N == . U N + 'Рl . . т / Таким образом, (6.100) конечно разностная аппроксимация rраничноrо условия 3 ro рода (6.94) на левой rранице х == о, а (6.101) конечно разностная аппроксимация rраничноrо усло вия 3 ro рода (6.95) на правой rранице х == [, которые сохраняют тот же порядок аппроксимации, что и в конечно разностной аппроксимации (6.97) дифференциальноrо уравнения (6.93). Приписывая к rраничным конечно разностным уравнениям (6.100), (6.101), каждое из которых содержит два значения ce точной функции, алrебраические уравнения (6.97), записанные в виде 2а 2 aN == ; h Сп == о; k+l Ь k+l k+l d О ( h 2 ) ajUj l + jU j CjU j + 1 == j + 7 + , J . 1 N 1. , , (6.102) а 2 Ь а. . J h2 2h ' 2а 2 1 b j == + С; h т а 2 Ь Cj == h2 + 2h ; 1 k d j == . Uj , т 9 В.Ф. Формалев, д.л. Ревизников
258 Метод о'Не'Ч'Н'ЬtХ раз'Ностей [rл. УI получим СЛАУ с трехдиаrональной матрицей, решаемую MeTO дом проrонки (ао == о; CN == О) с' A . J . J , b j ajAj ] (6.103) Bj == d j + ajBj l b j ajAj l ( Со d o ) Ао == ; Во == ; AN == О , Ь о Ь о j == О, N; k+l А k+l В u j == jU j + 1 + j ( u +1 == В N ), j == N, N 1, . .. , о. (6.104) Покажем, что изложенный метод аппроксимации краевых условий, содержащих производные по пространственным пе ременным, не только повышает порядок аппроксимации, но и сохраняет консервативность конечно разностной схемы, т. е. в конечно разностной аппроксимации соблюдаются законы co хранения, на основе которых выведены дифференциальные со-- отношения задачи (6.93) (6.96). Для этоrо рассмотрим вначале вывод дифференциальноrо уравнения теплопроводности (6.93) в случае Ь == С == О (см. рис. 6.6 а). q(xJ.1X/ Дх==h j+.1X/2) О . Х. Х Xj l Дх/2 :J Дх/2 Xj+l а qe 1 . q(О+Дхl2) I j==O j== 1 j==2 ХО . .1х/2 .. .1х/2 .1х/2 . .1х/2 Х. б Рис. 6.6. К аппроксимации краевых условий, содержащих производные, с co хранением консервативности Из физики известно, что тепловой поток, соrласно закону 8и Фурье, в одномерном случае равен q == л . дх ' ['де л коэффи циент теплопроводности. Для элемента длиной Дх == h, в центре KOToporo помещен узел Х j, запишем сумму тепловых потоков: ! э 66] к о'Не'Ч'Но раз'Ност'Н'ЬtЙ .метод реше'Нuя nараболu'Чес-к:uх зада'Ч 259 q (Xj Д-х/2) q (Xj + Д-х/2), подходящих к левой и правой rраницам элемента. По закону сохранения энерrии сумма этих тепловых потоков равна изменению энерrии в этом элементе Д-Х, которая пропорциональна массе элемента рД-х, теплоемкости материала с и производной первоrо порядка от температуры и(х, t) по времени л. 8и(xj Llx/2) ( Л. 8и(Xj+LlX/2) ) ==е.р'Дх, ди . 8х 8х 8t Разделив это равенство на Д-Х и перейдя к пределу при Д-Х О, получим одномерное уравнение теплопроводности 8и 2 8 2 и ==a . 8t 8х2 , 2 л а . ер Таким образом, конечно разностная аппроксимация (6.97) дифференциальноrо уравнения (6.93) учитывает и тепловые по токи, и энерrию, поrлощенную элементом Д-х, т. е. все виды энер rии, участвующие при выводе дифференциальноrо уравнения. Рассмотрим теперь вывод rраничноrо условия (6.94) на левой rранице (см. рис. 6.6 б) расчетной области (для правой rраницы х == l вывод аналоrичен). к rраничному узлу х == О примыкает масса объемом Д-х /2 со стороны расчетной области. При задании rраничноrо условия 3 ro рода на левой rранице х == О осуществляется теплообмен с окружающей средой по закону Ньютона: q е == {3 (и е U (О, t», rде и е температура окружающей среды, а (3 коэффициент теплообмена на rранице х == О, имеющей температуру и(О, t), с окружающей средой, имеющей температуру и е . Справа к эле менту Д-х / 2 подводится тепловой поток, описываемый законом Фурье. Тоrда разность тепловых потоков, подводимых к поло вине элемента, равна энерrии, пошедшей на повышение TeM пературы элемента Д-х /2, пропорциональной массе этоrо эле мента рД-х/2, теплоемкости с и производной температуры по времени: fЗ (и е u (О, t)) ( л . ди (О ;x LlX / 2 ) ) == ер' x . . (6.105) Переходя здесь к пределу при Д-х /2 О, получим левое rpa Ничное условие 3 ro рода (6.94) (с точностью до коэффициентов) 9*
260 м етод о'Не'Ч'Н'ЬtХ раз'Ностей [rл. VI л. ди , t) + {3 (и е U (О, t)) == о. (6.106) Таким образом, конечн разностная аппроксимация rранич Horo условия (6.106) или (6.94) должна сопровождаться появле нием 'К;онсервативНО20 сла2ае-МО20, стоящеrо в правой части pa венства (6.105). Физически это означает, что rраничные условия (6.94), (6.95) записаны для rраниц, не имеющих ни массы, ни объ ема. В конечно разностной аппроксимации к rранице примыкает масса с одномерным объемом, равным д,х /2, в котором необ ходимо учитывать дифференциальное уравнение, действующее во внутренних точках расчетной области, и не действующее на rранице. В конечно разностной аппроксимации KpaeBoro условия, co держащеrо производную по переменной х, нестационарный член в правой части выражения (6.105) с помощью дифференциаль Horo уравнения можно заменить на диверrентный член, пропор циональный 82 U / 8 х 2 I х==о . Аналоrичный подход можно осуществить в краевых задачах для дифференциальных уравнений любых типов. 6.6.2. Неявно... явная конечно... разностная схема с весами. Схема Кранка Николсона. Явная конечно разностная схема (6.28), записанная в форме k+l k (1 2 ) k k u j == и . Uj+l + и u j + и . Uj l' а 2 т и == /;2' j == 1, N 1, k == О, 1, 2 . .., ( 6.107) обладает тем достоинство-м, что решение на верхнем временном слое t k + 1 получается сразу (без решения СЛАУ) по значениям сеточной функции на нижнем временном слое t k , rде решение известно (при k == О значения сеточной функции формируются из начальноrо условия (6.4.)). Но эта же схема обладает существен ным недостат'К;о-м, поскольку она является условно устойчивой с условием (6.54), накладываемым на сеточные характеристики 7 и h. С друrой стороны, неявная конечно разностная схема (6.30), записанная форме aju + t + bju +1 CjU tt == d j , j == 1, N 1, k == 0,1,2,... , (6.108)
э 6.6 ) к о'Не'Ч'Но раз'Ност'Н'Ьtй .метод реше'Нuя nараболи'Ч,ес их зада'Ч 261 ПРИВОДИТ К необходимости решать СЛАУ, но зато эта схема абсолютно устойчива. Проанализируем схемы (6.107), (6.108). Пусть точное реше ние, которое неизвестно, возрастает по времени, т. е. и}+l > > иj. Тоrда, в соответствии с явной схемой (6.107), разностное решение будет заниженным по сравнению с точным, так как и}+l определяется по меньшим значениям сеточной функции на предыдущем временном слое, поскольку решение является возрастающим по времени. Для неявной схемы (6.108) на возрастающем решении, Ha оборот, решение завышено по сравнению с точным, поскольку оно определяется по значениям сеточной функции на верхнем временном слое. На убывающем решении картина изменяется противополож ным образом: явная конечно разностная схема завышает реше ния, а неявная занижает (см. рис. 6.7). u Точное решение Неявное решение )( Явное решение 1" L 1"+1 1" 't 1"+ 1 t Рис. 6.7. Двусторонний метод аппроксимации На основе этоrо анализа возникла идея о построении более точной неявно явной конечно разностной схемы с весами при пространственных конечно разностных операторах, причем при измельчении шаrов 7 и h точное (неизвестное) решение может быть взято в «вилку» сколь уrодно узкую, так как если явная и неявная схемы аппроксимируют дифференциальную задачу и эти схемы устойчивы, то при стремлении сеточных характери
262 м етод о'Не'Ч'Н'ЬtХ раз'Ностей [rл. VI стик 7 И h к нулю решения по явной и неявной схемам стремятся к точному решению с разных сторон. Проведенный анализ дал блестящий пример так называемых двусторонних методов, исследованных В. К. СаулъевЪt-м [15]. Рассмотрим неявно явную схему с весами для простейшеrо уравнения теплопроводности: и +1 и и +l 2и +1 + и +1 J J == (}а2 1+1 J з 1 + т h 2 k 2 k k ( ()) 2 Uj+1 Uj + Uj l + 1 а 2 , h (6.109) rде () вес неявной части конечно разностной схемы, 1 () вес для явной части, причем О () 1. При () == 1 имеем полностью неявную схему, при () == о полностью явную схему, и при () == == 1/2 схему Кран а Ни олсона. В соответствии с rармоническим анализом для схемы (6.109) получаем неравенство '1]k+1 'rJk < 1 40- (1 О) 1, 1 + 40-0 откуда 1 1 40- (1 О) 1 1 + 40-0 + , (6.110) причем правое неравенство выполнено всеrда. Левое неравенство имеет место для любых значений и, если 1/2 () 1. Если же вес () лежит в пределах О () < 1/2, то между и и () из левоrо неравенства устанавливается связь 1 и О () < 1/2, 2 . (1 20) , (6.111) являющаяся условием устойчивости неявн явной схемы с Beca ми (6.109), коrда вес находится в пределах О () < 1/2. Таким образом, неявно явная схема с весами (6.109) абсолют но устойчива при 1/2 () 1 и условно устойчива с условием (6.111) при О () < 1/2. Рассмотрим порядок аппроксимации неявно явной схемы с весами (6.109), для чеrо разложим в ряд Тейлора в окрестности L
э 6 6) к о'Не'Ч'Но раз'Ност'Н'ЬtЙ .метод реше'Нuя nараБО/l,u'Чес-к:uх зада'Ч 263 узла (Xj, t k ) на точном решении значения сеточных функций uJ+l по переменной t, uj:J:l' u;lt по переменной х и полученные разложения подставим в (6.109): k 82 k ди + т + О (т2) 8t. 8t 2 . 2 J J 2 8 [ k 8и 2 )] == () . а и. + k . т + О ( Т + 8х 2 J 8t. J 2 k + (1 ()) а 2 д + о (h2) . 8х . J 82 В этом выражении дифференциальный оператор от 8х квадратной скобки в соответствии с дифференциальным ypaB ] 8 нением (6.1) равен дифференциальному оператору 2 8 ' в COOT а t ветствии с чем вышеприведенное равенство приобретает вид 8 k 2 k 8 и т О ( т2 ) == 8t . + 8t 2 . 2 + J J 8 2 k 8 2 k 8 2 k == Оа 2 + о . т + а 2 8х 2 . 8t 2 . 8х 2 . J J J 82 k Оа 2 + о ( т2 + h 2 ) . 8х 2 . J После упрощения получаем ( 8 8 2 ) k 8 2 k U 2 и 1 u 22 а == ( О -/ 2) . т + о ( Т + h ) 8t 8х 2 . l' 8t 2 . ' J J ОТКуда видно, что для схемы Кранка Николсона (О == 1/2) по рядок аппроксимации схемы (6.109) составляет О (т 2 + h 2 ), т. е. на один порядок по времени выше, чем для обычных явных или неявных схем. Таким образом, схема Кранка Николсона (6.109) при О == 1/2 абсолютно устойчива и имеет второй nорядо an npo cиMaции по времени и пространетвенной переменной Х.
,., 264 Метод о'Не'Ч'Н'ЬtХ раз'Ностей [rл. VI Аналоrично схема Кранка Николсона записывается и иссле дуется для друrих нестационарных уравнений, например для волновоrо уравнения. 6.6.3. Метод прямых. Метод прямых представляет собой метод частичной дискретизации, коrда часть дифференциаль ных операторов, входящих в дифференциальную задачу, аппрок симируется с помощью отношения конечных разностей, а осталь ные дифференциальные операторы сохраняются в дифферен циальной форме. Ниже рассматриваются два варианта метода прямых: поперечный и продольный варианты применительно к эволюционным задачам математической физики (теплопро водности, малых колебаний и т. п.) С простейшими rраничными условиями первоrо рода. В nоnеречно-м варианте метода прямых дифференциальные операторы по времени аппроксимируются с помощью отноше ния конечных разностей, дифференциальные операторы по про странственным переменным сохраняются, а решение отыскива ется вдоль прямых t == const (рис. 6.8). tk+ 1 tk tk l о / х Рис. 6.8. Схема поперечноrо варианта метода прямых в случае первой начально краевой задачи для OДHOMepHO ro уравнения теплопроводности (6.1) (6.4) этот вариант метода прямых имеет вид (в уравнении (6.1) коэффициент переноса L
э 6.6) Ко'Не'Ч'Но раз'Ност'Н'Ьtй .метод реше'Нuя nараболu'Чес uх зада'Ч 265 примем равным а) d 2 u k + 1 ат 2 u k + 1 == uk + О(т), k == 0,1,2,... , К, (6.112) dx и(О, t k + 1 ) == uk+1(0) == <pl(t k + 1 ), k == 0,1,2,... , К, (6.113) и(l, t k + 1 ) == uk+1(l) == 'P2(t k + 1 ), k == 0,1,2,... , К, (6.114) т. е. дифференциальная задача (6.1) (6.4) сведена к системе неза висимых краевых задач (6.112) (6.114) для обыкновенных диф ференциальных уравнений (ОДУ) 2 ro порядка в количестве, равном числу К + 1, с rраничными условиями первоrо рода. Решением этой системы ОДУ, каждое из которых является ОДУ BToporo порядка, будут следующие явные функции: и k + 1 (x) == С 1 ехр(х/ vaт) + С 2 ехр( x/ vaт) 1j(2vaт) ехр(х! vaт) . f uk(x) ехр( x! vaт)dx + + 1j(2vaт)exp( xjvaт). f uk(x)exp(xjvaт)dx, k == 0,1,2,... , К; (6.115) иО(х) == и(х,О) == ф(х), (6.116) rде постоянные интеrрирования C 1 , С 2 определяются путем под становки (6.115) в краевые условия (6.113), (6.114) COOTBeTCTBeH но при х == О и х == [. Аналоrично, в случае первой начально краевой задачи для волновоrо уравнения (6.12) (6.16) схема поперечноrо варианта метода прямых на неявном шаблоне имеет вид 8 2 и k + 1 а 2 т 2 u k + 1 == 2uk + uk l + О( т), 8х 2 l k == 1, 2, . . . , К; ( 6.117) 266 Метод о'Не'Ч,'Н'ЬtХ раз'Ностей [rл. VI и(х, О) == и О == Фl(Х); (6.118) и(х,т) == и 1 == Фl(Х) + ТФ2(Х) + 0(т 2 ); (6.119) и(О, t k + 1 ) == u k + 1 (О) == 'Рl (t k + 1 ); (6.120) u(l, t k + 1 ) == uk+1(l) == 'P2(t k + 1 ). (6.121) Аналитическое решение краевых задач дЛЯ ОДУ 2 ro порядка (6 117) также не вызывает затруднений. В nродолъно-м варианте метода прямых с помощью отноше ния конечных разностей аппроксимируются пространственные дифференциальные операторы, а дифференциальные операторы по времени сохраняются. Решения отыскиваются вдоль прямых х == const (рис. 6.9). t , т о Xl ... Xj l Х. :J Xj+l ... XN l XN Х Рис. 6.9. Схема продольноrо варианта метода прямых в результате получаем следующую задачу Коши для HOp мальной неоднородной системы ОДУ (N l) ro порядка (на rpa ницах х == О и х == l решения известны из левоrо (6.2) и правоrо (6.3) краевых условий соответственно):
э 6.6 ) Ко'Не'Ч,'Но раз'Ност'Н'ЬtЙ .метод реше'Нuя nараБОJl,u'Чес uх зада'Ч 267 dи1 а 2 2 d ==""""2 ('Pl(t) 2Ul + и2) + O(h ), t h dи2 а 2 2 d == """"2(иl 2и2 + UЗ) + O(h ), t h ... ....... ....... ... ...... ........ ...... ... dиN l а 2 ( ) ( 2 ) d == 2 UN 2 2UN 1 + 'P2(t) + о h , t h (6.122) Ul(O) == Ф(Хl), и2(0) == Ф(Х2), . ........... ............................... UN l(O) == Ф(ХN l). Здесь искомыми являются функции иl(t), U2(t),. . . , UN l(t). Задачу Коши (6.122) можно представить в следующей векторно матричной форме: U'(t) == Аи + F(t), U == (иl и2 ... UN l)T, ( а2 а2 ) Т F ( t) == h 2 <р 1 ( t) О . . . о h 2 <р2 (t) , (6.123) и(О) == Ф(Х), Х == (Хl Х2 ... XN l)T , 2a2 / h 2 а 2 / h 2 а 2 / h 2 2a2 / h 2 а 2 / h 2 А== ............ ....... ..... .......... -..... а 2 / h 2 2a21 h 2 а 2 / h 2 а 2 / h 2 2a2 / h 2 Ее решение можно найти методом вариации произвольных постоянных, для чеrо, интеrрируя формально однородную си
268 м етод оне'Чн'Ь"х разностей [rл. VI стему, соответствующую (6.123), получим общее решение OДHO родной системы uoo(t) в виде матричной экспоненты uoo(t) == [ехр (At)] С, С == (С 1 . . . CN l)T , в котором, разлаrая матричную экспоненту в матричный ряд, получим () ( 122 133 ) uoot == E+At+ 2 At + 6 At +... 'C==B(t).C, rде B(t) функциональная матрица, полученная суммировани ем оrраниченноrо числа членов ряда. Поскольку матрица B(t) невырождена (матрица А HeBЫ рождена), то определитель этой матрицы, являющийся опреде лителем BpoHcKoro W В (t) фундаментальной системы решений однородной системы, соответствующей системе (6.123), не равен тождественно нулю, и, следовательно, в соответствии с методом вариации произвольных постоянных общее решение ион ( t) Heoд нородной системы (6.123) выписывается в виде ион ( t) == в ( t ) О ( t ) , ['де O(t) вектор--функция (Ol( t) 02(t) ... о N l (t») т, опреде.- ляемая из решения СЛАУ в ( t) . О' ( t) == F ( t ) , откуда O(t) == J B l(t) . F(t)dt + D, rде D == (D 1 D 2 . . . D N l)T вектор произвольных постоян ных. Таким образом, общим решением системы (6.123) будет BeK тор u(t) == B(t) . C(t), O(t)== (J WB l(t) dt+D WB(t) 1 J WB2(t) D WB(t) + 2 J WBN l(t) dt + D ) Т WB(t) N l, ( 6.124)
96.7] Метод о'Н,е'Ч'Н,'Ь"х раз'Н,остей для вол'Н,овО20 урав'Н,е'Н,ия 269 rде W в j (t), j == 1, N 1, определители, получающиеся из определителя BpoHcKoro W B(t) заменой j ro столбца на вектор правых частей F ( t ) . Аналоrично можно применить продольный вариант метода прямых к решению первой начально краевой задачи для волно Boro уравнения и к задаче Дирихле для уравнения Лапласа или Пуассона. э 6.7. Метод конечных разностей решения задач для волновоrо уравнения с rраничными условиями, содержащими производные Рассмотрим 3 ю начально краевую задачу для волновоrо уравнения в общем виде: д 2 и 2 д 2 и ди == а + b д + си, О < х < [, t > о; at дх х (6.125) ди(О, t) ах + о::ои(О, t) == 'Pl(t), х == о, t > о; ( 6.126) aи(l,t) ах + O::lu(l, t) == 'P2(t), х == [, t > о; ( 6.127) и(х,О) == 'Ф1(Х), о х [, t == о; ( 6.128) ди(х, О) == fJl, ( ) at 0/2 х , о х [, t == о. (6.129) Конечно разностная схема для уравнения (6.125) на неявном шаблоне (рис. 6.3 б): и +l 2и + и l == и ( и +l 2и +1 + и +l ) + 3 3 3 3+1 3 з l + /3 ( u ti uj O + I и +1 + 0(7 + h 2 ), j == 1, N 1, k == 1,2, . .., и == а 2 т 2 / h 2 , {3 == bT 2 /2h, / == ст 2 , (6.130)
270 Метод оне'Чн'Ь"х разностей [rл. VI имеет только первый порядок аппроксимации по времени, а на явном шаблоне (рис. 6.3 а): и +l 2и + и l == и ( и +l 2и + и 1) + 3 3 3 3 3 3 + /3 (uj+1 uj l) + ,uj + 0(72 + h 2 ), j == 1, N 1, k == 1,2,..., и == a 2 7 2 /h2, {3 == b7 2 /2h, / == С7 2 , второй порядок. Второй порядок по времени имеет и неявно явная схема с весом () == 1/2 (схема Кранка Николсона): и +l + 2и + и l 111 т 2 1 [ и +l 2и +1 + и +l и k + 1 и k + 1 ] == а 2 1+1 1 1 1 + ь j+1 j l + cи +l + 2 h 2 2h 3 [ k l 2 k l k l k l k l ] 1 2 и .+1 и. +и. l и.+ 1 и. l k l + а 1 1 1 + ь 1 1 + си . + 2 h 2 2h 3 + 0(72 + h 2 ), j == 1, N 1, k == 1,2,... с шаблоном, представленным на рис. 6.10. При аппроксимации rраничных усло вий (6.126), (6.127), содержащих произ водные по пространственным перемен ным, аппроксимация их с помощью OT ношения односторонних конечных разно стей приводит не только к первому поряд ку аппроксимации по пространственной переменной (в этом случае аппроксима Рис. 6.10. Шаблон cxe ция всей начально краевой задачи имеет мы Кранка Николсона порядок O(h), несмотря на второй поря для волновоrо ypaBHe док аппроксимации во всех внутренних ния узлах расчетной области), но и к HeKOH сервативности конечно разностной схемы, поскольку на про странственных шаrах, примыкающих к rраницам, не уЧитыва ется дифференциальное уравнение, т. е. на rраницах в конечно разностной схеме не соблюдаются законы сохранения, на основе
96.7] Метод о'Н,е'Ч'Н,'Ь"х раз'Н,остей для вол'Н,овО20 урав'Н,е'Н,ия 271 которых выведено дифференциальное уравнение. Для YCTpaHe ния этоrо явления в конечно разностной аппроксимации Kpae Бых условий (6.126), (6.127) учтем дифференциальное уравнение (6.125), для чеrо сделаем предположение о существовании на rраницах производной BToporo порядка искомой функции и(х, t) по пространственной переменной, а затем разложим сеточную функцию на точном решении в ряд Тейлора до TpeTbero сла raeMoro включительно в окрестности rраничных узлов. Тоrда Б узлах, непосредственно примыкающих к rраничным, получим k+1 k+1 ди J k+1 д2и I k+1 h2 3 и 1 == и о + д h + 2 + O(h ), х О дх о (6.131) k+1 k+1 ди I k+1 д2и I k+1 h2 3 uN l==uN д h+ +O(h), х N дх N 2 причем производные BToporo порядка в (6.131), (6.132) опре делим из дифференциальноrо уравнения (6.125). В результате ди I k+1 ди J k+1 значения производных первоrо порядка дх о и дх N на rpa ницах определяются со вторым порядком следующим образом: (6.132) ди I k+l иk+1 и k + 1 1 О дх о h . р h д 2 и I k+1 ch k+1 + u + 2а 2 . р at 2 О 2а 2 р о + 0(h 2 ), bh Р == 1 2а 2 ; ди I k+l и +l и \ h д 2 и I k+l ch k+1 + u + дх N == h.q 2a 2 .q at 2 N 2a 2 q N + 0(h 2 ), bh q == 1 + . 2а 2 ' Подставляя их в rраничные условия (6.126), (6.127), а затем аппроксимируя вторые производные по времени на верхнем (k + + l) M временном слое (т.е. с порядком О(т)): д 2 и I k+1 1 k+1 k k l д 2 == 2(и о 2ио + и о ) + О(т), t О т
272 Метод оне'Чн'Ь"х разностей [lЛ. VI 8 2 и I k+1 1 k+l k k l 8t 2 N == т 2 (u N 2uN + u N ) + О(т), получим алrебраические уравнения для rраничных узлов, каж дое из которых содержит два неизвестных, в следующей форме: boи +1 + COu +l == d O + 0(7 + h 2 ); (6.133) k+1 Ь k+l d О( h 2 ) aNuN l+NUN == N+ т+ , (6.134) rде ао == о; 1 h ch Ь о == hp 2 2 2 + 2 2 + 00; а рт а р 1 СО == h р ; d == ((') ( t k + 1 ) + h ( 2uk + uk l ) . о '1"'1 2 2 2 О О , а рт 1 h bN == + hq 2a 2 qT 2 ch 2 2 + 01; а q 1 aN == ; hq ( k+l ) h ( k k l ) . d N 'Р2 t 2 2 2и N + U N , 2а qT CN == о. Для внутренних узлов расчетной сетки неявная конечно разностная схема (6.130) представляется в виде k+l Ь k+l k+l d О( h 2 ) ajUj l + jU j + CjU j + 1 == j + т + , j == 1, N 1, k == 1, 2, . .., (6.135) дe aj == и {3;
9 6.8 ] Метод уста'Н,овле'Н,ия и е20 обос'Н,ова'Н,ие 273 b j == 2и 1 + ,; Cj == (J" + (3; d j == 2uj + и7 1 . СЛАУ (6.133) (6.135) имеет трехдиаrональную матрицу, что позволяет решать ее на каждо м вр еменном слое методом проrон ки. При k == 1 и и из, j == О, N, вычисляются в соответствии с начальными условиями (6.128), (6.129): и == 'Ф1(Хj), З . о N. , , uз == и + т'Ф2(Хj) + 0(72) == == 'Ф1(Хj) + т'Ф2(Хj) + 0(72), j == О, N. Аналоrично строятся конечно разностные аппроксимации со вторым порядком по пространственной переменной на явном (рис. 6.3 а) и неявно явном шаблонах, в частности на шаблоне (рис. 6.10) для схемы Кранка Николсона. э 6.8. Метод установления и ero обоснование Рассмотренные в предыдущих параrрафах уравнения пара болическоrо и rиперболическоrо типов обладают свойством oд нонаправленной передачи возмущений. В этой связи методы их численноrо интеrрирования имеют маршевый характер, коrда решение находится путем последовательноrо перехода от одноrо BpeMeHHoro слоя или пространственноrо сечения к друrому. В задачах для эллиптических уравнений возмущения (в част Ности, поrрешности счета) распространяются в различных Ha правлениях, поэтому они передаются как в область, rде уже проведен расчет, так и в область, rде расчет еще не проводился
274 Метод оне'Чн'Ь"х разностей [lЛ VI Это затрудняет применение маршевых методов к задачам для эллиптических уравнений. Вместе с тем маршевые методы обладают рядом преиму ществ, связанных с простотой алrоритмизации, однородностью вычислительноrо процесса, возможностью применения эконо мичных разностных схем, рассматриваемых в следующей rлаве. Этот факт стимулировал поиск путей перехода от эллиптиче ских задач к э'Квuвале'Нт'Н'Ьt-м (при определенных условиях) па раболическим задачам. Оказалось, что решение параболических задач при t ------+ 00 асимптотически стремится к решению COOTBeT ствующих эллиптических задач, т. е. к решению нестационарных задач, в которых искомая функция уже не зависит от времени. В соответствии с этой особенностью нестационарных задач был разработан и обоснован -метод уста'Новле'Нuя. В ero разра ботке и обосновании активное участие принимали отечественные математики, и, в частности, с. К. rодунов. Рассмотрим обоснование метода установления на примере задачи Дирихле для уравнения Пуассона: д 2 и д 2 и ах 2 + ау2 == Лх, у), (х, у) Е П, (6.136) и(х, y)lr == ср(х, у), (х, У) Е r. (6.137) В соответствии с методом установления вместо задачи (6.136), (6.137) рассмотрим следующую начально краевую зада чу для уравнения параболическоrо типа (двумерноrо уравнения теплопроводности), добавив в правую часть уравнения (6.136) фф ди ди еренциальныи оператор at и дополняя входные данные однородным начальным условием, сохранив при этом независи мость от времени KpaeBoro условия (6.137): ди д 2 и 8 2 и 8i == ах 2 + ау2 f(x, у), (х,у)ЕП, (6.138)
96.8 ] Метод установления и е20 обоснование 275 и(х, у, t)lr == СР(Х, у), (Х, У) Е i, (6.139) и(х, У, O)l n == О, (х, У) Е n == n + i, (6.140) rде n плоская двумерная область, оrраниченная rраницей i. Покажем, что при t 00 решение задачи (6.138) (6.140) CTpe мится к решению задачи (6.136), (6.137). С этой целью для задачи (6.136), (6.137) введем пространственную сетку Wh, на которой дифференциальную задачу (6.136), (6.137) будем аппроксимиро вать с помощью отношения конечных разностей, в результате чеrо получим следующее векторно матричное уравнение: Ай == f, (6.141) т.е. СЛАУ дЛЯ функции O(Xi,Yj). В соответствии с продольным вариантом метода прямых для задачи (6.138) (6.140) можно записать следующую задачу Коши для векторно матричноrо ОДУ l ro порядка: drф dt + Аф == f, ( 6.142) ф(О) == О, ( 6.143) для функции Ф(Хi, Yj, t). Параллельно рассмотрим задачу на собственные значения и собственные векторы матрицы А: Au k == Лkuk, k == 1, n , (6.144) дe u k собственные векторы, Лk собственные значения MaT рицы А. Если матрица А симметрическая (А == А Т), положительно определенная ((Аи, и) > О), а именно к таким матрицам чаще Bcero приводит конечно разностная аппроксимация дифферен Циальных задач, то имеется полный вещественный положитель ный спектр Лk > О, k == 1, n , а собственные векторы u k , k == 1, n , Ортоrональны.
276 Метод оне'Чн'Ь"х разностей [rл. VI Разложим функции rф, О, 1 в ряд по собственным BeKTO рам u k, получим n О == L 0k . U k , k==l (6.145) n 1/J == L 1/Jk . U k , k==l (6.146) n f == L fk о u k , k==l rде Qk == (о, u k ), 1/Jk == ('Ф, u k ), Ik == (/, u k ) коэффициенты разложений (6.145) (6.147). Для определения коэффициентов 0k разложения решения конечно разностной задачи (6.141) подставим (6.145) и (6.147) в (6.141), получим А ( f O::k о u k ) == f fk о u k , k==l k==l (6.147) а поскольку A( O::k ou k ) == A(O::k ou k ) == n n == L O::k(Au k ) == L O::k о (Лk uk ), k==l k==l то n n L (О::kЛk) о u k == L fk uk , k==l k==l откуда следует, что fk 0k == , k == 1,п , Лk (6.148) поскольку u k , k == 1, п , ортоrональны, и, следовательно лuнейно незавuсu.м'ыl.
t 6.8 ] Метод установления и е20 обоснование 277 Таким образом, решение (6.145) стационарной задачи (6.136), (6.137) с учетом (6.148) приобретает вид n о:: == L {k u k о (6.149) k==l k Подставим теперь (6.146), (6.147) в задачу Коши (6.142), (6.143), получим :t ( kuk) + А ( kuk) == fkUk, n L k(O) о u k == о. k==l Поскольку собственные векторы u k линейно независимы, то, учитывая равенство Au k == Лkuk, получим следующую задачу Коши для функции 'Ф k ( t ) : d'Фk & + Лk'Фk == fk, k == 1, n , (6.150) 'Фk(О) == О, k == 1, n , (6.151) решением которой является функция k(t) == fk (1 ехр ( Лkt» . Ak (6.152) Подставляя (6.152) в разложение (6.146), получим решение задачи (6.142), (6.143), а следовательно, и задачи (6.138) (6.140) в виде n (t) == L fk (1 ехр( Лkt» о u k . k==l Ak Для положительно определенных матриц А все собственные значения положительны, и, следовательно, при t 00 из (6.153) получаем решение (6.153) n == L {k о u k , k==l k (6.154)
278 Метод оне'Чн'Ь"х разностей [lЛ. VI совпадающее с решением (6.149) стационарной задачи (6.136), (6.137). Таким образом, вместо решения задачи Дирихле (6.136), (6.137) можно решать нестационарную задачу (6.138) (6.140) для двумерноrо уравнения теплопроводности при больших значени ях времени. Вычислительный процесс останавливается тоrда, коrда решение уже несущественно изменяется по времени. Можно показать, что метод установления применим в зада чах для уравнений эллиптическоrо типа не только с раничными условиями первоrо рода (6.137), но также и с rраничными усло виями BToporo и TpeTbero родов. л При этом для нестационарной задачи (6.138) (6.140) можно использовать боrатейший арсенал численных методов, включая методы расщепления. Метод установления широко используется при решении CTa ционарных задач вычислительной аэроrидродинамики и тепло физики.
r л А В А VII МЕТОД конЕчныIx РАЗНОСТЕЙ РЕШЕНИЯ MHOrOMEPHbIX ЗАДАЧ МАТЕМАТИЧЕСКОЙ ФИЗИКИ. мЕтодыI РАСЩЕПЛЕНИЯ Про рамма Экономичность конечно разностных схем для MHOI'OMepHbIx ypaB нениЙ математической физики. Методы матричной проrонки, пере менных направлений Писмена Рэчфорда, дробных шаI'ОВ Н. Н. Янен ко, центрально симметричный А. А. CaMapCKOI'O, переменных направ лений с экстраполяцией В. Ф. Формалева и ПОЛНОI'О расщепления Формалева Тюкина. Методы расщепления численноI'О решения эллип тических задач. Численные методы решения задач для MHOI'OMepHbIx уравнений I'иперболическоI'О типа: метод характеристик решения KBa зилинейных I'иперболических систем, метод С. К. rодунова. Задача о распаде ПРОИЗВОЛЬНОI'О разрыва. При численном решении MHO OMepHЫX задач математической физики исключительно важным является вопрос об Э'к;О'НОМU'Ч'НО сти используемых методов. К о'Не'Ч'Но раз'Ност'Ную схему будем 'Назъtватъ Э'к;о'Номu'Ч'Ной, еслu 'Чuсло длu'Н'Нъtх оnераций (оnераций тиnа ум'Ноже'Нuя) npo nорцuо'Налъ'Но 'Чuслу узлов сет'к;и. За последние 50 лет разработано значительное количество экономичных разностных схем численно о решения MHO OMep ных задач математической физики, основанных на расщеnле 'Нии пространственных дифференциальных операторов по KO ординатным направлениям и использовании метода скалярной проrонки вдоль этих направлений. При этом большинство раз работанных схем активно используют явную аппроксимацию дифференциальных операторов, и поэтому при определенных Соотношениях сеточных характеристик в задачах с rраничными условиями, содержащими производные, или в задачах, содержа щих смешанные производные, такие схемы становятся условно устойчивыми [10 16].
...... 280 Метод оне'Чн'Ь"х разностей. М етод'Ь" расщепления [lЛ. VII Из экономичных конечно разностных схем, получивших наи большее распространение, в данной rлаве рассматриваются сле дующие: схема .метода nере.меННъtх наnравленuи Писмена Рэчфорда (1955 r.); схема .метода дроБНЪtх ша20в Н. Н. Яненко (1956 r.); схема 'Це1tтралъно сu.м.метРU'ЧНО20 .метода А. А. CaMapCKO ro (1958 r.). Эти схемы аппроксимируют смешанные дифференциальные операторы на нижних временных слоях (явным образом), что при определенных условиях может приводить к неустойчивости решения. От этих недостатков свободны следующие экономич ные, абсолютно устойчивые методы: .метод nере.меННъtх наnравленuи с э'Кстраnоля'Цuеи В. Ф. Формалева (1987r.) [17 19]; .метод nОЛНО20 расщеnленuя Формалева Тюки на (1996 r. ) [20 21]. Все эти методы будем называть общим термином .методъ, расщеnленuя. Среди неэкономичных, полностью неявных, а потому абсо лютно устойчивых, методов можно отметить .метод .матрu'Чнои nРО20н'Ки. Рассмотрим эти методы на примере задачи для двумерноrо уравнения параболическоrо типа в прямоу ольнике со CTopOHa ми f 1 , f2 И раничными условиями l ro рода. Рассматриваемые методы можно использовать и для эллип тических задач, если с помощью метода установления (9 6.8) CBe сти их К параболическим задачам, а также для иперболических задач. Для пространственно временной области G T == G х [О, Т], t Е Е [О, Т], G == G + r, G == f 1 Х f 2 , рассмотрим следующую задачу: д д и == а ( a2 + a2 ) , х Е (О, f 1 ), у Е (О, f 2 ), t > о; (7.1) t дх ду и(х, О, t) == 'Р1(Х, t), х Е [О, f 1 ], У == О, t > о; (7.2) и(х, f 2 , t) == 'Р2(Х, t), х Е [О, f 1 ], У == f2, t > о; (7.3) и(О, у, t) == 'Рз(у, t), х == О, У Е [О, f 2 ], t > о; (7.4)
9 7 . 1 ] Метод м,атри'Чной np020H и 281 U(ll, У, t) == 'Р4(У, t), Х == ll, У Е [О, l2], t > о; (7.5) и(х, У, О) == 'Ф(Х, у), Х Е [О, ll], У Е [О, l2], t == о. (7.6) Введем следующую пространственно временную сетку с ша rами hl, h 2 , Т соответственно по переменным х, У, t: (;//:1' h2 == { Xi == ihl, i == О, 1 ; Yj == j h2, . k } J == О, J; t == kT, k == 0,1,2, . .. , (7.7) и на этой сетке будем аппроксимировать дифференциальную задачу (7.1) (7.6) методом конечных разностей на верхнем Bpe менном слое t k + 1 == (k + l)т: k+l k U ij Uij а ( k+1 2 k+l k+1 ) == 2 U . +1 . U . . + и. 1 . + т h 3 3 3 1 а ( k+1 2 k+1 k+1 ) + h u ij +1 u ij + Uij l , i == 1, 1 1 ; j == 1, J 1; k == 0,1,2, . . . ; (7.8) k+l ( k+l ) . k+l ( k+1 ) . k+l ( k+l ) . u iO == 'Р 1 Xi, t , U iJ == 'Р2 Xi, t , U Oj == 'Р3 Yj, t , k+1 k+1 О . . и] j == 'P4(Yj, t ); Uij == 'ljJ (Xi, Yj), == 0,1; J == О, J. э 7.1. Метод матричной проrонки Выберем три произвольных сечения i 1, i, i + 1, i == 1, 1 1, и запишем неявную схему (7.8) в следующей векторно матричной форме: AiU +l l + BiU +l CiU :11 == F i , i == 1, 1 1, (7.9) rде A i , B i , Ci квадратные матрицы размера J 1 вида и1 О О О О иl A i == C i == О О иl
282 Метод оне'Чн'Ь"х разностей. М етод'Ь" расщепления [lЛ VII 1 + 2иl + и2 О О + 2и 2 и2 1 + 2и1 + и2 О + 2и 2 B i == О 1 + 2и1 + о и2 + 2и 2 ......... ..... ............. ... ............ о о о 1 + 2и1 + + 2и 2 ат ат . k+1 k+l k+1 и1 2' и2 2 сеточные числа Куранта, ui l , u i ' U i + 1 , h 1 h 2 i == 1, 1 1, векторы значений сеточной функции размера ( ) Т k+1 k+l k+1 k+1 . . J 1, U i U i 1 U i 2 ... U i J 1 , F i , 'l 1, 1 1, век торы правых частей размера J 1, Fi == (fi1 fi2 ... fiJ l)T. Из векторно матричной СЛАУ (7.9) видно, что матрица СЛАУ представляет собой трехдиаrональную матр ицу, на лав ной диаrонали которой стоят матрицы B i , i == 1, 1 1 , на нижней диаrонали матрицы A i , i == 1, 1 1 , а на верхней диаrонали матрицы C i , В 1 С 1 u k + 1 F 1 1 А 2 В 2 С2 () u k + 1 F 2 2 Аз В3 С З F3 (7.10) A i B i Ci () FI 2 AI l BI l u k + 1 FI l I 1 А 1 == (), Cl l == (), () нулевая матрица. Матрица А 1 равна нулевой матрице, поскольку при 'l 1 первое матричное уравнение системы (7.9) имеет вид В k+1 С k+1 F 1 и 1 1 и 2 == 1, ....... k+1 F 1 == F1 +А 1 и о ,
97.1] Метод м,атри'Чн,ой np020н, и 283 U k + 1 (п (У ' t k + 1 ) О '1"'3 З' , (7.11 ) j == 1, J 1, т. е. после вычисления вектора F 1 с помощью матрицы А 1 в ypaB нении (7.11) матрицу А 1 можно положить равной нулевой MaT рице (). Аналоrично, матрица CI .. 1 равна нулевой матрице, посколь ку последнее уравнение системы (7.9) имеет вид AJ lU + BI lU + i == FI l, FI l == FI l + CI l U +l, и +1 == 'Р4 (Yj, t k +1), j == 1, J 1, (7.12) Т. е. после вычисления вектора Fl l с помощью матрицы CI l последнюю можно принять равной нулевой матрице (). Как видно теперь, система (7.9) или (7.10) по форме совпада ет с системой (2.1) для OДHO O координатно о направления, и эту систему формально можно решить с помощью метода про онки. Будем искать решение системы (7.9) в виде и:+ 1 == P i и::! + Qi, i == 1, 1 1, (7.13) дe P i проrоночные матрицы, Qi проrоночные векторы. Для определения P i , Qi выразим из (7.11) и +1 через и +l, получим U k + 1 B l C U k+1 + B l F 1 1 1 2 1 1, откуда, сравнивая с (7.13) при i == 1, находим P 1 == в 1 1 с 1 , Q1 == в 1 1 F 1 , и +1 == Р 1 и +1 + Q1. (7.14) Выразим из 2 ro уравнения системы (7.9) и +1 через u +l: А2 (p 1 и;+1 + Ql) + B2и +1 C2и +1 == F2, ОТКуда и +1 == (В2 A2Pl) 1 C2и +1 + (В2 A2P1) 1 (F2 + A 2 Q1) , Р 2 == (В2 A2P1) lC2; Q2 == (В2 A2P1) 1 (F2 + A 2 Q1) . (7.15) Продолжая этот процесс, получим P i == (B i AiPi l) l C i ; Qi == (Bi AiPi l) l (Fi + A iQi l) , i == 1, 1 1, (7.16)
"........ I 284 м етод о'н,е'ч'н,'ы,x раз'Н,остей. М етод'Ь" расщеnле'Н,ия [rл. VII причем при i == 1 эти выражения трансформируются в (7.14), поскольку А 1 == е. При i == 1 1, P/ l == е, поскольку C/ l == е, To дa Q/ l == (B/ l A/ lP/ 2) 1(Fl 1 + A/ lQl 2). (7.17) После вычисления выражений (7.16), (7.17) прямой ход MeTO да матричной проrонки завершен. Обратный ход по определению векторов Ui, i == 1 1, 1 2, . . . , 1, осуществляется с помощью равенств (7.13): k+1 Р k+1 Q Q и/ 1 == / 1 и/ + / 1 == / 1, k+1 Р k+l Q и/ 2 == / 2ul 1 + / 2, (7.18) ...... ..... ........ .... ........ U k + 1 Р U k+l + Q 1 1 2 1. к достоинству метода матричной про онки относится ero абсолютная устойчивость, поскольку аппроксимация осуществ ляется на верхнем временном слое (неявно) с порядком 0(7 + IhI 2 ), Ihl 2 == hi + h , а к недостат'Ку ero неэкономичность, поскольку метод вклю чает в себя обращение матриц вида P i == Bi AiPi l. 7.2. Метод переменных направлений Писмена Рэчфорда в схеме метода переменных направлений (МПН), как и во всех методах расщепления, шаr по времени т разбивается на число, равное числу независимых пространственных переменных (в двумерном случае на два). На каждом дробном временном слое один из пространственных дифференциальных операторов аппроксимируется неявно (по соответствующему координатному направлению осуществляются скалярные проrонки), а остальные явно. На следующем дробном ша е следующий по порядку диф ференциальный оператор аппроксимируется неявно, а осталь ные явно и т. д. В двумерном случае схема метода переменных направлений для задачи (7.1) (7.6) имеет вид
97.2 ] Метод nере,м,енн'Ь"х направлений Пис,м,ена Рэ'Чфорда 285 k+l/2 k Uij иij т/2 а ( k+l/2 k+1/2 k+1/2 ) а ( k == 2 и. +l . 2и.. + и. 1 . + 2 и. . +1 h 3 3 3 h 3 1 2 2и . + и . 1) ( 7.19 ) 3 3 , а ( k+1/2 2 k+l/2 + k+1/2 ) + а ( k+1 """""2 u i + 1j u ij Ui lj """""2 u ij + 1 h 1 h 2 аппроксимируется д 2 а оператор а д у 2 явно (в результате весь конечно разностный оператор по переменной у переходит в правые части, поскольку U: j известно). с помощью скалярных про онок в количестве, равном числу J 1, в направлении переменной х получаем распределение сеточной Ф k+1/2. у нкции U ij , 'l == 1, 1 1, j == 1, J 1, на временном полуслое k+1/2 k / Рис. 7.1. Шаблон схемы мето д а пе р е t == t + т 2. менных направлений В подсхеме (7.20) опера д 2 Тор а аппроксимируется неявно на верхнем временном слое ду д 2 t k + 1 == (k + 1) т, а оператор a явно в момент времени дх t k + 1 / 2 == t k + т /2 (конечно разностный анало этоrо оператора переходит в правые части). С помощью скалярных проrонок в направлении переменной у в количестве, равном числ у 1 1 , получаем распределение сеточной функции u7 j + 1 , i == 1, 1 1, k+l k+l/2 Uij и ij т/2 2и 71 + и 71 1) . ( 7.20 ) 3 3 в подсхеме (7.19) дробном на первом ша е д 2 a дх 2 неявно, т/2 оператор х у х -с/2 у k х i j+l у
1""""'" 286 Метод о'Н,е'Ч'Н,'Ь"х раз'Н,остей. М етод'Ь" расщеnле'Н,ия [rл. VII j == 1, J 1, на полуслое t k + 1 == t k + 1 / 2 + т /2. Шаблон схемы МПН пред ставлен на рис. 7.1. Исследуем схему МПН (7.19) , (7.20) на порядок аппроксима ции и устойчивость, для чеrо запишем ее в следующей оператор ной форме: и k + 1 / 2 и k == Л 1 u k + 1 / 2 + л 2 u k , т/2 (7.21 ) и k + 1 и k + 1 / 2 == Л 1 u k + 1 / 2 + л 2 u k + 1 , (7.22) т/2 д2 д2 rде Л 1 == а 2 , Л 2 == а 2 , U == (Ul1U12... UI lJ l)T. h 1 h 2 Исключим из равенств (7.21), (7.22) сеточную функцию u k + 1 / 2 на промежуточном временном слое, для чеrо запишем их в виде (Е ; Л 1 ) u k + 1 / 2 == (Е + ; Л2) u k , (7.23 ) ( Е ; Л 2 ) u k +1 == (Е + ; Л 1 ) u k +1/2, (7.24) rде Е тождественный оператор (например, единичная матри ца). УМНОЖИМ (7.23) слева на оператор ( Е + ; Лl ), а (7.24) на оператор (Е ; Л 1 ) И, складывая результаты, ПОЛУЧИМ ( Е ; Л 1 ) (Е ; Л 2 ) u k +1 == (Е + ; Л 1 ) (Е + ; Л2) u k , (7.25) т. е. (7.25) является уже двухслойной схемой. Раскроем в (7.25) скобки и разделим полученное выражение на т: и k + 1 и k 1 ( ) 1 ( ) т == 2 л 1 u k +1 + л1u k + 2 л 2 u k +1 + л 2 u k : Л 1 Л 2 (( u k +1 u k ). (7.26) В векторно операторном равенстве (7.26) первые два сла aeMЫX в правой части аппроксимируют дифференциальные д 2 и д 2 и операторы и по схеме Кранка Николсона с поряд дх ау ком о(т 2 + /h/2), а последнее слаrаемое можно представить
97.2 ] Метод nереме'Н,'Н,'Ь"х 'Н,аnравле'Н,ий Писме'Н,а Рэ'Чфорда 287 т 2 и k + 1 и k как 4ЛIЛ2Ut == 0(72), поскольку Ut == т конечно разностная производная по времени. Поэтому k+1 и k 1 1 ) и T == 2 (Л 1 u k +1 + Л1uk) + 2 (Л2uk+1 + л 2 u k + +0(72+l h I 2 ), т. е. схема МПН имеет второй порядок по времени и поэтому является высокоточной. Исследуем устойчивость схемы (7.19) , (7.20) методом rapMo ническо о анализа, для чеrо вместо значений сеточной функции подставим rармонику ufj == 1]k ехр [i (ЛnХi + ЛmУj)] , получим для подсхемы (7.19) равенство (7.27) 1]k+1/2 1]k == иl1]k+1/2 [ехр( iлnh 1 ) 2 + ехр ( iлnh1)] + + и21]k [ехр (iл m h 2 ) 2 + ехр ( iЛmh2)] , откуда (см. п. 6.5.2) ryk+1/2 1Jk 1 а2 Ь 2 1 + а1 Ь 1 ' r д е Ь 1 == 4 sin 2 л n h 1 . Ь 2 == 4 sin 2 л m h 2 . и 1 == ат . и 2 == ат 2 ' 2' h 2 ' h 2 1 2 Аналоrично, подставляя rармонику (7.27) в подсхему (7.20), получим ryk+1 1 а1 Ь 1 ryk+1/2 1 + а2 Ь 2 Тоrда отношение амплитуд ryk+1 rармоник будет равно ryk ryk+1 ryk+1 ryk ryk+1/2 Отсюда видно, что схема МПН абсолютна устойчива. Проанализируем выражение (7.28). Из Hero видно, что ослаб ление устойчивости по переменной у в подсхеме (7.19) (уменьше ние числителя BToporo сомножителя) компенсируется большим усилением устойчивости по направлению у в подсхеме (7.20) ryk+1/2 1 а1 Ь 1 1 а2 Ь 2 1 < ryk 1 + а1 Ь 1 . 1 + а2 Ь 2 . (7.28) 288 Метод х;оне'Чн'Ь"х разностей. М етод'Ь" расщепления [lЛ. УII (знаменатель BToporo сомножителя). Аналоrично для перемен ной х. Ослабление устойчивости по переменной х в подсхе ме (7.20) (уменьшение числителя перво о сомножителя) компен сируется большим усилением устойчивости по направлению х в подсхеме (7.19) (знаменатель первоrо сомножителя). Таким образом, в схеме метода переменных направлений ослабление устойчивости по какому либо направлению, вслед ствие явной аппроксимации по этому направлению, компенси руется увеличением устойчивости по друrому направлению. Из за этоrо явления МПН не применяется к трехмерным задачам, поскольку в этом случае он становится условно устойчивым. К достоинствам метода переменных направлений можно OT нести высокую точность, поскольку метод имеет второй порядок точности по времени. При малых числах Куранта иl 1, и2 « 1 с помощью МПН в двумерном случае можно тестировать друrие численные схемы. К недостат'К;ам можно отнести условную устойчивость при числе пространственных переменных больше двух. Кроме этоrо, МПН условно устойчив в задачах со смешанными производными уже в двумерном случае. Таким образом, запас устойчивости у метода довольно низок. Можно показать, что в задачах с Kpae выми условиями 2 ro или 3 ro рода схема МПН также условно устойчива. э 7.3. Метод дробных шаrов Н. Н. Яненко В отличие от МПН, метод дробных шаrов (МДШ) исполь зует только неявные конечно разностные операторы, что делает ero абсолю но устойчивым в задачах, не содержащих смешан ных производных. Он обладает довольно значительным запасом устойчивости (сохранение устойчивости при числах Куранта, значительно превышающих единицу) и в задачах со смешанными производными. Для задачи (7.1) (7.6) схема МДШ имеет вид k+1/2 k U ij иij ( k+1/2 2 k+l/2 + k+l/2 ) 2 U i + 1j U ij Ui lj' т h 1 (7.29) k+l k+1/2 и ij и ij == ( и + 1 1 2и 1 + u l l) . т h 1, 3 1,3 1, 3 . (7.30)
9 7.3 ] Метод дробнъ"х ша20в Н. Н. Янен о 289 с помощью чисто неявной подсхемы (7.29) осуществляются скалярные проrонки в направлении оси х в количестве, равном k+1/2 J 1, в результате чеrо получаем сеточную функцию U ij . На втором дробном шаrе по времени с помощью подсхемы (7.30) осуществляются скалярные проrонки в направлении оси у в количестве, равном 1 1, в результате чеrо получаем сеточную функцию u: j + 1 . Шаблон схемы мдш приведен на рис. 7.2. Для определения порядка аппроксимации схемы МДШ запишем ее в следующей операторной форме: k+1/2 k и u k+l / 2 == Л 1 U , т (Е тЛ 1 ) u k + 1 / 2 == Eu k , и k + 1 и k + 1 / 2 == л 2 u k + 1 , т (Е тЛ 2 ) u k + 1 == Eu k + 1 / 2 . х 'С/2 у х 'С/2 у k Рис. 7.2. Шаблон схемы метода дроб ных шаrов Исключая здесь сеточную ФУНКЦИЮ на промежуточном временном слое t k + 1 / 2 == t k + ; , получим двухслойную схему (Е тЛ 1 ) (Е тЛ 2 ) u k + 1 == Eu k , ОТкуда получаем порядок аппроксимации по времени: (Е т (Л 1 + Л 2 ) + 72 Л 1 Л 2 ) u k + 1 == Eu k , и k + 1 и k == Л 1 u k + 1 + л 2 u k + 1 7 л 1 л 2 u k + 1 . (7.31 ) т Из (7.31) видно, что схема мдш (7.29), (7.30) имеет порядок О(т + IhI 2 ), т.е. первый порядок по времени и второй по переменным х и у. 10 В.Ф. Формалев, д.л. Ревизников
290 Метод оне'Чн'Ь"х разностей. М етод'Ь" расщепления [lЛ VII Для исследования устойчивости схемы МДШ (7.29), (7.JO) подставим в нее rармонику (7.27), получим 'ТJk+1/2 'ТJk == и1'ТJk+1/2( bl), ы 1 == 4 sin 2 л n h 1 > О. 2 ' Ь 2 == 4 sin 2 Лт;h 2 > О. 'ТJk+l 'ТJk+1/2 == и2'ТJk+l ( b2), Тоrда отношение амплитуд rармоник равно ryk+1 ryk+l ryk+l/2 1 1 < 1, ryk ryk+1/2 ryk 1 + 0'1 Ь 1 1 + О'2Ь2 т. е. схема метода дробных шаrов абсолютно устойчива. Достоинства схе.мыl МДШ: 1) проста в алrоритмизации и проrраммировании; 2) абсолютно устойчива с большим запасом устойчивости даже для задач, содержащих смешанные производ ные. Недостат'Ки: 1) на каждом дробном шаrе достиrается ча стичная аппроксимация, полная аппроксимация достиrается на последнем дробном шаrе; 2) имеет первый порядок точности по времени; 3) в задачах со смешанными производными для устой чивости МДШ на коэффициенты накладываются жесткие orpa ничения, при невыполнении которых схема становится условно устойчивой. э 7.4. Метод переменных направлений с экстраполяцией В. Ф. Формалева Как видно из изложенных выше конечно разностных схем для MHoroMepHbIx задач математической физики, конечно разностная схема может быть либо абсолютно устойчивой, но не экономичной (метод матричной проrонки), либо экономичной, но условно устойчивой, как схема МПН Желание получить схемы экономичные и одновременно абсолютно устойчивые с большим запасом устойчивости приводит к необходимости использовать апостериорную информацию о сеточной функции, которая полу чается в процессе счета. К таким схемам относится схема метода переменных направлений с экстраполяцией (МПНЭ). Эта схема использует распределение сеточной функции в левом (от pac четноrо) пространственном сечении, уже полученное на верхнем временном слое, т. е. неявно. В правом пространственном сечении
t 7 . 4 ] Метод nеременнъ"х направлений с э страnоляцией 291 значения сеточной функции в первом приближении и с KOH тролируемой точностью определяются линейной экстраполяцией по времени с нижних временных слоев на верхний. Затем эти значения уточняются с помощью скалярных проrонок. Рассмотрим задачу, аналоrичную задаче (7.1) (7.6), в KOTO рой дифференциальное уравнение (7.1) содержит смешанные производные (наличие последних не обязательно): 8и д 2 и д 2 и д 2 и ==a11 +2a12 д д +a22 , 8t дх худу х Е (О; -е 1 ), У Е (о; -е 2 ), t > о. (7.32) На сетке (7.7) аппроксимируем это дифференциальное ypaB нение с помощью следующей схемы: k+1/2 k и ij иij а11 ( k+1/2 2 k+1/2 + k+1/2 ) + 7 /2 h ui+lj u ij Ui lj 2а12 ( k+1/2 k+1/2 k+1/2 k+1/2 ) + U i + 1 J " +1 U i + 1 J " 1 Ui l J " +1 + Ui l J " 1 + 4h 1 h 2 + а22 ( k+1/2 2 k+1/2 + k+1/2 ) h 2 u ij + 1 u ij Uij l' 2 (7.33 ) k+1 k+l/2 и ij и ij == а11 ( и +1" 2и 71 + u +l" ) + т /2 h +lJ } 1} 2а12 ( k+1 k+1 k+1 k+1 ) + 4h 1 h 2 ui+lj+1 ui+lj l Ui lj+1 + Ui lj l + а22 ( k+1 k+1 k+1 ) ( ) + 2 и" " +1 2и" " + и". 1 . 7.34 h } } } 2 Здесь значения сеточной функции Uij, помеченные волнистой чертой, определяются с помощью линейной экстраполяции: k+1/2 k k 1/2 U mj + 1 2U m j+1 U mj + 1 , m == i 1, i, i + 1, k+1 k+1/2 k U i + 1m 2u i + 1m Ui+1m' m == j 1, j, j + 1. 10*
,... 292 Метод оне'Чнъ"х разностей. М етодъ" расщепления [lЛ. VII Шаблон схемы МПНЭ представлен на рис. 7.3 i 1 j ] i j 1 i+ 1 j 1 i 1 j 1 i 1 j 1 j+ 1 У i+ 1 j+ 1 k+ 1/2 i j+l У i+ 1 j+ 1 k б а <> Узлы с известными значениями О Узлы с неизвестными значениями Х Узлы с экстраполяционными значениями Рис. 7.3. Шаблон схемы метода переменных направлений с экстраполяцией: а подсхема (7.33); б подсхема (7.34) ( ) k+1/2 k+l/2 k+1/2 В подсхеме 7.33 значения Ui lj , U ij , Ui+lj являются искомыми, определяемыми из скалярных про онок в направле k+1/2 k+l/2 k+1/2 нии переменнои х , значения Ui lj l' Uij l 'Ui+1j 1 уже извест ны на верхнем полуслое из проrонки вдоль координатной линии ( . l ) h k+1/2 ......k+l/2 k+l/2 Yj l == J 2, а значения Ui lj+1' U ij + 1 , U i + 1j + 1 С порядком 0(т 2 ) определяются экстраполяцией по распределениям Функ ции на двух предыдущих временных полуслоях. При этом все конечно разностные операторы по пространственным перемен ным, за исключением оператора по переменной х, переводятся в правые части (хотя они и являются практически полностью неявными) . в (7 34) k+1 k+1 k+l подсхеме . значения Uij l' U ij , U ij + 1 являются ис комыми, определяемыми из скалярных проrонок вдоль перемен k+l k+l k+1 нои У, значения Ui lj l' Ui lj' Ui lj+l известны как значения сеточной функции в левом пространственном сечении, а зна k+1 k+1 k+1 О( 2 ) чения Ui+1j 1' U i + 1j , U i + 1j + 1 с порядком т определяются экстраполяцией по двум предыдущим временным полуслоям. При этом все пространственные операторы, за исключением опе ратора по переменной у, переводятся в правые части, хотя они практически являются полностью неявными.
9 7.4 ] Метод nере.меннъ"х направлений с э страnоляцией 293 7.4.1. Аппроксимация. Для анализа аппроксимационных свойств схемы (7.33), (7.34) прибавим и вычтем в подсхеме (7.33) а22 k+1/2 2а12 ( k+1/2 k+1/2 ) выражения Uij+1' h h Ui+1j+1 Ui lj+1 , а в под схеме h 2 4 1 2 ) а11 k+1 2а12 ( k+1 k+1 ) (7.34 выражения h U i +1j' 4h 1 h 2 U i +1j+1 Ui+1j l , полу чим эквивалентную схему и k + 1 / 2 и k == лu k + 1 / 2 + (r 22 + 2rf 2) и k + 1 / 2 , т/2 (7.35) и k + 1 и k + 1 / 2 == лu k + 1 + (r11 + 2rf4) и k + 1 , т/2 (7.36) rде Л == Л 11 + 2Л 12 + Л 22 , а11 Л11 U == (Ui+1j 2Uij + Ui lj) , h 1 2а12 ) Л12 U == 4h 1 h 2 (Ui+lj+l Ui+lj l Ui lj+l + Ui lj l , а22 Л 22 U == (Uij+1 2Uij + Uij l) , h 2 r k+1/2 а22 ( k+1/2 k+1/2 ) 22 и h 2 U ij + 1 U ij + 1 ' 2 r I u k+1/2 12 2а12 [( k+1/2 k+1/2 ) ( k+1/2 k+1/2 )] 4h 1 h 2 U i + 1j + 1 U i + 1j + 1 Ui lj+1 Ui lj+1 , ""k+ 1 а11 ( k+ 1 ""k+ 1 ) r11 U == h 2 U i + 1j U i + 1j , ] r I 1 k+1 2а12 [( k+1 k+1 ) ( k+1 k+1 )] 12 и == 4h 1 h 2 U i + 1j + 1 U i + 1j + 1 Ui+1j 1 Ui+1j 1 Справедлива следующая теорема. Теорема 7.1. Пустъ реше'Нuе задачи (7.32), (7.2) (7.6) u(x,y,t) Е Cl( G T), rде С т ==== G х [о, Т], t Е [о, Т], C 'Класс фу'Н/к;'Цuй, m раз неnреръtвно дuффере'Н'ЦuруеМЪtХ по t и n раз по х, у. ТО2да схема (7.33), (7.34) и, с.ледовате.лъно, Э'К; вива.ле'Нт'На-я ей схема (7.35), (7.36) аnnРО'к;симирует 'На точном
[rл. VII реше'Нии диффере'Нциалъ'Ную задачу (7.32), (7.2) (7.6) с nоряд'К;о.м О (7 + Ihl 2 + 7 (h 1 + h 2 )), дe Ihl 2 == h + h . Д о к а з а т е л ь с т в о. Действительно, рассматривая «OCKO лочные» операторы 122, rl 2 , r 11 , rlI2' можно заметить, что выполняются следующие тождества : 294 м етод х;о'Не'Ч'Н,'ых раз'Носmей. М етод'ы расщеnле'Нuя k+1/2 k u ij + 1 Uij+1 == k+l/2 k+l/2 k k ( k+1/2 k ) Uij+l u ij Uij+l Uij u ij Uij + h 2 h2 h 2 h 2 , k k 1/2 Uij+1 u ij + 1 k k k 1/2 k 1/2 == ( . 1/2 ) + Uij+l Uij h u ij + 1 u ij h и ] и ] h 2 2 h 2 2, k+1 k+1/2 U i + 1j U i + 1j k+l k+l ( l :1/2 ) + Ui+lj U ij h и ] и ] h 1 1 k+l/2 k+l/2 U i + 1j U ij h h 1 1, k+1/2 k U i + 1j Ui+1j == k+l/2 k+l/2 k k == ( :1/2 . ) + Ui+lj U ij h Ui+lj + Uij h и ] и ] h 1 1 h 1 1, k+l/2 k U U Л k+1/2 U , т/2 U k + 1 u k + 1 / 2 == Ли k + 1 , т/2 (Uij+l Uij) И у == h 2 ' (Ui+lj Uij) и х == h 1 ' (Uij Uij l) И у == h 2 (Uij Ui lj) и х == h 1 ( и :1/2 2и - + и -:1/2 ) k ] ] ] U tt == т 2 /4 ai i т . о" i i == -----------Т' 'l == 1, 2, 2h. а12 Т 0"12 == 8h 1 h 2 . Тоrда справедлива следующая цепочка равенств: r k+1/2 а22 ( k+1/2 k+1/2 ) 22и h 2 U ij + 1 U ij + 1 2
з 74] м етод nереме'Н'Н'ых 'Наnравле'Нuй с эх;сmраnоля'Цuей 295 а22 ( k+1/2 k k 1/2 ) h 2 u ij + 1 2Uij+1 + u ij + 1 2 а22 [ ( k+l/2 k ) ( k k 1/2 ) ] == h 2 U ij + 1 Uij+1 Uij+l U ij + 1 2 == а22 [( :1/2 _ ) ( . 1/2 ) + 2 и ] и ] и ] и ] h 2 + ( u k + 1 / 2 2u k + Uk 1/2 ) h2 ] == у у у . . ] а22 ( Т Л k+1/2 т л k k T2h2 ) h 2 2 U 2 U + Utty 4 2 а22 [ Т Л ( k+1/2 k ) + k T2h2 ] h 2 2 и U Ut ty 4 2 [ 2 ( k+l/2 k ) 2 h ] == а22 Л u U k Т 2 h 4 т /2 + U tty 4 2 а22 Т Л 2 k+1/2 k T h U 0"22 U tt . 2 == 4h 2 У 4 2 2 а22 Т Л 2 u k + 1 / 2 + о ( Th ) . 4h 2 2 2 Таким образом, r22U k + 1 / 2 == а22 Т л 2 u k + 1 / 2 + о (Th 2 ) . 2 (7.37) Аналоrично, r k+1 а 11 Т л 2 k+l + О ( h ) 11 U == 2 U т 1 ; (7.38 ) I I k+1/2 12 и 2а12 [ ( k+1/2 k+1/2 ) ( k+1/2 ,...,k+1/2 ) ] u i + 1 J '+ 1 ui+1 J "+1 Ui l J '+1 ui 1 J '+1 4h 1 h 2 2a12 [ ( k+1/2 k k 1/2 ) 4h 1 h 2 u i + 1j + 1 2ui+lj+l + ui+lj+l ( k+1/2 k k 1/2 )] Ui 1j+1 2Ui 1j+1 + Ui 1j+1 ==
296 м етод х;о'Не'Ч'Н'ых раз'Носmей. М етод,ы расщеnле'Нuя [rл VII 2а12 [( k k ) т2 h 1 ( k k ) т2 h 2 ] == 4h 1 h 2 U ttx + U tt x 4 + U ttxy U tt x y 4 h 1 ( k k ) h а12 ( k k ) 2 == 20"12 U ttx + U tt x 7 1 8 U ttxy U tt x y 7 == == о (7h 1 + 72); (7.39) rf4u k + 1 == о (7h2 + 72) . (7.40) Подставляя выражения (7.37) (7.40) для «осколочных» опе раторов в схему (7.35), (7.36) , получим и k + 1 / 2 и k == лuk+1/2 а22 Т л 2 u k + 1 / 2 + т/2 2 +O(7+l h I 2 +7(h 1 +h 2 )+72), (7.41) и k + 1 и k + 1 / 2 == Лиk+1 аll Т л 2 u k + 1 + т/2 2 + о (7 + Ihl 2 + 7 (h 1 + h 2 ) + 72). (7.42) Исключение сеточной функции u k + 1 / 2 на промежуточном временном полуслое приводит к следующей эквивалентной ДBYX слойной схеме: и k + 1 и k [ Т т 2 т 3 ] == л Е (1 + а) Л + а л2 Ь Л3 u k + 1 + т 4 8 16 +O(7+lhI2+7(h1+h2)+72), (7.43) rде а == 0"11 + 0"22 > о, Ь == 0"110"22 > о. Из (7.43) следует аппроксимация с порядком 0(7 + /h/ 2 + + 7 (h 1 + h2) ). Теорема доказана. 7.4.2. Устойчивость. Будем исследовать устойчивость схемы (7.33), (7.34) методом энерrетических неравенств. Имеет место следующая теорема. т е о р е м а 7.2. Пустъ въtnол'Не'Нъt условuя а11 > о, а22 > о. ТО2да схема (7.33), (7.34) абсолют'На устойчива по 'НачаЛЪ'НЪtМ условиям.
з 7.4 ] м етод nереме'Н'Н'ых 'Наnравле'Нuй с эх;сmраnоля'Цuей 297 Для доказательства этой теоремы докажем следующую лемму. Лемма 7.1. Оператор С == [ (1 + 0"11 + 0"22) т л + (0"11 + 0"22) т 2 л 2 0"110"22 тЗ л з ] 4 8 16 в э'К;вuвале'Нт'Нои схеме (7.43) является nОЛО;JfCuтелъ'Но onpeдe ле'н'ныlM u самосоnря;Jfcе'н'ныl.. Действительно, этот оператор можно переписать в виде т т 2 тЗ С == (1 + a) A + a A2 + b A3, 4 8 16 в котором каждое слаrаемое является положительно определен ным и самосопряженным оператором, поскольку л == А по ложительный, самосопряженный оператор, действующий в rиль бертовом пространстве Н (см. rл. 6). Следовательно, оператор С является положительно определенным, самосопряженным опе ратором, что доказывает лемму. Таким образом, (7.43) можно переписать в виде k+l k и и == A(E+C)uk+1. т (и k + 1 и k ) у м ножая это равенство скалярно на Ut == и ис т пользуя известные тождества ( и k + 1 + и k ) ( иk+l и k ) ( иk+l + и k ) ти и k + 1 = + + 2 2 2 2 ' получим следующее энерrетическое тождество: ([Е+ ; (А + АС)] иt, иt) + 2 [((А + AC)u k +!, u k + 1 ) ((А + Ac)u k , u k )] == О, (7.44) при выводе KOToporo использована положительность и caMOCO пряженность оператора D == А(Е + С). Вводя энерrетическое пространство HD элементов и, v, ... .. . Е HD со скалярным произведением (и, V)D == (Du, v) и HOp мой 11 u II == (Du, и), в силу положительности оператора Е + т + "2 (А + АС) из (7.44) получаем энерrетическое неравенство ( Du k + 1 , u k +!) (Du k , u k ) , 298 Метод х;о'не'ч'ны,x раз'Ностей. Методъ" расщеnле'Нu.я [rл. VII откуда следует принцип максимума I/U k +11/D I/ukll D Iluk lllD ... IluOll D == 111/J(x, y)II D , являющийся достаточным признаком устойчивости конечно разностной схемы (7.33), (7.34), что доказывает теорему. Поскольку не накладывалось никаких оrраничений на ce точные характеристики 7, h 1 , h 2 , схема (7.33), (7.34) является абсолютно устой'чuвой. По запасу устойчивости метод МПНЭ превосходит все суще ствующие экономичные методы расщепления для задач как co держащих, так и не содержащих смешанные дифференциальные операторы. К достоинствам МПНЭ можно отнести следующие: 1) эко номичность; 2) абсолютную устойчивость; 3) полную (не частич ную, как в МДШ) аппроксимацию дифференциальноrо ypaB нения; 4) применимость к задачам с любой размерностью по пространственным переменным и к задачам, содержащим CMe шанные дифференциальные операторы; 5) отсутствие оrраниче ний на величину коэффициентов а11, а12, а22, кроме оrраничений а11 > О, а22 > О, а11 а 22 > aI2. э 7.5. Схема метода полноrо расщепления Формалева Тюкина Аналоrичной схемой, использующей апостериорную инфор мацию, является схема метода Формалева Тюкина. Эта пол ностью неявная, но экономичная схема основана на более rлу боком расщеплении смешанных дифференциальных операторов по сравнению со схемами, разобранными выше. Для задачи (7.32), (7.2) (7.6) на сетке (7.7) эта схема имеет следующий вид [20,21]: k+l/2 k и ij иij аll ( k+1/2 2 k+1/2 + k+1/2 ) + т h 2 U i + 1j U ij иi 1j 1 + 1 а а12 ( и :1/2 и :1/2 и +1(2 + и +1(2 ) + 2 h 1 h 2 ] з 1 1] 1з 1 + 1 + а a12 ( k+1/2 k+1/2 k+1/2 + k+1/2 ) . 2 h 1 h 2 u i + 1j ui+1j 1 u ij Uij 1' (7.45)
э 7.5 ] Схема метода nОЛ'НО20 расщеnле'Нuя Формалева Тюх;u'На 299 k+l k+l/2 Uij и ij == а22 ( и 1 2и 1 + и 1 ) + т h 2 з+1 ] з 1 2 1 а а12 ( k+1 k+1 k+1 k+1 ) + 2 h 1 h 2 u i + 1j + 1 u i + 1j u ij + 1 + и ij + 1 + а а12 ( k+1 k+l k+1 k+1 ) + 2 h 1 h 2 u ij + 1 u ij иi 1j+l + Ui 1j , причем (J == 1, если а12 < о, (J == 1, если а12 > о. Значения а11 > О, а22 > о, а11 . а22 aI2 > о. Коэффициент (J введен для Toro, чтобы анализ устойчивости не зависел от знака коэффи циента а12. Шаблоны схемы (7.45), (7.46) приведены на рис. 7.4. (7.46 ) у i 1 j i+l j i 1 j i+l j х х (J' == 1 (J' == 1 i j 1 i + 1 j 1 i 1 j 1 i j 1 а б ij i+ 1 j+ 1 i j+l х х i j l i j 1 в 2 D Узлы с известными значениями o Узлы с искомыми значениями Рис. 7.4. Шаблоны схемы полноrо расщепления: а, б подсхема (7.45); в, 2 подсхема (7.46) Подсхема (7.45) реализуется с помощью скалярных проrо Нок в направлении координатной оси Ох, при этом значения сеточной функции в нижнем (j l) M сечении уже известны на
300 Метод х;о'Не'Ч'Н'ых раз'Ностей. М етод,ы расщеnле'Нuя [rл. VI! верхнем временном полуслое. В подсхеме индекс i изменяется от 1 до 1 1, а индекс j от 1 до J 1. Подсхема (7.46) реализуется с помощью скалярных проrонок в направлении координатной оси Оу, при этом значения сеточ ной функции в левом (i l) M сечении (шаблон 7.4в) или в пра вом (i + l) M сечении (шаблон 7.42) уже известны на верхнем временном слое. В подсхеме индекс j изменятся от 1 до J 1, а индекс i от 1 до 1 1 (шаблон 7.4в) или от 1 1 до 1 (шаблон 7.42). Таким образом, схема полноrо расщепления (7.45), (7.46) яв ляется экономичной, поскольку реализуется с помощью скаляр ных проrонок, несмотря на то что дифференциальное ypaBHe ние содержит смешанные производные, и полностью неявной, вследствие чеrо можно ожидать, что схема является абсолютно устойчивой. Как и схема метода дробных шаrов Н. Н. Яненко, схема (7.45), (7.46) обладает частичной аппроксимацией на каждом дробном шаrе и полной аппроксимацией на целом шаrе по времени. Разлаrая значения сеточной функции в окрестности узла (Xi' Yj, t k ) на точном решении в ряд Тейлора до второй про изводной по времени и до четвертой производной по простран ственным переменным, можно показать, что порядок полной аппроксимации в схеме (7.45), (7.46) составляет О (7 + hI + h ). Аналоrично схеме (7.33), (7.34) с помощью метода энерrе тических неравенств можно показать абсолютную устойчивость схемы (7.45), (7.46) полноrо расщепления. Таким образом, за счет более rлубокоrо расщепления смешан Horo конечно разностноrо оператора в рассматриваемой схеме удалось смешанные производные аппроксимировать неявно, чеrо не достиrалось в классических схемах, рассмотренных выше. В соответствии с этим достоинствами схемы полноrо расщеп ления являются следующие: экономичность; неявная аппроксимация всех дифференциальных операто ров, включая смешанные И 1 как следствие, абсолютная устойчи вость; применимость схемы к задачам любой размерности по пространственным переменным;
з 7.7] Метод'ы реше'Нuя зада'Ч для урав'Не'Ний 2unерболu'ЧеСХ;О20 тиnа 301 отсутствие оrраничений на величину коэффициентов а11, а12 == а21, а22, за исключением естественных оrраничений вида а11 > о, а22 > о, a11 a 22 > aI2" э 7.6. Методы расщепления численноrо решения эллиптических задач Для стационарных MHoroMepHbIx задач математической фи зики искомая функция не зависит от времени и, следователь но, уравнение (7.1) в задаче (7.1) (7.6) становится уравнением ( u ди ) эллиптическоrо типа нет производнои at ' т. е. уравнением Лапласа или Пуассона, а поскольку и начальное условие (7.6) OT сутствует, то рассмотренные выше методы приходится несколько видоизменить. Однако если при решении задач для уравнений Лапласа или Пуассона используется метод установления (см. Э 6.8), то CTa ционарное уравнение Лапласа или Пуассона трансформируется в нестационарное уравнение (7.1), являющееся уже уравнени ем параболическоrо типа, с введением однородноrо начальноrо условия (7.6), т. е. 'Ф(х, у) о. в этом случае все вышерассмот ренные методы применяются без изменения. Методы расщепления напрямую можно применять также и к решению стационарных задач, заме'Нив 'Номер време'Н'НО20 слоя 'Номером итерации. При этом в соответствующем конечно разностном методе конечно разностная производная по времени и l и . ] ] будет отсутствовать. т В качестве начальноrо прибли)Кения на нулевой итерации можно использовать линейную интерполяцию краевых условий (7.2) (7.5) так, как это делалось в разностно итерационном Me Тоде Либмана (п. 6.2.3). э 7.7. Методы решения задач для уравнений rиперболическоrо типа Одним из наиболее мощных методов решения задач для ypaB нений иперболическоrо типа является метод характеристик, Применимый как к задачам с начальными условиями, так и к Краевым задачам и начально краевым задачам [22], [23].
302 Метод 'К:оне'ЧНЪLХ 'fX1зностей. Методъ" 'fX1сщеnления [lЛ VII в п. 6.1.2 задача для волновоrо уравнения сводилась к анало rичной задаче для rиперболической системы, которая моrла быть решена численно конечно разностным методом. В более общей постановке квазилинейные rиперболические системы описывают rазодинамические течения с вектором скорости, имеющим KOM поненты и(х, у) и v(x, у) в плоской системе координат хОу. 7.7.1. Метод характеристик решения квазилинейных rиперболических систем. Рассмотрим следующую систему дифференциальных уравнений в частных производных. { а11 их + a12 V x + Ь 11 и у + b 12 V y == С1, а21 их + a22 V x + Ь 21 и у + b 22 V y == С2, (7.47) rде и, V искомые функции переменных х, у ; aij, b ij , i, j == == 1, 2 коэффициенты, Ci правые части, а их, v x , и у , V y частные производные первоrо порядка. В общем случае aij, b ij , i, j == 1,2 , Ci, i == 1,2 являются функциями х, у, и, V. Такие системы называют вазилинеиНЪtми (линейными относительно первых производных их, v x , и у , V y ). Пусть в плоскости хОу задана кривая r уравнением у == == у(х) и пусть в точках этой кривой заданы значения функций и(х, у(х)), v(x, у(х)) (рис. 7.5). Поставим задачу: по значениям решения и(х, у), v(x, у) на кривой r найти на той же кривой значения частных производных их, и у , V x , V y , используя уравнения (7.47). Если эту задачу удастся решить, то с точностью до малых BToporo порядка можно определить решения и(х, у), v(x, у) в точках М', близких к точ кам кривой r, используя разложения { им, == им + ихмД,х + иумд'у, VM' == VM + VхМД,Х + vумд'у. (7.48 ) Для этоrо к системе (7.47) присоединим следующие диффр ренциальные соотношения на кривой r: dU I ' dx r == их + и у . у , dv I ' dx r == V x + v y . у . (7.49) Поскольку на кривой r функции и(х, y(x))lr и v(x, y(x))lr являются функциями одной переменной, то полные производные
97.7] Методъ" решения зада'Ч для Y'fX1BHeHUU 2иnер60ли'ЧеС'К:О20 типа ЗОЗ и, v C I I v(x,y(x)) I I I D А в о м' . у х Рис. 7.5. К методу характеристик dU I dV I (7.49) существуют. При этом dx r и dx r известны, так как известны иlr и V Ir. Решаем СЛАУ (7.47), (7.49) относительно их, v x , и у , V y , для чеrо из (7.49) определим их, V x (индекс r опущен): du , их == dx иуу ; dv , V x == dx VyY , подставляя которые в (7.47), получим систему относительно и у , V y на кривой r: ( ' ) (Ь ' ) du dv Ь 11 а11У и у + 12 а12У V y == С1 al1 dx а12 dx ' ( ' ) (Ь ' ) du dv Ь 21 а21У и у + 22 а22У V y == С2 а21 dx а22 dx . (7.50 ) Для определения и у , V y составим определитель матрицы си стемы (7.50): д== Ь 11 а11У' Ь 1 2 а12У' Ь 21 а21У' Ь 22 а22У' (7.51 )
304 Метод 'К:оне'ЧНЪLХ 'fX1зностей. М етодъ" 'fX1сщеnления [lЛ. VII Тоrда ВОЗможны следующие два случая: 1) если Ll =f:. о во всех точках кривой r, то существует един ственное решение и у , V y в этих точках, а следовательно и един ственное решение их, V x ; 2) если Ll == о, то решение (если оно существует), неединствен ное. Будем предполаrать, что реше'Ние СЛАУ (7.50) существует, и, :JfCелая nолу'Читъ 'Не толъ о и у , v y , 'Но и 2еометри'ЧеС'х;ие места то'Че (х, у), в отОрЪtХ ищется реше'Ние, будем расс.матриватъ второи слу'Чаи: д== Ь 11 а11 Л Ь 12 а12 Л b 21 а21 Л Ь 22 а22 Л == о, (7.52) r де л == у' ( х ) . Раскрывая определитель в (7.52), получаем квадратное ypaB нение, которое называется хара теристи'Чес им: ал 2 2Ьл + с == о. Ero решением будут слеДующие два обыкновенных дифферен циальных уравнения: \ Ь :f: V Ь 2 ас Л1 2 == , а dy dx 1.2 . (7.53) Общие интеrралы этих уравнений на плоскости хОу дадут два семейства интеrральных кривых, называемых xapa тepи cти aMи 1 20 и 2 20 семейства, а уравнения (7.53) называются диффере'Нциалъ'Нъtми урав'Не'Ниями 'Наnравле'Ния xapa тepиcти (илu просто дuФФере'Н,цuалън:ы,м,u урав'Н,е'Н,uямu xapa'l\:mepucmu'l\:). Эти уравнения нелинейные, поскольку коэффициенты зави сят не только от х и у, но и от искомых функций и(х, у), v(x, у). Поэтому проинтеrрировать их можно численно. Из курса математической физики известна лассифи ация систеМъt урав'Не'Ний (7.47) в зависимости от знака дискриминанта Ь 2 ас. Если Ь 2 ас > о, то система (7.47) является системой 2иnерболи'ЧеС О20 типа, хара теристи'Чес ое урав'Не'Ние дает два семейства веществе'Н'НЪtХ xapa тepиcти с разли'Ч'НЪtми 'Нanpaв ле'Ния.ми xapa тepиcти Л1 =f=. Л2.
9 7.7] М етодъ" решения зада'Ч для Y'fX1BHeHUU 2иnер60ли'ЧеС'К:О20 типа З05 Если ь 2 ас == о, то система (7.47) система nараболи 'ЧеС О20 типа, и при Ь 2 ас < О система (7.47) система э.л.лиnти'ЧеС О20 типа. Будем расс.матриватъ 2иnерболи'Чес ую систему (7.47) с раз ЛU'Ч'НЪtМU и деиствитеЛЪ'НЪtми ор'Нями хара теристи'ЧеС О20 урав'Не'Ния л 1 == у' (х ), л 2 == у' (х). Таким образом, дифференциальные уравнения направления характеристик (7.53) определят rеометрические места точек на плоскости хОу в окрестности кривой r, в которых должно быть определено решение и(х, у), v(x, у) исходной задачи (7.47), для чеrо необходимо составить еще два уравнения относительно и(х, у), v(x, у). Для их составления рассмотрим определители BToporo поряд ка Дl, Д2 системы (7.50), первый из которых Д1 образован из определителя Д (7.51) заменой первоrо столбца на столбец пра вых частей, а второй Д2 из определителя Д заменой BToporo столбца на столбец правых частей. Поскольку сделано nредnОЛО:JICе'Ние о существова'Нии реше'Ния СЛАУ (7.50), то в соответствии с теоремой Кронекера Капелли paHr матрицы СЛА"У равен paHry расширенной матрицы (для СЛАУ (7.50) paHr матрицы СЛАУ равен единице, т. е. меньше порядка матрицы, paBHoro двум). Следовательно, поскольку Д == == о, то в условиях предположения о наличии решения системы (7.50) и Д1 == Д2 == о. Поэтому достаточно рассмотреть одно из уравнений Д1 == О или 2 == о, например Д1 == о. Получим Д1== du dv С1 а11 a12 b 12 а12 Л i dx dx du dv С2 а21 a22 Ь 22 а22 Л i dx dx == о, i == 1, 2 . (7.54) Эти два уравнения называются диффере'Нциалъ'Нъtми cooт'Нo ше'Ниями 'На xapa тepиcти ax. После умножения (7.54) на dx и раскрытия определителя можно записать (АЛ1 + B)du + Cdv + Mdx + Ndy == о, (7.55) (АЛ2 + B)dи + Cdv + Mdx + Ndy == о, rде
ЗОб Метод 'К:оне'ЧНЪLХ 'fX1зностей. М етодъ" 'fX1сщеnления [lЛ. VII А == det (::: :::) с == det (::: :::), в == det (::: :::) м == det (:: :::) N == det (::: ::) Таким образом, решив систему ОДУ (7.55) относительно и, V, ответим на поставленный в задаче вопрос. Поскольку система (7.47) квазилинейная, то уравнения (7.53) и система (7.55) MorYT быть решены только численно. PaCCMOT рим метод Массо численноrо решения системы (7.53), (7.55) (рис. 7.6). Характеристики 2"['0 семейства а 6 Рис. 7.6. К методу Массо На заданной кривой r наносится система точек с известными координатами и известными значениями функций и Ir, V Ir. Для точек а(Ха, Уа) и Ь(ХЬ, УЬ) (рис.7.6 а) известны значения и а , V a , иь, Vb. Из системы двух линейных алrебраических уравнений { Ус Уа Л1а(Х с Ха), Ус Уь Л2Ь(Х с ХЬ), ( 7.56)
9 7.7] М етодъ" решения зада'Ч для Y'fX1BHeHUU 2иnер60ли'ЧеС'К:О20 типа З07 полученной из конечно разностной аппроксимации двух ypaB нений характеристик (7.53), определяются координаты точ ки с(хс, Ус) как точки пересечения касательной к характеристике первоrо семейства, выходящей из точки а, и касательной к xa рактеристике BToporo семейства, выходящей из точки Ь. Таким образом, точки пересечения характеристик различных семейств, выходящих из двух соседних точек, определяются как точки пе ресечения отрезков касательных к этим характеристикам в этих точках. Зная координаты точки с, из конечно разностной аппрокси мации системы дифференциальных соотношений на характери стиках (7.55): ( АЛ 1а + В)(и с и а ) + C(v c V a )+ +м(хс Ха) + N(yc Уа) == О, ( АЛ 2Ь + В)(и с иь) + C(V c Vb)+ +м(хс хь) + N(yc уь) == о, (7.57) определяются значения и с , V c искомых функций в точке с. Этот алrоритм реализуется для всех точек на кривой r. в результате получаем точки с, d, . .. в окрестности кривой r, для которых известны координаты и значения функций и(х, у), V (х, у). Если теперь из точки с провести отрезок касательной к характеристике первоrо семейства, а из соседней точки d отрезок касательной к характеристике 2 ro семейства до пересе чения в некоторой новой точке, то координаты последней можно получить из решения системы (7.56), а значения функций u и V в этой точке из решения системы (7.57). И так далее. Таким образом, в методе характеристик отыскиваются не только значения искомых функций u и V, но и координаты точек, в которых эти решения находятся (рис.7.6 б). 7.7.2. Метод сквозноrо счета. Задача о распаде про-- извольноrо разрыва. Метод с. К. rодунова. в задачах механики сплошных сред приходится иметь дело с течениями, в которых возникают сильные разрывы (например, ударные вол ны, местные скачки уплотнения и т. п.), хотя начальные условия были rладкими. При расчете таких течений приходится либо
З08 Метод 'К:оне'ЧНЪLХ разностей. М етодъ" 'fX1сщеnления [lЛ. VII явно выделять поверхности разрыва, используя законы coxpaHe ния, либо использовать методы с вОЗ'НО20 с'Чета, позволяющие получать сквозные решения, включая поверхности разрыва. Одним из таких методов является метод С. К. rоду1-tова [24, 25], использующий то'Ч'Нъtе реше'Ния на кусочно постоянных Ha чальных данных и 2иб ие nростра'Нстве'Н'Но време'Н'НЪtе ceт и, связанные с поверхностями разрывов. Рассмотрим метод С. К. rодунова на примере следующей задачи Коши для уравнений акустики, являющихся следствием волновоrо уравнения: аи + ар == о, oo < х < +00, t > о; (7.58) at ро дх др 2 ди oo < х < +00, t > о; (7.59) at + роа о дх == о, и(х* о, о) == и1; р(х* о, о) == Р1, Х < х* t о. (7.60) , , и(х* + о, о) == и2; р(х* + о, о) == Р2, х > х*, t == о, (7.61) rде и(х, t), р(х, t) возмущения скорости и давления в акусти ческой волне; ао, ро скорость звука и плотность в невозмущен ном rазе; и1, и2, Р1, Р2 постоянные, причем и1 =f=. и2 и Р1 =f=. Р2, т. е. в точке х* наблюдается разрыв первоrо рода функций и и р. Будем решать задачу Коши (7.58) (7.61) методом характери стик (система (7.58), (7.59) является rиперболической системой), для чеrо запишем ее в форме (7.47): . { а11 Ut + a12Pt + Ь 11 их + Ь 12 Рх == С1, а21 Ut + a22Pt + Ь 21 и х + Ь 22 Рх == С2, 1 rде а12 == Ь 11 == С1 == а21 == Ь 22 == С2 == о; а11 == а22 == 1; Ь 12 == , ро Ь 21 == роаб. На начальной кривой r в плоскости xOt выполняются диф ференциальные соотношения (7.49), из которых следуют paBeH ства du ' ( ) и t == и . х t dt х , (7.62) dp ' ( ) Pt == Рх . х t . dt (7.63 )
9 7.7] М етодъ" решения зада'Ч для уравнений 2иnер60ли'ЧеС'К:О20 типа З09 Подставляя (7.62), (7.63) в (7.58), (7.59), получим следующую СЛАУ относительно их, Рх: , 1 du x их + Ро РХ == dt (7.64) 2 , dp роаои х х РХ == dt (7.65) x' 1 Ро ,2 2 О ' == х ао == , Хl,2 == хао. д== 2 роао x' х == :f:aot + с; при t == О х == х*. Таким образом, характеристиками l ro и 2 ro семейства в плоскости xOt являются прямые х == :f:aot + х* . (7.66) Приравнивая нулю один из определителей расширенной MaT рицы СЛАУ (7.64), (7.65), получим два дифференциальных co отношения на характеристиках (x 2 == хао): , Д1== du dt dp dt 1 РО du 1 dp == Xao + == о, dt ро dt =fao или dp du dt :f: аоро dt == о. (7.67) Проинтеrрируем (7.67) по времени, получим комплексы р :f: :!: аорои == с или 1 -I. == Р :f: аорои, (7.68 ) называемые инвариантами Римана. Они сохраняют свои зна чения вдоль соответствующих характеристик х == :f:aot + х*, выходящих из точки х* начальной кривой при t == о. Пусть в точке (х*, о) в начальный момент t == О функции и и р претерпевают разрыв первоrо рода, а именно: слева от
310 Метод 'К:оне'ЧНЪLХ разностей. Методъ" расщепления [lЛ. VI! точки (х*, О) значения этих функций равны и(х* О, О) == и1, р(х* О, О) == Pl, а справа и(х* + О, О) == и2, р(х* + О, О) == Р2. С течением времени слева от характеристики х + aot (область 1 на рис. 7.7) значения функций и(х, t) и р(х, t) будут равны иl и Р1 соответственно, а справа от характеристики х aot значениям и2 и Р2. Таким образом, Р == Pl, u == и1, х < х* aot (область 1); (7.69) Р == Р2, u == и2, х > х* + aot (область 11). (7.70 ) t 1 11 О (х*, О) х Рис. 7.7. Характеристики в точке (х * , О) . На характеристиках х ::f: aot (рис. 7.7) в окрестности точки х* выполняются соотношения (в соответствии с инвариантами Ри мана) : 1+ Ix*+o == 1 'х*+о Р1 + аорои1 == Р + аорои; (7.71 ) 1 Ix* o == 1 Ix* o: Р2 аорои2 == Р аорои. (7.72) Складывая (7.71), (7.72), а затем вычитая (7.72) из (7.71), получим значения функций и(х, t), р(х, t) внутри области 111 между характеристиками х + aot и х aot: Р2 + Р1 и2 и1 Р == аоро 2 2 и2 + и1 и== 2 Р2 Рl 2аоро ' (7. 73 ) х* aot < х < х* + aot (область 111).
9 7.7] Методъ" решения зада'Ч для уравнений 2иnер60ли'ЧеС'К:О20 типа 311 Таким образом, начальный разрыв функций и(х, t), р(х, t) в точке (х*, О) трансформируется в пространстве (х, t) вдоль характеристик х* == х ::f:: aot, т. е. распадается. Поэтому решения (7.69), (7.70), (7.73) задачи (7.58) (7.61) называются решенuя.ми задачu о распаде nроuзвОЛЪНО20 раЗрЪtва. Эти решения являются обобщенными решениями задачи (7.58) (7.61). На основе решения задачи о распаде произвольноrо разрыва разработан .метод с. К. rодунова численноrо решения rазодина мических задач. Изложим ero существо. Пусть в момент BpeMe ни t == О заданы непрерывные функции ио(х), Ро(х) (рис. 7.8). ио(х) Ро(Х) о Хо Xm l Xт 1/2 Х т Х т + 1/2 Х т +l Х Рис. 7.8. Замена непрерывных начальных функций кусочно постоянными Заменим область непрерывноrо изменения переменной х дис кретным множеством точек х т , m == 0,1,2, . . . , с шаrами раз ностной сетки h m == х т Xт 1, m == 1,2, . . . , и допустим, что функции ио(х), Ро(х) постоянны между узлами Xт 1, х т pac четной сетки и равны Pт 1/2, ит 1/2. В узлах Х т , m == О, 1,2, . . . , разрыва начальных данных воз нu ают расnадЪt раЗрЪtва, т. е. в каждом узле сетки, rде наблю дается разрыв первоrо рода на начальных кривых, образуются звуковые волны, распространяющиеся вправо и влево от точек разрыва со скоростью звука ао. Тоrда, соrласно решениям (7.69), (7.70), (7.73) задачи о распаде произвольноrо разрыва, решение
312 Метод 'К:оне'ЧНъtх разностей. Методъ" расщепления [lЛ VII в окрестности точки Х т будет (см. рис. 7.9.) иметь вид U == ит 1/2, Р == Pт 1/2, Xт 1 + aot < Х < Х т aot; (7.74) U == и т +1/2, Р == Рт+1/2, Х т + aot < Х < Хт+l aot; (7.75) итn 1/2 + и тn +1/2 U == и т == 2 Pтn+l/2 Pтn 1/2 2аоро ' Х т aot < Х < Х т + aot; (7.76) Pтn 1/2 + Pтn+1/2 и тn +1/2 итn 1/2 Р == Рт == 2 аоро 2 ' Х т aot < Х < Х т + aot. (7.77) На рис. 7.9. изображена структура решения (7.74) (7.77), которая сохраняется до тех пор, пока характеристики различных t + './ х 9- 0;< o. / х' ;.."" о Xm l Х т Xm+l Х Рис. 7.9. К методу rодунова С. к. семейств, вышедшие из соседних узлов, не пересекутся между co бой (в точках пересечения получается неоднозначность решения, чеrо нельзя допустить). Для предотвращения этоrо явления шаr по времени т BЫ бирается таким образом, чтобы упомянутые характеристики не пересекались. Новые средние значения ит 1/2, pт 1/2 на слое r
9 7.7] Методъ" решения зада'Ч для уравнений 2иnерболи'ЧеС'К:О20 типа 313 подлежат определению с помощью интеrральных законов coxpa нения. Предположим, что искомые функции и(х, t), р(х, t), ДOMHO женные на некоторые коэффициенты, являются компонентами векторной функции на плоскости xOt. Тоrда к этой векторной функции можно применить законы BeKTopHoro анализа (фор мулу rрина на плоскости или формулы Остроrрадскоrо rаусса и Стокса в пространстве). Применим к этому векторному полю формулу rрина, в соответствии с которой циркуляция BeKTOp Horo поля а (х, у) == Р(х, y)i + Q(x, y)j по некоторому замкну тому контуру С, равна двойному интеrралу по площади S от aQ дР функции ах ау . Коэффициенты у компонентов векторной функции и( х, t), р( х, t) подбираются такими, чтобы двойные ин теrралы от левых частей уравнений (7.58), (7.59), равные нулю, были равны циркуляциям соответствующих векторных полей по , " 1 111( 1==1' .. .. .. .. .. .. .. .. .. s , It с о Xm l .. Х т Х Рис. 7.10. К выбору шаrа т замкнутому контуру с. Тоrда для контура, представленноrо на рис. 7.10, можно записать f р ff ( ди 1 дР ) (иdx dt) == + dxdt == О, ро at ро дх с s (7 78)
314 Метод 'К:оне'Чн 'bLX разностей. М етодъ" расщепления [lЛ. VII f (pdx poa5 udt ) == Л ( + роа5 ) dxdt == О, s (7.79) откуда видно, что двойные интеrралы равны нулю в COOT ветствии с уравнениями (7.58), (7.59). Записывая соотношения (7.78), (7.79) в плоскости xOt вдоль прямоуrольной ячейки х == == Xт 1, Х == х т , t == О, t == Т, получим для (7.78) Х т Х т J и(х, O)dx J и(х, T)dx+ Xт 1 Xт 1 т т + J ( :о Р(Х т ' t») dt J ( P(X: l,t» )dt == О, о о или т 1/2 т ( ) U ит 1/ h Рт Pт 1 . РО ДЛЯ (7.79) циркуляция BeKTOpHOrO поля равна (7.80 ) Х т J р(х, O)dx Xm l Х т Т J р(х, T)dx J (роа5 и (х т , t») dt+ Xт 1 О т + J (poa5и(Xт 1, t»)dt == О, о откуда m 1/2 2Т ( ) Р Pт 1/2 роа о h и т Um l . (7.81 ) в соотношениях (7.80), (7.81) верхний индекс относится к верхнему временному слою t == Т, а нижний к начальному MO менту t == о. Значения и т И Рт В этих выражениях определяются соотношениями (7.76), (7.77) в задаче о распаде произвольноrо разрыва.
97.7] Методъ" решения зада'Ч для уравнений 2иnер60ли'ЧеС'К:О20 типа З15 Из соотношений (7.80) и (7.81) (а также в соответствии с Me тодом rармоническоrо анализа исследования устойчивости) сле дует, что 7 27 . po a o 1 Ро h h'" откуда получаем неравенство по оrраничению шаrа численноrо интеrрирования задачи (7.58) (7.61) по времени: h т :( . ао (7.82) .......It..
r л А В А VIII МЕТОД КОНЕЧНЬIХ ЭЛЕМЕНТОВ Проrрамма Основы метода конечных элементов (МКЭ). Система базисных и весовых функций. Методы взвешенных невязок: коллокаций, rалер кина, наименьших квадратов. Конечно элементный метод rалеркина решения краевых задач дЛЯ ОДУ. Слабая формулировка метода ra леркина. Формирование локальной и rлобальной матриц жесткости. Ансамблирование элементов. Случай rраничных условий, содержащих производные. МКЭ в MHoroMepHbIx стационарных задачах математиче ской физики. Принципы разбиения на конечные элементы. Ленточные матрицы жесткости. Формирование MHoroMepHbIx базисных функций, ансамблирование и построение rлобальных СЛАУ. МКЭ в MHoroMep" ных нестационарных задачах математической физики. Оценка по.. rрешности МКЭ в задачах дЛЯ ОДУ и уравнений в частных производ" ных. Вариационный принцип в МКЭ. Вариационный принцип Релея Ритца. Решение задач с помощью конечно..элементноrо вариационноrо принципа. Метод конечных элементов (МКЭ) на основе вариационноrо принципа возник из решения задач теории упруrости, что и опре.. делило, в основном, терминолоrию, используемую в процессе ero применения в друrих разделах механики сплошных сред (теории теплопроводности, rазовой динамике и др.) [26]. Использование в МКЭ методов взвешенных невязок (та.. ких,например,какметодыколлокаций, rалеркина,наименьших квадратов) позволило отказаться от вариационноrо принципа в МКЭ, тем более что не для всякой задачи можно построить функционал, минимум KOToporo дает исследуемое дифференци" альное уравнение. Тем самым Kpyr решаемых задач механикИ сплошных сред был существенно расширен [27 29].
9 8.1 ] Основъ" МКЭ З17 э 8.1. ОСНОВЫ МКЭ Пусть в области n == n + r необходимо решить некоторую дифференциальную задачу. Тоrда в МКЭ осуществляется сле дующая цепочка процедур. 1. Об ласть n разбивают на подобласти в количестве Е штук (е == 1, Е), называемые оне'Чнъtми элементами, такие что Е n == u п е , е==l Е r == u r e . е==l e 2. В каждом конечном элементе n == п е + r e выбирает ся система нумерованнъtх узлов, в которых значения искомой функции являются неизвестными величинами. 3. Каждому нумерованному узлу приписывается базисная фун ция, такая что в этом узле она равна единице, а в остальных нумерованных узлах расчетной области нулю. Число базисных функций в расчетной области равно числу нумерованных узлов, причем для различных узлов они обладают свойством линеи нои независимости (или ортО20налъности) по всей расчетной области. 4. Решение искомой дифференциальной задачи nрибли;)ICенно строится в виде линейной комбинации базисных функций по всем нумерованным узлам расчетной области с коэффициентами линейной комбинации, равными значениям искомой функции в нумерованных узлах. 5. Это решение подставляется в дифференциальную задачу, и, поскольку решение приближенное, результатом подстанов ки будет не тождественный нуль, а некоторая Фун ционалъная невяз а. 6. С помощью известных методов взвешеННъtх невязо (кол локаций, rалеркина, наименьших квадратов) функциональная невязка минимизируется по всей расчетной области путем при равнивания нулю скалярноrо произведения функциональной невязки и весовых функций (скалярное произведение от непре рывных функций равно определенному интеrралу по расчетной области от произведения этих функций), причем в методе взве шенных невязок rалеркина весовые функции в нумерованных узлах совпадают с базисными функциями. В результате получа ется система линейных алrебраических уравнений (СЛАУ) OT носительно значений искомой функции в нумерованных узлах,
З18 Метод 'К:оне'ЧНъtх элементов [lЛ. VIII коэффициентами в которой являются интеrралы по всей расчет ной области от базисных функций и их производных. 7. Определенные интеrралы по всей расчетной области заме няются на сумму интеrралов по конечным элементам, что, в си лу ортоrональности базисных функций, делает матрицу СЛАУ сильно разреженной, с ненулевыми элементами, расположенны ми в окрестности rлавной диаrонали (так называемые лентО'ЧНъtе маmриЦЪt, частным видом которых является трехдиаrональная матрица). 8. Решается СЛАУ относительно узловых значений иск мой функции каким либо известным методом (raycca, простых итераций, Зейделя и т. п.). Результаты решения подставляются в приближенное решение по п. 4. При этом полученные значе ния искомой функции В нумерованных узлах каждоrо конечноrо элемента MorYT быть использованы для получения решения во e всех точках конечноrо элемента n == п е + r e с помощью так называемых фун ции элементов, простейшим случаем которых является линейный интерполяционный мноrочлен в Rn. 1 2 3 Узлы 1 3 Узлы а 2 6 Рис. 8.1. Представление решения в МКР (а) и МКЭ (6) Таким образом, существенным отличием МКЭ от метода KO нечных разностей (МКР) является то, что в МКЭ решение на каждом элементе получается в виде непрерывных (или rладких) функций, в то время как в МКР в виде сеточной функции (рис. 8.1). э 8.2. Система базисных функций в качестве базисных функций будем рассматривать два вида ортоrональных базисных функций, а именно: УСО'ЧНО nостоЯННъtе базиСНъtе фун ции и линеиНъtе усо'Чно неnрерЪtвНЪtе базиСНъtе фун ции.
9 8.2 ] Система базиСНЪLХ фун'К:ций 319 8.2.1. Кусочно--постоянные базисные функции. Пусть в вещественном пространстве R 1 рассматривается класс функций ер ( Х ) , непрерывно дифференцируемых необходимое число раз на отр езке Х Е [о; 1]. Разобьем этот отрезок точками Х т , m == 1, М, на М элементарных отрезков [Xт 1, Х т ], m == 1, М, и представим функцию ер(х) в виде следующей линейной комбинации: м <р(х) ср(х) == L <Рт . Nm(x), т==1 rде Nm(x) кусочно постоянные функции на каждом отрез ке [Xт 1, Х т ], и, если эти функции линейно независимы (или ортоrональны) при различных индексах т, будем называть их усо'Ч'Но nостояннъtми базиснъtми фун циями, определяемыми равенствами { 1, если Xт 1 < Х < Х т , Nm(x) == О, если Х < Xт 1 или Х > Х т , m == 1, М, а ерт значения функции ер (х) в нумерованных узлах, находя щихся в середине каждоrо отрезка [Xт 1, Х т ]. (8.1) (8.2) <р (х) у х==l о 1 2 т м х Рис. 8.2. Аппроксимация функции с помощью кусочно постоянных базисных функций Тоrда аппроксимация (8.1) функции ер(х) на отрезке Х Е [о; 1] с помощью кусочно постоянных базисных функций (8.2) reOMeT рически представляется ступенчатой функцией (рис. 8.2). При
З20 Метод 'К:оне'ЧН'ЬtХ элементов [lЛ. VIII этом каждая базисная функция, приписанная нумерованному узлу, принимает значение, равное единице только на отрезке, внутри KOToporo расположен этот нумерованный узел; во всех остальных нумерованных узлах расчетной области эта базисная N m 1 I Xm l IX Х I т I N m I N m + 1 1 I 1 r 11 1 I Х т I : xm+l I 1 1 I 1 1 : Х Xm l Х т N m + 2 6 Xm+l Х т + 2 Х а Рис.8.З. lлобальные (а) и локальные (6) кусочно постоянные базис.ные функции функция равна нулю (рис. 8.3). Такие базисные функции назы вают 2лобалъ'Нъt.ми (рис. 8.3 а), т. е. заданными в форме (8.2) на всей расчетной области. В отличие от этоrо, базисную функцию, заданную на OT резке [Xт 1, Хт] (рис. 8.3 б), называют ло алъ'Ноi1 базисной функцией. Как видно из определения (8.2) rлобальных кусочно постоянных базисных функций и из рис. 8.3 а, эти функции ортоrональны на отрезке Х Е [о; 1] в смысле скалярноrо произ ведения, т. е. для двух кусочно постоянных базисных функций
9 8.2 ] Система базиСН'ЬtХ фун'К:ций З21 с номерами и J (i =f=. j, i, j == 1, М) имеет место равенство 1 Xi l (Ni(X), Nj(x» == J Ni(X)Nj(x)dx == J Ni(X)Nj(x)dx + о о Xi + J Xj l Ni(x)Nj(x)dx + J Ni(X)Nj(x)dx + Х; J Ni(X)Nj(x)dx + Xi l Xi Xj l 1 + J Ni(x)Nj(x)dx == О, i,j == 1, М, i i= j. Х; 8.2.2. Линейные функции. Если в функции вида кусочно-- непрерывные базисные качестве базисных функций принять х xтn l [ ] ,Х Е Xт l,Xт ; X Тn Xтn l Nm(x) == X тn +l х [ ] , Х Е Х т , Хт+l ; X тn +l X ТN (8.3) О, Х < Xт 1, Х > Х т +l, называемые линеUНъt.ми 'х;усо'Чно неnрерЪtвНЪt.ми базиСНъt.ми ФУН'Х; ция.ми, то аппроксимация (8.1) функции <р(х) на каждом отрез ке Х Е [Xm l, Хт] будет линейной и непрерывной в узлах Хт. В этом случае в качестве нумерованных узлов принимаются узлы разбиения (рис. 8.4). Для отдельноrо отрезка Х Е [Хт, Х т +l] С нумерованными узлами m и m + 1 rлобальные линейные кусочно непрерывные базисные функции представлены на рис. 8.5 а, а локальные на рис. 8.5 б. Из рис. 8.5 видно, что rлобальные базисные функции, построенные для различных узлов и действующие на различных отрезках, ортоrональны на всей области изменения перемен ной Х. Можно построить и друrие базисные функции, в том числе инелинейные. 11 В.Ф. Формалев, Д.Л. Ревизников
З22 Метод 'К:оне'ЧН'ЬtХ элементов [lЛ. VIII у <р (х) Нумерованные узлы о Xт ] Х т Xm+l Х т +2 Х Рис. 8.4. Аппроксимация функции с использованием линейных кусочно непрерывных функций А;m(х) . Xт ] : Х т : : 1: N m + 1 (x) . Х т x m + 1 Х т + 2 1 1 N m + 1 (x) Х т Xm+l а 6 Рис. 8.5. lлобальные (а) и локальные (6) линейные кусочно непрерывные базисные функции э 8.3. Методы взвешенных невязок. Весовые функции rlYCTb в области n == n + r с R n рассматривается краевая задача Lи + р == о в П; (8.4) (8.5) в и + q == о на r, rде L и В линейные дифференциальные операторы, а р и q известные функции независимых переменных. Для аппроксимации функции и в нумерованных узла х об ласти n выбирается система базисных функций N m , m == 1, М, с помощью которой строится приближенное решение
9 8.З ] Методъ" взвешеННЪLХ невязо'К: ВесовЪLе фун'К:ции З2З м и и == L и т . N т, т==1 (8.6) rде и т значения искомой функции в нумерованных узлах. Подставляя это приближенное решение в задачу (8.4), (8.5), получим не тождественный нуль, поскольку (8.6) прибли женное решение, а некоторую функциональную невязку Rn по области n иневязку Rr по rранице r: м Rn == L umL(N m ) + Р; т==1 м Rr == L umB(N m ) + q. т==1 с целью нахождения искомых значений и т , m == 1, М, op тоrонализуем невязки Rn и Rr с п омощ ью специальным обра зом подобранных функций W s , s == 1, М, называемых весовъt.ми фУН'х;ция.ми, т. е. приравниваем нулю скаляр ные произведения невязок Rn и Rr и весовых функций W s , s == 1, М, в результате чеrо получается следующая система линейных алrебраических уравнений относительно узловых значений и т искомой функ ции: (W s , R n ) == J WS' Rn dn + J W s ' Rr dr == n r == J W s ( t umL(Nm)+p ) dn+ n т 1 + J W s . ( t итВ (N m ) + q» ) dr == О, s == 1, М , (8.7) r т 1 rде весовые функции W s и W s для области n и rраницы r MorYT быть разными. Этот метод ортоrонализации невязок Rr и Rn с помощью весовых функций называют .методо.м взвешеННъtх невязо , раз личные варианты KOTo poro отличаются способом задания Beco вых функций W s , s == 1, М. 8.3.1. Метод пот оч ечно й коллокации. В расчетной об ласти n выбирается s == 1, М то'Че'х; о.л.ло ации (совпадающих с нумерованными узлами расчетной области), в которых невяз ка R n полаrается равной нулю. В этом случае в качестве весовых 11*
З24 Метод 'К:оне'ЧН'ЬtХ элементов [lЛ. VIII функций принимаются дельта функции Дирака, которые в n мерном вещественном пространстве им еют в ид W s == 8(т тв),в == 1,М, rде r s длина радиуса вектора точки коллокации, а дельта функция 8(т Тв) обладает следующими свойствами: { О, если r =f=. r s ; 8(т Тв) 00, если r == Тв; Т>Тв J 8(r rs)dr == 1, s == 1, М; Т<Тв (8.8) Т>Тв J R n (r)8(r rs)dr == R n (r s ), s == 1, М. (8.9) Т<Тв в соответствии со свойством (8.9) и условием ортоrонально сти (8.7) получаем следующую систему из М линейных алrебра ических уравнений относительно узловых значений и т искомой функции: J R n (r)8(r rs)d n == R n (r s ) == о, s == 1, М. n 8.3.2. Метод rалеркина. в этом методе в качестве Beco вых функций выбираются базисные ф ункц ии в нумерованных узлах расчетной области W s == N s , s == 1, М. В результате СЛАУ (8.7) относительно и т приобретает вид I N s ( umL (N m ) + Р ) dn + +J N s ( umB(Nm)+q»)dr==o, s== 1,M , r причем, в силу ортоrональности базисных функций, матрица этой СЛАУ будет иметь разреженный вид.
98.4] Коне'Чно элементНЪLЙ метод rалер'К:ина решения 'К:раевъtХ зада'Ч З25 Среди методов взвешенных невязок метод rалеркина являет ся одним из наиболее популярных. 8.3.3. Метод наименьших квадратов. Метод наимень ших квадратов заключается в минимизации функционала, явля ющеrося интеrралом по области П от квадрата невязки R n : 1 ] 2 1 (иl, и2, . .. , и м) == 2 RfrdП. n Необходимым условием минимума этоrо функционала яв ляется равенство нулю частных производных l ro порядка по ди параметрам иl, и2,..., им, а учитывая, что д == N s , s == 1, М, ив приходим к следующей СЛАУ относительно и т , m == 1, М: J Rn . L (N s) dn + J R r . В ( N s) dr == О, s == 1, М. n r э 8.4. Конечно--элементный метод rалеркина решения краевых задач для обыкновенных дифференциальных уравнений Все содержание метода конечных элементов ниже излаrается на примере следующей первой краевой задачи для обыкновенно ro дифференциальноrо уравнения (ОДУ): d 2 u и==O dx 2 , о < х < 1; (8.10) и(О) == о, х == О, (8.11) и(l) == 1, x l , (8.12) допускающей аналитическое решение, которое имеет вид и(х) == [exp(l х) ехр(l + х)]/(l е 2 ). Разобьем отрезок [о; 1] на три конечных элемента (е == 1, Е ; Е' == 3), при этом нумерованные узлы m принимаются в точках разбиения, т. е. m принимает значения 1, 2, 3, 4. ........
З26 Метод 'К:оне'ЧНЪLХ элементов [lЛ VIII Каждому нумерованному узлу приписывается базисная функция N m (х), m == 1, 4 , определяемая с помощью выраже ния (8.3). Решение задачи (8.10) (8.12) записывается в виде 4 u (х) и (х) == L и т . N m ( Х ) , т==1 (8.13) rде и т значения искомой функции в нумерованных узлах, подлежащие определению. Если они определены, то на конечных элементах с номерами е == 1, Е и произвольными нумерованными узлами m и m + + 1 искомая функция в точках этих элементов описывается следующими линейными функциями (можно показать, что они совпадают с интерполяционными мноrочленами первой степени): ие(х) == и:пN:п(х) + и:п+lN:п+l(Х), е == 1,2,3. Такие функции называют ФУ'Н'х;циямu элеме'Нта. Подставляя (8.13) в ОДУ (8.10) получаем следующую функ циональную невязку: d 2 ....... R и........ n == и. dx Поскольку на rраницах заданы rраничные условия первоrо рода, выполняющиеся точно, то невязка Rr на rраницах paB на нулю. В соответствии с методом взвешенных невязок rалеркина Be совые функции Ws(x), s == 1,4 , принимаются равными базисным функциям Ns(X), s == 1,4 (Ws(x) == Ns(x)). Тоrда в соответствии с методом rалеркина получаем следующую СЛАУ относительно и т , m == 1,4: 1 J N s ( : 11: ) dx == О, s == 1, 2, 3, 4. о 8.4.1. Слабая формулировка метода rалеркина. Из вестно, что определенный интеrрал существует в случаях, Kor да подыIтеrральнаяя функция является кусочно непрерывной на заданном отрезке с конечным числом точек разрыва первоrо рода и оrраниченной (разрывы BToporo рода в подынтеrральных функциях не допустимы). Однако во вторую производную подынтеrральных функций СЛАУ (8.14) входят линейные кусочно непрерывные базисные (8.14)
98.4 J Коне'Чно..элементНЪLU метод rалер'К:ина решения 'К:раевЪLХ зада'Ч 327 функции Nm(x), m == 1,4 (8.3), производные BToporo поряд ка от которых претерпевают разрывы BToporo рода (стремятся к :l:oo). Возникает вопрос, допустимо ли использование базисных функций вида (8.3) в аппроксимации (8.13), т. е. достаточна ли rладкость базисных функций в классе СО (в классе непрерывных функций) ? N m N m N m ,............ у у 1 I 1 1 .............. I 1 'А х 'А х 'А х dNm/dx dNm/dx dNm/dx too ,............ J/ I 1 1 I ............. I А х ' А х ' А х d 2 N /dx 2 d 2 N /dx 2 а т т t oo 1 1 1 1 I I А х I A х б d 3 N /dx 3 т t oo А х в Рис. 8.6. Поведение функций и их производных: а разрывных, 6 непре.. рывных, в непрерывно дифференцируемых Для ответа на этот вопрос рассмотрим поведение трех ти пов функций N m (х) и их производных до TpeTbero порядка включительно в окрестности точки А стыковки двух соседних элементов (рис. 8.6), а именно разрывных, непрерывных (класса СО) и непрерывно дифференцируемых (класса с 1 ). Из рис. 8.6 видно, что класс разрывных функций (рис. 8.6 а) не rодится для аппроксимации дифференциальной задачи (8.10) (8.12), поскольку уже первая производная претерпевает 328 Метод 'Х:оне'ЧнъI,Х эле-м,ентов [rл. VIII разрыв BToporo рода. То же самое относится и к классу непре рывных функций (рис. 8.6 б) поскольку вторые производные претерпевают разрыв BToporo рода. Класс непрерывно диф ференцируемых функций (рис. 8.6 в) можно использовать для конечно элементной аппроксимации дифференциальной задачи (8.10) (8.12), поскольку производные BToporo порядка являются кусочно непрерывными с разрывами первоrо рода, т. е. опреде ленные интеrралы от вторых производных таких функций суще ствуют. Таким образом, в МКЭ на rладкость базисных функций Ha кладываются жесткие оrраничения. Покажем, как можно осла бить требования к rладкости базисных функций. Такие спосо.- бы ослабления rладкости базисных функций называют «слабой формулировкой» в МКЭ. Эти способы в одномерных задачах основаны на интеrрировании по частям, а в MHoroMepHbIx на использовании формул rрина. Проинтеrрируем в (8.14) первое слаrаемое по частям, полу чим 1 J ( dNs du N ......... ) d [N dU ] 1 . + ви х + B == О, dx dx dx о о s == 1, М + 1, (8.15) откуда видно, что теперь требуется непрерывность только при ближенноrо решения и (а следовательно, и базисных функ ций N m , входящих в и в соответствии с (8.13)), и ero первой d ....... .... и производнои d х . В СЛАУ (8.15) в сумме д ля и при каждом s == 1, М + 1, перебираются все m == 1, М + 1, rде s номер уравнения (и oд новременно номер весовой функции), а m номер неизвестноrо и т в (8.13) (и одновременно номер базисной функции). 8.4.2. Формирование локальной и rлобальной мат.. риц жесткости. Ансамблирование элементов. Предста вим СЛАУ (8.15) в следующей векторно матричной форме: Ки == 1, u == (иl и2 ... иМ+1)Т, f == (/1/2 ... IM+1)T, (8.16) rде К == [k sm ], в, m == 1, М + 1, причем элементы матрицы К и компоненты вектора правых частей вычисляются следующиМ образом (достаточно в (8.15) под ставить (8.13)):
э 8.4] ко'н,е'ч'н,о элем,е'н,т'н,'ы,и м,етод rалерх;u'Н,а реше'Н,uя x;paeB'bl,X зада'Ч 329 1 k sm == J ( d:X s d:X m + NsN m )dX, s, m == 1, М + 1 ; о fs == [ N s dU ] 1 == N s du N s du s == 1, М + 1 . dx о dx х==l dx х==о' Элементы k sm и компоненты Is в ычисляю тся таким образом, что для s й весовой функции N s , S == 1 , М + 1, перебираются все базисные функции N m , m == 1, М + 1, и после интеrрирования образуется S Я строка матрицы К и S Й компонент в векторе f. в каждый коэффициент k sm и компонент Is в общем случае делает вклад каждый конечный элемент расчетной области с ис пользованием выражений Е k sm == L k: m , е==l Е fs == Lf:, е==l rде Х т +l k=m == k s == J Хт. ( dN: dN:п N e N e ) d dx dx + s m Х , S =1= т, (8.17) k m == Xj+l ( ( d:X:" ) 2 + (N:п)2) dx, s == т. Хт (8.18) Для конечноrо элемента с нумерованными узлами m и m + 1 построим с помощью (8.17), (8.18) матрицу к е : Хт+l к е == J ( d:X:" ) 2 + (N:п)2 dN:п dN:п+l dx dx + +N:п . N:п+1 dx, Х т dN:п+l . dN:п + dx dx +N:п+1 . N:п ( dN:п+l . ) 2 + ( Ne ) 2 dx т+1 (8.19) причем для е == 1 m == 1, е == 2 m == 2, е == 3 m == 3. ..........
............. 330 Метод х;оне'Чнъl,Х эле-м,ентов [rл. VIII Матрицу (8.19) называют -матрицей эле.ме'Нmа или ло't\,алъ'Но'Й -матрицей ЭlCест't\,ости, в отличие от матрицы К в (8.16), назы ваемой 2лобалъ'Ной -матрицей ЭlCест't\,ости, построенной для всей расчетной области. Процесс суммирования локальных матриц жесткости, назы ваемый a'Hca-мблирова'Ние-м 'Ko'He-ч'ныlx элеме'Нтов, осуществляет ся таким образом, чтобы каждая поэлементная составляющая коэффициента k sm rлобальной матрицы жесткости К была на своем месте. Рассмотрим процесс ансамблирования в задаче (8.10) (8.12), для которой Е == М == 3 (рис. 8.7). 1 о 1 о 2 Х2== 1/3 е==l т l т т+l ... о т+2 ... М+ 1 Xl==O X M + 1 ==1 Рис. 8.7. К вычислению локальных матриц жесткости 1) Пусть е == 1, тоrда при s == 1 m == 1, m + 1 == 2; при s == 2 m == 1, m + 1 == 2. Локальная матрица жесткости (8.19) в узлах l ro конечноrо элемента вычисляется следующим образом. Элементы матрицы (8.19), стоящие в s й строке и т M столбце (В, m == 1, 2) вычис ляются по правой ветви базисной функции (8.3), при писанной левому нумерованному узлу, и по левой ветви базисной функции (8.3), приписанной правому нумерованному узлу (на рис. 8.7 эти ветви для m ro и (т + l) ro узлов нанесены жирно). Таким образом, элементы этой матрицы равны (Хт+l Х т == == 1/3, m == 1,2,3) 1/3 к 1 == J о ( з)2 + ( Х 2 х ) 2 1/3 + dx == 3 . ( 3) +
э 8.4] коне'чно элементны,и метод rалерх;uна решения 'К;раевъl,х зада'Ч. 331 [ 28/9 53/18 53/181 28/9 J Вектор правых частей rлобальной СЛАУ содержит второе слаrаемое выражения (8.15), имеющеrо место только для rpa ничных узлов: [ dU ] 1 du du N S d N4 N1 х О dx х==l dx х==о Первый элемент содержит только левую rраницу, и, следова тельно, fl == (Jt fi) т == ( Nl dи dx х==о о) т . Таким образом, локальная СЛАУ дЛЯ первоrо конечноrо эле мента имеет вид [ 28/9 53/18 5З/18 ] [ и1 ] == [ (dи/dX)lx==o ] . 28/9 и2 О (8.20) Эта локальная СЛАУ, построенная для элемента е == 1, учи тывается в rлобальной СЛАУ (8.16) следующим образом: т==1 т==2 s == 1 28/9 5З/18 О О иl (dи/dx)lx==o в==2 5З/1 28/9 О О и2 О О О О О из О О О О О и4 О (8.21 ) т. е. элементы матрицы K 1 и вектора правых частей f1 pac ширяются до размеров rлобальной матрицы К(М+l)х(М+l) и rлобальноrо вектора fM+1' rде м == З, причем при s == == 1 (т == 1, m + 1 == 2) первая строка матрицы к 1 ставится в первую строку и в l й и 2 й столбцы расширенной матрицы. При s == 2 (т == 1, m + 1 == 2) соответствующие элементы CTa вятся во вторую строку расширенной матрицы. 2) Пусть е == 2, тоrда при s == 2 m == 2, m + 1 == З; при s == 3 m == 2, m + 1 == з.
332 ............. Метод х;оне'ЧнъI,Х эле-м,ентов [rл. VIII Аналоrично элементу е == 1 из (8.19) имеем к 2 == [ 28/9 53/18 ] ; /2 == (О О) т , 53/18 28/9 m == 2 m == 3 О О О О и1 О в==2 О 28/9 53/18 О и2 О (8.22) в==3 О 53/18 28/9 О из О О О О О и4 О 3) Для е == 3 при s == 3 m == 3, m + 1 == 4; при s == 4 m == 3, m + 1 == 4, из (8.19) получаем к 3 == [ 28/9 53/18 ] j 53/18 28/9 m == 3 m == 4 О О О О О О О О в==3 О О 28/9 53/18 в==4 О О 53/18 28/9 j3 == (О (dи/dx)/X==l)T , и1 О и2 О из О и4 (dи/ dX)x==1 (8.23) Завершается процесс ансамблирования обычным сложением систем (8.21), (8.22), (8.23), в результате чеrо получается итоrо вая СЛАУ (8.16) с rлобальной матрицей жесткости К и BeKTO ром 1: dи 28/9 53/18 О О и1 dx х==о 53/18 56/9 53/18 О и2 О О 53/18 56/9 53/18 из О О О 53/18 28/9 dи и4 dx х==l (8.24 )
э 8.4] коне'чно элем,ентны,и м,етод rалерх;uна решенuя х;раевъl,Х зада'Ч 333 в силу TOrO что на rраницах х == О и х == 1 значения искомой функции известны из rраничных условий первоrо рода (8.11), (8.12), первое и последнее уравнение в системе (8.24) можно ис ключить, положив В остальных уравнениях и1 == и{О) == О и и4 == == и(l) == 1. Тоrда из (8.24) имеем [ 56/9 53/18 53/18 ] [ и2 ] [ о ] 56/9 из 53/18 откуда и2 == 0,2885; из == 0,6098 (точные значения и2 == 0,2889; из == 0,6102). rлобальная система (8.24) позволяет на rраницах, rде заданы rраничные условия первоrо рода, определить производные пер Boro порядка. Из (8.24) получаем dи 28 53 == 9 и1 18 и2 , dx х==о dи 53 28 == 18 из + 9 и4, dx х==l откуда (dи/dx)x==o == ( 53/18). 0,2885, (dи/ dX)x==l == ( 53/18) .0,6098 + (28/9) .1. 8.4.3. Случай rраничных условий, содержащих про-- изводные. В случае, коrда на rраницах расчетной области за даны rраничные условия BToporo или TpeTbero рода (или CMe шанные краевые условия), вместо слабой формулировки MeTO да rалеркина (8.15) необходимо воспользоваться общей схемой взвешенных невязок (8.7) и на ее основе сформулировать слабую формулировку метода rалеркина. Рассмотрим такую формулировку на при мере следующей краевой задачи дЛЯ ОДУ 2 ro порядка: d 2 и и == О О < х < 1. , ( 8.25 ) dx 2 ' и(О) == О, х == о; (8.26) 334 Метод х;оне'ЧнъI,Х элементов [rл. VIII dи(l) == 1, х == 1. dx Тоrда из (8.7) имеем (8.27) 1 J W s ( : и ) dx + [W s ( : 1) ] х==1 == о, О (8.28) rде невязка на левой rранице равна нулю, поскольку на ней задано значение искомой функции. Для rраничных условий, содержащих производные, базисные функции W s на соответствующей rранице можно подобрать так, чтобы эти производные и производные первоrо порядка, возник шие на той же rранице от операции интеrрирования по частям, сократились, что существенно упрощает решение. Интеrрируя первое слаrаемое в (8.28) по частям, получим J 1 ( dWs du "' ) du 1 [ ( du )] dx dx + Wsu dx + W s dx о + W s dx 1 х==1 == о. О Положим здесь W S I X ==l == Wslx==l (а в соответствии с Me тодом rалеркина W S == N s , S == 1, М + 1), будем иметь 1 J ( d s + Nsи) dx == [Ns : ]x==o + [N S ]X==I. о (8.29) Проводя те же рассуждения, что и в задаче (8.10) (8.12) с rpa ничными условиями первоrо рода, из (8.29) получим следующую rлобальную СЛАУ, в которой rраничное условие на rранице х == == 1 учтено естественным образом ([Ns]x==O == 1): du 28/9 5З/18 О О иl dx х==О 5З/18 56/9 5З/18 О и2 О О 5З/18 56/9 5З/18 из О О О 5З/18 28/9 и4 1 (8.30)
э 8.5] Метод х;оне'чны,x эле-м,ентов в зада'Чах .маmе.матu'Чесх;ои физuх;u 335 Краевое условие на левой rранице и1 == и(О) == О учитывается вычеркиванием первоrо уравнения в (8.30) и равенством иl == О в остальных уравнениях. Решая rлобальную систему (8.24) или (8.30) относительно узловых значений искомой функции и подставляя их в линейную комбинацию (8.13), получим решение задачи методом конечных элементов не только в нумерованных узлах, но и в любой точке любоrо конечноrо элемента с помощью функции элемента. э 8.5. Метод конечных элементов в стационарных задачах математической физики 8.5.1. Основные этапы решения стационарных задач математической физики методом конечных элементов. Перечислим основные этапы решения двумерных стационарных задач математической физики с помощью МКЭ на основе метода rалеркина взвешенных невязок. 1. Расчетная область n == n + r Е R 2 , которая может быть e и мноrосвязной, разбивается на элементы n == п е + r e Toro же пространства. Для двумерной расчетной области в качестве KO нечных элементов принимаются треуrольные или четырехуrоль ные элементы, причем последние можно разделить диаrональю на два треуrольных элемента. Достоинствами треуrольных эле ментов являются возможность хорошей аппроксимации rрани цы области и возможность аппроксимации искомой функции на треуrольном элементе с помощью простейшей поверхности плоскости, определяемой значениями искомой функции в HY мерованных узлах элемента (обычно это вершины треуrольноrо элемента). Разбиение на элементы должно удовлетворять усло e вию U n == п, причем смежные элементы должны иметь общие е ' стороны И общие нумерованные узлы (рис. 8.8). 2. В нумерованных узлах фиксируются узловые значения искомой функции, являющиеся неизвестными величинами, под лежащими определению. 3. С помощью узловых значений в нумерованных узлах эле мента искомая функция аппроксимируется поверхностью (ча ще Bcero линейной функцией, описывающей плоскость), назы ваемой фу'Н't\,цией элеме'Нта, позволяющей определить искомую функцию в любой точке конечноrо элемента. При этом если 336 Метод х;о'Н,е'Ч'Н,ъl,Х эле-м,е'Н,тов [rл. VIII количество нумерованных узлов элемента на единицу больше размерности пространства Rn, то элемент называется ли'Ней'Нъtм,. Если в элементе число нумерованных узлов больше чем n + 1, то этот элемент называется н,елин,ей'Нъtм" а искомая функция на нем аппроксимируется с помощью 'Нели'Ней'Ной фу'Н'Кции. а r б Рис. 8.8. Разбиение двумерной расчетной области: а правильное разбиение; б неправильное разбиение 4. Каждому нумерованному узлу расчетной области n + r приписывается базисная функция, равная единице в узле, KOTO рому она приписывается, и нулю во всех остальных узлах расчет ной области. Базисные функции для различных нумерованных узлов являются линейно независимыми. 5. Приближенное решение задачи формируется в виде ли нейной комбинации базисных функций по всем нумерованным узлам расчетной области с коэффициентами линейной комбина ции, равными узловым значениям искомой функции. 6. Это решение подставляется в дифференциальную задачу, что приводит не к тождественному нулю, поскольку подставляет ся приближенное решение, а к невязкам по расчетной области Rn и rранице Rr.
э 8.5] Метод х;о'н,е'ч'н,ы,x эле-м,е'Н,тов в зада'Чах ате-м,атu'Чесх;ой фuзuх;u 337 7. В соответствии с различными методами взвешенных невя зок, наиболее эффективным из которых является метод rалер кина, невязки ортоrонализируются с системой весовых функций (в методе rалеркина в качестве весовых функций принимаются базисные функции). Результатом такой ортоrонализации явля ется rлобальная система линейных алrебраических уравнений (СЛАУ) относительно узловых значений искомой функции. Чи сло уравнений в этой системе совпадает с количеством HYMe рованных узлов расчетной области. Каждый элемент матрицы и вектора правых частей этой СЛАУ содержит в той или иной степени вклады элементов матриц и правых частей ло'Кa.Jtъ'Нъtх СЛАУ, сформированных для каждоrо конечноrо элемента. Про цесс суммирования таких вкладов конечных элементов называют a'Hca-мблирова'Ние.м конечных элементов, т. е. локальным номерам узлов конечных элементов ставятся в соответствие rлобальные номера узлов расчетной области. 8. Решая полученную rлобальную СЛАУ каким либо из из вестных методов, получаем узловые значения искомой функции, с помощью которых из функций элементов определяются значе ния искомой функции В любых точках конечных элементов. 8.5.2. Принципы разбиения плоских областей на ко... нечные элементы. Будем разбивать плоскую расчетную об ласть n + r Е R 2 на треуrольные конечные элементы, при этом номер элемента обозначается верхним индексом е, а ло'Кa.Jtъ'Нъtе номера узлов в элементе нижними индексами i, j, k, причем если зафиксирован какой либо узел под номером i, то остальные узлы под номерами j и k нумеруются против часовой стрелки. Перечислим основные принципы разбиения плоских расчет ных областей. 1. Сложные плоские области вначале разбивают на подобла сти, которые затем разбивают на конечные элементы. 2. При разбиении на конечные элементы тонкостенных об ластей каждый конечный элемент должен содержать как мини мум один нумерованный узел, находящийся внутри расчетной области, так как если все нумерованные узлы расположены на rранице расчетной области, то при аппроксимации учитываются только rраничные условия и не учитывается дифференциальное уравнение (рис. 8.9).
......... 338 Метод х;оне'Чн 'bl,X эле-м,ентов [rл. VIII б Рис. 8.9. Конечные элементы в тонкостенных расчетных областях: а непра вильное, б правильное разбиение 3. rлобальную нумерацию узлов в расчетной области необ ходимо осуществлять таким образом, чтобы в отдельном конеч ном элементе разность между максимальным и минимальныМ номерами была как можно меньше, поскольку от этой разницЫ зависит полуширина Ь ленты матрицы (рис. 8.10) в rлобальноЙ 1 2 3 1 23М .. .. ', I , ' :. 8, . . ", :. . .... ", I , .... .. 8,. ", '".... 8', ", . '. . I , ' I ", . '. .: " ,1 ",. ..... . , ' I ' t j м Рис. 8.10. Вид ленточной матрицы rлобальной системы линейных алrебраи- ческих уравнений
э 8.5] Метод х;оне'чны,x эле-м,ентов в зада'Чах ате-м,атu'Чесх;ой фuзuх;u 339 матрице результирующей системы алrебраических уравнений, которая является ле'Нто'Ч'Ной, если все ее ненулевые элементы на полуширине Ь расположены около rлавной диаrонали. Чем меньше полуширина Ь ленточной матрицы, тем устой чивее решение СЛАУ. Таким образом, нумерация узлов в TOH костенной расчетной области, представленной на рис. 8.9, ocy ществляется чередованием номеров на верхней и нижней rрани цах (нумерация узлов сначала по верхней, а затем по нижней rранице приведет к значительной разности номеров в каждом конечном элементе и такому же увеличению полуширины ленты матрицы). 4. В мноrосвязных областях внутренние полости вписывают в мноrоуrольники, в вершины которых помещают нумерованные узлы, соединяемые rранями с друrими нумерованными узлами, расположенными внутри расчетной области. 8.5.3. Аппроксимация линейными мноrочленами и базисные функции. Применение метода конечных элементов рассмотрим на примере следующей третьей краевой задачи для уравнения Пуассона в области, представленной на рис. 8.11. у 2 3 "- / , Q) ;' , / п 0:0: 0 п r ;' 1 , / @', / 4 10 , n 0 / '@ ;,/ ;' , / , , / @ :0: (j) , / @/О @ п / 6 ' / 9' ;' ф', / ' / / @' О 7 х Рис. 8.11. Расчетная область д ( ди ) д ( ди ) дх л(х,у) дх + ду л(х,у) ду == f(x,y), (х, у) Е n ; (8.31)
.......... 340 Метод х;оне'ЧНЪLХ эле-м,ентов [rл. VIII ди л (Х, У) a + а ul r == ср (Х, У) , (Х, У) Е r. n r Разобьем вначале область n на три подобласти в виде трех четырехуrольников. Затем внутри каждоrо четырехуrольника введем по одному внутреннему узлу, которые соединим с узлами в вершинах четырехуrольников. Про нумеровав все узлы, полу чим разбиение всей области на двенадцать треуrольных конеч ных элементов с общим числом нумерованных узлов, равным одиннадцати. Каждому нумерованному узлу приписывается базисная функция N m (Х, У) в виде линейноrо мноrочлена, значение KOTO poro равно единице в узле, которому она приписана, и нулю во (8.32) 1 i k Рис. 8.12. Базисная функция Ni всех остальных узлах расчетной области. На рис. 8.12 приведен пример базисной функции Ni (Х, у), приписанной узлу i в ло кальной нумерации узлов в конечном элементе е. Такая базисная функция имеет вид Ni (Х, У) == a + fЗfх + f1iY, (8. зз) rде коэффициенты аТ, fЗi, f1i находятся из условий Ni (Xi, Yi) == == 1, Ni (Xj, Yj) == о, Ni (Xk, Yk) == о. При этом координаты HY мерованных узлов определены положением узлов в расчетноЙ области относительно начала координат. Выполнение этих треХ
э 8.5] Метод 'х:о'н,е'ч'н,ы,x эле-м,е'Н,тов в зада'Чах ате-м,атu'Чес'Х:ой фuзu'Х:u 341 условий приводит К следующей системе из трех линейных алrеб раических уравнений относительно коэффициентов ai, {3i, f1i: 1 Xi Yi a 1 1 Х. У; {3i о (8.34 ) J 1 Xk Yk f1i О решением которой являются выражения ai == 2 e (XjYk XkYj), /3: == 2 e (У; Yk), ,: == 2 e (Xk Xj) , rде Lle площадь элемента, 1 Xi Yi Д е == det 1 Х. У; J 1 Xk Yk Для остальных узлов j и k конечноrо элемента е базисные функции NJ (Х, У) и NZ (Х, У) формируются аналоrично. Тоrда равенство (8.33) для этих узлов будет иметь вид NJ (Х, У) == aj + {3jx + ,jY, NZ (Х, У) == а% + {3k x + f1kY' а система (8.34) сохраняется, за исключением двух rрупп неиз е {3 е е. е {3 е е .... вестных а j' j' f1 j' а k' k' f1 k' и двух векторов правых частеи [о 1 О]Т дЛЯ NJ и [о О l]Т для NZ. Приближенное решение задачи (8.31), (8.32) находится в ви де линейной комбинации базисных функций, коэффициентами которой являются значения искомой функции в нумерованных узлах, т. е. в форме м и (Х, У) и (х, У) == L umN m (х, У), т==1 (8.35) rде М число нумерованных узлов.
........... 342 Метод 1\;оне'Чн'Ьl,Х эле-м,ентов [rл. VIII Для отдельноrо элемента е решение (8.35) представляется в виде и е (х, у) == ui(Xi, Yi)Ni(x, у) + + uj(Xj, У; )NJ(x, у) + Uk(Xk, Yk)NZ(x, у) (8.36) и называется фу'Н'Кцией элеме'Нта. С ее помощью значение ис комой функции можно определить в любой точке конечноrо элемента, как только станут известными узловы е зна чения иi, и j, и k. Система базисных функций N m ( Х, у), m == 1, М, обладает свойством полноты, поскольку при М 00 решение (8.35) может сколь уrодно точно аппроксимировать искомую функцию 8.5.4. Слабая формулировка конечно...элементноrо метода rалеркина. Если подставить приближенное решение (8.35) в дифференциальную задачу (8.31), (8.32), то результатом подстановки будет не тождественный нуль, поскольку (8.35) приближенное решение, а некоторая функциональная невяз ка Rn(x, у) по расчетной области n иневязка Rr{x, у) по rранице r: а ( ди ) д ( ди ) Rn(x, у) == дх л дх + ду л ду f(x, у), Rr(x, у) == л д а и + aиlr rp(x, у). n r В соответствии с методами взвешенных невязок требуем ортоrональности этих функциональных невязок и специаль н ым о бразом подобранных весовых функций W s ( х, у), s == == 1, М, дЛЯ невязки Rn(x, у) и W в(х, у), S == 1, М, дЛЯ невяЗ ки Rr(x, у). Для непрерывных функций Rn(x, у), Rr(x, у) это означает равенство нулю скалярных произведений (R n, W s ) == == о и (Rr, W s ) == о или (Rn, W s ) + (Rr, W s ) == О, s == 1, М, ЧТО приводит К равенству нулю суммы двойноrо и криволинейноrо интеrралов соответственно по области n и rранице r: (Rn, W s ) + (Rr, W в) == == J J [ :х (л ) + :у (л ) f(x, у)] Ws(x, y)dxdy+ n
э 8.5] Метод 'х:о'н,е'чны,x эле-м,ентов в зада'Чах ате-м,атu'Чес'Х:ои фuзu'Х:u 343 J [ ди I ] + Л дп r+аUr rp(х,у) W s dr==O,s==l,M, (8.37) r rде Ws(x, у) весовые функции для внутренних узлов расчет ной области, а W s (х , у) в есовы е функции для rраничных узлов расчетной области, s == 1, М. Весовые функции выбира ются таким образом, чтобы они были ортоrональны невязкам по области n и по rранице r. В соответствии с методом rалеркина взвешенных невязок весовые функции равны базисным: W s == == N s , W s == N s . Для базисных функций вида (8.33) интеrралы от вторых производных базисных функций (в соответствии с (8.35) при ближенное решение и( х, у) содержит базисные функции) не cy ществуют, поскольку они стремятся к +00 или oo. Для ослаб ления rладкости подынтеrральных функций в (8.37) используем первую формулу rрина, соrласно которой для двух достаточ ное число раз непрерывно дифференцируемых функций и(х, у) и v ( х, у) имеет место равенство J v [ ( Л ди ) + ( Л ди )] dxdy == дх дх ду ду n == J [ av . л ди + av . л аи ] dxdy + J v . л ди dr, ах дх ду ау аn n r являющееся обобщением на двумерный случай формулы инте rрирования по частям в определенном интеrрале. Тоrда, подставляя в (8.37) решение (8.35) и применяя к по лученному выражению первую формулу rрина, в которой BMe сто функции v ( х, у ) подставлена функция N s ( х, у ), а BMec то и(х, у) функция и(х, у), получим слабую формулировку конечно элементноrо метода rалеркина: L M { J [ aNs \ aN m aN s \ aN m ] d d и т . . л + . л Х у + дх дх ау ау т==1 n J aNm J aNm J } + N s . л дп dr + N s . Л дп dr + N s . aNmdr == r r r
........... 344 Метод х;о'Н,е'Ч'Н,ъl,Х элеме'Н,тов [rл. VIII == J f(x, y)Nsdxdy + J N srp(x, y)dr, s == 1, М. (8.38) n r Весовые функции N s на rранице r можно выбрать таким образом, чтобы криволинейные интеrралы по rранице (второй и третий интеrралы в левой части выражения (8.38)) сократились , т. е. принять N s == Ns. Тоrда выражение (8.38) примет вид м LUmX т==1 Х {I [ дд: В . л д:Х т + дд: В · л д т ] dxdy+ а J N s . Nm dr } == == J f(x, y)Nsdxdy + J Nsrp(x, y)dr, s == 1, М. (8.39) n r Выражения (8.39) это неоднородная система линейных алrебраических уравнений порядка М , которая в BeKTopHO матричной форме имеет вид Аи == F, (8.40) rде элементы а вт матрицы А и правых частей F образованы суммированием вкладов отдельных конечных элементов (в co ответствии с аддитивным свойством кратных и криволинейных интеrралов) : Е а вт == L а: т , е==l Е Fs == L F: · е==l СЛАУ (8.39) или (8.40) называют zлоба.fl/Ь'НОЙ СЛАУ, матри цу А и вектор правых частей F соответственно 2лобалъ'Нои .матрицей (или матрицей жесткости) и 2лобалъ'Нъt.м ве'Кторо-м прав их 'Частей. Для отдельноrо конечноrо элемента п е + r e с локальныМИ номерами узлов i, j, k на основе rлобальной СЛАУ (8.40), эле менты матрицы и вектора правых частей которой определяются выражением (8.39), можно построить ло'Калъ'Ную СЛАУ Аеи е == F e (8.41)
э 8.5] Метод х:о'н,е'ч'н'ы,x эле-м,е'Н,тов в зада'Чах ате-м,атu'Чесх:ои фuзuх:u 345 с ло'Калъ'Ной .матрицей А е == [а т]' S == i, j, k; m == i, j, k и ло 'Калъ'Нъt,м ве'Кторо.м nравъtХ 'Частей F e == [/:], s == i, j, k, т. е. е е е F а.. а.. a ik ] А е == at?:. е е F e == Fff а. . ajk З зз J е е е F e a ki a kj a kk k Элементы a т' s == i, j, k; m == i, j, k, имеют вид выражений в Фиrурных скобках СЛАУ (8.39), rде интеrралы вычисляются по конечному элементу п е + r e , а компоненты F:, s == i, j, k имеют вид правых частей СЛАУ (8.39) на конечном элементе п е + r e , т. е. е == J J ( aN: ,\ дN:п aN: ,\ дN:п ) d d а вт дх дх + ду ду х У + п е +а J N;N:п dr , s==i,j,kj m==i,j,kj (8.42) r e F: == J N;rpe(x, y)dr J J fe(x, y)N;dxdy, s == i, j, k. (8.43) re п е в выражениях (8.42), (8.43) криволинейные интеrралы равны нулю, если конечный элемент не содержит rраней, являющихся rраничными. Элемент a т локальной матрицы Ае вычисляется таким образом, что для каждоrо номера s перебираются все номера т. Например, для локальноrо номера s == i перебираются все номера m == i,j,k; для s == j, m == i,j,k; для s == k, m == ==i,j,k. При вычислении двойных интеrралов в выражениях (8.42), (8.43) используются базисные функции (8.33) и теорема о cpeд нем J J ( дд : ле(х, у) д;; + д : ле(х, у) д :п ) dxdy == п е == '\ p ({3 {3 + f1 = f1 ) . Ll е , в, m == i, j, k; (8 44)
........... 346 Метод 1\;о'Н,е'Ч'Н,'Ьl,Х эле-м,е'Н,тов [rл. VIII JJ fе(х,У)N;dХdУ==f р. де, s==i,j,k, п е (8.45) rде в соответствии с теоремой о среднем '\ p == ,\ (х*, у*), f p == f (х*, у*), Х* == (Xi + Х; + Xk) , у* == (Yi + Yj + Yk) , Ll е площадь треуrольноrо элемента, {3;, f1: коэффициенты в базисных функциях (8.33). При вычислении криволинейных интеrралов в выражениях (8.42), (8.43) положим для определенности, что на rраницу r выходят узлы i и k элемента п е + r e (рис. 8.13). q Рис. 8.13. К вычислению криволинейных интеrралов Тоrда произведения N:(x, у) . N:п(х, у), в, m == i, k, reOMeT рически представляют собой поверхности BToporo порядка, а их сечения плоскостью qi k являются кривыми BToporo порядка, а точнее квадратными параболами. Таким образом, криво линейный интеrрал в выражении (8.42) rеометрически равен заштрихованной площади на рис. 8.13, т. е. J N; N:пdr == V (Xk Xi)2 + (Yk Yi)2, S == т, r e ( 8.46)
э 8.5] Метод 1\;оне'чн'ы,x эле-м,ентов в зада'Чах ате-м,атu'Чесх:ой фuзuх:'U 347 J N; N:пdr == V (Xk Xi)2 + (Yk Yi)2 , S =fi т, r e (8.47) поскольку площадь криволинейноrо треуrольника qik в COOTBeT ствии с теоремой о среднем равна 1/3Llr, rде Llr расстояние между узлами i и k. По той же причине имеет место равенство J N; . rpe (Х, У) dr ==rp (х*, У*). V (Xk Xi)2 + (Yk Yi)2, r e (8.48) * 1 ( ) * 1 ( ) е ( * * ) rде Х == 2 Xi + Xk ; У == 2 Yi + Yk , СРер == ср Х , У . Таким образом, в соответствии с выражениями (8.44) (8.48) локальная матрица А е и вектор правых частей F e СЛАУ дЛЯ e конечноrо элемента n == п е + r e имеют вид (в случае, коrда на rраницу r выходят узлы i и k конечноrо элемента) ({3т)2 + (f1i)2 {3Т {3; + f1if1j {3: {3k + f1if1k Ае==,\е .де. {3; {3? + f1j f1i (/3j) 2 + (-'1j) 2 {3; {3Z + f1jf1k + ер {3k{3i + f1kf1i {3Z{3j + f1kf1j {{3k)2 + (f1Z)2 1 О 1/2 О О О 1/2 О 1 (8.49) a V 2 2 + 3 (Xk Xi) + (Yk Yi) rp p . V (Xk Xi)2 + (Yk Yi)2 Пр . де /3 F e == f p . де /3 . (8.50) rp p . V (Xk Xi)2 + (Yk Yi)2 f p . де /3 в случае, если решается первая краевая задача для Toro же уравнения (8.31), слабая формулировка (8.38) примет вид ( W s == N s ) 348 Метод х:оне'Ч'Н,'Ьl,Х эле-м,ентов [rл. VIII {} [ aNs \ aN m aN s \ aNm ] d d L...J и т ах Л ах + ау Л ау х у т==1 n J N s . л a;: dr J NsNm dr } == r r == J Nsf (х, y)dxdy J Nsrp (х, y)dr, s == 1, М, (8.51) n r rде aN m aN m ( . ) aNm ( . ) дп == дх cos 1, n + ду cos J, n , n вектор внешней нормали к rранице r. Поэтому к вычислению интеrралов (8.44) (8.48) необходимо добавить вычисление криволинейных интеrралов от произведе ния весовых функций на производные по нормали от базисных функций. Тоrда J Ne . ,\ а N:п dr == s аn r e \ е J [N e аN:п ( . ) N e аN:п ( . )] dr == Лер s ах cos 1, n + s ау cos J, n == r e == Л р . [/3 cos(i, n) + 'Y cos(j, n)] · V (Xk Xi)2 + (Yk Yi)2 , (8.52) если на rраницу r выходят узлы i и k. Если конечные элементы ни одной rранью не выходят на rpa ницу области r, то соответствующие криволинейные интеrралЫ равны нулю. 8.5.5. Ансамблирование элементов и построение rЛО'" бальной С Л АУ. Для построения rлобальной матрицы жесТ кости А и вектора правых частей F системы (8.40) необходимо локальным номерам узлов i, j, k каждоrо элем ента поставиТЬ в соответствие rлобальные номера узлов т, m == 1, М. При этоМ
э 8.5] Метод х;оне'чн'ы,x эле-м,ентов в зада'Чах ате-м,атu'Чесх;ои фuзuх;u 349 каждая локальная матрица А е элемента расширяется до разме ра М хМ, т. е. в rлобальной матрице А ненулевые элементы локальной матрицы А е становятся на места, определяемые rло бальными номерами узлов элемента п е . Аналоrично для вектора правых частей F. Затем расширенные таким образом матрицы и векторы пра вых частей всех конечных элементов складываются, в результате чеrо получаем rлобальную матрицу А и вектор правых частей F, или rлобальную СЛАУ (8.40). Такой процесс объединения локальных СЛАУ дЛЯ конечных элементов в rлобальную СЛАУ называется а'Нса.мблирова'Ние,м 'Коuе'Ч'Нъtх эле,ментов. Для рассматриваемоrо примера (рис. 8.11) М == 11. Тоrда, например, для элемента с номером 4 определено следующее co ответствие локальных и rлобальных номеров узлов: i == 1, j == 4, k == 5. Тоrда локальная матрица элемента 4, имеющая вид 4 4 4 а.. а. . a ik ] А 4 == 4 4 4 а . . а . . ajk З зз 4 4 4 a ki akj a kk преобразуется в расширенную матрицу A ae размера 11 х 11 сле ующим образом: m 1 2 3 4 5 6 11 s 1 4 О О 4 4 О О а 11 а14 a 1 5 2 О О О О О О О A ae == 3 О О О О О О О 4 4 4 4 а41 О О а44 а45 О О 5 4 О О 4 4 О О а51 а54 а55 6 О О О О О О О . ........... ................ 11 О О О О О О О
350 Метод 1\;оне'Чн'Ьl,Х эле-м,ентов [rл. VIII Аналоrично вектор правых частей F 4 == [Fi 4 , Ff, Ff ] т л().. каль ной системы (8.41) преобразуется в расширенный вектор с одиннадцатью компонентами: F: ac == [F{ О О F! F: о . .. о ( . (8.53) Операция суммирования осуществляется в соответствии с ад.. дитивным свойством кратных и криволинейных интеrралов. При этом в памяти достаточно хранить матрицу сумматор и вектор.. сумматор, а также буферные матрицу и вектор текущеrо эле.. мента. Результирующую СЛАУ (8.40) можно решить одним из известных методов, а значения искомой функции во внутренних точках конечноrо элемента определяются по узловым значениям с помощью функции элемента (8.36). э 8.6. Метод конечных элементов в мноrомерных u нестационарных задачах математическои физики в нестационарных задачах математической физики искомая функция зависит не только от пространственных переменных, но и от времени, а дифференциальные уравнения и начальные условия MorYT содержать производные по времени. Конечно элементную аппроксимацию в таких задачах можно осуществить по пространственным переменным, сохранив дифференциаль ные операторы по времени, в результате чеrо получается си стема обыкновенных дифференциальных уравнений порядка М (М число нумерованных узлов в пространственной расчетной области П), т. е. один из вариантов метода прямых (см. раз дел 6.6.3). Однако существует более простой и эффективный метод, соrласно которому дифференциальный оператор по времени ап проксимируется конечно разностным оператором, а простраН ственные операторы аппроксимируются конечно элементным Me тодом rалеркина. Рассмотрим этот метод на примере следующей двумерной нестационарной задачи теплопроводности с rранич ным условием 3 ro рода для функции и(х, У, t):
э 8.6] Метод х;оне'ЧН'ЬtХ элементов в MH020MepH'bl,X зада'Чах == :х (л (х , у) : ) + :у (л (х, у) : ) + f ( х, у), (х,у)ЕП, t>O; 351 (8.54 ) аи л{х, У) a + aul r == ср(х, У), (х, У) Е r, t > о; n r (8.55) и{х, У, О) == rф(х, У), (х, У) Е П , t == о. (8.56) Решение задачи (8.55) (8.57) представляется в ви де линейной комбинации базисных функций N m ( х, у), m == 1, М, с коэффи циентами линейной комбинации, равными узловым значениям искомой функции и т (t), зависящими от времени: м и{х, У, t) и(х, У, t) == L um(t) . Nm(x, У), т==1 (8.57) rде базисные функции определяются соотношениями вида (8.33). Тоrда в соответствии со слабой формулировкой конечно элементноrо метода rалеркина (8.38) для задачи (8.54) (8.56) можно записать следующее нестационарное выражение: tl um(t) {} I ( д:Х в л д:Х т + д B л д т ) dxdy+ + J aNsNm dr } + t J J N s . N m du (t) dxdy == r т 1 n == J J N s . f(x, y)dxdy + J Nsrp(x, y)dr, s == 1, М, (8.58) n r в котором функцию и т (t) будем аппроксимировать на Bepx нем временном слое, обозначив u m (t k + 1 ) и +l, а производную dum(t) dt с помощью отношения конечных разностей по времени справа: dum(t) == и +1 и О( ) d + Т. t т ... 352 м етод оне'ЧН'ЬtХ элементов [rл VIII Тоrда (8.58) будет иметь вид L M k+1 {JJ ( 8Ns л 8N rn 8N s л 8N rn N N ) d d и т 8 8 + 8 8 + s m Х у+ х х у у т т==1 n + J a NsNm dr } == t JJ N s . N m U; dXdY + r т 1 n + J J N s . l(х, y)dxdy + J Ns<p(x, y)dr, s == 1, М. (8.59) n r Систему линейных алrебраических уравнений (8.5 9) O THO сительно неизвестных узловых значений и + 1, m == 1, М, на верхнем временном слое в методе конечных элементов получа ем с помощью аддитивноrо свойства кратных и криволинейных интеrралов путем суммирования локальных СЛАУ (8.41) дЛЯ OT дельных конечных элементов с локальными номерами узлов 'l, J и k. При этом элементы локальной матрицы и вектора правых e частей для конечноrо элемента П выписываются на основе (В.59) следующим образом: е == J J ( 8 N: л е 8 N:п 8 N: л е 8 N:п N e N e ) d d а sm 8 8 + 8 8 + s m Х У + х х у у т п е + J aN: N:пdr, в, m == i, j, k. (8.60) r e F: == J J N:. N:п U; dxdY + J J N:. l е (х, y)dxdy + п е П е + J N:<pe(x, y)dr, в, m == i, j, k. (8.61) r e Кратные и криволинейные интеrралы в выражениях (В.60), (В.61) вычисляются путем использования выражений соrласно (8.44) (8.52). В (8.61) и , как константа, выносится за знаК интеrрала. 9 8.7] Решение nространственн'ых зада'Ч методом оне'ЧН'ЬtХ элементов 353 в остальном алrоритм тот же, что и для стационарных задач. Исключение составляет тот факт, что rлобальную СЛАУ прихо дится решать на каждом временном слое э 8.7. Особенности решения пространственных задач математической физики методом конечных элементов Рассмотрим эти особенности на примере следующей третьей краевой задачи для TpexMepHoro уравнения Пуассона в обла сти П Е R З : ( Л 8и ) + ( Л 8и ) + ( Л 8и ) 8х 8х 8у 8у 8z 8z == f(x, у, z), (х, у, z) Е П; (8.62) 8и л 8 + aul r == ер(х, у, z), (х, у, z) Е r. n r Приближенное решение ищется в виде следую щей линейной комбинации базисных функций N m ( х, у, z), m == 1, М: (8.63 ) м и(х, у, z) и(х, у, z) == L и т . Nm(x, у, z), т==1 (8.64 ) rде коэф фици ентами линейной комбинации являются значения и т , m == 1, М, искомой функции в нумерованных узлах TpeXMep ных конечных элементов п е . В трехмерном случае в качестве конечных элементов прини маются тетраэдръt с нумерованными узлами i, j, k, l в вершинах или nаралл ел е nиnе дъt с узлами i, j, k, l, т, n, о, р. Тетраэдр является линейным конечным элементом, поскольку число HY мерованных узлов на единицу больше размерности простран ства R З . Если расчетная область П разбита на тетраэдры, то базисные функции, ассоциируемые с каждым нумерованным узлом конеч Horo элемента п е , формируются В виде линейных функций пере менных х, у, z, удовлетворяющих условиям равенства единице в узлах, для которых они определены, и нулю в остальных 12 В.Ф. Формалев, д.л. Ревизников
.......... 354 м етод оне'ЧН'btх элементов [rл. VIII узлах. Для узла i, например, базисная функция имеет вид Ni(x, У, z) == ai + (3ix + 'YiY + дi z, (8.65) причем Ni(X, У, z) == 1 в узле i; о в узле j, k, l. Аналоrично определяются базисные функции в узлах j, k, l. С учетом этих требований к базисным функциям формиру ется следующая СЛАУ дЛЯ определения коэффициентов ai, f3i, 'Yi, дi базисной функции Ni(x, У, z) (8.65): 1 Xi Yi Zi а*: 1 1 Х. У; z. {3i о J J (8.66 ) 1 Xk Yk Zk 'Yi О 1 Xl Yl Zl дf? О откуда е Д е Д е Д де Д ai == 6Д е , {3 i == 6Д е , 'Yi 6де ' i == 6Д е ; Х. У; z. 1 У; z. J J J Д == det Xk Yk Zk Д == det 1 Yk Zk Xl Yl Zl 1 Yl Zl 1 Х. z. 1 Х. У; J J J Д == det 1 Xk Zk Д == det 1 Xk Yk 1 Xl Zl 1 Xl Yl 1 Xi Yi Zi 1 Х. У; z. 6Д е == det J J 1 Xk Yk Zk 1 Xl Yl Zl
9 8.7] Решение nространственн'ых зада'Ч методом оне'ЧН'ЬtХ элементов 355 Здесь Д е объем элемента п е (как известно, объем тетраэд ра равен шестой части объема параллелепипеда, который, в свою очередь, равен модулю смешанноrо произведения трех векторов, исходящих из одной точки, например из узла i в узлы j, k, l). Если узловые значения искомой функции и т , m == i, j, k, l станут известными, то значения искомой функции и(х, У, z) во внутренних точках конечноrо элемента п е определяются с помо щью следующей функции: ие(х, у, z) == ui Ni(x, У, z) + ujNJ(x, У, z) + + u%N'k(x, У, z) + иТ N1e(x, У, z), (8.67) называемой фу'Н'К;цuей элемента. Слабая формулировка конечно элементноrо метода rалерки на, изложенная выше для двумерных задач, полностью сохраня ется для трехмерных задач за исключением Toro, что криволи нейные интеrралы первоrо рода заменяются на поверхностные интеrралы первоrо рода, а двойные интеrралы по области n на тройные интеrралы. При этом первая формула rрина, используемая в слабой формулировке метода rалеркина, имеет вид J U [ ( Л 8V ) + ( Л 8V ) + ( Л )] dХdУdZ == 8х 8х 8у 8у 8z 8z n == J( 8и л 8V + 8u л 8v + 8U л 8V ) dХd У dz+ JJ u.л 8V dr. 8х 8х 8у 8у 8z 8z 8n n r В соответствии с количеством нумерованных узлов в конеч НОМ элементе п е локальная матрица Ае в системе (8.41) имеет размерность 4 х 4, причем интеrралы в элементах матрицы А е и компонентах вектора правых частей F e вычисляются с помо щью тех же принципов (теорем о среднем), что и в двумерном случае. Процедура включения TpexMepHoro элемента п е в ансамбль элементов, локальной матрицы жесткости А е в rлобальную А и локальноrо вектора правых частей F e в rлобальный вектор F остается такой же, как и в двумерном случае. 12*
............ 356 м етод оне'ЧН'btХ элементов [rл. VIП э 8.8. Оценка поrрешности меТQда конечных элементов 8.8.1. Поrрешность конечно--элементноrо метода ре.. шения задач для обыкновенных дифференциальных уравнений. rраницы поrрешности конечно элементноrо MeTO да оценим вначале на примере первой краевой задачи для обык HOBeHHoro дифференциальноrо уравнения BToporo порядка [29]: d 2 и Lu == + а(х)и == f(x); и(О) == и(1) == О, dx ( 8.68) rде а(х) известная положительная функция, удовлетворяю щая условию 0< (31 а(х) (32 < 00, х Е [0;1]. (8.69) Пусть конечно элементное решение имеет вид (М число конечных элементов) М+l и(х) и(х) == L umNm(x). т==1 (8.70) Для нахождения поrрешности решения (8.70) введем функ циональное пространство Соболева W;[a, Ь] пространство, для любоrо элемента и(х) KOToporo выполняется условие dcxи dx cx Е Lp[a, Ь] дЛЯ всех а n, (8.71) [1де Lp пространство функций, интеrрируемых со степенью р (интеrрируемых по Лебеrу). Для задачи (8.68) будем рассматри вать пространство Соболева Wi[O; 1] функций и(х) со скаляр ным произведением и нормой вида 1 (и(x),v(x)) == J (иv+ ; ) dx, о (и(х), и(х)) == lIи(x)II Vi == ! [и 2 + ( ) 2] dx. ' ( 8. 72 ) Здесь нижний индекс р == 2 указывает на то, что сама функ ция и(х) И ее первая производная (верхний индекс n == 1) дол жны быть интеrрируемы с квадратом. Таким образом, верхниЙ
9 8.8 ] OцeH a nО2решности метода оне'Чн'ЬLX элементов 357 индекс 1 определяет наивысший порядок непрерывной производ ной в подынтеrральном выражении. Например, нормы функций и1 == х2 И и2 == sin Х в простран стве Соболева Wi[O; 1] будут соответственно 1 IIUJIIWi[O;l] == [1 (х 4 + 4х 2 ) dX] 2 1 [ 1 ] 2 Ilu2I1wi[O;1] == J (sin 2 х + cos 2 х) dx . Введем далее M MepHoe подпространство sh функций у(х) Е о Е Sh С Wi, rде М == 1/ h, h шаr разбиения области Х Е [о; 1], а кружок над символом пространства W означает, что функции у(х) в rраничных точках Х == О и х == 1 обращаются в нуль. Рассмотрим класс функций, принадлежащих этому подпрост ранству. Во..nервъtх, это ли нейн о непрерывные rлобальные базисные функции Nm(x), m == 2, М, определяемые соотношениями (В.3), поскольку эти функции кусочно непрерывно дифференцируемы, т. е. интеrрал (В.72) существует, Nm(x) Е Wi[O; 1] и на rраницах т 2 Ж(Х) о . . . . т== з Х о О 1 1 1 З (Х) x l О о О . о . I .. I I 1 1 1 1 1 1 1 1 Х .. . . . .. . . .1. ... . . .... . . J.. . . ..... . . J... . ..... . . J.. . . .... . . . .1.. . . .... . . . .1.. . . . ...... .1. . . . _.. . . .. J. . . .... . . . .. : : : : : : 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 о о о о х т==М I т==l 2 3 4 м М+l х Рис. 8.14. rлобальные базисные функции Nrn(x) отрезка х Е [о; 1] они принимают нулевые значения (рис. 8.14). При этом базисные функции для rраничныIx узлов пока не уч тены.
358 Метод оне'ЧН'btх элементов [rл. VIII Во вторъtх, это линейная комбинация и( х) базисных ФУНК ций (8.70), поскольку в силу однородных краевых условий пер о Boro рода задачи (8.68) функция и( х) Е wi. В..третъих, функция и (х), интерполирующая функцию и(х) из задачи (8.68) и совпадающ ая с и(х ) в нумерованных узлах, то есть и (х т ) == и(х т ), m == 1, М + 1, поскольку и (х) на rpa ницах отрезка х Е [о; 1] также равна нулю и имеет кусочно непрерывные производные первоrо порядка. На основе этоrо можно заключить, что и разность у( х) == о == и (х) и(х) принадлежит подпространству sh С Wi. Таким о образом, к функциям у(х) Е wi можно отнести множество функций {Nm(x), и(х), и (х), и и}. о Пространство wi интересно тем, что если в качестве KOH о трольной функции взять элемент этоrо пространства v (х) Е wi, например базисную функцию N m (х ), то скалярные произведе ния, записанные на основе (8.68) и (8.70), будут иметь вид (Lи, у) == (f, у) , (8.73) (Lи, у) == (f, у) + (R, у), (8.74) rде R(x) невязка, являющаяся результатом подстановки (8.70) в (8.68). Для v == Nm(x) скалярное произведение (R, у) О в силу метода rалеркина взвешенных невязок и ортоrональности R( х ) и Nm(x). Тоrда, вычитая (8.74) из (8.73) (при (R, у) о), получим (Le, у) == о, (8.75) е == u и, причем можно показать, что (8.75) имеет место ДЛЯ любой функции у( х) из перечисленноrо множества функций про о странства wi. в методе конечных элементов оценку поrрешности будеМ сравнивать с оценкой поrрешности известных методов, например метода интерполяции. Тоrда в соответствии с линейным свойством скалярноrо про изведения имеем следующее равенство: (Le, е) == (Le, е + и и ) == (Le, и и ) + (Le, и и) . (8 76) .........
9 8.8 ] OцeH a nО2решности метода оне'Чн'ых элементов 359 Поскольку разность и и принадлежит подпростран о ству S h С W i, то в соответствии с (8.75) второе слаrаемое в пра вой части выражения (8.76) равно нулю и оно принимает вид (Le, е) == (Le, u и ) , или 1 1 J ( :: + а(х)е) edx == J ( :: + а(х)е) (и и ) dx. (8.77) о о После интеrрирования по частям первых слаrаемых в подын теrральных выражениях равенство (8.77) приводится к виду (с учетом однородных rраничных условий задачи (8.68)) 1 [ 2 ] 1 J ( : ) +ае2 dx==J[ :d (u u )+a(x)e(U U )]dX. о о (8.78) Обозначим левую часть в (8.78) через 1, тоrда на основе неравенства UПварца 1 1 ] и · vdx ( (] U 2 dX) 2 (] V 2 dX) 2 для любых и и v имеем 1 1 1 ( [! ( : ) 2 dx ] 2 . {! [ d (и и )] 2 dx } 2 + 1 1 + am (! e2dX) 2 . [! (и и) 2 dx] 2 (8.79 ) Из определения соболевской нормы (8.72) следует, что
......... 360 м етод оне'Чн'ых элементов [rл VIII 1 1 [ 1 2 ] "2 ( 1 ) 2" J ( : ) dx / 11e-llwi 1, J e- 2 dx / 11e-llwi 1. Тоrда из (8.79) находим 1 1Ie-lI w l х 2 1 1 Х [1 [ dd x (и и )] 2 dx] 2 + а тах [1 (и и )2 dx ] 2 1 mах(1, {J2) 11 lwi {1 [ d (и и )] 2 dx } 2 + 1 + [1 (и и )2 dx ] 2 mах(1, {J2) 11e-llwi Ilu u llWi' (8.80) Здесь /32 верхняя rраница коэффициента а(х) в оrраничениях (8.69). Третье неравенство в цепочке (8.80) основано на известной теореме о том, что среднее арифметическое двух неотрицатель ных выражений (а1 О, а2 О) не ниже их среднеrо rеометри ческоrо: (а1 + а2)/2;?= у а 1- а2. (8.81) На основе этоrо нераведства требуется доказать, что ai/ 2 + a /2 v2 (а1 + а2)1/2. (8.82) Действительно, прибавим к левой и правой частям (8.81) сумму (а1 + а2), получим 2. (а1 + а2) 2 у а1а2 + а1 + а2 == (ai/ 2 + a /2)2, откуда сразу следует (8.82) и третье неравенство в (8.80). ТакиМ образом, из (8.80) получаем верхнюю оценку для выражения /:
9 8.8 ] OцeH a nО2решности метода оне'Чн'ых элементов 361 1 1 == J [ ( : + ае 2 ) ] dx тах(1, {J2)J2 lIellwi lIu u llwi . о (В.В3) Для нижней оценки оператора 1 == (Le, е) заметим, что 1 == 1 [ ( ( :: ) 2 + a ) ] dx min(1,{J1).] [( ( : ) 2 + е 2 )] dx == о == m i n ( 1, 13 1) . 11 el1 2 , ( 8.84 ) wi rде 131 нижняя rpaHb коэффициента а(х) в (8.69). Из сравнения оценок (В.В3) и (В.В4) следует, что min(l, 131) .l\e11 2 тах(1, 132)J2 I\ell w l tlu u ll w l , 2 2 откуда Ilell == Ilu иll с Ilu u ll, с == J2 тах (1, (32) / min (1, 131) , (В.В5) т. е. норма поrрешности конечно элементноrо решения (8.70) не превышает нормы поrрешности uнтерnоляцuонной функции. Наконец, свяжем норму поrрешности конечно элементноrо решения и с размером h конечноrо элемента. Используем по rрешность линейной интерполяции по Лаrранжу и (х) в точке Х на отрезке [Xj l, Xj] (решение на каждом конечном элементе с помощью базисных функций (В 3) является линейной функ цией): "( ) h 2 'и и (х)1 == и , (х Xj 1)(X Xj) тах lu"(x)1 == 2. XE[Xj l,Xj] 2 == c 1j h 2 , Е (Xj l, Xj), (В.В6) d (и и (х)) dx и" ( ) 2! [(х Xj) + (х Xj 1)] 362 Метод оне'Чн'ых элементов [rл. VIII тах lu"(x)12h/2 c 2j h. (В.В7) XE[Xj l ,Xj] Интеrрируя поrрешности (В.В6) и (В.87) по всему отрезку х Е Е [о; 1] и выбирая максимальные на этом отрезке константы, получаем 1 J (и и )2 dx C1 h4 j О 1 2 J [ dd x (и и )] dx С2 h 2 · О Тоrда соболевская норма поrрешности интерполяционной формулы оценивается выражением Ilu u llwi == {1 (и и )2 + [ d (и и )] 2) dx } 1/2 (C1h4 + C2 h2 ) 1/2 сз h . (8.88) На основе (В.85) и (В.ВВ) заключаем, что поrрешность конечно элементноrо решения (В. 70) оценивается сверху Bыpa жением Ilu иll с з J2 . [тах (1, (32) / min (1, (31)] . h, (В.В9) т. е. имеет место первый порядок по шаrу, что соrласуется с ли нейностью конечных элементов для задачи (8.6В). 8.8.2. Поrрешность конечно...элементноrо метода ре.. u шения задач для уравнении в частных производ'" ных. Изложенный выше метод оценки поrрешности конечно элементноrо метода решения задач для обыкновенных диффе ренциальных уравнений леrко распространяется на уравнения в частных производных. Поrрешность конечно элементноrо метода для задач MaTe матической физики рассмотрим на примере следующей задачИ Дирихле для уравнения Пуассона в плоской области П + r: ( 8 2 и 82и ) Lu == + + а(х, у)и == q(x, у), (х, у) Е П, 8х 8у (8.90 ) и(х, у) == о, (х, у) Е r, (В.91 )
9 8.8 ] OцeH a nО2решности метода оне'Чн'ых элементов 363 в которой а(х, у) положительная функция, удовлетворяющая условиям о < 1'1 а(х, у) 1'2 < 00, (В.92) а оператор Lu положительно определен. Для задачи (8.90), (В.91) введем пространство Соболева wi функций и ( х , у) со скалярным произведением JJ ( 8и 8у 8и 8У ) (и(х, у), v(x, у)) == uv + ах ах + ау ау dxdy n и нормой Ilи(x, y)ll l == 2 (и(x,y),и(x,y)) == JJ [и 2 + ( : )2 + ( : )2]dXdY. n Повторяя выкладки, аналоrичные выкладкам для обыкно венных дифференциальных уравнений, вплоть до соотношения (В.77), находим J J [ ( : + : ) + а(х, у)е] . edxdy == n == J J [ ( : + : ) + а(х, y) . (и и ) dxdy. (8.93) n Применим к первым двум слаrаемым подынтеrральных BЫ ражений левой и правой частей равенства (В.93) первую формулу rрина, в которой криволинейный интеrрал по rранице r равен нулю, поскольку иlr о; иl r о; е == и и о, получим JJ [( )2 + ( )2 +ae2]dxdY== n JJ [ 8е 8 8е 8 -" ] == (и и) + (и и) + ае(и и) dxdy. 8х 8х 8у 8у n 364 м етод оне'Чн'ых элементов [rл. VII! Правую часть этоrо равенства оценим сверху с помощью неравенства Шварца, обозначив выражение в левой части Че рез 1: 1 [] J ( :: ) 2 dXdY] . {] J [ :х (и и )] 2 dxdy } + + [f J ( :: ) 2 dXd Y ] . { f J [ :у (и и )] 2 dxdy } + + 'У2 (fJ e 2 dXd Y ) . [JJ (и U )2 d X d Y ] (8.94) в соответствии с соболевской нормой имеем неравенства 1 [5 l ( :: ) 2 dXd Y ] 2 / lIellwi 1, 1 [5 l ( :: ) 2 dXd Y ] 2 / Ilellwi 1, 1 (5 l dXdY) 2 / Ilellwi 1. Используя эти неравенства, из (8.94) получаем 1 max(1,'Y2)11 IWi. {fJ [ :x (и и )]2 dXd Y } + + {fJ[ :y (u u )]2 dXdY} + [JJ(U U )2dXdY] . (895) Чтобы связать выражение в круrлых скобках неравенства (8.95) с соболевской нормой, воспользуемся неравенством а 1 / 2 + ь 1 / 2 + с 1 / 2 v3 (а + ь + с)1/2, ..........
9 8.9 ] Вариационн'ый nринциn в МКЭ 365 справедливым для любых неотрицательных а, Ь, с. Используя это неравенство, из (В.95) получаем оценку 1 УЗ max(1,1'2)11ellw{ (JJ {[ :х (и и )]2 + [ :у (и и )]2 + 1 + (и и )2} dXd Y ) 2 == УЗ тах (1,1'2) Ilejlw{ Ilu u ll w { или JJ[( ;: )2 +( ;: )2 +a(x,y)e2]dXdY v3 шах (1,1'2) Il e ll w l Ilи u ll W l. (8.96) 2 2 Используя положительную определенность оператора Lu, находим нижнюю rраницу интеrрала в левой части выраже ния (В.96): (Le,e) == JJ [( ;: )2 + ( :: )2 +a(x,y)e 2 ]dxd Y n min (1, 1'1) Ilell {. (8.97) Сравнение неравенств (В.96) и (В.97) приводит к оценке для нормы поrрешности Ilu u ll в пространстве Соболева: lI e ll w l D Ilи u ll W l, D == v3 шах (1,12) / min (1,1'1) , 2 2 (В. 98) из которой следует, что и для уравнений в частных производных поrрешность конечно элементноrо метода не превышает поrреш ности интерполяции с точностью до константы D. 8.9. Вариационный принцип в МК9 При решении краевых задач для дифференциальных ypaB нений с помощью вариационноrо метода необходимо строить такой функционал, минимум KOToporo достиrается на допусти мых функциях, удовлетворяющих уравнению Эйлера для этоrо 366 Метод оне'Чн'ых элементов [rл. VIII функционала, причем уравнение Эйлера совпадает с искомым дифференциальным уравнением. То есть минимум УПОМЯНУТоrо функционала достиrается на функциях, удовлетворяющих реШе нию исходной дифференциальной задачи. 8.9.1. Введение в вариационное исчисление. Вариа ционное исчисление связано с отысканием стационарных зна чений функционалов [26,27], представляющих собой определен ные интеrралы от специальным образом построенных функций и принимающих числовое значение при подстановке каждой KOH кретной функции в подынтеrральное выражение. Основная задача вариационноrо исчисления состоит в OTЫC кании такой функции F (х ), чтобы при произвольном бесконечно малом изменении этой функции д F (х) величина функционала (определенноrо интеrрала от этой функции) оставалась неизмен ной, т. е. функционал принимал стационарное значение. Рассмотримфункционал ь 1 == J F (х, <р, <Px)dx, а (8.99) rде х независимая переменная; ер (х) функция этой пере менной, ерх == dep / dx. Варьирование функционала / вызывается бесконечно малым изменением (варьированием) функции F (х): ь Ь дl == J дF (x)dx == J ( :: д<р + : д<Рх) dx. а а (8.100) Чтобы вынести за скобку подынтеrральноrо выражения в (8.100) вариацию дер, воспользуемся равенством ( d ) d 8 ерх == д dx == dx (д ер) , (8.101 ) после чеrо, проинтеrрировав второе слаrаемое в (8.100) по ча стям, получим 81 == J b [ 8F ( 8F )] д<рdх + ар д<р ь 8 dx 8 x 8 x а а (8.102)
98.9 ] Вариационн'ый nринциn в МКЭ 367 Функционал (8.99) принимает стационарное значение, если дl == О, откуда, в силу произвольности дер, имеем 8F d 8F О. 8 dx 8 x , (8.103) 8F (а) == 8F (Ь) == О 8'Рх 8'Рх (8.104) или дер (а) == дер (Ь) == О, (8.105) что соответствует постоянству функции ер на rраницах х == а, х == Ь, т. е. ер (а) == const1, ер (Ь) == const2. Рассмотрим теперь функционал от функции трех независи мых переменных в области V, оrраниченной rраницей r: 1 == J F (х, у, Z, <р, <рх, <ру, <pz)dV. v Произвольному бесконечно малому изменению функции F (х, У, z) соответствует вариация функционала (8.106) J ( 8F 8F 8F 8F ) дI == arp д<р + arpx д<рх + arpy д<ру + arpz д<рz dV. v Используя соотношение (8.101), получаем выражение J [ 8F 8F 8 8F 8 8F 8 ] дI == arp д<р + arpx ах (д<р) + arpy ау (д<р) + arpz az (д<р) dV. v (8.108) (8.107) Применяя ко второму слаrаемому формулу дифференциро вания произведения, а затем формулу Остроrрадскоrо rаусса, находим J 8F 8 J 8 ( 8F ) J 8 ( 8F ) (дер) dV == дep dV дерdV == 8 x ах ах 8 x ах 8х v v v == J n х : д<р dr J :х ( : ) д<рdV, (8.109) r v rде n х первый направляющий косинус нормали к rранице r.
368 м етод оне'Ч'Н/ых элементов [rл. VIII Таким образом, из (8.108) и (8.109) имеем следующее Bыpa жение: дl == J [ aF ( ) ( aF ) ( aF )] дсрdV + a ах a x ау a y az a z v J [ aF aF aF ] + n х arpx + nу arpy + n z arpz д<рdr. (8.110) r Стационарное значение функционала (8.106) достиrается при равенстве нулю подынтеrральных выражений в квадратных скобках равенства (8.110), т. е. получаем уравнение Эйлера aF [ ( aF ) + ( aF ) + ( aF )] о (8.111) a ах a x ау a y az a z с оrраничением aF aF aF nX a + nY a + nZ a == о. (8.112) x y z Соотношения (8.110) (8.112) соответствуют вариационной формулировке задач переноса тепла и массы. Действительно, рассмотрим функционал 1 == J F (<р, <рх, <РУ' <pz)dV == v 1 J [ ( a ) 2 ( a ) 2 ( a ) 2 ] == 2 Л хх ах + Л УУ ау + Л zz az 2Q<p dV. v (8.113) Тоrда для уравнения Эйлера (8.111) и оrраничений (8.112) имеем а ( a ) а ( a ) а ( a ) ) Лхх + ЛУУ + ЛZZ + Q == о, (8.114 ах ах ау ау az az a a a ( Л хх ах n х + Л УУ ау nу + Л zz az n z == О, 8.115) т. е. получаем стационарное уравнение теплопроводности с ис точниками Q в ортотропной среде с rлавными компонеНтами тензора теплопроводности Л хх , Л УУ ' Л ZZ и rраничное УСЛОвие BToporo рода на rранице r, оrраничивающей тело v.
9 8.9 ] Вариационн'ый nринциn в МКЭ 369 rраничное условие (8.115) автоматически удовлетворяется при задании функционала в форме (8.113) и поэтому называется естественным. 8.9.2. Конечно--элементный вариационный принцип на основе симметричноrо дифференциальноrо операто-- ра. Вариационный метод Релея Ритца. Если задан функ ционал (вариационный принцип), то, как правило, можно найти уравнение Эйлера. К сожалению, для дифференциальной задачи не всеrда можно построить функционал. Однако в одном важном случае, а именно в случае симметричноrо дифференциальноrо оператора, это можно сделать. Пусть дана дифференциальная задача L'P + р == о в П; (8.116) в <р + т == О на r, (8.117) rде L и В линейные дифференциальные операторы, а р и т известные функции. Пусть множество Ф функций () Е Ф непрерывно дифферен цируемых в области П + r, удовлетворяет на rранице r OДHOpOД ному краевому условию (8.117), т. е. в () == о на r. (8.118) Тоrда оператор L называется сu.м.метрU'ЧНЪt.м относительно множества Ф, если для двух элементов () и {} этоrо множества скалярное произведение удовлетворяет равенству ( (), L{}) == ({), L()) или J () L{) df! == J {) L(} df!, n n (8.119) т. е. оператор L са.мОСОnРЯ:JICеННъtи в П с однородным rранич ным условием на r. Симметричный оператор L называется nОЛО:JICuтелъно onpe делеННъt.м относительно этоrо множества функций Ф, если для
370 м етод оне'Чн'ых элементов [rл. VIII любоrо элемента () из данноrо множества ( (), L(}) == J () L(} df! О, n (8.120) rде равенство имеет место в том и только в том случае, коrда () = О в п. Например, ператор L == d2 / dx 2 на отрезке х Е [о; 1] и MHO жестве функций, удовлетворяющих условиям () (о) == () (1) == о, является симметричным и положительно определенным. Дей ствительно, для двух элементов () и {} после двойноrо интеrри рования по частям будем иметь J 1 ( d2 ) ( diJ ) 1 J 1 d(} d1'J () dx == () + dx == dx 2 dx О dx dx о о ( d(} ) 1 J 1 ( d 2 (} ) == о + {) dx о + {) dx2 dx. о (8.121) Так как 1 1 () diJ == {} d(} == О dx о dx о ' то «(), L{}) == ({), L()), что и требовалось доказать. Кроме Toro, заменяя в первом равенстве {} на (), получаем 1 1 J ( () :: ) dx == J ( : ) 2 dx О, о о (8.122) причем равенство нулю в (8.122) имеет место тоrда и только Tor да, коrда d() / dx == о, а это при однородных rраничных условиях () (О) == () (1) == О выполняется при () = о. Таким образом, оператор L == d2 / dx 2 о. Пусть дана задача (8.116), (8.117) и L симметричный опе ратор относительно множества ер Е Ф, удовлетворяющий OДHO родному краевому условию (8.118), а 'ф некоторая функция, для которой на rранице r выполняется неоднородное краевое ........
9 8.9 ] Вариационн'ый nринциn в МКЭ 371 условие в -ф + т == О на r. Тоrда функционал 1 == J (<р 1/;) [ L (<р 1/;) + L1/; + Р] df! n (8.123) принимает стационарное значение на решении ер краевой задачи (8.116), (8.117). Действительно, вариация функции ер (т. е. переход от ер к ер + + дер) определяет вариацию функционала (8.123): дI == J {д<р [ L (<р 1/;) + L1/; + Р] + (<р 1/;) L (д<р)} df!. n (8.124) в силу симметричности оператора L на множестве функций, удовлетворяющих (8.118), выполняется равенство J (<р 1/;) L (д<р) df! == J д<р L (<р 1/;) df!. n n Тоrда из (8.124) имеем (8.125) дI == J { д<р [ L (<р 1/;) + L1/; + Р] + д<рL (<р 1/;) }df! == n == J д<р [L (<р 1/;) + L1/; + р] df! == J д<р (L<p + р) df!, (8.126) n n и так как д ер произвольно, то для стационарности функционала (8.123) (т. е. при дl == О) выполняется равенство Lep + р == О на П, (8.127) т. е. получается исходное дифференциальное уравнение (8.116). На основе понятия симметричноrо оператора L рассмотрим варuаЦUО'Н'НЪtи .метод Релея Рuтца приближенноrо решения за дачи (8.116), (8.117), в которой оператор L симметричен OTHO сительно множества функций, удовлетворяющих краевому усло вию (8.118). Для этоrо выберем функцию -ф, удовлетворяющую
372 м етод оне'Чн'ых элементов [rл. VIII неоднородным краевым условиям (8.117) задачи, т. е. В -ф + r == О на r, (8.128) и определим систему базисных функций N т, m == 1, М, такую что в N m == О на r. Тоrда аппроксимация для функции ер имеет вид м ер ер == -ф + L а т . N m , т==1 а краевые условия (8.117) на r выполняются автоматически для всех значений постоянных а1, а2, ..., ам. Метод Релея Ритца состоит в получении для функционала (8.129) (8.130) 1 == J (ер 1/;) [ L (ер 1/;) + L1/; + Р] df! n стационарноrо значения относительно параметров а1, а2, ... ..., ам. Подставляя (8.130) в (8.131), находим (8.131) м м 1 == L L (ща т /2) J N,LNmdf!+ [==1 т==1 n м + L щ J N, (L1/; + р) df!. (8.132) [==1 n Выражение (8.132) принимает стационарное значение, если дI д/ == д1 == о. да! да2 дам Вычислив эти производные от (8.132), приходим линейных уравнений относительно al, а2, . . . , ам: м 2: а т f N[LN m dП == f N[ (L-ф + р) dП, т==1 n n l == 1, М. (8.133) к системе (8.134)
98.9 ] Вариационн'ый nринциn в МКЭ 373 Эта система в матричной форме записывается так: к а == f, (8.135) rде К симметрическая матрица. Компоненты матрицы К и вектора f вычисляются следую щим образом: k 'm == J N,LNmdf!j n 11 == J N , (L1/; + р) df!. n (8.136) в системе (8.134) весовые функции N[ совпали с базисными, что тождественно методу rалеркина. Таким образом, методы Релея Ритца и rалеркина совпадают для симметричных опе раторов L. Разумеется, метод rалеркина справедлив для всех операторов и в этом смысле является общим. 8.9.3. Решение задач с помощыо конечно--элементно-- ro вариационноrо принципа. Рассмотрим конечно элемент ный вариационный метод на примере решения задачи d2 dx 2 ер == о, х Е (о; 1) ; (8.137) d (О) О dx + q , х == о; (8.138) d l) + а (<р (1) {J) == О, х == 1. (8.139) Составим следующий функционал, удовлетворяющий этой задаче: 1 == ] [ ( : ) 2 + <р2] dx [q<p (<р {J)2] . О Действительно, вариация функционала (8.140) приводит к COOT ношению (с учетом интеrрирования по частям) (8.140) J 1 ( d 2 ) d 1 дI== dx +<р д<рdх+ d: д<р о [q а(<р {J)]д<р, о
""""'""""'" 374 м етод оне'Чн'ых элементов [rл. VIII причем стационарное значение функционала достиrается на функциях ер, удовлетворяющих задаче (1.137) (1.139). Предста вим решение в виде линейн ой комб инации кусочно линейных базисных функций N m , т == 1, М + 1 (8.3), М+l еР (р == L epmNm т==1 (8.141 ) и, подставив ero в функционал (8.140), получим l(ер1,... ,ерМ+1)== 1 [ ( М+1 ) 2 ( М+1 ) 2 ] == J d L <PmNm + L <PmNm о т 1 т 1 dx [ М+l ( М+1 ) 2 ] q <PmNm <PmNm {J . (8.142) Необходимыми условиями минимума функции 1 ( ер1, . . . . . . , ер М+1) мноrих переменных является равенство нулю ее част ных производных по переменным ер[, l == 1, М + 1: а! == О, l == 1, М + 1 . 8 l (8.143) в результате получаем следующую систему М + 1 ли нейных алrебраических уравнений относительно ер[, l == 1, М + 1: 1 ( dN М+1 dN М+1 ) [ dx l 1=1 <Рт dx Тn + N, 1=1 <PmNm dx qN , + ( M+l ) + aN, <PmNm {J == О, l == 1, М + 1. (8.144) в силу Toro что базисные функции N т, m == 1, М + 1, в виде равенств (8.3) кусочно линейны, выражения (8.144) не равнЫ нулю на отрезках расчетной области х Е [о; 1], rде не равна нулю соответствующая базисная функция.
9 8.9 ] Вариационн'ый nринциn в МКЭ 375 Поэтому, разбив область [о; 1] на М одномерных элементов и использовав аддитивное свойство определенноrо интеrрала, будем иметь X М J 3 ( dN€ М+1 dN€ М+1 ) е d: <p dx Тn + N{ 1 <р N:п dx qN 1 + Х. ( М+1 ) + aN М+1 <PmNm {J == О, l == 1, М + 1, ( 8.145) rде xi, х; соответственно координаты левоrо и правоrо HY мерованных узлов элемента п е , причем для внутренних HYMe рованных узлов третье и четвертое слаrаемые равны нулю, для узла l == 1 третье слаrаемое равно q, а четвертое нулю и, Ha конец, для l == М + 1 третье слаrаемое равно нулю, а четвертое выражению (аерМ+1 а(3). Для конечноrо элемента с локальными номерами i и j все интеrралы под знаком суммы в (8.145) будут равны нулю для . . элементов, не ассоциируемых с узлами 'l и J, т. е. для системы алrебраических уравнений Kep==f, м k 1m == :Е kim' е==l М fl == 2: f{, е==l (8.146) rде kim == О, если l, m =/: i,j; X е е J 3 ( dN: dNJ е е ) k ij == k ji == dx dx + N i N j dx, X если l == i, m == j или l == j, m == i; k€!. == kf!. == X J j [( dN: ) 2 + ( Nf!- ) 2 ] dx зз dx , Xi
376 Метод 'К;оне'ЧНъtх элементов [rл. VIII если l == m == i или l == m == j. Таким образом, в каждый элемент k lm матрицы К и KOM понент fl вектора f дают вклад только те конечные элементы, которые ассоциируются с rлобальными номерами узлов l и m УПРАЖНЕНИЯ 1. Используя подходящую систему базисных функций в виде мноrочленов, аппроксимировать функцию ер == 1 + sin (7rx/2) на отрезке [о; 1]. Применить методы коллокаций и rалеркина. 2. Для одномерной стационарной задачи теплопроводности d 2 ep/dx2 + ер + 1 == о; ер (О) == о; dep (l)/dx == ep найти приближенное решение методом rалеркина, исследовать скорость сходимости путем сравнения с аналитическим pe шением. 3. Рассмотреть функционал f [ Л ( дер ) 2 л ( дер ) 2 ] J (r.p) == 2" ах + 2" ау Qr.p dn n f [а/2 . <р2 qr.p] dr, r rде л, Q, ер суть функции только х, у. Найти уравнение Эйлера и вид естественных краевых условий. 4. Доказать, что следующие операторы являются симметрич ными и положительно определенными: а) L == d2 / dx 2 относительно функций, удовлетворяющих условиям dep (O)/dx + аер (О) == о; d'P (l)/dx + Ьер (1) == о; а < о; ь > о; б) Lep == d 2 [а (х) d 2 ep / dx 2 J / dx 2 + Ь (х) VJ относительно MH жества функций, удовлетворяющих условиям ер == dep / dx == О на х == О и на х == 1; 8.9 ] Вариационнъt'й принцип в МКЭ 377 в) оператор д 4 /дх 4 + 2д 4 /дх 2 д у 2 + д 4 /д у 4 в области 11, оrраниченной замкнутой rраницей r относительно функций, yд влетворяющих условию ер == дер / дп == О на r. 5. Решить задачи конечно элементным вариационным MeTO дом: а) d 2 ep/dx2 + exp( x) == о; ер (о) == о; dep (l)jdx == 1; б) d 4 ep / dx 4 == sin пх; ер (О) == ер (1) == о; drp (О) == drp (1) == о. dx dx 6. Конечн элементным методом rалеркина решить задачи в квадрате х Е [о; 1], у Е [о; 1], разбив ero на 18 треуrольных конечных элементов: а) 8 2 и 8 2 и + o 8х 2 8у2 , и(х, о) == х, и(х, 1) == х 2 + 1, и(О, у) == у, и(l, у) == у2 + 1; б) 8 2 и 8 2 и + o 8х 2 8у2 , и(х, о) == х, и(х, 1) == х 2 + 1, и(О, у) == у, и(l, О) + и(l, О) == 1; 8х 8и 8 2 и 8 2 и в) 8t == 8х 2 + 8 у 2 '
........... 378 Метод 'К;оне'Ч,'НЪtХ элементов [rл. VIII и(х, О, t) == х, и(х, 1, t) == х 2 + 1, и(О, у, t) == у, и(l, у, t) == у2 + 1; и(х, у, О) == 1.
r л А В А IX МЕТОД rрАничныIx ЭЛЕМЕНТОВ РЕШЕНИЯ MHOrOMEPHbIX СТАЦИОНАРНЫХ ЗАДАЧ МАТЕМАТИЧЕСКОЙ ФИЗИКИ Проrрамма Метод r'раничных элементов (rэ) решения задач математической физики. Использование фундаментальных решений, основной инте r'ральной формулы rрина и rраничноrо интеrральноrо уравнения. Формирование rэ, базисных функций и итоrовой СЛАУ. Достоинства и недостатки метода rэ. Метод rраничных элементов основан на представлении Kpa евой задачи для уравнений Лапласа или Пуассона в виде rpa ничноrо интеrральноrо уравнения с использованием во второй формуле rрина фундаментальных (без краевых условий) реше ний уравнения Лапласа [30]. Известно, что фундаментальными решениями уравнения Ла пласа Д U == О являются функции и(М) == ln R(M Mw) == ln J (XM xW)2 + (УМ YW)2 (9.1) в двумерном случае и 1 и(М) == R(M, Mw) == ( J (XM xW)2 + (УМ YW)2 + (ZM zw)2) l (9.2) в трехмерном случае. В (9.1), (9.2) R(M, Mw) расстояние между точкой расчетной области М Е !1 и rраничной точ кой Mw Е r. Применяя к фундаментальному решению (9.2) и к искомой функции U вторую формулу rрина, получаем в трехмерном случае тождество, называемое основной uнте2ралъной фор.мулой rpUHa:
380 Метод 2рани'Ч,'НЪtх элементов решения стационарНъtХ зада'Ч, [rл. IX и(M)== JJ[ 1 . 8и(Mw) 47r R(M,M w ) 8п [' 8 ( 1 )] JJJ Ди(М') и(Mw) {) n R(M, Mw) dr(Mw) R(M, М') dn, n (9.3) rде n направление внешней нормали к поверхности r (для внутренней нормали знак в тождестве меняется на противопо ложный). Если и удовлетворяет уравнению Лапласа, то объем ный интеrрал в (9.з) равен н)"'лю, а для уравнения Пуассона этот интеrрал известен и в дальнейшем это слаrаемое paCCMaT риваться не будет. Здесь М' Е 11 (М i= М') переменная точка в области 11. Для произвольной rраничной точки Pw Е r в (9.з) необходи мо перейти к пределу при стремлении внутренней точки М Е 11 к точке Pw Е r. Получим следующее u'Нте2ралъное урав'Не'Ние: и(Pw) == 2 JJ [ R(PW MW) {) и :w) r и(Mw) {){)n ( R(Pw 1 , M w ) ) ] d r, (9.4) называемое 2ра'Нu'Ч'Нъt.м инте2ралъ'Нъt.м уравне'Ние.м. Если задано rраничное условие l ro рода u(M w ) == <р(х, у, z), Mw Е r, (9.5) то значения u(Pw) и u(Mw) в (9.4) известны, поэтому из (9.4) 8и(M w ) можно определить значения 8п ' которые, будучи подстав ленными в (9.3), явно определяют значения и(М), М Е 11, в нуж ных точках расчетной области. При задании rраничноrо условия BToporo рода 8 и(M w ) 8 п == <р(х, у, z), Mw Е r, (9.6) или TpeTbero рода 8и(M w ) ) 8п + au(M w ) == <р(х, у, z), Mw Е r, (9.7
rл. [Х] Метод 2рани'Ч,Нъtх элементов решения стационарНъtХ зада'Ч, 381 8и(M w ) нормальная производная на rранице r определяется 8п или явно из (9.6) или через u(Mw) из (9.7). Подставляя затем 8и(M w ) 8п в (9.4), решаем полученное интеrральное уравнение относительно u(Mw), в результате чеrо на rранице r будут известны и и(Mw), и 8и w) . Подставляя затем их в (9.3), получаем явное выражение для определения и(М), М Е п. В двумерном случае основная интеrральная формула rрина и rраничное интеrральное уравнение имеют соответственно сле дующий вид: и(М) == ] [ ln 1 8и(M w ) 27r R(M, Mw) 8п [' и(Mw) :n (ln R(M Mw) )]dr(Mw), (9.8) 1 J[ 1 8и(M w ) и(Pw) == 7r 'П R(Pw, Mw) 8п [' и(Mw) :п (ln R(Pw Mw) )] dr(Mw). (9.9) Таким образом, достоинством .метода 2рани'ЧН'ЬtХ uнте2ралъ H'btX уравненuй является снижение на единицу порядка диф ференциальноrо уравнения. К недостаткам можно отнести необходимость отыскания фундаментальных решений, которые известны не для всех уравнений математической физики. В соответствии с .методо.м 2раНU'ЧНЪtХ эле.ментов для числен Horo решения rраничноrо интеrральноrо уравнения (9.9) в ДBY мерном случае rраница r разбивается точками Pw к Е r, k == == 1, n , на n частей (rраничных элементов дr k ), причем уз лы с номерами 1 и n + 1 совпадают. Искомая функция и( Pw ) аппроксимируется следующей линейной комбинацией базисных функций Nk(ep): n u 11 == L UkNk(ep), k==l rде коэффициенты uk линейной комбинации суть узловые зна чения искомой функции на rранице r, а ер полярный уrол радиуса вектора, соединяющеrо каждую точку PWi Е r, i == 1, n , (9.10) 382 Метод 2раниЧНъtх элементов решения стационарНъtх задач [rл. IX как центра локальной полярной системы координат, с точка м-и M Wk , k == 1, n , k f=. i. В качестве базUс'Нъtх фУ'Н'К;ЦUЙ N k , k == 1, n , рассматриваются кусочно линейные функции N k == ('Р 'Pk l)/('Pk 'Pk l), <Pk l <Р 'Pk; ('Pk+l 'P)/('Pk+l 'Pk), 'Pk 'Р 'Pk+l; (9.11 ) О, 'Р < 'Pk l, <Р > 'Pk+l, если за нумерованные узлы k принять точки разбиения, или кусочно постоянные функции { 1, N k == О, 'Pk l 'Р 'Pk; (9.12) 'Р < 'Pk l, 'Р > 'Pk, если за нумерованные узлы принять точки P k , лежащие в reoMeT рических центрах rраничных элементов rk. Именно последний вид базисных функций, как более простых, будет использован в данной rлаве. Представляя криволинейный интеrрал в rраничном инте rральном уравнении (9.9) в виде суммы по rраничным элемен там: 7r и(PwJ f. f {U(M wk ) аа п [ln R(Pwp M Wk )] k==l, kf. Llr k 8U( MW k) } lnR(Pwi,Mwk) 8п dr(Mw) ==0, i==l,n, (9.13) и подставляя в (9.13) вместо и линейную комбинацию (9.10), получаем систему линейных алrебраических уравнений относи тельно U Wk , k == 1,n . Рассмотрим применение метода rраничных элементов для численноrо решения стационарной задачи теплопроводности в мноrосвязных областях, которая формулируется в виде сле дующей краевой задачи для квазилинейноrо уравнения тепло.. проводности (рис. 9.1): 8 ( 8и ) 8 ( 8и ) ах Л(и) ах + ау Л(и) ау == о, (9.14) I
rл. IX] Метод 2раниЧНъtх элементов решения стационарНъtх задач 3В3 O:Wl (Uel 'UWl) Л(U) Wl ==0 , (9.15) аи aW2(U e 2 U W2 ) + л(u) ап W2 == о. (9.16) Поскольку использование для решения интеrральной форму лы rрина (9.8) и rраничноrо интеrральноrо уравнения (9.9) пред у о х Рис. 9.1. Разбиение rраницы мноrосвязной области полаrает линейность задачи, необходимо задачу (9.14) (9.16) ли неаризовать, для чеrо используется следующая замена искомой переменной, называемая подстановкой Кирхrофа: и Л == J Л( )d . о ( 9.17) Тоrда ( Ч U ) ди ) == [ Ч U ) ди дЛ ] ах ах ах ал ах == [ л(u) dUдЛ ] == [ Л(U) ( dл ) l ал ] ах dЛ ах ах dи ах а 2 л , ах ( Л( и) д'И ) ау ау а 2 л , ау
384 Метод 2раниЧНъtх элементов решения стационарНъtх задач [lЛ. IX и уравнение (9.14) трансформируется в следующее уравнение Лапласа: а 2 л а 2 л 8х2 + 8у2 == о. (9.18) В краевых условиях (9.15), (9.16) подстановка (9.17) линеари зует слаrаемое с нормальной производной искомой функции, oд нако линейные члены становятся нелинейными. Для сохранения линейности этих слаrаемых примем в начальном приближении л(u) постоянным и равным Лс. Тоrда из (9.17) имеем Л u == Ас ' (9.19) и краевые условия (9.15), (9.16) будут трансформированы следу ющим образом: ал O:Wl (Uel Л W1 / Ас) 8 n == о, Wl (9.20) ал O:W2 (и е 2 Л W2 / Ас) + 8 n == о. W2 Если решение Л( х, у) в точке (х, у) линейной третьей краевой задачи (9.18), (9.20), (9.21) для уравнения Лапласа подставить в (9.17) и после интеrрирования решить соответствующее алrеб раическое уравнение, степень KOToporo на единицу выше степени функции л(u), то получим значение искомой функции и(х, у) в той же точке. При этом в радикалах решается уравнение степени не выше четвертой: (9.21) 4 3 2 Л аои + al и + а2 и + азu + а4 == , (9.22) что соответствует заданию л(u) в виде мноrочлена степени не выше третьей. Итак, решается стационарная задача (9.18), (9.20), (9.21) Me тодом rраничных элементов с использованием базисных функ ций (9.12) в мноrосвязных областях, представленных на рис. 9.1. Всякая функция Л(х, у), непрерывная вместе с первыми про изводными в замкнутой области n + rw, rде rw == rWl + rW2 достаточно rладкая r'раница, и имеющая вторые производные внутри П, удовлетворяет основной интеrральной формуле rрина
lЛ. IX] Метод 2ранuчн'ых элементов решения стационарнъtх задач 385 (9.8) и rраничному интеrральному уравнению (9.9), которые для задачи (9.18), (9.20), (9.21) имеют вид А(М) == 2 J [A(M w ) :п (lnR(M, Mw)) r l R ( M М ) 8Л(МW) ] dr ( м ) n , W 8п w , (9.23) A(Pw) == J [A(M w ) :п InR(P w , Mw) r 8 Л(М w ) ] ln R(Pw, Mw) 8п dr(M w ). ( 9.24 ) Упростим подынтеrральные выражения в (9.23), (9.24), для чеrо введем локальную полярную систему координат с центром у N о х Рис. 9.2. Локальная полярная система координат в rраничной точке Pw, полярным расстоянием r R(Pw, Mw) и уrлом ер (рис. 9.2). Тоrда в (9.24) первое слаrаемое подынте rральноrо выражения преобразуется следующим образом (rw = r(Mw)): 8 18т Л (МW) 8 (lnr)drw == Л (МW) 8 drw == п r п 13 В.Ф. Формалев, д.л. Ревизников 386 Метод 2раниЧН'ЬtХ элементов решения стационарНъtх задач [rл IX == Л(М w )! cos( r , n ) v r2 + (dr jdep)2 dep == r == Л ( М ) r .Jr 2 + (dr/dr.p)2 d == Л ( М ) d W r .J r 2 + (dr/dr.p)2 ер W ер, (9.25) так как из равенств х == r . cos ер, у == r . Slll ер, diw == V dx 2 + dy2 следует, что ах ах . dx == д r dr + дср dep == cos ер dr r . sш ер dep; ау ау . dy == д r dr + д r.p dep == sш ер dr + r . cos ер dep; drw == V dr 2 + r 2 dep2 == J т 2 + (dr / dep)2 dep. (9.26) Кроме этоrо, если элемент касательной к дуrе в точке Mw определяется выражением (9.26), то отрезок нормали Mw N име ет длину IMwNI == v r 2 + (dr/dep)2 и, следовательно, ar r == cos( r n ) == ап ' IMwNI .J r 2 + (dr/d<p)2 Таким образом, из (9.26), (9.27) следует (9.25). Используя выражение (9.25) и краевые условия (9.20), (9.21) в rраничном интеrральном уравнении (9.24), получаем это уравнение для rpa ничных точек Pw в следующем виде: r (9.27) 1 f 1 f а Л(РW) == Л(Мw)dер lnr (ЛсU е Л(Мw)]drw, п п Ас rw rw ( 9.28 ) rде ct w == {a W1 ,a W2 }' U e =={U e l,U e 2}, r W =={iWl,rW2}' Разобьем rраницу rw == rWl + iW2 мноrосвязной расчетной области на n rраничных элементов дriv, i == 1, n , и будем BЫ числять с помощью формулы (9.28) функцию Л в нумерованныХ
rл. IX] Метод 2рани'ЧНъtх элементов решения стацио'Н,арнъtх зада'Ч 387 узлах P Wi , i == 1, n , находящихся в середине rраничных элемен тов дriv. Количество rраничных элементов на наружной rрани це W 1 принимаем равным нескольким десяткам, уменьшая шаr разбиения в местах увеличения кривизны наружной rраницы. На каждой из внутренних rраниц W 2 принимается до десяти rраничных элементов, но не меньше четырех. Используя аддитивное свойство криволинейноrо интеrрала, заменяем интеrралы в (9.28) суммами интеrралов по rраничным элементам дriv и считаем веЛИЧИНЬJ aw, и е , Л(Р w ) посто янными В пределах каждоrо rраничноrо элемента. Получаем следующую систему n алrебраических уравнений относительно значений функции Л(Р wi ) Л Wi , i == 1, n : 7rЛ Wi + C }i[ l + k==it.iofn) (аkЛWk) == ( i l'i:Pl N ) + k==i iofn (b k ), i == 1, n, (9.29) rде 'Pk+l/2 ak == J d<p + a;:k J lnr. drw, 'Pk 1/2 Llr bk == a Wk Uek J In r . drw. Llr в выражениях (9.29) для каждой зафиксиро ванной точки i ro уч астка (i == 1, n ) пробеrаются все k (k == 1, i 1, i =f. 1 и k == i + 1, n, i f.: n) срединных точек M wk , за исключением точки P wi . При этом уrол <р изменяется от О ДО 1Т. Вычисление интеrралов в коэффициентах ak, b k можно осуществить с помощью квадратурных формул трапеций или Симпсона. Система (9.29) является системой с наполненной матрицей (т. е. очень мало нулевых элементов матрицы системы). Для ее решения можно использовать как прямые, так и итерационные методы. 13*
388 Метод zрани'Ч,н'ых элементов решения стационарНъtх зада'Ч, [lЛ. IX Результатом решения системы (9.29) будет распределение функции A wi , i == 1, n , на rранице rw расчетной области. rранично элементная аппроксимация основной интеrральной формулы rрина (9.23) будет аналоrична аппроксимации (9.29) с той лишь разницей, что вместо коэффициента 1/?Т при криво линейном интеrрале будет стоять коэффициент 1/2?Т, а значения функций A(M w ), aA(Mw)/an уже известны из решения систе мы алrебраических уравнений (9.29) и краевых условий (9.20), (9.21). Таким образом, получаем явные выражения для опреде ления Л(М), М Е П, в следующем виде: n n Л(М) == '" (аkЛWk) '" b k , М Е П. 2п 2п k l k l Здесь в коэффициентах ak, b k уrлы ер это уrлы между линиями М M wk , соединяющими точку М Е n с точками M Wk Е Е rw, k == 1, n , и осью х, которые изменяются от О ДО 2?Т. После определения функции А в области n + r w из подста новки (9.17) определяется искомая функция и(х, у) в каждой точке расчетной области. Например, если л(u) задана в виде мноrочлена третьей степени (9.30 ) л(u) == аоu з + alu 2 + а2и + аз, то в каждой точке расчетной области необходимо решить алrеб раическое уравнение четвертой степени а О и 4 + а1 uЗ + а 2 и 2 + азu == А(М), М Е n + r, 432 которое можно решить в радикалах [30]. В результате распределение функции u (х, у) в области n + + r будет определяться в первом приближении, поскольку rpa ничные условия (9.20), (9.21) учитывали постоянное значение коэффициента Л С ' В соответствии с этим будем обозначать это решение верхним индексом (1) u(l): (соответственно A(l»). Для определения BToporo приближения Л (2) (соответственно и(2») разложим функцию А(2)(и) в ряд Тейлора в OKpeCTHO сти u(l), оставив в нем только линейные члены: dЛ (1) л( 2 )(и) == ЛС l ) + du Ди + О(ди 2 ). (9.31)
rл. IX] Метод 2рани'Чнъtх элементов решения стационарНъtх зада'Ч 389 Полаrая здесь ДU := u(2) u(1) := (Л (2) Л (1») / dЛ (1) , dи получаем и(2) и(l) Мl) + М2) л(и(l») л(и(l») . Применим теперь к производным исходной задачи (9.14) (9.16) подстановку Кирхrофа (9.17), а вместо искомой функции в краевых условиях (9.15), (9.16) приближение (9.32), получим следующую третью краевую задачу для уравнения Лапласа OT носительно функции Л (2): (9.32) а 2 Л (2) а 2 л (2) 2 + 2 := О, ах ау (х, у) Е П; (9.33 ) а(2) ( и(2) Л (2» ) := а л (2) Wl е1 Wl а n Wj (х, у) Е r W1 ; (9.34 ) (2) ( (2) Л (2» ) а л (2) a W2 и е2 W2 а n ' W2 (х, у) Е r W2 , (9.35) rде а(2) := а / л ( u(l) ) . а(2):= а / л ( u(l) ) . Wl Wl Wl' W2 W2 W2 ' и(2) := Л ( u(l) )( и и(1) ) + Л (1) . е1 Wl еl Wl Wl ' и(2) := Л ( u(l) )( и и(l» ) + л (1) . е2 W2 е2 W2 W2 ИЗ сравнения задачи (9.33) (9.35) с задачей (9.18), (9.20), (9.21) следует, что для определения Л (2) формально можно ис пользовать решение (9.29) для точек на rранице rw и реше ние (9.30) для внутренних точек области П, заменяя коэффи циенты ak, bk следующим образом: 'Pk+l/2 ak == J d'P + o:W k J lп r . drw, 'Pk 1/2 r
390 Метод 2рани'Чн'Ь#'х элементов решения стационарн'Ь#'х зада'Ч [rл. IХ (2) (2) f b k a Wk U ek ln r . dr w , rk w rде а(2) == { а(2) а(2) } . W Wl ' W2 ' и(2) == { и(2) и(2) } . е еl' е2 ' rw == {r w1 , rW 2 } . Искомая функция и(2) в точках М Е n + r определяется путем решения уравнения (9.17).
СПИСОК ЛИТЕРАТУРЬI 1. Де.мuдовuч Б. П., Маро'Н И. А. Основы вычислительной MaTe матики. М.: rиФмл. 1963. 2. Са.марс'К;ий А. А., Нu'К;олаев Е. С. Методы решения разност ных уравнений. М.: Наука. 1978. 3. Бахвалов Н. С. Численные методы. М.: Наука. 1975. 4. Форсайт Д ., Молер К. Численные методы решения систем линейных алrебраических уравнений. М.: Мир, 1969. 5. КрЪtлов В. И., Боб'К;ов В. В., Мо'Настъtр'Нъtй п. И. Вычисли тельные методы. М.: Наука. 1976. Т. 1, 2. 6. Плис А. И., Слuвu'На Н. А. Лабораторный практикум по BЫC шей математике. М.: Высшая школа. 1983. 7. Турча'К; Л. И. Основы численных методов. М.: Наука. 1980. 8. КОр'Н r., КОр'Н Т. Справочник по математике для научных работников и инженеров. М.: Наука. 1968. 9. Сборник задач по математике для ВТУЗов. Методы опти мизации, уравнения в частных производных, интеrральные уравнения/ Под. ред. Ефu.мова А. В. М.: Наука. 1990. 10. Са.марс'К;ий А. А., rулu'Н А. В Устойчивость разностных схем. М.: Наука. 1973. 11. Са.марс'К;ий А. А. Теория разностных схем. М.: Наука. 1983. 12. Са.марс'К;ий А. А., Попов ю. п. Разностные методы решения задач rазовой динамики. М.: Наука. 1980. 13. Са.марс'К;ий А. А., rулu'Н А. В. Численные методы. М.: Hay ка. 1989. 14. Я'Не'Н'К;о Н. Н. Метод дробных шаrов решения MHoroMepHblx задач математической физики. Новосибирск: Наука. 1967.
392 Списо'К; литературы, 15. Саулъев В. и. Интеrрирование уравнений параболическоrо типа методом сеток. М.: Физматrиз. 1960. 16. Мар'Чу'К; r. И. Методы расщепления. М.: Наука. 1988. 17. Фор.ма.лев В. Ф. Экономичный абсолютно устойчивый алrо ритм численноrо решения двумерных уравнений параболиче cKoro типа. / /Сборник научных трудов «Численные методы решения задач аэродинамики». М: Издательство МАИ. 1987. С. 56 59. 18. Фор.ма.лев В. Ф., ТЮ'К;U'Н О. А. Экономичный абсолютно устой чивый метод расщепления с экстраполяцией численноrо pe шения задач, содержащих смешанные дифференциальные операторы. / /Вычислительные технолоrии. 1995. Т.4. NQ 10. С. 290 299. 19. Фор.ма.лев В. Ф., Воробъева О. Р. Метод переменных направ лений с экстраполяцией численноrо решения задач тепло проводности с тензором теплопроводности и конвективными членами. М: Вестник МАИ. 1997. Т. 5. NQ 1. С. 41 48. 20. Фор.ма.лев В. Ф., ТЮ'К;U'Н О. А. Неявный экономичный Me тод численноrо решения параболических задач, содержа щих смешанные производные / /Математическое моделиро вание.1996. Т.8. NQ 6. С. 27 32. 21. Фор.ма.лев В. Ф., ТЮ'К;U'Н О. А. Неявный метод дробных шаrов с расщеплением смешанных дифференциальных операторов./ / Вычислительные технолоrии. 1998. Т.3. jVQ 6. С. 82 91. 22. Березu'Н И. с., Жuд'К;ов Н. П. Методы вычислений. М.: Ha ука. 1960. Т. 2. 23. Котляр я. М. Методы математической физики в прикладных задачах. М.: Издательство МАИ. 1978. 24. Пuру.мов У r. Численные методы. М.: Издательство МАИ. 25. rоду'Нов с. К., Забродu'Н А. В., Ива'Нов Н. Е. u др. Численные методы решения MHoroMepHbIx задач rазовой динамики. М.: Наука. 1976. 26. Се2ерлu'Нд Л. Применение метода конечных элементов. М.: Мир. 1979.
Списо'К; лиmераmурЪt 393 27. Зе'Н'К;евu'Ч О., МОр2а'Н К. Конечные элементы и аппроксима ция. М.: Мир. 1986. 28. Фор.ма.лев В. Ф. Метод конечных элементов в задачах тепло обмена. М.: Издательство МАИ. 1991. 29. ШU Д. Численные методы в задачах теплообмена. М.: Мир. 1988. 30. rалuцейс'К;uй Б. М., Соверше'Н'НЪtЙ В. Д., Фор.малев В. Ф. u др. Тепловая защита лопаток турбин. М.: Издательство МАИ. 1996. 31. Тихо'Нов А. Н., Са.марс'К;ий А. А. Уравнения математической физики. М.: Наука. 1972.
оrЛАВЛЕНИЕ 1. Численные методы алrебры и анализа r л а в а 1. Элементы теории поrрешностей . . . . . . . . . . . . r лава 2. Численные методы алrебры . . . . . . . . . . . . . . . 92.1. Численные методы решения СЛАУ .................. 2.1.1. Метод raycca (17). 2.1.2. Метод проrонки (26). 2.1.3. Обоснование метода проrонки (31). 2.1.4. MaT ричная проrонка (33). 2.1.5. Нормы векторов и MaT риц (34). 2.1.6. Итерационные методы решения СЛАУ. Ме.. тод простых итераций (38). 2.1.7. Метод Зейделя реше ния СЛАУ (45). 2.1.8. Метод Зейделя для нормальных СЛАУ (47). 92.2. Численные методы решения нелинейных и TpaHcцeHдeHT ных уравнений . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.1. Способы отделения корней (51). 2.2.2. Методы уточ нения корней (52). 2.2.3. Скорость сходимости. Процедура Эйткена ускорения сходимости (66). 2.2.4. Замечания к методам отделения корней (68). 9 2.3. Численные методы решения систем нелинейных уравнений 2.3.1. Метод простых итераций и метод Зейделя решения систем нелинейных уравнений (70). 2.3.2. Метод Ньюто на (72). 9 2.4. Численные методы решения задач на собственные значения и собственные векторы матриц линейных преобразований . 2.4.1. Основные определения и спектральные свойства MaT риц (76). 2.4.2. Метод вращений Якоби численноrо реше ния задач на собственные значения и собственные BeKTO ры матриц (80). 2.4.3. Частичная проблема собственных значений и собственных векторов матрицы. Степенной Me тод (91). r л а в а 3. Теория приближений ..................... 93.1. Исчисление конечных разностей. . . . . . . . . . . . . . . . . . . . . 9 3.2. Задача интерполяции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.1. Интерполяционный мноrочлен Лаrранжа (101). 3.2.2. Интерполяционный мноrочлен Ньютона (103). 3.2.3. Поrрешность мноrочленной интерполяции (104). 3.2.4. Интерполяционный мноrочлен Ньютона, построенный 11 16 17 50 69 76 97 99 100
02лавление 395 с помощью разделенных разностей (106). 3.2.5. Сплайн.. интерполяция (108). 9 3.3. Метод наименьших квадратов ...................... 118 9 3.4. Численное дифференцирование . . . . . . . . . . . . . . . . . . . .. 127 3.4.1. Метод PYHre уточнения формул численноrо диффе.. ренцирования (130). 9 3.5. Численное интеrрирование функций. . .. ............. 134 3.5.1. Формула прямоуrольников численноrо интеrрирова ния (135). 3.5.2. Численное интеrрирование с помощью формулы трапеций (136). 3.5.3. Формула Симпсона числен Horo интеrрирования (140). 3.5.4. Процедура PYHre оценки поrрешности и уточнения формул численноrо интеrрирова ния (144). r л а в а 4. Численные методы решения задач для обык новенных дифференциальных уравнений . . . . . . . . . . . .. 150 94.1. Основные определения и постановка задач Коши для обык новенных дифференциальных уравнений . . . . . . . . . . . . .. 150 9 4.2. Метод Эйлера численноrо решения задач Коши дЛЯ ОДУ и систем ОДУ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 154 4.2.1. Метод Эйлера для нормальных систем ОДУ (155). 9 4.3. Метод Эйлера Коши (Эйлера с пересчетом) . . . . . . . . . . .. 156 4.3.1. Метод Эйлера Коши для нормальных систем (157). 9 4.4. Метод PYHre KYTTa . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 158 4.4.1. Метод PYHre KYTTa для нормальных систем ОДУ (161). 9 4.5. Выбор шаrа численноrо интеrрирования задач Коши . . . .. 162 94.6. Процедура PYHre оценки поrрешности и уточнения числен Horo решения задач Коши ......................... 163 9 4.7. Численные методы решения краевых задач для ОДУ. . . .. 175 4.7.1. Постановка краевых задач дЛЯ ОДУ (175). 4. 7.2. Конечно разностный метод с использованием метода проrонки решения краевых задач дЛЯ ОДУ (176). 4.7.3. Конечно разностная схема со вторым порядком аппроксимации краевых условий, содержащих производ ные (178). 4.7.4. Метод пристрелки численноrо решения краевых задач дЛЯ ОДУ (180). 4.7.5. Метод пристрелки с использованием итерационной процедуры Ньютона (182). r л а в а 5. Численные методы оптимизации . . . . . . . . . .. 195 95.1. Классификация численных методов оптимизации. . . . . . .. 195 9 5.2. Численные методы безусловной минимизации функций oд ной переменной. Прямые методы . . . . . . . . . . . . . . . . . . .. 196
396 02лавление 5.2.1. Метод перебора (197). 5.2.2. Метод деления отрезка пополам (198). 5.2.3. Метод золотоrо сечения (200). 9 5.3. Методы минимизации, использующие производные. Метод Ньютона. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 205 9 5.4. Безусловная минимизация функций мноrих переменных .. 207 5.4.1. Метод r'радиентноrо спуска (207). 5.4.2. Метод наи скорейшеrо спуска (212). 5.4.3. Метод сопряженных Ha правлений (215). 11. Численные методы решения задач для уравнений математической физики r л а в а 6. Метод конечных разностей . . . . . . . . . . . . . . .. 221 96.1. Постановка задач математической физики. . . . . . . . . . . .. 222 6.1.1. Постановка задач для уравнений параболическоrо ти па (222). 6.1.2. Постановка задач для уравнений rиперболи ческоrо типа (224). 6.1.3. Постановка задач для уравнений эллиптическоrо типа (226). 9 6.2. Основные определения и конечно разностные схемы для различных задач математической физики ............. 228 6.2.1. Основные определения (228). 6.2.2. Конечно разностная аппроксимация задач для уравнений rиперболическоrо типа (231). 6.2.3. Конечно разностная аппроксимация задач для уравнений эллиптическоrо типа (233). 9 6.3. Основные понятия, связанные с конечно разностной ап проксимацией дифференциальных задач .............. 235 6.3.1. Аппроксимация и порядок аппроксимации (235). 6.3.2. Устойчивость (236). 6.3.3. Сходимость и порядок сходимости (237). 6.3.4. Теорема эквивалентности о свя зи аппроксимации и устойчивости со сходимостью (238). 6.3.5. Консервативность и корректность (238). 9 6.4. Анализ порядка аппроксимации разностных схем. . . . . . .. 239 9 6.5. Исследование устойчивости конечно разностных схем. . . .. 240 6.5.1. Метод r'армоническоrо анализа (241). 6.5.2. Ис следование устойчивости методом r'армоническоrо aHa лиза явной и неявной схем для уравнения теплопро водности (242). 6.5.3. Исследование устойчивости M тодом rармоническоrо анализа явной и неявной схем для волновоrо уравнения (243). 6.5.4. Принцип MaK симума (245). 6.5.5. Спектральный метод исследования устойчивости (246). 6.5.6. Энерrетический метод исследо вания устойчивости конечно разностных схем (248).
02лавление 397 9 6.6. Конечно разностный метод решения задач для уравнений параболическоrо типа.. .......................... 254 6.6.1. Однородные и консервативные конечно разностные схемы для задач теплопроводности с rраничными усло виями, содержащими производные (254). 6.6.2. Неявно явная конечно разностная схема с весами. Схема KpaHKa Николсона (260). 6.6.3. Метод прямых (264). 96.7. Метод конечных разностей решения задач для волновоrо уравнения с rраничными условиями, содержащими произ водные . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 269 9 6.8. Метод установления и ero обоснование . . . . . . . . . . . . . . .. 273 r л а в а 7. Метод конечных разностей решения MHoro мерных задач математической физики. Методы расщеп ления . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 279 9 7.1. Метод матричной проrонки ........................ 281 9 7.2. Метод переменных направлений Писмена Рэчфорда ..... 284 9 7.3. Метод дробных шаrов Н. Н. Яненко . . . . . . . . . . . . . . . . .. 288 97.4. Метод переменных направлений с экстраполяцией В. Ф. Формалева . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 290 7.4.1. Аппроксимация (293). 7.4.2. Устойчивость (296). 97.5. Схема метода полноrо расщепления Формалева Тюкина .. 298 9 7.6. Методы расщепления численноrо решения эллиптических задач . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 301 9 7.7. Методы решения задач для уравнений rиперболическоrо ти па . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 301 7.7.1. Метод характеристик решения квазилинейных rипер болических систем (302). 7.7.2. Метод СКВозноrо счета. За дача о распаде произвольноrо разрыва. Метод С. К. rоду нова (307) . r л а в а 8. Метод конечных элементов. . . . . . . . . . . . . . .. 316 9 8.1. Основы МКЭ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 317 9 8.2. Система базисных функций . . . . . . . . . . . . . . . . . . . . . . .. 318 8.2.1. Кусочно постоянные базисные функции (318). 8.2.2. Линейные кусочно непрерывные базисные функции (321). 9 8.3. Методы взвешенных невязок. Весовые функции. . . . . . . .. 322 8.3.1. Метод поточечной коллокации (323). 8.3.2. Метод ra лерки на (324). 8.3.3. Метод наименьших квадратов (325). 9 8.4. Конечно элементный метод rалеркина решения краевых за дач для обыкновенных дифференциальных уравнений . . .. 325 8.4.1. Слабая формулировка метода rалеркина (326). 8.4.2. Формирование локальной и rлобальной матриц жест
398 02лавление кости. Ансамблирование элементов (328). 8.4.3. Случай rраничных условий, содержащих производные (333). Э 8.5. Метод конечных элементов в стационарных задачах MaTe матической физики .............................. 335 8.5.1. Основные этапы решения стационарных задач Ma тематической физики методом конечных элементов (335). 8.5.2. Принципы разбиения плоских областей на конечные элементы (337). 8.5.3. Аппроксимация линейными MHoro.. членами и базисные функции (339). 8.5.4. Слабая фор мулировка конечно элементноrо метода rалеркина (342). 8.5.5. Ансамблирование элементов и построение r'лобальной СЛАУ (348). 9 8.6. Метод конечных элементов в MHoroMepHbIx нестационарных задачах математической физики. . . . . . . . . . . . . . . . . . . .. 350 98.7. Особенности решения пространственных задач математиче ской физики методом конечных элементов . . . . . . . . . . . .. 353 9 8.8. Оценка поrрешности метода конечных элементов. . . . . . .. 356 8.8.1. Поrрешность конечно элементноrо метода решения задач для обыкновенных дифференциальных ypaBHe ний (356). 8.8.2. Поrрешность конечно элементноrо Me тода решения задач для уравнений в частных производ ных (362). 9 8.9. Вариационный принцип в МКЭ . . . . . . . . . . . . . . . . . . . .. 365 8.9.1. Введение в вариационное исчисление (366). 8.9.2. Конечно..элементный вариационный принцип на основе симметричноrо дифференциальноrо оператора. Вариационный метод Релея Ритца (369). 8.9.3. Решение задач с помощью конечно элементноrо вариационноrо принципа (373). r л а в а 9. Метод rраничных элементов решения MHoro мерных стационарных задач математической физики .. 379 Список литературы ...................... . . . . . . . . . . .. 391
Учебное издание ФОРМАЛЕВ Владимир Федорович РЕВИЗНИКОВ Дмитрий Леонидович ЧИСЛЕННЫЕ МЕТОДЫ Редактор Н.Б. Бартошевич Жасель Ориrинал"макет: А.Л. Жисарев Оформление переплета: А.Ю. Алехина Подписано в печать 22.06.06. Формат 60х90/16. Бумаrа офсетная. Печать офсетная. Усл. печ. л. 25. Уч. изд. л. 25,0. Тираж 1500 экз. Заказ NQ 2585. Издательская фирма «Физико математическая литература» МАИК «Наука/Интерпериодика» 117997, Москва, ул. Профсоюзная, 90 E maH: fizmat@maik.ru.fmlsale@maik.ru; http://www.fml.ru Отпечатано с rOTOBbIX диапозитивов в ОАО «Ивановская областная типоrрафия» 153008, r. Иваново, ул. Типоrрафская, 6 Е..mаН: 091..018@adminet.ivanovo.ru ISBN 5 9221..0737..2