Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ЛР1 / lab1_neuton

.m
Скачиваний:
27
Добавлен:
14.12.2022
Размер:
743 б
Скачать
function [x_min, f_min] = lab1_neuton(eps, f, x_start)
    syms x;
    f_diff1 = diff(f);
    f_diff2 = diff(f_diff1);
    f_diff_x = double(subs(f_diff1, x, x_start));
    counter = 1;

    while abs(f_diff_x) > eps
        x_start = x_start - (double(subs(f_diff1, x, x_start)) / double(subs(f_diff2, x, x_start)));
        f_diff_x = double(subs(f_diff1, x, x_start));
        counter = counter + 3;
    end
    
    x_min = x_start;
    f_min = subs(f, x, x_min);
    str=sprintf('Минимум функции - %3f, в точке %3f',f_min, x_min);
    disp(str);
    str = sprintf('Количество вычислений значения производной функции - %d', counter);
    disp(str);

end
Соседние файлы в папке ЛР1