Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Марчук Г.И. Методы вычислительной математики

.pdf
Скачиваний:
63
Добавлен:
25.10.2023
Размер:
13.2 Mб
Скачать

Остановимся кратко на вопросе конструирования интер­ полирующей функции 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) = lxX — линейная функция 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 -

І У

Соседние файлы в папке книги из ГПНТБ