- •Министерство образования и науки Российской федерации
- •Кафедра математики и математических методов в экономике
- •ЧИСЛЕННЫЕ МЕТОДЫ
- •Хабаровск 2014
- •1.1. Постановка задачи о приближении функций
- •1.2. Метод множителей Лагранжа
- •Идея метода – искать полином не в виде (1.2), а как
- •Схема построения полиномов Лагранжа
- •Шаг 2. Пусть x – переменная. Составим произведение
- •Шаг 3. Раскрывая внешние скобки, можно получить многочлен степени n
- •Пример. По таблице
- •Шаг 1. Находим коэффициенты
- •Шаг 3. Раскрыв скобки, получим
- •1.3. Метод разделённых разностей и полиномы Ньютона
- •Часть 1. Разностные аналоги производных
- •Часть 2. Рекурсивное вычисление функции
- •Пример. Известна таблица значений функции
- •Ответ: значения полинома Ньютона равны 18 в точке 2 и 2,2401 в точке 0,7.
- •Аналогично
- •Продифференцировав каждое слагаемое три раза, получим
- •1.5. Метод наименьших квадратов
- •Поиск линейной зависимости
- •Подставив суммы в систему (1.11), получим
- •Подставив найденные суммы в систему (1.12), получим
- •Пример 4. По приведённым данным
- •Отсюда очевидным образом имеем, что
- •Схема метода касательных
- •Вычисление корней при помощи метода простых итераций
- •Составим систему
- •Соответствующая линейная система имеет вид
- •Таблица 2.3 – Решение примера 2
- •Общая схема метода
- •Остаётся сравнить значения
- •Общая схема метода золотого сечения
- •Пусть функция f(x) задана таблицей
- •Проинтегрировав, получаем, что
- •Последовательно находим
- •Интегрируя каждое слагаемое, получим, что
- •Тогда интеграл сводится к
- •Проинтегрировав каждое слагаемое, получим
- •По теореме об интегрировании сходящихся степенных рядов
- •Если интеграл определённый, то
- •Найдём значения
- •По формуле трапеций получим
- •По формуле Симпсона будет
- •По формуле парабол
- •Поскольку значения на концах не зависят от числа точек и
- •Ответ:
- •Шаг 4. Ответ:
- •Тогда
- •Ответ:
- •Ответ:
- •Формула метода 3-го порядка точности:
- •Ответ:
- •Формула метода 4-го порядка точности
- •Все дальнейшие вычисления аналогичны и приведены в таблице.
- •Таблица (начало)
- •Таблица (окончание)
- •Ответ:
- •Пример 1. Решим систему
- •Ответ:
- •Последнее преобразуется к виду
- •Задачу (5.10) – (5.11) будем записывать в виде операторного уравнения
- •Из ограниченности третьей производной следует, что
- •Таким образом, точность близости будет О(h).
- •В силу граничных условий имеет место и неравенство
- •Если yh есть решение уравнения (5.12), то из (5.27) имеем оценку
- •Замечание о делении отрезка на части
- •Решение уравнений делением отрезка
- •Метод секущих (хорд)
- •При реализации в EXCEL достаточно заполнить строчку
- •Метод касательных
- •Реализация метода мало отличается от метода секущих, заполняем строку
- •Таблица 6.1 – Решение уравнения
- •Подбор полиномов, проходящих через точки
- •Таблица 6.2 – Поиск полинома при помощи обратной матрицы
- •Полиномы Лагранжа
- •Таблица 6.3 – Построение полинома Лагранжа
- •Таблица 6.4 – Построение полинома Ньютона
- •Метод Эйлера решения задачи Коши
- •Таблица 6.5 – Решение уравнения методом Эйлера
- •Приближённое интегрирование
- •Таблица 6.6 – Вычисление интеграла методом трапеций и методом Симпсона
- •ЗАДАНИЯ ДЛЯ САМОСТОЯТЕЛЬНОЙ РАБОТЫ
- •Часть 1. Задания для работы без пакетов прикладных программ
- •Задание 1. Решение уравнений
- •Задание 2. Метод простых итераций
- •Задание 3. Метод простых итераций в приближённых вычислениях
- •Задание 4. Полиномы Лагранжа и Ньютона
- •Задание 5. Метод наименьших квадратов
- •Задание 6. Приближённое интегрирование
- •Задание 7. Задача Коши
- •Часть 2. Задания для работы в пакете EXCEL
- •Задание 1. Приближение функций полиномами
- •Задание 2. Задача Коши
- •Задание 3. Системы дифференциальных уравнений
- •Задание 4. Задача Коши 2-го порядка
- •Задание 5. Приближённое интегрирование
- •Задание 7. Метод Ньютона решения систем нелинейных уравнений
- •Задание 9. Применение рядов в приближённом интегрировании
- •Оглавление
yk 1 yk hf xk , yk , zk , |
||
|
zk |
hg xk , yk , zk , |
zk 1 |
где k 0,1, , n 1, и x0 , x1 , , xn – точки отрезка, на котором ищем решение.
Пример 1. Решим систему
|
|
|
|
|
|
|
|
|
|
|
y' 0,5z2 |
, |
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
4 y / z |
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
z' |
|
|
|
|
|
|
|
|
||||
с начальным условием y 0 1, z 0 2 |
на отрезке 0;0,5 с шагом h 0,1 . |
|
|
|
|||||||||||||||||||
Решение. |
Имеем |
y |
|
1, z |
|
2 , n |
0,5 0 |
5 |
соответствует точке |
x |
|
0,5. |
|||||||||||
0 |
0 |
|
5 |
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
0,1 |
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Общая формула решения: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
y |
k 1 |
y |
|
0,1 0,5z 2 |
, |
т.е. |
y |
k 1 |
y |
|
0,05z 2 , |
|
|
|
|||||
|
|
|
|
|
|
|
k |
|
|
|
k |
; |
|
|
k |
k |
|
|
|
||||
|
|
|
|
zk 1 |
zk |
0,1 4 y / z |
|
zk 1 |
zk |
0,4 y / z. |
|
|
|
||||||||||
Находим: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
y |
|
y |
0,05z2 |
1 0,05 22 1 0,2 0,8, |
|
|
|
|
|
|
|
|
|||||||||||
1 |
0 |
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
z1 |
z0 0,4 y0 / z0 |
2 0,4 1/ 2 2 0,2 1,8; |
|
|
|
|
|
|
|
||||||||||||||
y |
2 |
y |
|
0,05z |
2 0,8 0,05 1,82 0,8 0,162 0,638, |
|
|
|
|||||||||||||||
|
|
1 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
z2 |
z1 0,4 y1 / z1 1,8 0,4 0,8 /1,8 1,8 0,178 1,622; |
|
|
|
|||||||||||||||||||
y |
|
y |
|
0,05z |
2 0,638 0,05 1,6222 0,638 0,132 0,506, |
|
|
|
|||||||||||||||
3 |
|
2 |
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
z3 |
z2 |
0,4 y2 |
/ z2 1,622 0,4 0,638 /1,622 1,622 0,157 1,465; |
|
|
|
|||||||||||||||||
y |
|
y |
|
0,05z2 0,506 0,05 1,4652 0,506 0,107 0,399, |
|
|
|
||||||||||||||||
|
4 |
|
3 |
|
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
z4 |
z3 |
0,4 y3 |
/ z3 1,465 0,4 0,506 /1,465 1,465 0,139 1,326; |
|
|
|
|||||||||||||||||
y |
y |
|
0,05z2 0,399 0,05 1,3262 0,399 0,088 0,311, |
|
|
|
|||||||||||||||||
|
5 |
|
4 |
|
4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
z5 |
z4 |
0,4 y4 |
/ z4 1,326 0,4 0,399 /1,326 1,326 0,120 1,206. |
|
|
|
Точность метода невысока, ошибка неизвестна, цифры нельзя считать верными.
Ответ:
x |
0 |
0,1 |
0,2 |
0,3 |
0,4 |
0,5 |
|
|
|
|
|
|
|
y |
1 |
0,8 |
0,638 |
0,506 |
0,399 |
0,311 |
|
|
|
|
|
|
|
z |
2 |
1,8 |
1,622 |
1,465 |
1,326 |
1,206 |
|
|
|
|
|
|
|
Замечание. Задача допускает точное решение y e 2 x и z 2e x . Значения функций, полученные по этим формулам (все цифры верные):
x |
0 |
0,1 |
0,2 |
0,3 |
0,4 |
0,5 |
|
|
|
|
|
|
|
|
|
|
79 |
|
|
|
y |
1 |
0,819 |
0,670 |
0,549 |
0,449 |
0,368 |
|
|
|
|
|
|
|
z |
2 |
1,810 |
1,637 |
1,482 |
1,341 |
1,213 |
|
|
|
|
|
|
|
По такой же схеме можно решать системы с любым числом функций.
Задача Коши для дифференциального уравнения второго порядка, разрешён-
ного относительно старшей производной y'', при известных числах у0, y10 и из-
вестной функции f трёх переменных имеет вид:
y" f x, y, y' , |
|
||
|
y0 ; |
y' x0 |
y10. |
y x0 |
Она может быть решена заменой y' x z x , где z x – новая неизвестная функция. При такой замене получается система
z' f x, y, z ,
y' z x
с начальным условием y x0 y0 , z x0 z0 , где z0 y01 . Схема решения системы методом Эйлера, в частности, такая же, как в примере 1.
Пример 2. Решить на отрезке 0,5;1,5 с шагом h 0,2 задачу
y" 2 yy',
y 0,5 2 y' 0,5 4.
Решение. Исходное уравнение с неизвестной функцией y y x указанной заменой сведётся к системе
z' 2 yz,y' z
с начальным условием x0 0,5, y0 2, z0 4 .
Формулы пересчёта:
zk 1 zk |
0,2 2 yk zk zk 0,4 yk zk |
|
0,2zk . |
yk 1 yk |
|
Находим z1 4 0,4 2 4 0,8, y1 2 0,2 4 1,2 и т.д. |
Результаты вычислений приведены в таблице с округлением до 3 знаков.
|
|
|
|
|
|
k |
xk |
zk |
yk |
y xk |
y xk yk |
|
|
|
|
|
|
0 |
0,5 |
–4 |
2 |
2 |
0 |
|
|
|
|
|
|
1 |
0,7 |
–0,8 |
1,2 |
1,429 |
0,229 |
|
|
|
|
|
|
2 |
0,9 |
–0,416 |
1,04 |
1,111 |
0,071 |
|
|
|
|
|
|
3 |
1,1 |
–0,243 |
0,957 |
0,909 |
–0,048 |
|
|
|
|
|
|
|
|
|
80 |
|
|
4 |
1,3 |
–0,15 |
0,908 |
0,769 |
0,139 |
|
|
|
|
|
|
5 |
1,5 |
–0,096 |
0,878 |
0,667 |
0,211 |
|
|
|
|
|
|
В последнем столбце для сравнения указано точное решение y 1/ x . Видно изменение знака погрешности с последующим её нарастанием.
Вкачестве ответа выступает столбец yk .
§5. Аппроксимация, устойчивость и сходимость
втеории разностных схем
Конечно-разностные методы (методы сеток) являются эффективными методами численного решения обыкновенных дифференциальных уравнений и уравнений в частных производных. При этом можно рассматривать задачи с начальными, краевыми или начально-краевыми условиями. К таким методам относятся методы Эйлера и Рунге − Кутта решения задачи Коши (задачи с начальным условием) для обыкновенных дифференциальных уравнений первого порядка, изложенные в предыдущем параграфе.
Здесь будет изучаться вопрос о сходимости приближённого решения, полученного разностным методом, к точному решению соответствующей задачи для дифференциального уравнения. При этом возникнут понятия аппроксимации и устойчивости разностных схем. Изучаться будут только линейные дифференциальные уравнения.
Рассмотрим линейное обыкновенное дифференциальное уравнение
y a1 (x) y a0 (x) y f (x) |
(x (a, b)) |
(5.1) |
второго порядка с неизвестной функцией y=y(x) при заданных на интервале
(a, b) коэффициентах a1(x), a0(x) и правой части f(x). При этом ищется функция y(x), удовлетворяющая однородным краевым (граничным) условиям
y(a)=0, y(b)=0. |
(5.2) |
Задача (5.1) – (5.2) называется первой краевой задачей для дифференциального уравнения (5 .1).
81
Классическим решением задачи (5.1) – ( 5.2) называется непрерывная на отрезке [a, b] и дважды непрерывно дифференцируемая на интервале (a, b) функция y x , которая удовлетворяет уравнению (5.1) и краевому условию (5.2).
Можно рассмотреть более общую краевую задачу с неоднородными гра-
ничными условиями
y(a)=c, y(b)=d, |
(5.3) |
где c и d – известные числа. С теоретической точки зрения задача (5.1) , (5.3) не представляет особого интереса, так как сводится к предыдущей заменой неизвестной функции. Действительно, введём следующую замену:
u(x)=y(x) – c – |
d c |
(x – a). |
(5.4) |
|
b a |
||||
|
|
|
Тогда, очевидно, что в силу условий ( 5.3) для новой функции u(x) будут
выполняться однородные условия |
|
|
|
||||||
|
|
u(a)=0, |
u=(b)=0. |
||||||
Уравнение же ( 5.1) в силу замены (5 .4) примет следующий вид: |
|||||||||
u |
|
|
|
|
d c |
|
d c |
||
|
|
|
|
|
|
||||
+ a1(x) [ u |
+ b a |
] + a0(x) [u + c + b a (x – a)] = f(x). |
|||||||
|
|
Последнее преобразуется к виду
u |
|
|
|
|
d c |
d c |
|||
|
|
|
|
|
|
||||
+ a1(x) u |
+ a0(x)u = f(x) – b a a1(x) – [c + |
b a (x – a)]a0(x), |
|||||||
|
|
т. е. к виду (5.1) относительно неизвестной функции u(x), только с другой правой частью.
Дифференциальную краевую задачу (5.1) – (5.2) будем записывать в виде операторного равенства
Ly=f, |
(5.5) |
где L – заданный оператор, а f – заданная правая часть. Для этого достаточно положить
82
y a1 (x) y a0 (x) y, a x b, Ly y(a),
y(b);
f (x), f 0,
0.
Введённый оператор L является линейным.
Для дальнейших рассуждений введём следующие обозначения. Через Ω обозначим интервал (a, b), а через S – его границу {a, b}. Отрезок [a, b] обозначим через . Очевидно, что = Ω U S, т. е. отрезок [a, b] есть замкнутое множество, являющееся объединением интервала (a, b) (открытого множества) и его грани-
цы S = {a, b}.
Введём понятие сетки. Разобьём отрезок [a, b] на N равных частей с шагом h > 0 точками деления xi=x0+ih ( i 0,1, , N ). При этом предполагаем, что x0=a, xN=b. Точки деления x называются узлами сетки. Будем говорить, что на отрезке
[a, b] нанесена сетка с равномерными шагом
h= b a = xN x0 ,
N N
т. е. равномерная сетка на отрезке. Это множество обозначим h :
h = { xi = x0 + ih, i 0,1, , N }.
Множество h ={xi, i 1, , N 1 } называется равномерной сеткой на ин-
тервале (a, b). Множество Sh={x0, xN} называется границей для Ωh. Точки x0 и xN называются граничными узлами. Очевидно, что h= Ωh U Sh.
Любая функция yh yh x , определённая в узлах xi сетки Ωh или h, называ-
ется сеточной функцией. Таким образом, сеточная функция есть функция не непрерывного, а дискретного аргумента. Сама функция зависит от шага h сетки как от параметра. Каждую такую функцию можно рассматривать как конечномерный вектор yh yi , число компонент (координат) yi yh xi которого равно числу узлов соответствующей сеточной области.
83
На множестве сеточных функций введём специальные операторы – конечно − разностные отношения, являющиеся аналогами производных для функций непрерывного аргумента (см. § 1 и § 4).
Здесь применяются следующие разноcтные операторы:
+ yh(x) = |
yh (xi 1 ) yh (xi ) |
= |
|
|
yi 1 yi |
, |
|
|
|
(5.6) |
|||||||
|
|
|
|
|
|
|
|||||||||||
|
h |
|
|
|
h |
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
- yh(x) = |
|
yh (xi ) yh (xi 1 ) |
|
= |
|
|
yi |
|
yi 1 |
, |
|
|
|
(5.7) |
|||
|
|
h |
|
|
|
|
h |
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
1Uh(x) = |
|
yh (xi 1 ) yh (xi 1 ) |
= |
|
yi 1 yi 1 |
, |
|
|
(5.8) |
||||||||
|
|
|
|
2h |
|
|
|
|
|
|
2h |
|
|
|
|
|
|
2Uh(x) = |
yh (xi 1 ) 2 yh (xi ) U h (xi 1 ) |
|
= |
yi 1 2 yi |
yi 1 |
. |
(5.9) |
||||||||||
|
|
|
|||||||||||||||
|
|
|
h2 |
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
h2 |
|
|
|
Операторы (5.6) – (5.8) называются разностными отношениями первого порядка, причём (5.8) называют симметрическим разностным отношением.
Очевидно, что |
1yh = |
1 |
( + yh + - yh). Оператор (5.9) называется разностным |
||
2 |
|||||
|
|
|
|
||
отношением второго порядка. Операторы + и |
- коммутируют, при этом |
||||
|
|
|
2 yh = + - yh = |
- + yh. |
В ряде учебников разностные отношения (5.6) – (5.9) называют разностными производными соответствующего порядка в точке xi, при этом (5.6) называют
правой разностной производной, а (5.7) – левой разностной производной.
Заметим, что каждый из операторов (5.6) – (5.9) определён на своём множестве узлов. Операторы (5.8) и (5.9) определены для узлов сетки с номерами i= 1, , N 1, т.е. на Ωh . Оператор (5.6) определён для узлов сетки с номерами i = 0,1, , N 1, а оператор ( 5.7) – для узлов i c номерами i=1, , N .
Рассмотрим разностное уравнение
– 2y |
h |
+ a |
+y |
h |
+ a |
y |
h |
= f |
h |
(x |
є Ω ) |
(5.10) |
|
|
1,h |
|
0,h |
|
i |
h |
|
84