книги из ГПНТБ / Марчук Г.И. Методы вычислительной математики
.pdfОстановимся кратко на вопросе конструирования интер полирующей функции g{x, у). Принципиально метод построе ния g(x, у) ничем не отличается от одномерного случая и в конечном счете сводится к решению системы уравнений с матрицей порядка пт. (Более подробно этот вопрос и.сследован Ю. С. Завьяловым'1 4 1 .) Однако в ряде практически важных случаев оказывается нецелесообразно решать задачу в общем. Простейшим примером является ситуация, когда требуется вычислить значения g(x, у) в сравнительно неболь шом числе точек. Покажем, что последняя задача может быть легко решена с помощью методов одномерной интерполяции, описанных в 2.7.1.
Из представления (7.56) следует, что вдоль любой из ли ний х==const, пересекающих область D, функция g(x, у) яв ляется кусочно-кубической дважды непрерывно дифференци руемой функцией одного переменного и, кроме того, удовлет воряющей граничным условиям
|
|
|
|
|
|
|
|
= 0. |
|
|
|
|
(7.60) |
|
Отсюда делаем вывод, что для нахождения |
функции g{xk, у) |
|||||||||||||
для любого |
Xh (O^fe^; л.), определяющего сетку |
/>/,, достаточно |
||||||||||||
решить задачу одномерной кусочно-кубической |
интерполя |
|||||||||||||
ции: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1) |
g(xh, |
у) |
дважды |
непрерывно дифференцируема |
по пе |
|||||||||
ременной у; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2) |
на каждом из отрезков |
[уі, yi-\] g{xu, |
у) |
имеет вид |
||||||||||
|
|
g (хк, |
у) =gk<l(у) |
|
з |
af'l) {Уі - |
у)і |
|
|
|
(7.61) |
|||
|
|
= |
2 |
|
|
|
||||||||
|
|
|
|
|
|
|
/=о |
|
|
|
|
|
|
|
|
|
|
|
|
1=1,..., |
|
т); |
|
|
|
|
|
|
|
3) |
для всех 0 ^ / ^ т |
выполняются равенства |
|
|
|
|||||||||
|
|
|
|
|
g(Xh, |
Уі) = |
fh/, |
|
|
|
|
|
(7.62) |
|
4) g(xh, у) удовлетворяет граничным условиям |
(7.60). |
|||||||||||||
По постановке эта задача полиостью эквивалентна задаче |
||||||||||||||
кусочно-кубической |
интерполяции, |
методы |
решения |
которой |
||||||||||
детально изложены в 2.7.1. Очевидно, что вдоль линий |
у=уи |
|||||||||||||
где уі |
является |
узлом |
сетки |
по |
переменной |
у |
( 0 ^ / ^ / п ) , |
|||||||
функция g(x, |
у) |
может быть вычислена |
аналогично. |
|
|
|||||||||
Учитывая |
отмеченные факты, |
можно |
предложить |
следую |
щий алгоритм вычисления значений интерполирующей функ
ции g(x, у) в |
некоторой заданной точке [х, y)EED. |
Пусть для |
||
конкретности |
п^.т. Тогда сначала |
решается п задач одно |
||
мерной интерполяции вдоль прямых х=хк |
с цельто |
определе |
||
ния значений |
функции в точках [хк, |
у) |
для k=Q, |
1 , . . . , п. |
После этого решается одна задача кусочно-кубической интер
поляции вдоль ^прямой у |
у |
с вычислением g(x, у) |
в |
нужной |
|||
нам |
точке |
(х, у). |
Итак, |
для |
вычисления значения |
функции |
|
g(x, |
у) в |
одной |
точке области D нам потребовалось |
(п+1) |
одномерных интерполяций по оси у и только одна вдоль пере
менной х. В случае, |
когда число точек, где требуется вычис |
|
лить значения g{x, |
у), равно |
нетрудно показать, что |
для решения этой задачи требуется не больше m-\-N одномер ных интерполяций.
Описанный нами алгоритм легко обобщается на области, которые можно представить в виде объединения конечного числа прямоугольников, и на многомерные области подобно го типа.
МЕТОДЫ РЕШЕНИЯ СТАЦИОНАРНЫХ ЗАДАЧ МАТЕМАТИЧЕСКОЙ ФИЗИКИ
Решение стационарных задач математической физики представляет собой более или менее самостоятельный раздел вычислительной математики, хотя решение многих стацио нарных задач с положительными операторами можно рас сматривать как предельное при t-*-oo решение нестационар ной задачи. При решении стационарных задач методами асимптотического стациоиирования мы не обращаем внимания на промежуточные значения решения, поскольку они не име ют интереса, тогда как при решении нестационарных задач эти промежуточные значения имеют физический смысл. Вооб ще говоря, именно в этом состоит единство и различие этих классов задач. Проиллюстрируем это на примере.
Пусть имеется задача
A<P = U
где
Л > 0 , ср<=Ф и f e f .
Вместо этой задачи рассмотрим нестационарную*»
|
•ф=0 при |
^ = 0 . |
|
|
Решение этих задач будем искать в виде |
|
|||
Ф = 2 Фп Un , Яр = 2 4>п Un |
, f = У, fnUn , |
|
||
п |
п |
|
п |
|
Aun |
— bnun, |
A*un |
= %nUn, |
|
где фп = (ф, ип), я|>„ = |
(ч|з, ц * ) , /„ = (/, Un) • Тогда |
известными |
||
приемами приходим к задачам для коэффициентов |
Фурье |
|||
|
^-пфп= |
/ т |
|
|
*> В дальнейшем мы не будем специально отмечать область определе ния операторов задач.
содной стороны, и
сдругой. Решая эти задачи, получим
В предположении вещественности спектра оператора Л име ем Я.„>0 (я — 1, 2 , . . . ) . Отсюда следует, что
lim ip = ф. /->СХ>
Разумеется, нестационарную задачу для новой функции яр можно решать разностными методами по t. Например,
Тогда имеем
Если нашей целью является решение стационарной зада чи, то при определенном соотношении между х и (3(Л) имеем
lim гр' = ф.
І-УСО
Параметр х здесь может быть величиной как не завися щей, так и зависящей от /. Во всяком случае, при решении стационарной задачи / удобно считать номером не временного шага, а номером итерационного. Если оператор стационарной задачи имеет спектр произвольной структуры, то в этом слу чае такой простой и прозрачной связи между решениями задач уже может не быть.
Обзор итерационных методов решения задач линейной ал
гебры |
можно найти в монографиях Д. К. Фаддеева, В. Н. Фад- |
|
деевой [ 8 ] , Форсайта, Молера l 8 J , Уилкинсона 1 8 ] , |
Хаусхолде- |
|
ра 1 3 ] , |
В. В. Воеводина1 8 1 , Н. С. Бахвалова1 8 ] , Г. |
И. Марчука, |
В.И. Лебедева п л , Варги 1 3 1 и других.
3.1.Некоторые итерационные методы и их оптимизация
Вдальнейшем будем считать, что оператором Л является матрица и, следовательно, исходная задача предполагается уже приведенной к системе линейных алгебраических урав нений. Итак, пусть требуется решить задачу
Л Ф = т , |
(1.1) |
где Л — матрица, q> и f — векторы, Л > 0 и спектр Я.(Л)>0.
ЮЗ
Для решения задачи (1.1) воспользуемся следующим
итерационным |
процессом: |
|
|
|
фі+> = ф і - т ( і 4 ф * - ї ) , |
(1.2) |
|
где т — произвольный параметр. Введем обозначение |
|
||
Здесь j=J — н е в я з к а итерационного |
процесса. Подействуем |
||
на уравнение |
(1.2) слева оператором |
Л и от обеих частей |
по |
лученного равенства вычтем f. В результате приходим к ите рационному процессу для невязки
Ч } + 1 |
= П } , |
(1-3) |
где Т=Е—тЛ—оператор |
шага. Предположим, что |
из |
вестны границы положительного спектра оператора А, т. е. максимальное и минимальное собственные числа спектраль ных задач
Аип = 1пи„, |
А*и„ = Ки*п, |
(1.4) |
а именно: пусть *J |
|
|
а < ^ „ ^ ( 3 . |
(1.5) |
Предположим, что задача (1.4) определяет биортогопальный базис собственных векторов {и„} и {и„}. Рассмотрим простейший метод выбора параметра т. С этой целью невязку 1 представим в виде ряда Фурье по полной системе собствен ных векторов основной задачи (1.4):
|
H = 2 ? n U „ , |
(1.6) |
где |
л |
|
|
|
|
|
ln = (l, U * ) , |
|
Ряд |
(1.6) подставим в (1.3), тогда обычным способом |
прихо |
дим к соотношениям для отдельных гармоник |
|
|
где |
lL+1=Tn&, |
(1.7) |
Тп = 1 — х%п- |
|
|
|
|
|
Для |
того чтобы метод последовательных приближений |
(1.2) |
сходился, достаточно потребовать, чтобы для всех Хп из ин
тервала |
[а, р] |
имело место |
неравенство |
|
||
Отсюда |
|
| 1 — |
тЪп\<1. |
|
||
|
|
|
|
|
||
|
|
|
х < | - . |
(1.8) |
||
*) |
Величины |
а(А), Хп (А) |
и |
6(У1) в дальнейшем будем |
обозначать |
|
а, Я. „ |
и |
р. |
|
|
|
|
Рассмотрим метод выбора свободного параметра т итера ционного процесса. Прежде всего условимся о терминологии.
Итерационный процесс (1.2) будем называть с т а ц и о
н а р н ы м , |
если параметр г не зависит от номера итерации. |
Если x—tj |
изменяется от итерации к итерации, то такой про |
цесс будем называть н е с т а ц и о н а р н ы м .
Нашей основной задачей будет выбор такого параметра т, который делает скорость сходимости итерационного метода оптимальной. Мы будем заниматься поисками эффективных итерационных схем при некоторых априорных предположениях и ограничениях. Поскольку любой метод оптимизации связан с конкретной априорной информацией об операторе А, конеч но, нельзя говорить об оптимизации итерационного метода, если об операторе А ничего не известно. Укажем информа цию, которая обычно бывает существенной для оптимизации стационарных итерационных процессов. Это, во-первых, поло жительность оператора А, во-вторых, границы спектра и, в-третьих, самосопряженность. Наиболее важной и труднодобываемой информацией обычно является информация о гра ницах спектра. Дополнительное предположение о самосопря женности (если оно имеется) обеспечивает существование вещественного спектра. В приложениях зачастую приходится иметь дело с матрицами более общей структуры, поэтому необходимо всегда делать предположение о полноте системы собственных функций, причем установление полноты, как пра вило, является задачей очень сложной. Обычно при оптими зации полнота системы априори предполагается. Если она на самом деле отсутствует, то наш алгоритм оптимизации будет приводить к неоптимальным схемам, однако, как правило, весьма эффективным. Что касается установления границ спек
тра, то эффективные |
методы их определения |
рассмотрены |
||
в 1.1. |
|
|
|
|
|
3.1.1.Простейший итерационный метод |
|||
Итак, предположим |
сначала, что Ц Л ) > 0 и известна толь |
|||
ко верхняя |
граница спектра [3 = max {К). Рассмотрим основ- |
|||
ную задачу |
|
|
|
|
|
|
Лср=г |
|
(1.9) |
и две вспомогательных |
|
|
||
|
Аи = \и, А*и*=\и*. |
|
(1.10) |
|
В качестве |
итерационного процесса |
примем |
описанный в |
|
(1.2): |
|
|
|
|
|
q^+i==q)J— т(/4ф3 — f), |
ф0 = 0 |
(1.11) |
или, что то же самое, |
= <pi — TV, |
(1.12) |
tf+l |
||
Потребуем, чтобы коэффициент Фурье |
невязки, соответ |
|
ствующий максимальному |
собственному |
числу max {Я.П Я= |
|
|
п |
==^m = P, обратился в нуль уже за одну |
итерацию. Тогда при |
|
ходим к алгоритму выбора т по формуле |
|
|
т = |
- і - . |
(1.13) |
Естественно, что при таком выборе т |
|
|
& + I |
= о. |
|
При выбранном т оценим покомпонентное уменьшение невяз
ки за одну итерацию. С |
этой целью рассмотрим Тп из (1.7): |
||||
|
Тп= |
1 - тЛ„ = 1 - - ^ . |
(1.14) |
||
Очевидно, максимальное |
значение |
Т„ будет |
соответствовать |
||
минимальному |
(вообще |
говоря, |
априори нам |
неизвестному) |
|
собственному |
числу гшпД.„ = а. В |
результате |
подучим |
||
|
п |
|
|
|
|
|
q = max [Tn] |
= |
1 |
(1.15) |
Проследим теперь за ходом итерационного процесса. В первой итерации за счет специального выбора параметра х= уничтожается невязка, соответствующая гармонике с макси
мальным собственным числом. Остальные коэффициенты |
1 |
уменьшат свою абсолютную величину в Тп раз. Наименьшее
изменение будет иметь место для коэффициента |
соответ |
|||
ствующего гармонике |
с минимальным собственным |
числом. |
||
В |
этом случае T j = |
1 |
Многократное повторение |
процес |
са |
приведет нас к |
асимптотическому случаю, когда при / > • 1 |
||
все коэффициенты |
£л |
(« = 2, 3, . . . , m — 1) окажутся исчезающе |
малыми по сравнению с Ц, и в результате приближенно мы
будем иметь |
(1.16) |
V=QV~\ |
|
где |
|
Если ввести норму |
(1.17) |
\\m2=(V,V), |
|
то из (1.16) следует равенство |
|
m = g\\V-ll |
(1.18) |
Для суждения о качестве итерационного процесса обычно используют следующую асимптотическую величину при j—y-oo:
s = — ln<7 = Щ-. |
(1.19) |
Заметим, что q, вообще говоря, зависит от номера итера ции. Однако во многих случаях удается найти асимптотиче скую оценку для q при уже не зависящую от /. Имен но эта величина и используется в определении а с и м п т о т и -
ч е с к о й с к о р о с т и |
сходимости |
итерационного |
процесса. |
|
В силу рекуррентного |
соотношения |
(1.18) |
получим |
|
|
1|1''1| = <7'||&°1|. |
|
|
|
где q> есть /-я степень |
асимптотической |
величины |
q. Это ра |
венство запишем в эквивалентной форме 11141 =
Тогда будем иметь
|||; || = е-^|Ц0||.
Таким образом, асимптотическая скорость сходимости итера ционного процесса 5 характеризует быстроту экспоненциаль
ного подавления |
невязки. |
|
|
|
||
Анализ характера сходимости |
метода |
показывает, что в |
||||
данном |
случае с учетом |
(1.15) |
|
|
|
|
|
р |
|
|
|
|
|
где/? = |
£ . |
|
|
|
|
|
Величину р |
обычно |
называют |
ч и с л о м о б у с л о в л е н |
|||
н о с т и |
м а т р и ц ы А. Если /? = |
— » ! , то приходим к асимпто |
||||
тической оценке |
s = |
l - < 7 = |
i |
. |
(1.20) |
|
|
|
3.1.2. Метод смещений
Переходим к рассмотрению более эффективного метода оптимизации в предположении, что нам априори известны верхняя и нижняя границы спектра, т. е. такие числа а > 0 , (3>0, что для всех п
Рассмотрим полином первой степени от X:
P(X) = l—xl, |
Р(0) = 1. |
Найдем такое значение то, которое реализует минимальное значение модуля полинома Р(Х), т. е. необходимо то найти из условия
max IP (X) I = min.
Поскольку P(X) = l—xX — линейная функция X, то макси мального значения она достигает на одном из концов отрезка [а, р] . Следовательно, наилучшее значение т0 определяется равенством
1 — т 0 а = — ( 1 — т 0 р ) ,
откуда
(1.21)
В этом случае, как нетрудно видеть, |
|
min max \Р (X) | = 11 - т0 а | = 11 - т0р1 = |
= q |
и, следовательно, |
|
Метод последовательных приближений с выбором т в фор ме (1.21) является стационарным. Выражение для q удобно привести к виду
q = 1
+ р
Если ^—р^>\, то приближенно тимеем
<7 = |
1 — |
2 |
^ |
|
Р |
Таким образом, асимптотическая скорость сходимости метода оценивается формулой
= Л |
(1.22) |
Метод оптимизации с выбором параметра в форме (1.21) обычно называют м е т о д о м с м е щ е н и й . Сопоставление формулы (1.22) с (1.20) показывает, что асимптотическая ско рость сходимости метода смещений в два раза больше, чем для простейшего метода, когда в качестве априорной инфор мации известно только максимальное собственное число опе ратора А.
3.1.3. Метод чебышевского ускорения
Рассмотрим более общий итерационный процесс (иногда называемый методом Ричардсона), относящийся к числу не стационарных, параметры % для которого от шага к шагу ме-
няются из условия быстрейшего покомпонентного убывания невязки. Предположим, что нам задана начальная невязка %°. Рассмотрим итерационный процесс для невязки
^=(Е-пА)%}~\ |
(1.23) |
где Е — тождественный оператор. С помощью рекуррентного соотношения (1.23) получим
V= П ( £ - т И ) | °
І= І
или
где
Рі (А) = П ( £ — Т І А).
І = І
Если воспользоваться разложением невязки в ряд Фурье по полной системе собственных функций оператора А, то для каждого коэффициента Фурье Vn невязки %j получим уравне ние
& = Р І ( К ) & |
& = |
|
где |
|
|
Р,(X) = П |
( 1 — г а ) . |
(1.24) |
i = l |
|
|
Предположим, что спектр оператора А вещественный, извест ны его границы (найденные, например, с помощью алгоритма Люстерника)
0<as^A.n ==SP
и собственные векторы оператора А образуют базис. Тогда из условия максимального подавления всех коэффициентов %1
приходим к задаче: найти такой полином Pj(%), |
чтобы |
Pi (0) = 1 и max \Pj (Х)\ |
(1.25) |
принимал минимальное значение, при этом минимизация про изводится путем подходящего выбора т,-. Решение этой зада чи дано А. А. Марковым с помощью полиномов Небышева Tj(y), а именно:
P i |
W = |
V |
/ P + |
a x |
Л |
(1-26) |
где |
|
|
|
|
|
|
т . (у) = |
(У + |
V'f- |
і У |
+ (У |
- У У 2 - |
І У |