Одношаговые и многошаговые методы можно объединить в одну обобщенную запись:
f(tk+1)= .
Для одношаговых методов m=1. Если при этом a1=1, и j не зависит от tk+1 и f(tk+1), то обобщенный алгоритм превращается в одношаговый метод. Если функция j имеет вид
j= ,
то обобщенный алгоритм превращается в линейный многошаговый метод. Обобщенный алгоритм включает все используемые в настоящее время методы.
Описываемый обобщенный метод является устойчивым, если все нули полинома
r(l)ºlm–a1lm-1–…–am
удовлетворяют условию |li|£1, а любой нуль, такой что |li|=1, является простым. Если в дополнение к этому m–1 нулей полинома таковы, что |li|<1, то метод является строго устойчивым.
Любой метод, имеющий по крайней мере первый порядок точности, должен удовлетворять условию и, следовательно, единица должна быть нулем соответствующего полинома. В этом случае строго устойчивого метода полином будет иметь один нуль в точке 1, а все остальные – строго меньше 1. Так как методы Рунге-Кутта одношаговые, то для них r(l)=l–1. Его единственный корень равен 1, поэтому методы Рунге-Кутта всегда строго устойчивы. Для m-шагового метода Адамса r(l)=lm–lm-1, так что остальные m–1 корней равны нулю и такие методы тоже строго устойчивы.
Рассмотренные результаты теории устойчивости относятся к устойчивости в пределе при h→0. Даже строго устойчивые методы могут вести себя неустойчиво, если h слишком велик. Попытка обойти эту трудность чрезмерным уменьшением h может привести к недопустимо большим затратам машинного времени, в частности для дифференциальных уравнений, которые называют жесткими.
Жесткость есть свойство задачи, а не численного метода решения. Проблемы обеспечения устойчивости для жестких систем выходят за рамки нашего вводного курса; скажем только, что общий подход к решению этой проблемы состоит в использовании неявных методов, то есть использующих, например, значения в точке (tk+1, Fk+1). Например, использование формулы
f(tk+1)=f(tk)+hF(tk+1, f(tk+1),
приводит к неявному методу, который называют обратным методом Эйлера.
Он напоминает по форме обычный метод Эйлера, но использует информацию в точке (tk+1, Fk+1) и поэтому является неявным.