Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ChM_ekzamen_Vse_otvety_Meyd_bay_Belsky (1).docx
Скачиваний:
12
Добавлен:
01.05.2025
Размер:
7.8 Mб
Скачать

15.Решить в пакете matlab уравнение с заданной точностью на заданном отрезке с использованием функции fzero.

Пусть задана непрерывная функция f(x) и требуется найти корень уравненияf(x) = 0.

Будем предполагать, что имеется интервал изменения х [a; b], на котором необходимо исследовать функцию f(x) и найти значение х0, при котором f(x0) равно или весьма мало отличается от нуля.

Данная задача в системе MATLAB может быть решена следующим образом. Вначале необходимо построить график функции f(x) на заданном интервале и убедиться в существовании корня или нескольких корней. Затем применить программы поиска корней. Если существует один корень и график f(x) пересекает ось ох, то можно применить программу fzero. Программа fzero использует известные численные методы: деление отрезка пополам, секущей и обратной квадратичной интерполяции.

Пример. Найти корень нелинейного уравнения 10х + 2х – 100 = 0 на отрезке [1.5; 2.5].

Появляется окно с графиком функции 10х + 2х – 100, из которого следует, что корень функции на заданном интервале существует. Для точного определения корня применяем функцию fzero.

Естественно, для работы данной программы нам понадобится m-функция:

Результат: X = 1.9824

В более общем случае функция fzero() имеет следующие реализации:

fzero('f(х)', х)

fzero('f (х)', [xl, х2])

Здесь приняты следующие обозначения:

'f(х)' — решаемое уравнение, взятое в одиночные кавычки;

х — начальное приближение (значение) искомого корня;

[x1, х2]—область изоляции корня.

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

X = fzero ( '10.^x + 2.*x - 100.0', 2)

Очевидно, что в данном случае файл-функция не требуется.

16.Сформулировать отличия метода половинного деления от метода касательных (Ньютона). Сравнительные достоинства и недостатки методов.

При решении нелинейного уравнения методом половинного деления задаются интервал [a,b], на котором существует только одно решение, и желаемая точность ε. Затем определяется середина интервала с=(а+b)/2 и проверяется условие F(a)∙F(c)<0. Если указанное условие выполняется, то правую границу интервала b переносим в среднюю точку с (b=c). Если условие не выполняется, то в среднюю точку переносим левую границу(a=c). Деление отрезка пополам продолжается пока |b-a|>ε.

В отличие от метода половинного деления, для определения интервала, в котором заключён корень, не требуется находить значения функции с противоположными знаками. Вместо интерполяции по двум значениям функции, в методе Ньютона делается экстраполяция с помощью касательной к кривой в данной точке. В основе метода лежит разложение функции f(x) в ряд Тейлора.

Члены ряда, содержащие h во второй и более высоких степенях, отбрасываются; используется соотношение xn+h=xn+1. Предполагается, что переход от xn к xn+1 приближает значение функции к нулю так, что f(xn+h)=0. Тогда xn+1=xn-f(xn)/f'(xn).

Значение xn+1 соответствует точке, в которой касательная к кривой в точке xn пересекает ось x. Так как кривая f(x) отлична от прямой, то значение функции f(xn+1) не будет в точности равно нулю. Поэтому вся процедура пoвторяется, причём вместо xn используется xn+1. Счет прекращается, когда разница между xn и xn+1 будет меньше или равна числу ε, т.е. |xn-xn+1|=<ε. На рисунке процесс решения уравнения методом Ньютона показан графически.

Метод Ньютона требует меньшего числа повторений, чем метод половинного деления. Недостатки метода – необходимость дифференцирования функции f(x), и f(x) должно быть не равно нулю.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]