Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Решение задач вычислительной математики с использованием языка программирования пакета MathCad. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
☆
71
шаг h столь малым, чтобы соседние разности
3
i
q
3
1iq
23
0 0 0 0 0
23
1 1 0 0 0
23
2 2 1 0 0
1 1 1
,
2 12 24
1 5 1
,
2 12 24
1 5 3
.
2 12 8
y q q q q
y q q q q
y q q q q
 
  
 
,ab
1
1 1 2
2
2 1 2
( , , ),
( , , ).
dy
f x y y
dx
dy
f x y y
dx
 
1
22
2
1
x
f
xy

2
2
22
1
1
y
f
xy

1
( ) 0.2ya
2
( ) 0.1ya
,ab
1a , 1b
0.1h
,ab
и
отличались
между собой незначительно (с заданной точностью). Для повышения точности результата формула Адамса может быть пополнена членами, содержащими четвертые и высшие разности величины q. При этом
возрастает число первых значений функции y, которые требуются на начальном этапе вычислений. Формула (6.8) носит название экстрапо-
ляционной формулы Адамса. Метод Адамса позволяет получить более точные результаты, чем метод Эйлера и его уточнения.
Формулы Адамса–Крылова для решения уравнения (6.1) имеют следующий вид:
Пример 6.1. Решить систему обыкновенных дифференциальных уравнений на интервале
:
где
Решение. Границы отрезка
. Зададим шаг
ка
приведен на рис. 6.1.
,
,
,
.
, на котором ищется решение:
. Функция определения длины отрез-
72
otrz a b( ) g b a a 0 b 0if
g a b a 0 b 0if
g a b otherwise
g

Рис. 6.1. Функция определения длины отрезка
,ab
Adams a b y h n( ) d rkfixed y a b
otrz a b( )
h
f
 
 
w
d
2 2
d
3 2
d
4 2
d
2 3
d
3 3
d
4 3
d
2 1
d
3 1
d
4 1
  
  
as y1y2a
a 3 h a
f1 f w
i 1 3
w
i 1 1
w
i 1 2
f2 f w
i 2 3
w
i 2 1
w
i 2 2
f3 f w
i 3 3
w
i 3 1
w
i 3 2
w
i jwi 1 j
h
12
23f1j 16 f2j 5 f3j
j 1 nfor
a a h
w
i 3
a
i 4 3
otrz a b( )
h
for
w augment asTwT
w
T

Функция формирования множества экстраполяционных точек на отрезке
Для расчета необходимо определить каким-либо способом три приближения искомой функции, задающие «начальный отрезок». На­ходить эти приближения будем по методу Рунге–Кутты, используя встроенную функцию MathСad rkfixed(y, x1, x2, npoints, D), где y –
дана на рис. 6.2.
Рис. 6.2. Метод Адамса
73
заданные значения функции (начальные условия), x1 – начальное зна-
Eiler a b y h n( ) as y1y2a
f f a y( )
y
j
yjh fj
d
i j
yj
j 1 nfor
a a h d
i 3
a
i 1
otrz a b( )
h
for
d augment asTdT
d
T

чение интервала, x2 – конечное значение интервала, npoints – количество рядов в выходной матрице; D – обыкновенное дифферен­циальное уравнение.
Для проверки применим еще функцию, реализующую менее точ­ный метод Эйлера (рис. 6.3).
Эйлера (рис. 6.4–6.6).
Сравним значения, полученные по методам Адамса, Рунге–Кутты и
Рис. 6.3. Метод Эйлера
74
Rgka
123
1
2
3456789
10
111213
14151617181920
21
-1
0.2
0.1
-0.9
0.1313426043
0.1074643471
-0.8
0.0668380291
0.1159476647
-0.7
7.14 628298 48·10
-3
0.1255997302
-0.6
-0.0469 935881
0.1365814985
-0.5
-0.0947 784348
0.1490608458
-0.4
-0.1353 718386
0.1632070196
-0.3
-0.1679 540693
0.1791842397
-0.2
-0.1917 902667
0.1971448044
-0.1
-0.2063 090314
0.2172216501
0
-0.2111 760146
0.2395198995
0.1
-0.2063 43235
0.2641070656
0.2
-0.1920 588402
0.291002554
0.3
-0.1688 337441
0.3201685832
0.4
-0.1373 753014
0.3515056169
0.5
-0.0985 066404
0.3848549392
0.6
-0.0530 901435
0.4200090083
0.7
-1.9671 613018·10
-3
0.4567276908
0.8
0.0540818707
0.4947567864
0.9
0.1143586185
0.5338451307
1
0.1782538622
0.57375775
Рис.6.4. Результаты, полученные по методу Адамса
Рис. 6.5. Результаты, полученные
по методу Рунге–Кутты
75
Рис. 6.6. Результаты, полученные по методу Эйлера
1
f
2
f
1
f
2
f
Результаты сравнения методов для функции
представлены на
рис. 6.7, где значения функции: А1 – по методу Адамса; B1 – по методу Рунге–Кутты; Е1 – по методу Эйлера.
На рис. 6.8 представлены результаты сравнения методов для функ­ции
, где значения функции: А2 –по методу Адамса; B2 – по методу
Рунге–Кутты, Е2 –по методу Эйлера.
Поскольку метод Рунге–Кутты дает более точные результаты, то именно он был применен в расчетной схеме метода Адамса для опре­деления начальных приближений. На рис. 6.9 графически представле-
ны результаты сравнения для функции
; а на рис. 6.10 – для функции
(через На обозначена матрица шагов).
76
1
f
2
f
Рис. 6.7. Результаты сравнения для функции
Рис. 6.8. Результаты сравнения для функции
.
77
1
f
2
f
А1
В1
Е1
На А2
В2
Е2
На
Рис. 6.9. Графическое сравнение результатов для функции
Рис. 6.10. Графическое сравнение результатов для функции
Исследуем влияние шага на точность решения. Зададим шаг, в 10 раз меньший. Сравним значения, полученные по методам Адамса Рунге–Кутты и Эйлера (рис. 6.11–6.13). Выведем первые десять значе­ний – этого будет достаточно, чтобы судить о влиянии шага.
78
Рис. 6.11. Значения, полученные по методу Адамса
Рис. 6.12. Значения, полученные по методу Рунге–Кутты
Рис. 6.13. Значения, полученные по методу Эйлера
79
Результаты сравнения методов для функции
1
f
0.01h
1
f
0.01h
2
f
0.01h
2
f
0.01h
1
f
2
f
представлены на рис. 6.14.
Рис 6.14. Результаты сравнения для функции
с шагом
с шагом
Результаты сравнения методов для функции
с шагом
представлены на рис. 6.15.
Рис. 6.15. Результаты сравнения для функции
с шагом
На рис. 6.16 графически представлены результаты сравнения для функции
, а на рис. 6.17 – для функции
.
80
Рис. 6.16. Графическое сравнение результатов
для функции
1
f
с шагом
0.01h
Рис. 6.17. Графическое сравнение результатов
для функции
2
f
с шагом
0.01h
Из графика и расчетов видно, что при более частом шаге решение
А1
В1
Е1
На
На А2
В2
Е2
системы обыкновенных дифференциальных уравнений становится на­много точнее.
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]