/
aytsan_ns
/
Num_meth
Обзор
Документация
Войти
/
aytsan_ns
/
Num_meth
Код
Запросы
0
Задачи
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Lab10/Lab_10.m
58 строк
1 KB
aytsan-ns
Работа 10 выполнена до конца, оформлен отчет и приложен в формате PDF.
29 авг 2024, 11:37
29 авг 2024, 11:37
5d550b1
Код
Авторство
О чём код?
f = @(x) x.^5 - 9.2*x.^3 + 5.5*x.^2 - 7*x; error = dlmread('error.txt'); X = [0.1 0.01 0.001 0.0001 0.00001 0.000001 0.0000001 0.00000001 0.000000001 0.0000000001]; figure; hold on; plot(X, error, 'b'); grid on set(gca, 'XScale', 'log'); set(gca, 'YScale', 'log'); x = linspace(0.0000000001, 0.1, 100); plot(x, x, '--r'); legend('����������� ������', '����������a', 'Location', 'Best'); xlabel('��������', 'Interpreter', 'none'); ylabel('������', 'Interpreter', 'none'); hold off; error_n = dlmread('error_n.txt'); figure; hold on; plot(X, error_n, 'b'); grid on set(gca, 'XScale', 'log'); set(gca, 'YScale', 'log'); xlabel('��������', 'Interpreter', 'none'); ylabel('����� ��������', 'Interpreter', 'none'); hold off; error_h = load('error_h.txt'); h = error_h(:,1) error = error_h(:,2) log_h = log2(h); log_error = log2(error); figure; hold on; plot(log_h, log_error, 'b'); grid on coeffs = polyfit(log_h, log_error, 1); p = coeffs(1); % ������� �������� (������ �����) log_C = coeffs(2); % �������� ��������� C C = 2^log_C; % ��������� fit_error = polyval(coeffs, log_h); plot(log_h, fit_error, 'r--', 'LineWidth', 1); legend('������', '�������� �������������', 'Location', 'SouthEast'); title(sprintf('������� ��������: %.2f, ���������: %.2e', p, C)); xlabel('log_2(h)', 'Interpreter', 'none'); ylabel('log_2(����������� ������)', 'Interpreter', 'none'); hold off; fprintf('������� �������� p = %.2f\n', p); fprintf('��������� C = %.5e\n', C);