Метод стрельбы (краевая задача) — численный метод, заключающийся в сведении краевой задачи к некоторой задаче Коши для той же системы дифференциальных уравнений. Суть: первое решение при последовательном изменении аргумента и повторении вычислений становится точнее
Рассматривается задача для системы двух уравнений первого порядка с краевыми условиями общего вида:
система
граничные условия
На практике часто возникает необходимость решения двухточечных краевых задач (когда дополнительные условия на решение налагаются в точках на концах отрезка). Такие задачи, например, возникают при рассмотрении стационарных уравнений типа “реакция-диффузия” или стационарных уравнений теплопроводности.
Наиболее развитые системы имеют опции для решения двухточечных краевых задач, но их возможности часто ограничены. Например, система Mathematica решает не все типы линейных задач и не решает задачи нелинейные.
Рассмотрим один из распространенных способов решения двухточечных краевых задач, в том числе нелинейных, называемый методом стрельбы.
Будем рассматривать данный метод на примере решения уравнения второго порядка, предварительно представив его в виде системы уравнений первого порядка. Это рассмотрение является достаточно общим, поскольку уравнение любого порядка можно свести к системе уравнений первого порядка. Итак, пусть дана краевая задача
у'' + x2y +2 = 0; (1)
y(-1) = 0; y(1) = 0. (1')
Представим данную задачу в виде системы уравнений первого порядка:
Далее сведем данную задачу к задаче Коши, введя параметр a , равный неизвестному значению f (-1). Для того, чтобы найти a , при котором выполнено граничное условие в точке х = 1, добавим еще два уравнения, продифференцировав исходную систему по параметру a . Для этого введем еще две переменные . В итоге получим систему ОДУ:
(3)
Решив данную систему с фиксированным параметром a , мы получим значение у(2), вообще говоря, отличающееся от истинного. Для корректировки параметра a рассчитываем его новое значение по формуле
.
Здесь y(1)calc - полученное в результате расчета значение у(1). Затем снова решаем систему (3) и т.д. Процесс расчета продолжается до тех пор, пока не будет выполнено условие | a new - a old | < e , где e - заранее заданная точность расчета.
Алгоритм
1. Выбирается произвольно условие .
2. Рассматривается левое краевое условие как алгебраическое уравнение . Определяем удовлетворяющее ему значение
.
3. Выбираются значения в качестве начальных условий задачи Коши для рассматриваемой системы и интегрируется эта задача Коши любым численным методом (например, по схемам Рунге — Кутты).
4. В итоге получается решение , зависящее от η как от параметра.
Значение выбрано так, что найденное решение удовлетворяет левому краевому условию. Однако правому краевому условию это решение, вообще говоря, не удовлетворяет: при его подстановке левая часть правого краевого условия, рассматриваемая как некоторая функция параметра
:
,
не обратится в нуль.
5. Подбирается параметр η по условию нахождения такого значения, для которого с требуемой точностью.
Таким образом, решение краевой задачи сводится к нахождению корня одного алгебраического уравнения