Материал: 5544

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
a0 , b3

у

9

9,034 12

9,069 76

9,106 85

9,145 30

9,185 08

 

 

 

 

 

 

 

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

Пусть, например, решение некоторой задачи методом Эйлера с точностью 0,1 потребовало 100 операций. Тогда решение её с тем же шагом методами 2-го порядка потребует около 250 операций и даст точность 0,01. При том же шаге метод 3-го порядка примерно за 500 операций даст точность 0,001, а метод 4-го порядка – точность 0,000 1 за 1 000 операций.

Если же с точностью 0,000 1 решать задачу методом Эйлера, шаг надо уменьшить в 100 раз, и число действий составит 10 тыс. – в 10 раз больше, чем методом 4-го порядка.

Пусть теперь понадобилось решить задачу с точностью 10 8 . Для решения методом 4-го порядка достаточно уменьшить шаг в 10 раз, и число операций составит 10 тыс. Для решения методом 3-го порядка шаг надо уменьшить

примерно в 22 раза ( 3 10 3 /10 8 22 ), что приведёт к 11 тыс. действий. Достижение той же точности методами 2-го порядка требует уменьшения

шага в 1 000 раз и соответственно 250 тыс. действий, а достижение точности методом Эйлера – в 10 млн раз, что даёт 1 млрд операций.

Для каждого метода число действий в конкретной задаче зависит в основном от сложности функции в правой части уравнения.

4.5. Метод прогонки решения краевой задачи для линейного дифференциального уравнения второго порядка

Известно, что функции спроса D(P) и предложения S(P) зависят не только от цены P, но и от скорости её изменения P' и от увеличения темпа роста P'' так, что

D a0 a1P a2 P a3 P и S b0 b1P b2 P b3 P ,

где a0 , , b3 0 – некоторые коэффициенты. Задача о равенстве спроса и пред-

ложения приводит к уравнению P c1P c2 P c0 . Его решение – функция P(t),

дающая зависимость цены от времени t.

Если и как следствие c0 , c1 , c2 непостоянны, получается уравнение типа P r t P q t P f t . В общем виде оно решается для узкого класса функций r(t), q(t), f(t), и необходимы приближённые методы решения.

Уравнение (в более привычной записи)

76

y p x y q x y f x

(4.10)

относительно функции y(x) имеет смысл на отрезке [a, b], если на нём определены p(x), q(x), f(x). Тогда его можно решить численно, если даны значения функции y(a) и y(b) (с экономической точки зрения: известны значения цены P в разные моменты времени, достаточно удалённые один от другого).

Приведём схему решения уравнения (4.10) при краевых (граничных) условиях

 

 

 

 

 

y a y0 ,

y b yn

 

 

 

 

 

 

 

(4.11)

где у0, уn – заданные числа.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Разделим [a, b] на n равных частей точками

x0 , x1 , , xn ,

где

x0 a

и xn b ,

шаг h xk 1 xk

const .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Обозначим

pk , qk , fk – значения соответствующих заданных функций р(х),

q(x), f(x) в точке xk .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Вместо задачи (4.10), (4.11) будем решать задачу

 

 

 

 

 

 

 

 

 

 

yk 1

2 yk yk 1

p

 

yk 1 yk 1

q

 

y

 

f

 

(4.12)

 

 

 

h

2

 

k

2h

k

k

k

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

c неизвестными числами у1, …, уN-1 и известными числами у0, уn, являющихся правыми частями равенств (4.11). Это значит, что в уравнении (4.10) вторая производная y'' в точке хк заменена разностным отношением

yk 1 2 yk yk 1 h2 ,

а первая y' в точке хк – симметричным разностным отношением

yk 1 yk 1 . 2h

В§ 5 будет показано, что на достаточно гладких функциях у(х) эти разностные отношения будут приближать соответствующие производные с точностью О(h2). Для этого надо потребовать, чтобы функция у(х) была четырежды непрерывно дифференцируемой на интервале (а, b). Однако требование от функции большей гладкости не улучшит этой точности.

Вравенстве (4.12) индекс k принимает значения k = 1,2,…, n–1. Таким образом, (4.12) есть система линейных алгебраических уравнений.

Всего получаем n–1 уравнение относительно n–1 неизвестных y1 , y2 , , yn 1 .

Напомним, что значения y0 y a и yn y b известны (даны в условии).

Перегруппировав слагаемые, получаем систему уравнений

77

 

 

 

 

 

 

 

 

 

 

 

 

2

1

 

 

p1

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

p1

 

 

 

 

 

 

 

y1

q1

 

 

 

 

 

 

y2

 

 

 

 

 

 

 

 

 

 

f1

y0

 

 

 

 

 

 

 

 

 

 

 

,

 

 

 

 

h

2

 

2

 

 

 

 

 

 

 

2

2h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h

 

 

 

2h

 

 

 

 

 

 

 

h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

p2

 

 

 

 

 

 

 

 

2

 

1

 

 

 

 

p2

 

 

 

 

 

 

 

 

 

 

y1

 

 

 

 

 

 

 

 

 

 

 

 

 

y2

q2

 

 

 

 

 

 

 

y3

 

 

 

 

 

 

 

 

 

 

f

2

,

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

h

2

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

h

 

 

 

 

 

 

2h

 

 

 

 

 

 

 

 

 

 

 

h

 

 

 

 

 

2h

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

p3

 

 

 

 

 

 

 

2

 

1

 

 

 

 

 

p3

 

 

 

 

 

 

 

 

 

y2

 

 

 

 

 

 

 

 

 

 

 

y3

q3

 

 

 

 

 

 

 

y4

 

 

 

 

 

 

 

 

 

 

 

 

 

f

3 ,

 

 

 

 

 

2

 

 

2h

 

h

2

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h

 

 

 

 

 

2h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

…,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

p

n 1

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

1

 

p

n 1

 

yn 2

 

 

 

 

 

 

 

 

 

 

 

 

 

yn 1

qn 1

 

 

 

 

 

 

fn 1

yn

 

 

 

 

 

 

.

 

 

2

 

 

 

 

 

 

 

 

h

2

 

 

2

 

 

 

h

 

 

 

 

 

 

 

2h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h

 

 

 

2h

В 1-м и последнем уравнении скобки с известными по условию y0 и yn

перенесены вправо. Обратите внимание на разные знаки в скобках.

Получена система в виде, допускающем решение методом прогонки (см. § 4 части 1). При определённых свойствах функций p(x), q(x) выполнены достаточные условия сходимости.

Заметим, что при

 

p

k

 

 

2

будет

1

 

pk

 

 

 

1

 

pk

 

 

1

 

pk

 

1

 

pk

 

2

,

 

 

 

 

 

 

2

 

 

2

 

 

2

 

 

2

 

 

2

 

 

 

 

 

h

 

h

 

2h

 

h

 

2h

h

 

2h h

 

2h h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

тогда для сходимости достаточно (но не необходимо) выполнение неравенства

q

 

 

2

 

2

, что имеет место при любом q

 

0

или при условии

q

 

 

4

.

 

k

 

h2

 

h2

 

k

 

 

 

k

 

h2

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

4.6.Задачи Коши для систем дифференциальных уравнений

иуравнений высокого порядка

Задача Коши системы уравнений первого порядка с двумя неизвестными функциями у(х) и z(x) и известными правыми частями имеют вид:

y f x, y, z ,z g x, y, z ,

y x0 y0 , z x0 z0.

Она допускает численное решение на отрезке, содержащем x0 , причём лю-

бым из рассмотренных ранее методов. Например, решение системы методом Эйлера сводится к нахождению последовательности

78

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

 

 

Источник: https://studfile.net/preview/16711204/