Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции Рна ПК ТТ ПиУ 2009.doc
Скачиваний:
6
Добавлен:
01.07.2025
Размер:
2.67 Mб
Скачать

Лекция 7

Тема: Численные методы решения обыкновенных дифференциальных уравнений

План: Задача Коши для обыкновенных дифференциальных уравнений. Примеры использования обыкновенных дифференциальных уравнений, в теплотехнических расчетах. Методы решения обыкновенных дифференциальных уравнений (одношаговые и многошаговые).

7.1 Задача Коши для обыкновенного дифференциального уравнения первого порядка

Уравнение, содержащее одну или несколько производных, называют дифференциальным. Поскольку большинство физических законов науки и техники записаны в форме дифференциальных уравнений, их решение является повседневной необходимостью. Задачи моделирования, связанные с движением массы или энергии, теплотехнологическими процессами и теплоэнергетическими системами, изменяющимися во времени, также неизбежно ведут к дифференциальным уравнениям. К сожалению, число уравнений, которые можно успешно решить аналитическими методами, очень ограничено. Поэтому при рассмотрении научных и инженерных задач особенно важен вопрос о решении дифференциальных уравнений с помощью персонального компьютера.

В зависимости от числа независимых переменных и, следовательно, типа входящих в них производных, дифференциальные уравнения делятся на две категории: обыкновенные, содержащие одну независимую переменную и производные по ней, и уравнения в частных производных, содержащие несколько независимых переменных и производные по ним, которые называют частными.

Дифференциальным уравнением называется уравнение, содержащее неизвестные функции у, независимые переменные x, производные неизвестных функций:

(7.1)

Решить дифференциальное уравнение - найти его общий интеграл - функцию Ф, связывающую независимую переменную х, искомую функцию у и n постоянных интегрирования с помощью уравнения Ф(х,у,с1,. с2,….,сn) = 0.

Чтобы решить обыкновенное дифференциальное уравнение (ОДУ), необходимо знать значения зависимой переменной и (или) её производных при некоторых значениях независимой переменной. Если эти дополнительные условия заданы при одном значении независимой переменной, то такую задачу называют задачей с начальными условиями или задачей Коши. Если же условия заданы при двух значениях независимой переменной, задачу называют краевой. В задаче Коши дополнительные условия называют начальными, а в краевой задаче  граничными.

Численное решение – это построение таблицы приближенных значении у1,y2, y3,…, yn. решения уравнения y = f (x) в точках x1,x2,x3,…xn.

Чаще всего полагают xi = x0+ih, где i = 0,1,2…n. Точки xi носят название узлов сетки, а величина h – шага сетки.

Численные методы разделяются на одношаговые, дающие формулу для вычисления значения yk+1 по одному предыдущему значению yk, и многошаговые, при которых для вычисления значения yk+1 требуется k предыдущих значений функции уl,yl-1, yl-2,…, yl-(k+1).

К одношаговым относятся методы Эйлера и Рунге-Кутты, к многошаговым – методы прогноза и коррекции.

Для оценки погрешности метода на одном шаге сетки разложим точное решение уравнения в ряд Тейлора в окрестности узла xk:

y(хk+1)= y(хk)+ (h/1!) y'(хk)+ (h2/2!) y''(хk) +….+(hр/р!) y(р)k)+.. . (7.2)

Численный метод решения дифференциального уравнения имеет порядок р, если его расчетные формулы согласуются с разложением в ряд Тейлора до членов порядка hр. Погрешность, связанная с тем, что вместо бесконечного ряда, рассматривается аппроксимация функции несколькими первыми членами ряда, называется погрешностью усечения (ограничения). Источником погрешностей будет представление чисел с ограниченным числом значащих цифр – погрешности округления и погрешность распространения – результат накопления погрешностей, появившихся на предыдущих этапах счета.

7.2 Одношаговые методы решения задачи Коши

Различные методы данной группы отличаются объемом проводимых вычислений и получаемой при этом точностью

7.2.1 Метод Эйлера

Дано уравнение у' = f(x,y) с начальным условием у(х0)= у0.

В методе Эйлера производная у' заменяется приближенной формулой

у'= Δу/Δх = f(x,y)

В результате на первом отрезке [х01] искомое решение приближенно представляется линейной функцией

Δу/Δх = f(x0,y0),

или у-у0 = f(x0,y0)(х-х0), у = у0 + f(x0,y0)(х-х0).

При х=х1 получим

у1 = у0 + f(x0,y0)(х10).

Таким образом, на отрезке [х01] искомая интегральная кривая (точное решение) заменяется отрезком прямой ММ0, касательной к кривой в точке М0.

Тангенс угла наклона этой прямой равен f(x0,y0). Аналогично находят остальные приближенные значения

yi+1 = уi + K1h, (7.3)

где K1= f(xi,yi), h=(хii-1).

Из (7.3) следует, что интегральная кривая в методе Эйлера заменяется ломаной линией с вершинами в точках М0(x0,y0), М1(x1,y1),…, Мn(xn,yn) (рис.7.1).

Метод Эйлера является наиболее простым и наименее точным методом решения ОДУ. Он применяется для поиска оценочных решений на [х0n].

У

у(х)

М2

М1

М0

Х

х0 х1 х2

Рисунок 7.1-Геометрическая интерпретация метода Эйлера

В рассмотренном методе переход от точки (xi,yi), в точку (xi+1,yi+1), осуществляется путем смещения на вектор (h, К1). Ошибка метода имеет порядок h2, так как члены, содержащие h во второй и более высоких степенях, отбрасываются, кроме того метод часто оказывается неустойчивым – малая ошибка увеличивается с ростом х. Этот метод можно усовершенствовать различными способами [1].

Рассмотрим модифицированный метод Эйлера. Хотя тангенс угла наклона касательной к истинной кривой в исходной точке известен и равен y(x0), он изменяется в соответствии с изменением независимой переменной. Поэтому в точке (x0+h) наклон касательной уже не таков, каким он был в точке x0. Следовательно, при сохранении начального наклона касательной на всем интервале h в результаты вычислений вносится погрешность. Точность метода Эйлера можно существенно повысить, улучшив аппроксимацию производной. Это можно сделать, например, используя среднее значение производной в начале и в конце интервала. В модифицированном методе Эйлера сначала вычисляют значение функции в следующей точке по методу Эйлера

y*n+1=yn + hf (x n, y n ). (7.4)

Его используют для вычисления приближенного значения производной в конце интервала f(xn+1,y*n+1). Вычислив среднее между этим значением производной и ее значением в начале интервала, найдем более точное значение yn+1

yn+1=yn+ (f (xn, yn)+f (xn+1,y*n+1))/2h. (7.5)

Модифицированный метод Эйлера имеет второй порядок точности, т.е погрешность метода имеет порядок h3.