- •Численное решение обыкновенных дифференциальных уравнений
- •09.03.01 «Информатика и вт»;
- •09.03.04 «Программная инженерия»;
- •12.03.01 «Приборостроение»
- •Содержание
- •1 Описание лабораторной работы
- •3 Краткая теория к лабораторной работе
- •3.1 Метод Эйлера
- •3.2 Неявный метод Эйлера
- •3.3 Метод Рунге-Кутта
- •3.3.1 Метод Рунге-Кутта 2-ого порядка (модифицированный метод Эйлера)
- •3.3.2 Метод Рунге-Кутта 4-ого порядка
- •3.4 Метод Адамса
- •4 Вопросы самоконтроля
- •Литература
- •Приложение.
Министерство образования и науки Российской Федерации
Федеральное государственное бюджетное образовательное учреждение высшего образования «Новосибирский государственный технический университет» |
Факультет Автоматики и вычислительной техники |
Кафедра Вычислительной техники |
ВЫЧИСЛИТЕЛЬНАЯ МАТЕМАТИКА
Численное решение обыкновенных дифференциальных уравнений
Методические указания к лабораторной работе № 7
для студентов II курса дневного отделения АВТФ
Образовательные программы:
09.03.01 «Информатика и вт»;
09.03.04 «Программная инженерия»;
12.03.01 «Приборостроение»
НОВОСИБИРСК
2017
Содержание
1 Описание лабораторной работы 3
2 Варианты контрольных заданий 4
3 Краткая теория к лабораторной работе 5
3.1 Метод Эйлера 5
3.2 Неявный метод Эйлера 7
3.3 Метод Рунге-Кутта 8
3.3.1 Метод Рунге-Кутта 2-ого порядка (модифицированный метод Эйлера) 8
3.3.2 Метод Рунге-Кутта 4-ого порядка 8
3.4 Метод Адамса 9
4 Вопросы самоконтроля 10
Литература 11
Приложение. 12
1 Описание лабораторной работы
Цель работы: На основе заданного дифференциального уравнения приобрести опыт, практические навыки численного решения ОДУ и исследования на основе вычислительных экспериментов основных свойств вычислительных процессов и результатов применения численных методов.
Задание.
Задано одно ОДУ 1-го порядка y’ = f(x, y) с известной функцией f(x, y) . Найти численное решение задачи Коши для этого уравнения на отрезке 0 ≤ x ≤ 1, при y(0) = 1 с помощью системы MathCad, используя три разных метода:
Метод высокого порядка (Рунге-Кутта);
Метод Эйлера;
Неявный метод Эйлера.
Порядок решения.
По п.1 записать программу вычисления f(x, y) MathCad и использовать стандартные процедуры решения ОДУ в этой системе (например, rkadapt, rkadart, rkfixed). Найти шаг, обеспечивающий абсолютную погрешность решения ε ≤ 0.01÷0.001 при x = 1 и относительную погрешность ε / y < 0.1.
По п.2 записать формулы метода Эйлера и запрограммировать их в MathCad. Записать условия устойчивости численного решения и найти шаг, обеспечивающий устойчивость и погрешность п.1.
По п.3 записать формулы неявного метода Эйлера и запрограммировать их в MathCad. При этом для решения нелинейного уравнения на каждом шаге интегрирования использовать стандартную процедуру поиска корня вычисления уравнения в системе MathCad (root). Уменьшая шаг, найти его величину, обеспечивающую ту же погрешность, что и в п.1. Записать условие устойчивости численного решения, убедится, что они выполняются при любом шаге.
По п. 4 на метода основе Рунге-Кутта 4-го порядка решить ОДУ заданного варианта , используя стандартные процедуры решения и параметры ОДУ MathCad, затем запрограммировать соответствующий численный метод в MathCad.
Исследовать влияние шага интегрирования на точность решения, добиться получение решения с заданной точностью.
Отчет по работе.
Привести:
- общие формулы всех трех методов численного интегрирования, их конкретный вид для заданного уравнения;
- общие условия устойчивости для методов Эйлера, их конкретный вид для заданного уравнения и величину шага, обеспечивающего устойчивость;
- результаты расчета функции f(x) по всем трем методам в виде таблиц и графиков;
- выводы по сравнительной величине шага, обеспечивающего заданную точность по трем методам;
- провести сравнительный анализ рассмотренных способов решения поставленной задачи и сформулировать рекомендации по их использованию.
2 Варианты контрольных заданий
Для студентов групп АВТ-*9 и *10, номера вариантов от 1 до 30 выбираются согласно номера фамилии в списке журнала контроля за посещением занятий, для студентов групп АВТ-*15, АВТ-*18 и *19 номера вариантов - от 31 до 60
Вариант |
f(x,y) |
|
Вариант |
f(x,y) |
1 |
|
|
31 |
|
2 |
|
|
32 |
|
3 |
|
|
33 |
|
4 |
|
|
34 |
|
5 |
|
|
35 |
|
6 |
|
|
36 |
|
7 |
|
|
37 |
|
8 |
|
|
38 |
|
9 |
|
|
39 |
|
10 |
|
|
40 |
|
11 |
|
|
41 |
|
12 |
|
|
42 |
|
13 |
|
|
43 |
|
14 |
|
|
44 |
|
15 |
|
|
45 |
|
16 |
|
|
46 |
|
17 |
|
|
47 |
|
18 |
|
|
48 |
|
19 |
|
|
49 |
|
20 |
|
|
50 |
|
21 |
|
|
51 |
|
22 |
|
|
52 |
|
23 |
|
|
53 |
|
24 |
|
|
54 |
|
25 |
|
|
55 |
|
26 |
|
|
56 |
|
27 |
|
|
57 |
|
28 |
|
|
58 |
|
29 |
|
|
59 |
|
30 |
|
|
60 |
|
