Главная > Методы обработки сигналов > Численные методы
<< Предыдущий параграф
Следующий параграф >>
<< Предыдущий параграф Следующий параграф >>
Макеты страниц

§ 7. Нелинейные краевые задачи

Существует большое сходство между методами решения нелинейных краевых задач и нелинейных алгебраических задач. В частности, так же, как и в последнем случае, мы проведем обсуждение различных методов, не приходя в конце концов к конкретной рекомендации по решению произвольных нелинейных краевых задач. По существу, всякий раз решение нелинейной краевой задачи сводится к решению некоторой нелинейной системы уравнений. Различные методы решения нелинейных краевых задач отличаются выбором параметров этих вспомогательных задач и, естественно, методом решения этих задач.

Рассмотрим простейший пример — нелинейную краевую задачу: найти решение уравнения

Предположим, что известно некоторое приближение к решению ; в окрестности этого приближения справедливо разложение

поэтому представляется целесообразным искать следующее приближение к решению как решение краевой задачи

Рассмотрим сеточную аппроксимацию задачи (1):

здесь — приближения к значениям . Пусть — совокупность величин, образующих приближение к решению системы (3). В окрестности этого приближения справедливо соотношение

Поэтому следующее приближение отыскиваем из системы уравнений

являющейся дискретной аппроксимацией (2). В § 3 мы изучали применение методов стрельбы и прогонки для решения таких линейных уравнений.

Эта же совокупность уравнений (2) относительно следующего приближения к решению получится при формальном применении схемы метода Ньютона. Рассматриваем (1) как операторное уравнение оператором производной F будет оператор Р, определяемый равенствами

Уравнение метода Ныотона относительно записывается в виде

и совпадает с (2).

Задача 1. Выписать расчетные формулы метода Ньютона для системы (3) и убедиться, что они совпадают с (4).

В обоих вариантах, непрерывном и дискретном, мы построили сначала итерационные методы (2) и (4), линеаризуя правую часть, а потом убедились, что эти методы совпадают с итерационным методом Ныотона.

Заметим, что итерационный метод (2), как правило, не может быть реализован из-за невозможности решения уравнения (2) в явном виде, и на практике имеют дело именно с методом (4).

Метод (4) может представлять практические неудобства из-за необходимости хранить в памяти ЭВМ все значения . Поэтому часто прибегают к следующему методу, который также будет изложен в непрерывном и дискретном вариантах.

Исходная задача будет решена, если будет найдено значение производной решения в точке 0. Решая задачу Коши для уравнения при начальных условиях , получим решение на всем отрезке. Если решить задачу Коши при начальных условиях и произвольном , то получим значение , вообще говоря, отличное от .

Значение решения задачи Коши является некоторой функцией от . Таким образом, исходная задача сводится к решению нелинейного уравнения

Нахождение значения при каждом требует решения задачи Коши

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

В ряде сложных случаев задача, решается в диалоговом режиме; значение для каждого последующего приближения вычисляется ЭВМ, а выбор осуществляется исследователем, решающим задачу. Подобного рода диалоговые системы применяются на практике много столетий. В случае конкретных работающих промышленных систем руководитель часто подбирает значение , изучая результат работы системы при ранее взятых значениях . В случае артиллерийской стрельбы вычисление значений или осуществляется при помощи посылки снаряда в цель, а выбор осуществляется лицом, корректирующим стрельбу. Можно найти много аналогов таких алгоритмов в повседневной жизни человека и животных.

Рассмотрим вопрос о решении уравнения (5) методом Ньютона. Согласно формуле дифференцирования решения уравнения второго порядка, справедливо равенство

— решение задачи Коши

Численно или аналитически решая эту задачу, находим значение .

Поскольку задачу Коши (6), как правило, требуется решать численно, исследуем сразу дискретный вариант этого метода. Рассмотрим сеточную аппроксимацию (3); зададимся произвольным и, пользуясь рекуррентной формулой, вытекающей из (3),

при начальных условиях , находим сеточную функцию, удовлетворяющую сеточному уравнению и левому граничному условию. Значение является некоторой функцией от , вычисление каждого значения которой производится с помощью рекуррентного процесса (8).

Таким образом, решение задачи (3) сводится к решению скалярного уравнения

Предположим, что для решения этого уравнения используется метод Ныотона. Продифференцировав (8) по , получим

здесь . Кроме того, имеем

Таким образом, при заданном , производя параллельно вычисления по формуле (8) и по формуле (9), можно найти и осуществить следующий шаг метода Ныотона:

Если соотношение (9) переписать в виде

то оно превращается в разностную схему, аппроксимирующую уравнение (7).

В случае, когда скалярное уравнение, вместо (10) часто целесообразно вычислить по приближенной формуле

в частности, можно брать .

Заметим, что в случае использования формулы (10) и вычисления производной с помощью (11), нужно обращать внимание на разумный выбор величины (см. § 2.16), поскольку величина погрешности значения , получаемого путем численного интегрирования, часто оказывается довольно большой.

Рассмотрим нелинейную краевую задачу

Пусть функции таковы, что система уравнений

однозначно определяет вектор . Тогда задача (12) может быть сведена к системе нелинейных уравнений относительно параметров .

Довольно часто граничное условие в точке 0 имеет вид

тогда в качестве целесообразно взять . Таким образом, здесь в качестве искомых параметров выступают неизвестные компоненты решения в точке .

Решая систему (13) при каждых , можно определить вектор решая задачу Коши при начальном условии , определяем и затем находим . Таким образом, решение задачи (12) сводится к решению нелинейной системы уравнений

Значительную группу методов решения нелинейных систем составляют методы типа метода Ньютона, где наряду со значениями функций используются значения их производных . Наиболее распространены следующие два способа нахождения этих производных.

1. Для определенности речь пойдет о вычислении производных . Пусть мы задались значениями . Из системы уравнений (13) найдем соответствующие . Дифференцируя уравнения системы (13) по , получаем систему уравнений для отыскания производных :

Решение системы при начальных условиях является функцией от параметров ; вектор производных

удовлетворяет системе дифференциальных уравнений

После численного решения этой системы получаем вектор . Теперь можно найти производные

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

В качестве стандартного метода определения производных этот метод неудобен тем, что наряду с написанием программы вычисления правых частей уравнения он требует от пользователя также написания программы вычисления производных .

2. Для большинства итерационных методов решения систем уравнений требуется вычислять значения производных правых частей лишь с умеренной точностью. Поэтому для нахождения этих производных можно просто воспользоваться какими-либо формулами численного дифференцирования, например, простейшей:

Вычисление производных по этой формуле требует дополнительно (по сравнению с нахождением значений ) еще одного численного решения задачи Коши, соответствующей параметрам . Поскольку при численном нахождении значений функций может иметь место большая погрешность, которая еще более возрастает при делении на , здесь следует обратить внимание на разумный выбор . Для описываемого метода типично одновременное нахождение производных всех функций , по фиксированной переменной поэтому здесь может оказаться разумным применение итерационных процессов с поочередным уточнением параметров . Можно представить себе такой итерационный процесс: параметры уточняются в циклическом порядке; уточненное значение параметра выбирается из условия минимума некоторой функции

(см. подробнее § 7.3).

Так же как при решении линейных краевых задач, возникает вопрос о применимости метода в условиях реальных округлений.

Если решения системы уравнений в вариациях сильно растут с ростом , то погрешности в значениях и вычислительные погрешности при численном интегрировании приводят к большим погрешностям в значениях функции это в конечном счете приведет к большой погрешности получаемого решения. Если такая погрешность окажется недопустимой, то следует ввести иную параметризацию задачи.

В настоящее время в вычислительной практике получили распространение методы, занимающие промежуточное положение между методами, соответствующими формулам (3), где в качестве неизвестных параметров выступают значения решения во всех узлах сетки, и описанным выше методом, где в качестве неизвестных параметров выступают значения решения в одной точке. Задаются точками такими, что на отрезках , решения системы уравнений в вариациях не очень сильно возрастают как при продвижении в направлении положительных , так и при продвижении в направлении отрицательных . В качестве отыскиваемых параметров принимаются неизвестные компоненты решения в точках и значения решений в точках (более подробно см. [1]).

При практическом решении конкретных нелинейных задач для обыкновенных дифференциальных уравнений, как и в случае других нелинейных задач, обычно приходится заниматься «доводкой» метода: предлагается какой-то специальный метод получения начального приближения, который затем модернизируется с целью расширения области начальных условий, при которых он сходится для данного конкретного класса задач. В ряде случаев метод решения строится путем имитации на ЭВМ методов, встречающихся в живой природе, или применяемых практиками для решения задач данного класса. Если рассматриваемая краевая задача является задачей на экстремум некоторого , то исходный функционал приближается функционалом, зависящим от конечного числа параметров, и путем линеаризации последнего получают достаточно хорошее приближение. Примеры подобных функционалов для случая линейных задач будут рассмотрены в § 11.

<< Предыдущий параграф Следующий параграф >>
Оглавление