448691 * sin (0.99998749992187402342224094390368 * x))/exp (0.005 * x) - 8.0321285140562248995983935742972 /exp (0.5 * x)
4. Чисельне рішення
.1 Вихідні дані
) Дано:
0 = 2; 1 = 1.02; span> 2 = 2.01; m = 20 (с); = [0, 0, 0].
) Приведення ДУ до форми Коші
) Розрахунок загального рішення ДУ Y (k) аналітичним методом
) Розрахунок за допомогою ode45
) Розрахунок перших трьох значень за допомогою методу Рунге-Кутта
) Розрахунок за допомогою методу Адамса-Башфорта 3-го порядку
) Висновок графіків розрахунку різними методами на екран
4.2 Опис функцій програми
диференційний рівняння інтегрування програма
Основні функції та змінні, використані в реалізованої програмі: kursach2 (a, y0, t0, tm, h) - функція, параметрами якої є: коефіцієнти в рівнянні, початкові умови ЛДУ, інтервал часу, крок = R (t, a) - функція розрахунку методом Рунге-Кутта
[T, Y] = AB (tspan, a) - функція, що здійснює стартовий метод; вихідними параметрами є вектор-стовпець Y і параметр T; вхідними параметрами є початок і кінець відрізка інтегрування; вихідна матриця а
.3 Вихідний код
kursach2 (a, y0, t0, tm, h) = [2, 1.02, 2.01];% коефіцієнти ДУ = [0, 1, 0, 0, 0, 1; - 1/a (1), - a (3)/a (1), - a (2)/a (1)];% матриця A = 0; = 20; = [0, 0, 10/a (1)]; = 1;% крок = [0, 0, 0];% початкові умови = (tm - t0)/h;% кількість точекk = 1: n + 1% цикл по всіх точках для завдання аналітичного рішення (k) = t0 + (k - 1) * h; (k) = 10. -8.03212851405622489959839357430 * Exp (- .5 * T (k)) - 4.02595393919660286599384034488 * exp (- .5 e-2 * T (k)) * sin (.999987499921874023422240943905 * T (k)) - 1.96787148594377510040160642570 * exp (- .500000000000000000000000000000 e- 2 * T (k)) * cos (.999987499921874023422240943905 * T (k)); = odeset ('RelTol', 1e-10, 'AbsTol', 1e-5);% точність ode45
[T1, Y1] = ode45 ('F', T, y0, options);% рішення ode45
%
[T2, Y2] = AB (T, a);% метод Адамса - Башфорта для кроку h
[T3, Y3] = AB (T/2, a);% метод Адамса - Башфорта для кроку h/2
% побудова графіків (1), (2, 1, 1); (T, (Y1 (:, 1))); on; ('Рішення ode45'), (2, 1, 2); (T, (Y '- Y2 (:, 1))); on; (' Похибка ode45 '), (2), (2, 1, 1); (T, (Y' - Y1 (: , 1))); on; ('Метод Адамсa-Башвортa'), (2, 1, 2); (T, (Y2 (:, 1))); on...