Выполним отделение корней графическим методом.

1 способ.

Корни отделяются просто, если построен график функции Выполним отделение корней графическим методом. - student2.ru . Точки пересечения графика с осью Выполним отделение корней графическим методом. - student2.ru дают значение корня, и по графику легко определить интервал Выполним отделение корней графическим методом. - student2.ru , в котором находится только один корень.

- Выполним отделение корней графическим методом. - student2.ru

2 способ.

Уравнение имеет вид Выполним отделение корней графическим методом. - student2.ru . Все члены уравнения разбивают на две группы, одну из них записывают в левой части уравнения, другую – в правой, т.е. записывают уравнение в виде

Выполним отделение корней графическим методом. - student2.ru

После этого строят графики функций Выполним отделение корней графическим методом. - student2.ru и Выполним отделение корней графическим методом. - student2.ru . Абсциссы точек пересечения графиков этих двух функций и являются корнями данного уравнения. По графику и определяют интервал Выполним отделение корней графическим методом. - student2.ru , в котором заключен корень.

Выполним отделение корней графическим методом. - student2.ru

Уточнение корней методом проб (метод половинного деления)

Итак, выполнен первый этап – отделение корня.

Второй этап заключается в уточнении корней, в вычислении корней с заданной точностью.

Пусть дано уравнение Выполним отделение корней графическим методом. - student2.ru , где Выполним отделение корней графическим методом. - student2.ru - непрерывная функция. Требуется найти корень этого уравнения Выполним отделение корней графическим методом. - student2.ru с точностью до величин Выполним отделение корней графическим методом. - student2.ru , где Выполним отделение корней графическим методом. - student2.ru малое, нами заданное число.

Выполним отделение корней графическим методом. - student2.ru

Будем считать, что выполнено отделение корня и известно, что корень находится в интервале Выполним отделение корней графическим методом. - student2.ru . Числа Выполним отделение корней графическим методом. - student2.ru и Выполним отделение корней графическим методом. - student2.ru можно рассматривать как приближенные значения корня, Выполним отделение корней графическим методом. - student2.ru - значение корня с недостатком, а Выполним отделение корней графическим методом. - student2.ru - с избытком. Погрешность этих вычислений не превышает величины Выполним отделение корней графическим методом. - student2.ru . Если Выполним отделение корней графическим методом. - student2.ru , то необходимая точность вычислений достигнута, и за приближенное значение корня Выполним отделение корней графическим методом. - student2.ru можно принять либо Выполним отделение корней графическим методом. - student2.ru , либо Выполним отделение корней графическим методом. - student2.ru . Если же Выполним отделение корней графическим методом. - student2.ru , то требуемая точность не достигнута и необходимо сузить интервал, в котором находится корень Выполним отделение корней графическим методом. - student2.ru . Для этого на отрезке Выполним отделение корней графическим методом. - student2.ru выберем точку Выполним отделение корней графическим методом. - student2.ru , которая делит отрезок пополам Выполним отделение корней графическим методом. - student2.ru =(a+b)/2 (в этом случае метод проб называют методом половинного интервала). Если Выполним отделение корней графическим методом. - student2.ru , то Выполним отделение корней графическим методом. - student2.ru - точный корень уравнения Выполним отделение корней графическим методом. - student2.ru . Если же Выполним отделение корней графическим методом. - student2.ru , то из двух полученных отрезков Выполним отделение корней графическим методом. - student2.ru и Выполним отделение корней графическим методом. - student2.ru выберем тот, на концах которого функция Выполним отделение корней графическим методом. - student2.ru принимает значения противоположных знаков. Затем этот отрезок также делим пополам и проводим те же рассуждения. Процесс деления отрезка пополам продолжаем до тех пор, пока на каком – то этапе либо середина отрезка окажется корнем уравнения (случай, теоретически возможный, но чрезвычайно редко встречающийся на практике), либо отрезок, длина которого меньше заданной малой величины Выполним отделение корней графическим методом. - student2.ru .

Задание.

Задан полином третьей степени

Выполним отделение корней графическим методом. - student2.ru ,

где

Выполним отделение корней графическим методом. - student2.ru Выполним отделение корней графическим методом. - student2.ru

Требуется вычислить корень полинома на отрезке Выполним отделение корней графическим методом. - student2.ru

(требуется составить программу в системе MATLAB (M-языке) методом половинного деления или методом Ньютона (по указанию преподавателя)).

В критериях окончания счета на ЭВМ для обоих методов принять

eps=0.001, xk=3 .

Пример

Найти корни полинома Выполним отделение корней графическим методом. - student2.ru на отрезке Выполним отделение корней графическим методом. - student2.ru , Выполним отделение корней графическим методом. - student2.ru

Ручной счет

Вычисление корня методом половинного деления

K а b c=(a+b)/2 f(a) f (b) f(c) b-a
3.0 1.5 -2.92 9.79 0.51 3.0
1.5 0.75 -2.92 0.51 -0.67 1.5
0.75 1.5 1.125 -0.67 0.51 -0.11 0.75
1.125 1.5 1.3125 -0.11 0.51 0.173 0.375
1.125 1.3125 1.218 -0.11 0.173 0.0267 0.187

Решение нелинейного уравнения методом половинного деления.

Для выполнения создается М-файл. Ниже приведен текст М-файла.

%Решение нелинейного уравнения методом половинного деления

function Lab_3_6_1

a=input('Введите a=');

b=input('Введите b=');

eps=input('Введите eps=');

kmax=100;

for k=1:kmax

c=(a+b)/2;

y=f(c);

if(f(a)*y>0)

a=c;

else

b=c;

end

if((b-a)<=eps)|(y==0)|(k>=kmax)

x=c;

break;

end

end

fprintf('\n Корень уравнения x=%10.3f ',x);

fprintf('\n f(x)=%12.4g',y);

fprintf('\n Количество итерации k=%3d',k);

end

function y=f(x)

y=x^3-3.2*x^2+4.84*x-2.928;

end

Результаты расчета в командном окне при a=0, b=0, eps=0.001:

Корень уравнения x= 1.200

f(x)= 0.0006505

Количество итерации k= 12

Выполним отделение корней графическим методом. - student2.ru Решение нелинейного уравнения методом Ньютона.

Выполним отделение корней графическим методом. - student2.ru

Пусть корень уравнения Выполним отделение корней графическим методом. - student2.ru отделен на отрезке Выполним отделение корней графическим методом. - student2.ru . Причем

Выполним отделение корней графическим методом. - student2.ru , Выполним отделение корней графическим методом. - student2.ru непрерывны и сохраняют постоянные знаки на всем отрезке Выполним отделение корней графическим методом. - student2.ru .

Геометрический смысл метода Ньютона состоит в том, что дуга кривой Выполним отделение корней графическим методом. - student2.ru заменяется касательной к этой кривой.

Пусть Выполним отделение корней графическим методом. - student2.ru , Выполним отделение корней графическим методом. - student2.ru , Выполним отделение корней графическим методом. - student2.ru , Выполним отделение корней графическим методом. - student2.ru . В этом случае касательную проводим в точке B.

Уравнение касательной в точке B имеет вид

Выполним отделение корней графическим методом. - student2.ru

при Выполним отделение корней графическим методом. - student2.ru , получим

Выполним отделение корней графическим методом. - student2.ru

Теперь корень уравнения находится на отрезке Выполним отделение корней графическим методом. - student2.ru

Продолжая процесс, найдем

Выполним отделение корней графическим методом. - student2.ru

Ручной счет

k Выполним отделение корней графическим методом. - student2.ru Выполним отделение корней графическим методом. - student2.ru Выполним отделение корней графическим методом. - student2.ru Выполним отделение корней графическим методом. - student2.ru Выполним отделение корней графическим методом. - student2.ru
3.0 9.79 12.64 2.22 0.78
2.22 3.01 5.45 1.67 0.55
1.67 0.89 2.52 1.32 0.35
1.32 0.18 1.62 1.20 0.12
1.2     Критерий окончания счета Выполним отделение корней графическим методом. - student2.ru

Напишем программу вычисления отделенного корня с точностью до величин порядка 0,001.

Для выполнения создается М-файл. Ниже приведен текст М-файла.

Решение нелинейного уравнения методом Ньютона.

function Lab_3_6_2

xk=input('Введите xk=');

eps=input('Введите eps=');

kmax=100;

for k=1:kmax

y=f(xk);

y1=f1(xk);

xk1=xk-y/y1;

if(abs(xk1-xk)<eps)|(k>kmax)

break;

end

xk=xk1;

end

y2=f(xk1);

fprintf('\n Корень уравнения x=%10.3f',xk1);

fprintf('\n f(x)=%12.4g',y);

fprintf('\n Количество итерации k=%3d',k);

end

function y=f(x)

y=x^3-3.2*x^2+4.84*x-2.928;

end

function y1=f1(x)

y1=3*x^2-6.4*x+4.84;

end

Результаты расчета в командном окне при xk=3, eps=0.001:

Корень уравнения x= 1.200

f(x)= 0.0009755

Количество итерации k= 3

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

Как известно, полином (или многочлен) — это выражение вида

Pn(x)=anxn+an-1xn-1+...+a2x2+a1x+a0

где a0, a1, a2, …, an-1, an — постоянные коэффициенты.

В MATLAB полином задаётся и хранится в виде вектора, элементами которого являются коэффициенты полинома

Выполним отделение корней графическим методом. - student2.ru

Так, например, для задания полинома Выполним отделение корней графическим методом. - student2.ru

следует ввести команду

>> p=[5 -4 2 -1 8]

p =

5 -4 2 -1 8

Наши рекомендации