Практическая работа: Чисельні методи розв’язання нелінійних рівнянь на ПК

Мета роботи: ознайомитись з методикою і вивчити різні алгоритми розв’язування нелінійних рівнянь на ЕОМ.


Дата добавления на сайт: 14 февраля 2025


Чисельні методи розв’язання нелінійних рівнянь на ПК


Мета роботи: ознайомитись з методикою і вивчити різні алгоритми розв’язування нелінійних рівнянь на ЕОМ.
Завдання: Методами поділу відрізка пополам, методом хорд, методом дотичних та методом ітерацій знайти всі корені нелінійного рівняння. Точність знаходження коренів вважати рівною 0,0000001.

Чисельні методи розв’язання нелінійних рівнянь на ПК (рис. 1)

Методом поділу відрізка пополам:


clear, clc
f = @(x) atan (2*x) - 0.2*((x-1)^4)+sin(x);% функция
exp = 0.0000001;% точность
a = 2;% нижний предел
b = 4;% верхний предел

fplot (f, [a, b]), hold on% рисуем функцию
=f(a);=f(b);=(a+b)/2;=1;=f(p);abs(fp)>expfa*fpe)=a - (f(a)*(b-a))/(f(b) - f(a));f(c)*f(b)>0=c;=c;;(['Ответ x=' num2str (c, 3)]);0 = с;% корень
plot (x0, f(x0), 'or')
grid on(['x_0=', num2str(x0)])

Чисельні методи розв’язання нелінійних рівнянь на ПК (рис. 3)

Методом дотичних:


clear
, clc;
e = 0.000001;
f = @(x) atan (2*x) - 0.2*((x-1)^4)+sin(x);= @(x) (2/(4*(x^2)+1)) - 0.8*((x-1)^3)+cos(x);

a=0; b=1; N=0;=f(a); y2=f(b);=df(a); z2=df(b);=4;
ezplot (f, [a, b]), hold on
1=((z2*b - z1*a) - (y2-y1))/(z2-z1);=f(s); z=df(s);= N + 2;z==0 | b-a 0=s; y2=y; z2=z;=s; y1=y; z1=z;

if z~=0=(a+b)/2;=f(x);

fprintf ('Метод касательных \n \n');
fprintf ('x =%.5f \n', x);('y =%.5f \n \n', y);
fprintf ('Количество итераций:%i \n', N);

ezplot (f, [-0.5 1]), hold on(x, y, 'or'), grid on
grid on

Чисельні методи розв’язання нелінійних рівнянь на ПК (рис. 4)

Чисельні методи розв’язання нелінійних рівнянь на ПК (рис. 5)

Метод ітерацій:


clear, clc = inline ('atan(2*x) - 0.2*((x-1)^4)+sin(x)');%ф.inline чтобы задать строку = -10:0.01:10;
y = f(x);
plot (x, y); grid
% Метод простых итераций= 1e-4;= 1;
% значение производной в начальной точке:
L0 = 2e-6./(f (x0+1e-6) - f (x0-1e-6));= 0;= x0;= 100;abs(razn)>eps= x - L0*f(x);=xn-x;=xn;=iter+1;on(x, f(x), 'or'), grid on

Обчислимо вираз: Чисельні методи розв’язання нелінійних рівнянь на ПК (рис. 6)=L0

похідну обчислюємо приблизно, за допомогою невеликого прирісту:

Чисельні методи розв’язання нелінійних рівнянь на ПК (рис. 7)
де h = 10-6, отримаємо: Чисельні методи розв’язання нелінійних рівнянь на ПК (рис. 8)

Комбінований:

clear
, clc
syms x
f = x^3+6*x-5;
a=0.5;=1;=0.000001;=0;=(a+b)/2;=diff(f);=diff(f1);(abs(b-a)>eps)((subs (f1, x, c)*subs (f2, x, c))>=0)=a - (b-a)*subs (f, x, a)/(subs (f, x, b) - subs (f, x, a));=b-subs (f, x, b)/subs (f1, x, b);=a-subs (f, x, a)/subs (f1, x, a);=b - (b-a)*subs (f, x, b)/(subs (f, x, b) - subs (f, x, a));=i+1;('b=% f \n', double(b))(f, [0.5 1]), hold on(b, subs (f, x, b), 'or')
grid on

Чисельні методи розв’язання нелінійних рівнянь на ПК (рис. 9)
Чисельні методи розв’язання нелінійних рівнянь на ПК (рис. 10)
нелінійний рівняння хорда ітерація

Висновок: Я навчилась розв’язувати нелінійні рівняння на ПК різними чисельними методами: половинного ділення, хорд, дотичних(Ньютона), ітерацій (послідовних наближень), комбінаційний (хорд та дотичних).

Комментарии:

Вы не можете оставлять комментарии. Пожалуйста, зарегистрируйтесь.