Частина тексту файла (без зображень, графіків і формул):
БЛОК-СХЕМА ПРОГРАМИ
SHAPE \* MERGEFORMAT Виклик функції Adams
Adams (func, y, 3, xs, xe, 100, 0.001);
xs += 0.1; xe += 0.1;
Виведення значення залежної змінної і результата інтегрування
I ++
Початок
Задання початкових умов:
y’ = 1;
xs = 0; xe = 0.1;
I = 0
I < 20?
Так
Ні
Кінець
SHAPE \* MERGEFORMAT Ні
Обчислення наступного значення функції YA=(Q3/h)+ (y3+(1./2.)*dq2+(5./12.)*d2q1+(3./8.)*d3q0);
Виклик функції Adams
Перевірка аргументів функції на правильність
Виділение пам’яті для всіх масивів
Не вийшло
Вийшло
Завершення програми
Розподілення пам’яти між всіма масивами
Ініціалізація змінних і масивів q0, xi початковими значеннями
i = 0
i < 3?
Ні
Так
Обчислення K1 = f (xi, Y)
Корекція K1 для кожного рівняння
(K1 = K1 * h)
Обчислення аргументів для наступної функції (YA = Y + K1 / 2.)
Обчислення K2 = f (xi + h / 2., YA)
Корекція K2 для кожного рівняння
(K2 = K2 * h)
Обчислення аргументів для наступної функції (YA = Y + K2 / 2.)
Обчислення K3 = f (xi + h / 2., YA)
Корекція K3 для кожного рівняння
(K3 = K3 * h)
Обчислення аргументів для наступної функції (YA = Y + 3 * K3 / 2.)
Обчислення K4 = f (xi + h, YA)
Корекція K4 для кожного рівняння
(K4 = K4 * h)
Обчислення наступного значення функції (q[i+1] =
q[i]+(1./6.)*(K1+2*K2+2*K3+K4))
xi += h; i++
Корекція: q[i] = q[i] * h
Обчислення
∆q2, ∆q1, ∆q0, ∆2q1, ∆2q0, ∆3q0
x += h
xi < tk? (відрізок закінчився?)
Так
Є з чим зрівняти значення функції в точці tk?
flag=1
Так
Погрешность меньше заданной?
Так
Ні
Копіювати yt в y
Повернення в основну програму
Копіювати ya в yt
Зменшити крок в 2 раза (h=h/2.)
Ні
xi = tn (з початку відрізка)
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!