метод Эйлера

Из Википедии, бесплатной энциклопедии
(Рисунок 1) Иллюстрация метода Эйлера. Неизвестная кривая выделена синим цветом, а ее полигональная аппроксимация — красным.

В математике и информатике ( метод Эйлера также называемый прямым методом Эйлера процедура первого порядка ) — это численная для решения обыкновенных дифференциальных уравнений (ОДУ) с заданным начальным значением . Это самый простой явный метод численного интегрирования обыкновенных дифференциальных уравнений и самый простой метод Рунге – Кутты . Метод Эйлера назван в честь Леонарда Эйлера , который впервые предложил его в своей книге Institutionum Calculi Integralis (опубликованной в 1768–1770 гг.). [1]

Метод Эйлера является методом первого порядка, что означает, что локальная ошибка (ошибка на шаг) пропорциональна квадрату размера шага, а глобальная ошибка (ошибка в данный момент времени) пропорциональна размеру шага. Метод Эйлера часто служит основой для построения более сложных методов, например метода предиктора-корректора .

Геометрическое описание [ править ]

Цель и почему это работает [ править ]

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

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

Сделайте небольшой шаг по касательной до точки На этом небольшом шаге наклон не слишком сильно меняется, поэтому будет близко к кривой. Если мы притворимся, что все еще находится на кривой, те же рассуждения, что и для точки выше можно использовать. После нескольких шагов ломаная кривая ( ) вычисляется. В общем, эта кривая не отличается слишком далеко от исходной неизвестной кривой, и ошибку между двумя кривыми можно сделать небольшой, если размер шага достаточно мал и интервал вычислений конечен. [2]

Процесс первого порядка [ править ]

Если заданы значения для и и производная от является заданной функцией и обозначается как . Начните процесс с установки . Далее выберите значение для размера каждого шага по оси t и установите (или эквивалентно ). Теперь метод Эйлера используется для нахождения от и : [3]

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

Процесс высшего порядка [ править ]

Хотя метод Эйлера объединяет ОДУ первого порядка, любое ОДУ порядка можно представить как систему ОДУ первого порядка. Когда дана ОДА порядка определяется как

а также , , и , мы реализуем следующую формулу, пока не достигнем аппроксимации решения ОДУ в желаемый момент времени:

С этими системами первого порядка можно обращаться методом Эйлера или, фактически, любой другой схемой для систем первого порядка. [4]

Пример первого порядка [ править ]

Учитывая проблему начального значения

мы хотели бы использовать метод Эйлера для аппроксимации . [5]

Использование размера шага, равного 1 ( h = 1 ) [ править ]

(Рисунок 2) Иллюстрация численного интегрирования уравнения Синий — метод Эйлера; зеленый — метод средней точки ; красный, точное решение, Размер шага

Метод Эйлера

поэтому сначала мы должны вычислить . В этом простом дифференциальном уравнении функция определяется . У нас есть

Выполнив описанный выше шаг, мы нашли наклон линии, касательной к кривой решения в точке . Напомним, что наклон определяется как изменение разделенное на изменение , или .

Следующий шаг — умножить указанное выше значение на размер шага. , который здесь мы принимаем равным единице:

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

Вышеуказанные шаги следует повторить, чтобы найти , и .

Из-за повторяющегося характера этого алгоритма может быть полезно организовать вычисления в виде диаграммы, как показано ниже, чтобы избежать ошибок.

0 1 0 1 1 1 2
1 2 1 2 1 2 4
2 4 2 4 1 4 8
3 8 3 8 1 8 16

Вывод этого вычисления таков: . Точное решение дифференциального уравнения есть , так . Хотя аппроксимация метода Эйлера в данном конкретном случае была не очень точной, в частности из-за большого размера шага. , его поведение качественно правильное, как показано на рисунке.

Использование других размеров шага [ править ]

(Рисунок 3) Та же иллюстрация для

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

размер шага результат метода Эйлера ошибка
1 16.00 38.60
0.25 35.53 19.07
0.1 45.26 0 9.34
0.05 49.56 0 5.04
0.025 51.98 0 2.62
0.0125 53.26 0 1.34

Ошибка, записанная в последнем столбце таблицы, представляет собой разность точного решения при и приближение Эйлера. Внизу таблицы размер шага равен половине размера шага в предыдущей строке, а ошибка также примерно вдвое меньше ошибки в предыдущей строке. Это говорит о том, что ошибка примерно пропорциональна размеру шага, по крайней мере, для достаточно малых значений размера шага. В целом это верно и для других уравнений; см. в разделе «Глобальная ошибка усечения» дополнительные сведения .

Другие методы, такие как метод средней точки , также показанный на рисунках, ведут себя более благоприятно: глобальная ошибка метода средней точки примерно пропорциональна квадрату размера шага. По этой причине метод Эйлера называют методом первого порядка, а метод средней точки — второго порядка.

Из приведенной выше таблицы мы можем экстраполировать, что размер шага, необходимый для получения ответа, правильного до трех знаков после запятой, составляет примерно 0,00001, а это означает, что нам нужно 400 000 шагов. Такое большое количество шагов влечет за собой высокие вычислительные затраты. По этой причине используются методы более высокого порядка, такие как методы Рунге-Кутты или линейные многошаговые методы , особенно если требуется высокая точность. [6]

Пример высшего порядка [ править ]

Для этого примера третьего порядка предположим, что дана следующая информация:

Отсюда мы можем выделить y''', чтобы получить уравнение:

Используя это, мы можем получить решение для :

И используя решение для , мы можем получить решение для :
Мы можем продолжать этот процесс, используя ту же формулу столько, сколько необходимо, чтобы найти любое желанный.

Вывод [ править ]

Метод Эйлера можно получить несколькими способами.

(1) Во-первых, приведено выше геометрическое описание.

(2) Другая возможность — рассмотреть разложение Тейлора функции вокруг :

Дифференциальное уравнение утверждает, что . Если это подставить в разложение Тейлора и игнорировать квадратичные члены и члены более высокого порядка, возникает метод Эйлера. [7]

Расширение Тейлора используется ниже для анализа ошибок, допущенных методом Эйлера, и его можно расширить для получения методов Рунге – Кутты .

(3) Близко связанный вывод заключается в замене прямой конечной разности производной формулой :

в дифференциальном уравнении . Опять же, это дает метод Эйлера. [8]

Аналогичные вычисления приводят к методу средней точки и обратному методу Эйлера .


(4) Наконец, можно проинтегрировать дифференциальное уравнение из к и примените фундаментальную теорему исчисления, чтобы получить:

Теперь аппроксимируем интеграл методом левого прямоугольника (только с одним прямоугольником):

Объединив оба уравнения, мы снова получаем метод Эйлера. [9]


Эту линию мысли можно продолжить, придя к различным линейным многошаговым методам .

Локальная ошибка усечения [ править ]

Локальная ошибка усечения метода Эйлера — это ошибка, допущенная за один шаг. Это разница между численным решением после одного шага, , и точное решение в момент времени . Численное решение имеет вид

Для точного решения мы используем разложение Тейлора, упомянутое в разделе «Вывод» выше:

Локальная ошибка усечения (LTE), вносимая методом Эйлера, определяется разницей между этими уравнениями:

Этот результат справедлив, если имеет ограниченную третью производную. [10]

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

Немного другую формулировку для локальной ошибки усечения можно получить, используя форму Лагранжа для остаточного члена в теореме Тейлора . Если имеет непрерывную вторую производную, то существует такой, что

[11]

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

Глобальная ошибка усечения [ править ]

Глобальная ошибка усечения — это ошибка в фиксированный момент времени. , после любого количества шагов, которые метод должен выполнить, чтобы достичь этого времени с начального момента. Глобальная ошибка усечения — это совокупный эффект локальных ошибок усечения, совершенных на каждом этапе. [13] Число шагов легко определить как , что пропорционально , а ошибка, совершаемая на каждом шаге, пропорциональна (см. предыдущий раздел). Таким образом, следует ожидать, что глобальная ошибка усечения будет пропорциональна . [14]

Это интуитивное рассуждение можно уточнить. Если решение имеет ограниченную вторую производную и является липшицевым непрерывным по своему второму аргументу, то глобальная ошибка усечения (обозначается как ) ограничено

где является верхней границей второй производной на заданном интервале и константа Липшица . [15] Или проще говоря, когда , Значение (такой, что считается константой). В отличие, где функция является точным решением, содержащим только переменная.

Точная форма этой оценки не имеет практического значения, поскольку в большинстве случаев она значительно переоценивает реальную ошибку, допущенную методом Эйлера. [16] Важно то, что он показывает, что глобальная ошибка усечения (приблизительно) пропорциональна . По этой причине метод Эйлера называют методом первого порядка. [17]

Пример [ править ]

Если у нас есть дифференциальное уравнение , и точное решение , и мы хотим найти и когда .

Таким образом, мы можем найти границу ошибки при t=2,5 и h=0,5:

Обратите внимание, что t 0 равно 2, поскольку это нижняя граница t в .

Численная стабильность [ править ]

(Рисунок 4) Решение вычисляется методом Эйлера с размером шага (синие квадраты) и (красные кружки). Черная кривая показывает точное решение.

Метод Эйлера также может быть численно нестабильным , особенно для жестких уравнений , а это означает, что численное решение становится очень большим для уравнений, для которых нет точного решения. Это можно проиллюстрировать с помощью линейного уравнения

Точное решение , который убывает до нуля при . Однако если к этому уравнению применить метод Эйлера с размером шага , то численное решение качественно неверно: оно колеблется и растет (см. рисунок). Вот что значит быть нестабильным. Если используется меньший размер шага, например , то численное решение затухает до нуля.

(Рисунок 5) Розовым диском показана область устойчивости метода Эйлера.

Если применить метод Эйлера к линейному уравнению , то численное решение неустойчиво, если произведение находится за пределами региона

показано справа. Эта область называется областью (линейной) устойчивости . [18] В примере , так что если затем которая находится вне области устойчивости, и, следовательно, численное решение неустойчиво.

Это ограничение, а также медленная сходимость ошибки с — означает, что метод Эйлера используется нечасто, за исключением простого примера численного интегрирования. [ нужна цитата ] . Часто модели физических систем содержат члены, представляющие быстро распадающиеся элементы (т.е. с большими отрицательными экспоненциальными аргументами). Даже если они не представляют интереса для общего решения, нестабильность, которую они могут вызвать, означает, что при использовании метода Эйлера потребуется исключительно малый временной шаг.

Ошибки округления [ править ]

В ногу В методе Эйлера ошибка округления примерно равна величине где это машина эпсилон . Предполагая, что ошибки округления являются независимыми случайными величинами, ожидаемая общая ошибка округления пропорциональна . [19] Таким образом, для чрезвычайно малых значений размера шага ошибка усечения будет небольшой, но влияние ошибки округления может быть большим. Большую часть эффекта ошибки округления можно легко избежать, если компенсированное суммирование . в формуле метода Эйлера использовать [20]

Модификации и расширения [ править ]

Простой модификацией метода Эйлера, которая устраняет отмеченные выше проблемы устойчивости, является обратный метод Эйлера :

Он отличается от (стандартного или прямого) метода Эйлера тем, что функция оценивается в конечной точке шага, а не в начальной точке. Обратный метод Эйлера является неявным методом . Это означает, что формула обратного метода Эйлера имеет с обеих сторон, поэтому при применении обратного метода Эйлера нам приходится решать уравнение. Это делает внедрение более дорогостоящим.

Другие модификации метода Эйлера, которые помогают обеспечить стабильность, дают экспоненциальный метод Эйлера или полунеявный метод Эйлера .

Более сложные методы позволяют достичь более высокого порядка (и большей точности). Одна из возможностей — использовать больше оценок функций. Это иллюстрируется методом средней точки , который уже упоминался в этой статье:

.

Это приводит к семейству методов Рунге-Кутты .

Другая возможность — использовать больше прошлых значений, как показано двухэтапным методом Адамса-Башфорта:

Это приводит к семейству линейных многошаговых методов . Существуют и другие модификации, в которых используются методы измерения сжатия для минимизации использования памяти. [21]

В популярной культуре [ править ]

В фильме «Скрытые фигуры» Кэтрин Гобл прибегает к методу Эйлера при расчете возвращения астронавта Джона Гленна с околоземной орбиты. [22]

См. также [ править ]

Примечания [ править ]

  1. ^ Мясник 2003 , с. 45; Хайрер, Норсетт и Ваннер, 1993 , с. 35
  2. ^ Аткинсон 1989 , с. 342; Мясник 2003 , с. 60
  3. ^ Мясник 2003 , с. 45; Хайрер, Норсетт и Ваннер, 1993 , с. 36
  4. ^ Мясник 2003 , с. 3; Хайрер, Норсетт и Ваннер, 1993 , с. 2
  5. ^ См. также Аткинсон 1989 , с. 344
  6. ^ Хайрер, Норсетт и Ваннер 1993 , стр. 40
  7. ^ Аткинсон 1989 , с. 342; Хайрер, Норсетт и Ваннер, 1993 , с. 36
  8. ^ Аткинсон 1989 , с. 342
  9. ^ Аткинсон 1989 , с. 343
  10. ^ Мясник 2003 , с. 60
  11. ^ Аткинсон 1989 , с. 342
  12. ^ Стоер и Булирш 2002 , с. 474
  13. ^ Аткинсон 1989 , с. 344
  14. ^ Мясник 2003 , с. 49
  15. ^ Аткинсон 1989 , с. 346; Лакоба 2012 , уравнение (1.16)
  16. ^ Изерлес 1996 , с. 7
  17. ^ Мясник 2003 , с. 63
  18. ^ Мясник 2003 , с. 70; Изерлес 1996 , с. 57
  19. ^ Мясник 2003 , стр. 74–75.
  20. ^ Мясник 2003 , стр. 75–78.
  21. ^ Унни, депутат; Чандра, МГ; Кумар, А.А. (март 2017 г.). «Сокращение памяти для численного решения дифференциальных уравнений с использованием компрессионного измерения». 2017 IEEE 13-й Международный коллоквиум по обработке сигналов и ее приложениям (CSPA) . стр. 79–84. дои : 10.1109/CSPA.2017.8064928 . ISBN  978-1-5090-1184-1 . S2CID   13082456 .
  22. ^ Хан, Амина (9 января 2017 г.). «Познакомьтесь с математиком из «Скрытых фигур», который помог отправить американцев в космос» . Лос-Анджелес Таймс . Проверено 12 февраля 2017 г.

Ссылки [ править ]

Внешние ссылки [ править ]