Уточнение корней
Уточнение корней можно сгруппировать по трём основным направлениям: 1) поиск корней посредством перебора всех возможных аргументов хi с проверкой наличия решения f(xi)=0; 2) поиск корней f(x) заменяется поиском корней более простой функции (линейной, параболической), близкой к f(x), итерационными процедурами; 3) нелинейное уравнение f(x)=0 сводится к одной из формул вида g(x)=j(x) и стремятся обеспечить равенство левой и правой частей тоже итерационным путём. Условием окончания процесса решения уравнения может быть одно из двух возможных: 1) 2) где x* - точное решение. Второе условие, как правило, заменяют другим Рассмотрим некоторые из методов уточнения корней: - метод сканирования и метод бисекции, относящихся к первому направлению; - метод хорд и метод касательных, относящихся ко второму направлению; - метод простой итерации, относящийся к третьему направлению.
4.4 Метод сканирования Метод предусматривает разделение всего интервала [а,Ь], где отделен корень, на маленькие отрезки, равные заданной погрешности e, с последующим вычислением (или определением экспериментально) значений функции f(x) на концах этих отрезков (т.е. в точках, расстояние между которыми не превышает величины e. Анализируя значения функции, нетрудно выбрать отрезок, где функция меняет знак (или точно равна нулю, что маловероятно). В качестве решения можно взять любую точку — левую (хi) или правую (хi+1) границу выделенного отрезка, хотя предпочтительнее взять середину этого отрезка х* =(хi + хi+1)/2. В любом случае погрешность решения не будет превышать заданную погрешность e, даже при условии, что мы не знаем точного значения решения. Иногда весь отрезок разбивают на маленькие отрезки величиной 2e, а затем искомое значение корня берут в середине отрезка, где функция меняет знак. Это не принципиальная разница с основным вариантом, результаты вариантов полностью совпадут и по значению корня, и по затратам на поиск, если в первом сразу взять погрешность вдвое больше необходимой. Для повышения эффективности метода можно уточнение производить в несколько этапов. На первом этапе задать большое значение e, найти отрезок, где функция меняет знак (грубо найти корень), затем найденный отрезок еще раз разделить с более мелким шагом, более точно найти корень и т.д. еще несколько этапов (обычно 3...5). После чего удается найти корень с заданной погрешностью в целом за меньшее число раз вычисления f(x). Метод очевиден и не требует практического пояснения.
|