Научная литература
booksshare.net -> Добавить материал -> Физика -> Федоренко Р.П. -> "Введение в вычислительную физику" -> 188

Введение в вычислительную физику - Федоренко Р.П.

Федоренко Р.П. Введение в вычислительную физику — М.: Физ-тех, 1994. — 528 c.
ISBN 5-7417-0002-0
Скачать (прямая ссылка): vvedenievvichesleniyah1994.djvu
Предыдущая << 1 .. 182 183 184 185 186 187 < 188 > 189 190 191 192 193 194 .. 210 >> Следующая

G\G G

Пусть X возмущено малой функцией 6т. Тогда первая вариация (дифференциал) Fd есть линейный функционал от 6х, т.е. с точностью до 0(||6х||2) имеем

^dW') + 6х( )] =Z1dIx(O) + у (?>(*> У)> 6х(х, у)) dx dy.

G

Здесь D(x, у) — производная Фреше от Fd, которая вычисляется по формуле

D(x, У) = В(х - х', у - у') s(x', у') dx' dy' - v(x, у).

G\Gt ’ (9)

He станем выводить этой формулы, укажем лишь основные операции ее вывода.

Подставляем в (6) вместо х и s соответственно х + 6х и s + 6s. Пользуясь тем, что IMI > є в G\Gc, разлагаем подынтегральное выражение в ряд Тейлора с учетом первого порядка малых величин. Заменяя 6s на В дх (в соответствии с (8)), получаем выражение для 6Fd[&x(-)] в виде четырехкратного интеграла. В этом интеграле меняем очередность интегрирования (переобозначая х', у' через х, >’ и наоборот). «Внутренний» интеграл и есть ?>(х, у). Что касается приращения недифференцируемой части, то тут никаких особых упрощений нет. Итак, приращение функционала при вариации х может быть записано в форме

F[x(-) + 6х(-)] - F[x(-)] = JJ (D(x, у), 6х(х, у)) dx dy +

G

+ J J /1 s(x, у) — J J B(x — x', у — y') 6x(x', y') dx' dy' | dx dy —

G G

- JJ /(*, y) ||s(x, ,)11 dx dy + 0(||6x||2). (10)

G

є

Пренебрегая 0(||6т||2), определим процедуру вычисления вариации 6х, обеспечивающей убывание F. Обычно решение таких сложных задач начинают с относительно простых алгоритмов. Совсем не обязательно в конкретных расчетах должны появиться все неприятности, которые в принципе возможны. Начнем поиск минимума с начального приближения х(х, у) = 0. Пока G0= 0 и функционал
480

ПРИБЛИЖЕННЫЕ МЕТОДЫ ВЫЧИСЛИТЕЛЬНОЙ ФИЗИКИ

[Ч. II

дифференцируем, работает метод спуска по градиенту. На каждом шаге т пересчитывается по формуле т ¦= P (т — SD), где P — оператор проецирования, работающий локально, в каждой точке (х, у) независимо от других, S — шаг процесса.

Оператор P введен с целью учета поточечного ограничения ||t(jc, у) И S* f{x, .у) и реализуется просто. Определяем т* = т — SD и, если ||х*(лг, у)|| Ss /, -полагаем т(х, у) = т*(х, )0/(*, У)/|1Х*(*> )011-Вычисляем фактическую вариацию 6т(х, у) = х(х, у) — т(х, у) и предсказанную вариацию функционала

6F = ^ (D, 6т) dx dy. с

Выбор шага процесса S играет большую роль, если нас интересует не только факт сходимости, но и скорость процесса минимизации. Затем вычисляем новое значение функционала F[x( •)] и фактическое приращение AF = F[x(•)] — F[t(-)]. Если AF> 0, итерация считается неудачной, шаг S уменьшается вдвое и с той же производной повторяется вариация т. Если AF < 0, итерация выполняется, т.е. т заменяется на х, а шаг S корректируется в зависимости от точности линейного приближения — величины Ti = 21 bF — AF | /1 6F + AF\. Если эта величина мала, шаг S увеличивается, если велика, — уменьшается.

Заметим, что трудоемкость итерации велика: она определяется необходимостью вычисления функционала F и его производной D. Обе операции стоят 0(h~4) операций (в каждой точке двумерной сетки нужно вычислить двумерный интеграл). Поэтому здесь не применяется надежный способ выбора шага, связанный с решением задачи min F[P(x — SZ))] по S. Даже не очень точное ее решение требует нескольких вычислений F. Расчеты по этой простой схеме показали, что сначала функционал достаточно быстро убывает, затем образуется небольшая область сцепления Gt, которая растет. По мере ее роста все большую роль в AF начинает играть недифференцируемая составляющая, шаг S катастрофически уменьшается и алгоритм «застревает» в заведомо неоптимальный точке т(-).

Метод регуляризации. Наиболее простой и дешевый способ продвинуться дальше, почти не усложняя алгоритма, состоит в регуляризации задачи, т.е. в данном случае в аппроксимации недифференцируемой функции У • У дифференцируемой. Практически это

означает замену на Vs1 + + є (є > 0). Величину є мож-

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

Методы регуляризации задач весьма популярны, но, к сожалению, не очень эффективны. Дело в том, что нужно не только ап-
§29]

ВАРИАЦИОННЫЕ ЗАДАЧИ МЕХАНИКИ

481

проксимировать недифференцируемую функцию дифференцируемой (эта цель легко достигается в данном случае), но и получить функцию, с хорошей точностью аппроксимируемую своей касательной на таких расстояниях от точки линеаризации, которые следует использовать в эффективном алгоритме построения минимизирующей последовательности. При замене I s I на Vs2 + є возникает конфликт между точностью аппроксимации и гладкостью регуляризованной функции.

В описываемом алгоритме разумный компромисс между точностью и гладкостью аппроксимации достигался следующим образом. Наряду с основными счетными массивами xk т, sk т, Dkm использовался массив Ek , и вместо Hsyfc т|| в формулы входила величина

(IIs*. mil2+ гк, т)1/2- После осуществления вариации (т -* T + дх, S-* s + 6s) величины Ek т пересчитывались. При этом предполагалось, что на следующей итерации значение 6Sk tn будет примерно таким же. Для хорошей линеаризации нужно, чтобы значение 11? mil2 + гк,т было раз в пять больше ожидаемой вариации bsk т. Таким образом, величины Ek т автоматически убывали в процессе расчета при уменьшении шага S.
Предыдущая << 1 .. 182 183 184 185 186 187 < 188 > 189 190 191 192 193 194 .. 210 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed