Введение в вычислительную физику - Федоренко Р.П.
ISBN 5-7417-0002-0
Скачать (прямая ссылка):
Решение х°(() можно получить, взяв задачу Коши с начальными данными X0(O) = 0. Само решение находим каким-либо численным методом, хотя бы по схеме Эйлера. Обозначая хкъ х°((к), где {tk} — сетка, покрывающая интервал [0, Г], используем простейшую схему
xUi = xI + хкА(Ч) 4 + a(h)>
т* “ **+i - **> *о = °» ? — 0, 1, ..., AT.
Конечно, реально на практике используют более точные методы, Рунге—Кутты например, но сейчас важна принципиальная схема. При вычислении линейно-независимых решений х‘(() используем для них напрашивающиеся данные Коши:
х‘(0) = е‘, і= 1, 2, ..., р,
где е1 = {0, ...,0, 1;, 0, ...,0}, т.е. і-й орт р-мерного пространства. Итак, X10 ~ е', и далее
*i+i = ** + & — 0, 1, ..., /С— 1.
Отметим, что такой способ решения краевой задачи «стоит» (р + 1)-кратного решения задачи Коши. Однако часто объем работы можно сократить. Это относится к очень распространенному типу краевых задач: г < р компонент х задано при t = 0 и р — г компо-
§8]
РЕШЕНИЕ КРАЕВЫХ ЗАДАЧ ДЛЯ СИСТЕМ ОДУ
81
нент — при t = T, т.е. краевые условия имеют вид
X1(O) = Zi, X2(O) = Z2, •••, Xr(O) = Zr
(здесь нижний индекс — номер компоненты). Правые краевые условия произвольные; например,
Dx(T) — b или Bx(O) + Dx(T) = d,
где В, D — прямоугольные матрицы р-* (р — г) (р столбцов, р—г строк), Ь — (р— г)-вектор. В этом случае для решения x°(t) берем данные Коши:
x?(0)=Z,-, і = I, 2, ..., r\ j4°> = 0, г'= г + I, г + 2, ..., р,
а решение краевой задачи ищем в виде
x(t) = x°(t) + 2 аг X1(I)
i=r+l
(x‘(t) находятся так же, как и раньше). Легко видеть, что такая конструкция при любых а; удовлетворяет уравнению х = Ax + а и левым краевым условиям, а свободных параметров а; как раз столько, чтобы за их счет выполнить р—г условий на правом конце интервала времени.
Нелинейные краевые задачи. Метод «стрельбы». Перейдем теперь к нелинейным краевым задачам. Как всегда, в нелинейной ситуации лучше говорить о возможном подходе, чем о методе. Итак, пусть требуется найти решение уравнения
g = Z(x,0. O^t^T,
при общих, например, краевых условиях Ф(х(0), х(Т)) = 0.
Используем умение достаточно надежно решать задачу Коши. Введем данные Коши лг(0) в качестве искомых неизвестных. Обозначая их через а = {(Х|, а2, ..., ар}, определим траекторию x(t, а) задачи Коши:
X = f(x, t), X(O) = а.
Когда мы говорим «определим траекторию», это означает, что при каждом заданном значении вектора параметров а мы можем с какой-то точностью численно проинтегрировать задачу Коши.
Введем функцию
F(a) = Ф(а, х(Т, а)).
Решение краевой задачи свелось к решению системы нелинейных уравнений F(a) =0 (р уравнений с р неизвестными). Еще раз под-
82
ОСНОВЫ ВЫЧИСЛИТЕЛЬНОЙ МАТЕМАТИКИ
черкнем, что функция F задана нам достаточно сложным алгоритмом, позволяющим для любого а вычислить вектор F\ такое вычисление «стоит» одного численного интегрирования задачи Коши с начальными данными а.
Решение системы можно осуществить методом Ньютона и его модификациями. Конечно, в этом случае вычисление матрицы Fa(a) проще всего выполнить численным дифференцированием, хотя есть и более аккуратные методы, используемые в вариационном исчислении (они предполагают использование так называемой системы уравнений в вариациях; см. § 27, 28).
Спектральная задача Штурма-Лиувилля. Специальный, но очень важный класс краевых задач связан с определением точек спектра для уравнения Штурма—Лиувилля. Рассмотрим простейший случай. Задано линейное однородное дифференциальное (самосопряженное) уравнение
содержащее параметр X (функции р(1) > 0, q(t), r(t) заданы). Уравнение дополнено простыми краевыми условиями (тоже линейными однородными), например х(0) = 0, х(Т) — 0. При почти всех к краевая задача имеет тривиальное решение x(t) = 0, но при некоторых специальных значениях X, называемых точками спектра, появляются и нетривиальные решения. Они-то (и соответствующие им значения X) представляют основной интерес в приложениях.
Соединим технику решения задачи Коши и решение нелинейных уравнений. Поставим для уравнения условия Коши х(0) = 0, ;*(0) = 1. (Нетрудно видеть, что вместо х(0) = 1 можно взять в краевом условии любое число.) После этого, если X задано, определяется траектория x(t, X) — решение задачи Коши.
Разумеется, при произвольном X эта траектория не удовлетворяет второму краевому условию, и теперь надо подобрать X так, чтобы на траектории x(l, X) было выполнено второе условие. Другими словами, определим функцию F(X) = х(Т, X) (опять-таки, напомним, что вычисление F при заданном X требует численного интегрирования задачи Коши) и станем решать уравнение F(X) — 0. Корни этого уравнения — суть точки спектра задачи Штурма—Лиувилля (разумеется, приближенные, коль скоро функцию F мы вычисляем лишь приближенно).
Самое грубое решение задачи можно представить себе так. Заменив функции р, ig, r(t) на постоянные, равные, например,, средним значениям по интервалу [0, TJ, вычислим спектр такой модельной задачи. Тем самым будет получена ориентировочная информация о