Fedorenko-RP-Vvedenie-v-vychislitelnuyu-fiziku (810773), страница 101
Текст из файла (страница 101)
Если сила Ц ХЦ меньше некоторого порога, пропорционального силе нормального давления, скольжения нет (е = 0). Если сила достигает этого порога, начинается скольжение. Мы сталкиваемся с недифференцируемостью функционала (б) в тех точках т( ), в которых уже имеется непустая область сцепления б . Приближенное решение задачи качения, Опишем в общих чертах метод приближенного решения задачи.
Первый элемент метода — конечномерная аппроксимация. В области О вводятся квад- 4тз ПРИБЛИЖЕННЫЕ МЕТОДЫ ВЫЧИСЛИТЕЛЬНОЙ ФИЗИКИ ~ч, и ратная сетка с шагом л и узлами (А, Рл) и сеточные функции т Б и т.п. Функционал аппроксимнруется суммой В(Т) =й2ХХ (/ ПЕ П вЂ” (2, $ И, а связь между Б и т записывается в виде Б =τ— 62ХХВ Т, Т Проблемы вычисления элементов матрицы В обсуждаются в 8 30. Основная трудность состоит в построении алгоритма минимизации недифференцируемого функционала. Дело в том, что, когда образуется область сцепления, зависимость В от т становится, вообще говоря, аналогичной зависимости типа (а, т) + 828.
График этой функции есть «наклоненный конусь. Множество направлений ее убывания (если оно не пусто) есть конус, тем более узкий, чем ближе ситуация к экстремуму (т.е. чем ближе 8а8 к единице). Найти хотя бы одно направление в таком конусе в пространстве очень высокой размерности (тем более высокой, чем меньше шаг сетки й) — сложная вычислительная задача.
Она осложняется еще н тем, что интересы эффективности процесса минимизации требуют не просто какого-то направления убывания Г, но, по возможности, направления наиболее быстрого убывания. Конечно, наличие ограничений ЙТЙ ц / вносит дополнительные осложнения н сокращает возможности выбора. Метод численного решения, реализующийся в виде процесса построения минимизирующей последовательности, основан на анализе формулы для первой вариации функционала.
Пусть текущая, уже найденная точка 2 подвергается малому возмущению, т.е. переходит в т + бт. Как изменится при этом значение В? Для упрощения изложение будем вести в терминах функций и интегралов. Перевод полученных формул в сеточный вид достигается заменой аргументов х, у на индексы Й, ПТ, интегралов — на суммы. Кроме того, используем полезное свойство преобразования В в (8): Ц (Вт, т) Ых Ну= О, 'В т. о Это позволит упростить выражение для функционала, заменив в (б) интеграл от (Б, т) = (т, и — Вт) на интеграл от (т, и). Первоначальное выражение (б) для В полезно в том отношении, что позволяет контролировать качество приближенного решения. Б точном решении, как это следует из указанных выше сведсний о нем, подынтегральное выражение /(х, у)8е(х, у)Ц вЂ” (т(х, у), з(х, у)) яя О, 'ч' (х, у)..
Будем проводить вычисления в некоторой точке т( ), для которой определена область сцепления с,: 8Б(х, у) Й ц В(х, у) (роль В разь- 479 8 г91 ВАРИАЦНОННЫЕ ЗАДАЧИ МЕХАНИКИ ясняется ниже). В соответствии с этим функционал можно разбить на две части — на дифференцируемую (по Фреше) Р« и неднффе- ренцнруемую Р;. Р[т( )] Р«+ Р„= ~~ (...) ~Ух 4(у+ ~~ [...) 4(х ~уу, о'х с, а, Пусть т возмущено малой функцией Ьт. Тогда первая вариация (дифференциал) Р, есть линейный функционал от Ьт, т.е. с точно- стью до О([]ЬХ[[з) имеем Р [ ( ) + Ьх( Ц = Р [ ( )] + ~ $ (17(х, у), Ьт(х, у)) пх Ыу. о здесь Р(х, у) — производная Фреше от Р«, которая вычисляется по формуле /( Р Р~ Р(х, у) = $ $ — — 7'-~— ,- В(х — х', у — у') з(х', у') Ых' 4(у' — в(х, у).
о' о, (9) Не станем выводить этой формулы, укажем лишь основные опера- ции ее вывода. Подставляем в (б) вместо т и з соответственно т + Ьт и з+ Ьж Пользуясь тем, что []з[[ > е в гх'хб,, разлагаем подынтегральное вы- ражение в ряд Тейлора с учетом первого порядка малых величин. Заменяя Ьх на — ~ ~ В Ьт (в соответствии с (8)), получаем выраже- ние для ЬР [Ьт( )] в виде четырехкратного интеграла. В этом ин- теграле меняем очередность интегрирования (переобозначая х', у' через х, у и наоборот), «Внутренний» интеграл и есть,0(х, у). Что касается приращения недифференцируемой части, то тут никакик особых упрощений нет.
Итак, приращение функционала при вариа- ции т может быть записано в форме Р[т( ) + Ьт(.)] — Р[т( )] = ~ ~ (Ю(х, у), Ьт(х, у)) с1х х(у + а + ~ ~ У ]1] 1х(х, у) — ~ ~ В(х — х', у — у') Ьт(х', у') 4(х' 4(у' ~~ 41х 41у— с, с — ~~ У(х, у) [[з(х, у)]] 4(х с(у+ О([[ЬХ[]х). (1О) Пренебрегая О([[ЬХ[[з), определим процедуру вычисления вариации Ьт, обеспечиваквцей убывание Р.
Обычно решение таких сложнык задач начинают с относительно простых алгоритмов. Совсем не обязательно в конкретных расчетах должны появиться все неприятности, которые в принципе возможны. Начнем поиск минимума с начального приближении т(х, у) ш О. Пока Ор Я и функционал «зо пгиьлижзнньш мзтоды вычислительной»итаки ~ч. и дифференцируем, работает метод спуска по градиенту. На каждом шаге т пересчитывается по формуле Т:=Р(т — ЬР), где Р— оператор проецирования, работающий локально, в каждой точке (х, у) независимо от других, Я вЂ” шаг процесса.
Оператор Р введен с целью учета поточечного ограничения [) т(х, у) )) < /(х, у) и реализуется просто. Определяем т* = т — ЯР и, если [) т" (х, у) [[ ~ Г, полагаем т(х, у) = т'(х, у)/(х, у)/)) т'(х, у))). Вычисляем фактическую вариацию Ьт(х, у) = т(х, у) — т(х, у) н предсказанную вариацию функционала ЬР= ~~ (В, Ьт) Ых Ыу. с Выбор шага процесса 5 играет большую роль, если нас интересует не только факт сходнмости, но и скорость процесса минимизации. Затем вычисляем новое значение функционала Р[т( ) ) и фактическое приращение ЛР= Р[т( )) — Г[т( )).
Если ЬР > О, итерация считается неудачной, шаг 5 уменьшается вдвое и с той же производной повтори- ется вариация т. Если ЛР с О, итерация выполняется, т.е. т заменяется 'на т, а шаг Б корректируется в зависимости от точности линейною приближенна — величины и = 2[ба — ЛР[/[ЬР+ ЬР[. Если эта величина мала, шаг Я увеличивается, если велика, — уменьшается. Заметим, что трудоемкость итерации велика: она определяется необходимостью вычисления функционала Р и его производной Р.
Обе операции стоят О(л 4) операций (в каждой точке двумерной сетки нужно вычислить двумерный интеграл). Поэтому здесь не применяется надежный способ выбора шага, связанный с решением задачи ш1п Р[Р(т — БР)) по 5. Даже не очень точное ее решение требует нескольких вычислений Р. Расчеты по этой простой схеме показали, что сначала функционал достаточно быстро убывает, затем образуется небольшая область сцепления б,, которая растет. По мере ее роста все большую роль в ЛР начинает играть недифференцируемая составляющая, шаг Б катастрофически уменьшается и алюрнтм «застревает» в заведомо неоптимальный точке т( ).
Метод регуляризации. Наиболее простой и дешевый способ продвинуться дальше, почти не усложняя алгоритма, состоит в регуляризации задачи, т.е. в данном случае в аппроксимации недифференцируемой функции [[ [[ дифференцируемой. Практически это „ях'Р ~я+,+* <.
0>.в, у ° но затем, по мере достижения минимума (для данною з), постепенно уменьшать, используя найденное ранее решение как начальное приближение при новом значении з. Методы регуляризации задач весьма популярны, но, к сожалению, не очень эффективны. Дело в том, что нужно не только ап- $29] влгилционныз зьдьчи мах«ники проксимировать недифференцируемую функцию дифференцируемой (эта цель легко достигается в данном случае), ио и получить функцию, с хорошей точностью аппроксимируемую своей касательной на таких расстояниях от точки линеаризации, которые следует использовать в эффективном алгоритме построения минимизирующей последовательности.
При замене ] з ] иа г Р + е возникает конфликт между точностью аппроксимации и гладкостью регуляризоваиной функции. В описываемом алгоритме разумный компромисс между точностью и гладкостью аппроксимации достигался следующим образом. Наряду с основными счетными массивами т«, зк, П«использовался массив е«, и вместо ]]з„]] в формулы входила величина (]]з«]]з+ е„)пз. После осуществления вариации (т- т+ Ьт, з- г+ Ьз) величины з пересчитывались. При этом предполагалось, что на следующей итерации значение Ьз будет примерно таким же. Для хорошей линеаризации нужно, чтобы значение ]]з«]]з+ е«было раз в пять больше ожидаемой вариации Ьз Таким образом, величины е„автоматически убывали в процессе расчета при уменьшении шага 5.
Таблица 21 дает представление о том, как протекал процесс минимизации. В ней представлены: номер шага ч (звездочкой отмечены неудачные итерации с йР > О), г, ЬР, АР и шаг спуска Я. Видно, что неудачные шаги сравнительно редки. Обратим внимание на то, что величина ЬР (в принципе пропорциональная 5]]Щ]з) убывает намного быстрее, чем Я. Это связано с убыванием производной 2У, т.е.
с приближением к минимуму. Возникает вопрос: насколько рациональна вырабатывающаяся в ходе расчета величина Я? Свидетельством в пользу этого алгоритма служит хорошо видный из таблицы факт: обычно резкое уменьшение шага Я сопровождается ростом фактического убывания функционала Лг. Экспериментальные попытки волевым образом увеличить 5 не приводили к успеху: возникала ситуация пг" > О, шаг последовательно дробился несколько раз подряд и приходил к старому значению. Вышеприведенный расчет носил методический характер, поэтому число итераций относительно велико (впрочем, размерность конечномерного пространства, в котором решалась дискретная задача на минимум, здесь был» около 1500), Видно, что после 15-й итерации расчет практически «стоит на месте» и продолжение его бесполезно. Каковы же полученные при этом результаты? Анализ показал, что почти всюду в области гг (это был эллипс) значение функции 1 = ]Дз]] — (т, з) ~ было очень мало.