КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Метод Рунге-Кутта решения систем дифференциальных уравнений первого порядка
Рунге. Оценка погрешности формул Рунге-Кутта по правилу При применении любой формулы Рунге-Кутта погрешность на одном шаге оценивается величиной где Главный член погрешности на одном шаге есть (77) Точка находится близко от точки (h-мало), поэтому погрешность на следующем шаге будет иметь такой же главный член. В результате двух шагов будет найдено приближение к значению такое, что (78) Если, исходя из точки , применить формулу Рунге-Кутта с шагом , то получим приближение к значению , для которого (79) Из этих соотношений вытекает представление главного члена погрешности на шаге (80) В результате проведённого рассуждения мы имеем возможность через каждые два шага, получая приближенное значение , иметь также выражение главного члена его погрешности. Указанный приём оценки погрешности на шаге называется приёмом(методом) Рунге. При реализации метода Рунге-Кутта на ЭВМ с автоматическим выбором шага h в каждой второй точке делают двойной просчёт: сначала находят решение с шагом h, затем с шагом 2h. Если величина не превышает заданной погрешности , то продолжают вычисления с тем же шагом h, в противном случае берут шаг Очевидно, что в рассматриваемых ранее частных случаях выражение главного члена погрешности будет иметь вид: 1. Для метода Эйлера (S=1, S+1=2) (81) 2. Для метода Эйлера-Коши уточнённого метода Эйлера(S=2) (82) 3. Для формулы Рунге-Кутта при r = 4, S = 4 (83)
Пример 6. Методом Рунге-Кутта (69)-(71) построить таблицу решений задачи Коши (84) на отрезке с точностью Решение. Поскольку формула Рунге-Кутта (69)-(71) имеет на одном шаге погрешность , то погрешность на всём отрезке будет порядка Поэтому выбирая шаг из соотношения т.е. Все вычисления будем вести с одним запасным знаком. В процессе решения задачи через каждые два шага будем контролировать пригодность выбранного шага методом двойного просчёта по формуле (83). Результаты вычислений, проводимых по формулам 85, 86. удобно располагать по схеме, приведённой в таблице 4. (85) (86) Таблица 4.
Результаты решения задачи Коши (84) представлены в таблице 4, которая заполняется следующим образом. В столбец (I) заносим номер итерации (j=0), в столбец (2) и (3) первой строки записываем значения , (
Вычисляем = = и записываем в столбец (4) первой строки.
Затем находим умножая соответствующее значение на . Так как в выражение для входит с коэффициентом I, то записываем значение в (6)-й столбец первой строки. Во (2)-м и (3)-м столбцах второй строки записываем аргументы для в (4)-й столбец записываем значение значение функции от сформированных аргументов . Затем умножая на h, вычисляем В (6)-й столбец заносим удвоенное значение Третья и четвертая строки заполняются аналогично, согласно таблице 4. После заполнения 4-й строки находится сумма чисел в (6)-м столбце и умножается на 1/6, т.е. определяется . Значение добавляется к и записывается в первую строку следующей итералии.
Таблица 5.
В результате двух шагов полученно значение Для определения погрешности на шаге вычислим значение с шагом . Результаты вычислений помещены в таблице 6. Таблица 6.
На основании (83) погрешность более точного значения не превосходит , т.к. . Таким образом, выбранный шаг обеспечивает нужную точность вычислений. Поэтому переходим к вычислению с тем же шагом. Результаты вычислений с и с приведены в таблице 7.
Таблица 7.
На основании оценки (83) вновь убеждаемся в пригодности выбранного шага. Продолжая вычисления аналогичным образом, найдем значения искомого решения на всем отрезке . ; ; ; ; ; . Вычислив значения и с двойным шагом, убедимся, что полученные значения с шагом 0,1 имеют погрешность, не превышающую .
Метод Рунге легко переносится на системы обыкновенных уравнений. Для сокращения записи ограничимся системой двух уравнений первого порядка.
z’=g(x,y,z) (87) С начальными условиями: , (88) Как и в случае одного уравнения будем вычислять (89) (90) Где , (91)
, , , ; , (92) Выбор постоянных величин производится так, чтобы разложения функции и по степеням hначинались с возможно более высоких степеней h, где (93) (94) Формулы (89)-(92) для различных r,будут иметь различный вид и разную погрешность на одном шаге. Получим формулу Рунге-Кутта (89)-(92)для r=4, которые на одном шагеиметь погрешность порядка . Для этого необходимо иметь погрешность порядка. Для этого необходимо, чтобы функции и обладали свойством: (95) (96) Приравнивание нулю произвольных функций и дает, как и в случае одного уравнения, систему уравнений относительно постоянных величин , которая имеет бесчисленное множество решений. Выбирая любые решенияэтой системы, получим различные формулы Рунге-Кутта, имеющие порядок погрешности на одном шаге .
Наиболее употребительными из формул Рунге-Кутта с погрешностьюна на шаге порядка с погрешностью на шаге порядка являются формулы: , , (97) , , , , , , (98) , . Практически погрешность можго оценивать методом двойного просчета. Пример7. Методом Рунге-Кутта (97)-(98) найти решение системы диффиринциальных уравнений y’=z+1, z’=y-x (99) с начальным условием y(0)=I; z(0)=I на отрезке [0,0; 0,4] взяв шаг h=0,2. Оценить погрешность полученного решения методом двойного просчета. Решение. Так как погрешность расчетных формул (97)-(98) на одном шаге имеет порядок h5 = (0,2)5 =0,00032, то вычисления необходимо вести по крайней мере с четырьмя верными знаками после запятой. Результаты вычислений по формулам (97)-(98) с шагом h=0,2 помещены в таблице 8. Вычисления с удвоенным шагом h=0,4 – двойной просчет – помещены в таблице 9. На основании приближенной оценки погрешности (83) получаем: Таблица 8
Таблица 9
Дата добавления: 2014-12-25; Просмотров: 1385; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |