Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб№3_отчет.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
227.84 Кб
Скачать

МАРИЙСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

Кафедра физики и методики обучения физике

Отчет по лабораторной работе №3 определение корней уравнений с одной переменной

Выполнил: Илдаркин С.С.

Проверил: Андреев А.И.

Йошкар-Ола

2014г.

Задача: 1. Решить уравнение методом половинного

деления.

1.Решение:

1)Создадим файл ildarkin_serega.sce, содержащий описание функции .

а) Запускаем программу scilab. б) Вызываем окно редактора путем нажатия кнопки откроем SciNotes( создаем пустой файл с расширением .sce)

в) Для того, чтобы заданная задача могла изобразить график заданной функции, создадим отдельным файлом функцию пользователя и запишем туда заданную функцию. Функцию пользователя выглядит следующим образом:

function y=ildarkin_serega(x)

y=(((sin(x)).^2)./(0.5-((cos(x)).^4)))-2;

endfunction

2) Создадим файл Div2ildarkin_serega.sce, содержащий описание функции, возвращающей значение корня уравнения методом половинного деления.

function Div2ildarkin_serega(f, x1, x2, eps)

L=x2-x1;

k=0;

while L>eps

c=(x2+x1)/2;

k=k+1;

if feval(c,f)*feval(x1,f)<0

x2=c;

else

x1=c;

end

L=x2-x1;

end

x=c

disp(x)

disp(k)

fx=feval(c,f)

disp(fx)

endfunction

(предварительно выполнив функции пользователя (загнав в память))

3. Вычислим значения корней уравнения

Div2ildarkin_serega(ildarkin_serega,-5.55,-4.45,0.001)

Div2ildarkin_serega(ildarkin_serega, -4.0, -3.9, 0.001)

- 5.4979004

11.

0.0004533

- 3.9273437

7.

- 0.0014087

Ответ: решение х1=- 5.4978516 и х2=- 3.9273437 мы получили с точностью 0,001 х1 - за 11 итераций и х2 - за 7 итераций. При этом значение невязки fx1 = 0.0018911 и fx2 = - 0.0014087 .

.

Задача: 1. Решить уравнение методом итераций с точностью 0,001(промежуток изоляции корня [-5.5,-5.45]и[-4.0,-3.9] ).

2.Решение:

1. Создадим файл ildarkin_serega.Sce, содержащий описание функции

function y=ildarkin_serega(x)

y=(((sin(x)).^2)./(0.5-((cos(x)).^4)))-2;

endfunction

2. Создадим файл Func1ildarkin_serega.sce, содержащий описание функции .

function y =Func1ildarkin_serega(x, m, f)

y =x-m*feval(x,f)

endfunction

3. Создадим файл Func2ildarkin_serega.sce, содержащий описание производной функции f1:

.

function y=Func2ildarkin_serega(x, m, f)

dx=10^-7;

x1=x+dx;

tmp1=x-m*feval(x,f);

tmp2=x1-m*feval(x1,f);

y=abs((tmp2-tmp1)/dx);

endfunction

В этой же функции напишем вызов функций Func1ildarkin_serega.scе и Func2ildarkin_serega.scе. Построим графики функций f1, f2 :

x1=-5.55:0.001:-5.45;

m1=-0.1; // m<0, т.к. производная функции промежутке xϵ[-5.5,-5.45] меньше 0

plot(x1,Func1ildarkin_serega(x1,m1,ildarkin_serega));

plot(x1,Func2ildarkin_serega(x1,m1,ildarkin_serega),'--');

x2=-4.0:0.001:-3.9;

m2=0.1; // m>0, т.к. производная функции промежутке xϵ[-4.0,-3.9] больше 0

plot(x2,Func1ildarkin_serega(x2,m2,ildarkin_serega));

plot(x2,Func2ildarkin_serega(x2,m2,ildarkin_serega),'--');

графики функций f1, f2 на промежутке xϵ [-5.5,-5.45]:

графики функций f1, f2 на промежутке xϵ [-4.0,-3.9]:

Из рисунков видно, что в промежутках [-5.5,-5.45] и [-4.0,-3.9] функция удовлетворяет условиям теоремы:

Пусть уравнение x = f(x) имеет единственный корень на отрезке [a; b] и выполнены условия:

1. f(x) определена и дифференцируема на [a; b].

2. f(x) [a; b] для всех х[a; b].

3. Существует такое действительное q, что для всех х[a; b].

Тогда итерационная последовательность xn = f(xn-1) (n=1, 2, …) сходится при любом начальном приближении х0[a; b].

5. Создадим файл Iterildarkin_serega.sce, содержащий описание функции, возвращающей значение корня уравнения методом итераций.

function Iterildarkin_serega(f, x0, eps, m)

x1=Func1ildarkin_serega(x0,m,f);

k=1;

while abs(x1-x0)>eps

x0=x1;

x1=Func1ildarkin_serega(x0,m,f);

k=k+1;

end

x=x1

disp(x)

disp(k)

fx=feval(x1,f)

disp(fx)

endfunction

6. Вычислим значение корня уравнения:

Iterildarkin_serega(ildarkin_serega,-5.55,0.001,-0.1)

Iterildarkin_serega(ildarkin_serega,-4.0,0.001,0.1)

- 5.4992111

6.

0.0057447

- 3.9284968

9.

- 0.0059700

Ответ: решением уравнения будет число х1= - 5.4992111 и х2=- 3.9284968, полученное х1 на 6 шаге и х2 на 9 шаге. Значение невязки fx1=0.0057447 и fx2=- 0.0059700.

Задача: 3. Решить уравнение методом касательных.