Когда нужны численные методы
Уравнения вроде x³ − 2x − 5 = 0, cos x = x или ex = 3x не решаются в общем виде через формулы, как квадратное уравнение. Численные методы находят корень приближённо, с любой заданной точностью ε, шаг за шагом сужая область поиска.
Отделение корней
Сначала нужен отрезок [a; b], где функция меняет знак: f(a)·f(b) < 0. Если функция непрерывна, корень там точно есть. Калькулятор дополнительно перебирает весь отрезок и выводит все корни, которые на нём нашлись.
Методы
- Половинного деления (дихотомия, бисекция). Отрезок делится пополам, и остаётся та половина, на концах которой знаки разные. Сходится всегда, но медленно: за каждую итерацию точность растёт вдвое. Число итераций ≈ log₂((b − a)/ε).
- Хорд (ложного положения). Вместо середины берётся точка пересечения хорды, соединяющей (a; f(a)) и (b; f(b)), с осью x:
x = b − f(b)·(b − a) / (f(b) − f(a)). Обычно быстрее дихотомии и тоже всегда сходится. - Ньютона (касательных).
xk+1 = xk − f(xk) / f′(xk). Сходится очень быстро — число верных знаков примерно удваивается на каждом шаге, — но нужен хороший старт: здесь это середина отрезка. Производная считается численно. - Секущих. Как метод Ньютона, но производная заменена наклоном секущей через две последние точки. Не требует производной и почти так же быстр.
Пример
x³ − 2x − 5 = 0 на [2; 3] (классический пример Ньютона): f(2) = −1, f(3) = 16, знаки разные. Корень x ≈ 2,0945515. Дихотомии при ε = 0,0001 нужно около 14 итераций, методу Ньютона — 4.
Как пользоваться
- Запишите уравнение в виде f(x) = 0: например, cos x = x превращается в cos(x) − x.
- Задайте отрезок, на котором ищете корень, и точность ε.
- Таблица итераций повторяет решение «вручную» — её можно сверить со своим расчётом.