Подпункт b
% построение графика функции y(x) красно-желтой штриховой линией
x=-4:0.1:4 ;
y = ftest1(x);
subplot (2,2,1);
plot (x,y,'r-'); % красная сплошная линия
hold on
plot (x,y,'y--'); % желтая штриховая
grid on
title( 'Function y(x)' );
xlabel( 'x' );
ylabel( 'y' );
% построение графика функции y(x) зеленой штрихпунктирной линией
x=-4:0.1:4 ;
y = ftest1(x);
subplot (2,2,2);
plot (x,y,'g-.');
grid on
title( 'Function y(x)' );
xlabel( 'x' );
ylabel( 'y' );
% построение графика функции y(x) черной пунктирной линией
subplot (2,2,3);
plot (x, y,'k:');
grid on
title( 'Function y(x)' );
xlabel( 'x' );
ylabel( 'y' );
% построение графика функции y(x) сиреневой линией с нанесением маркеров, отражающих точки по которым была построена функция
x=-4:0.5:4 ;
y = ftest1(x);
subplot (2,2,4);
plot (x, y,'m', x, y, 'ko');
grid on
title( 'Function y(x)' );
xlabel( 'x' );
ylabel( 'y' );
Подпункт c
% построение графиков функций в одних осях на заданных интервалах
x1 = -10 : 0.1 : -5; %интервал и шаг для y(x)
x2 = -5 : 0.1 : 0; %интервал и шаг для P(x)
x3 = 0 : 0.1 : 5; %интервал и шаг для g(x)
y = ftest1(x1);
p = ftest2(x2);
g = ftest3(x3);
plot(x1, y, x2, p, x3, g); %построение
grid on
legend('y(x)=2*x + cos(x)-0.5','P(x)=x.^3-0.2*x.^2+0.3*x-1.2','g(x)=y(x)/P(x)',4); %подпись графиков к цветам
title( 'Function y,P,g(x)' ); %заголовок
xlabel( 'x' ); %подпись горизонтальной оси
ylabel( 'y,P,g' ); %подпись вертикальной оси
Подпункт d
% построение графиков функций в одних осях
x=-1:0.05:2;
y = ftest1(x);
p = ftest2(x);
g = ftest3(x);
plot (x,y,'r-'); %построение y(x)
hold on
plot (x,p,'g-'); %построение P(x)
hold on
plot (x,g,'b-'); %построение g(x)
grid on
title( 'y(x)=2*x + cos(x)-0.5, P(x)=x.^3-0.2*x.^2+0.3*x-1.2, g(x)=y(x)/P(x)' );
xlabel( 'x' );
ylabel( 'y,P,g' );
legend('y(x)=2*x + cos(x)-0.5','P(x)=x.^3-0.2*x.^2+0.3*x-1.2','g(x)=y(x)/P(x)',2);
Задание 3 Исследование свойств полиномов Используемые функции:
function p = pif(x); % характеристический полином данной матрицы
p = x.^10-36.0297000000000*x.^9+522.613326230000*x.^8-3880.66462752017*x.^7+15420.7983023432*x.^6-30964.8099514909*x.^5+26975.3147208056*x.^4-11911.5984077652*x.^3+2830.50062629283*x.^2-345.877080534557*x+17.2481676707357;
Подпункт a
% построение графика исходного полинома
fopen ('Массив А.txt');
A = load('-ascii', 'Массив А.txt');
P = poly(A);
x=-5:0.1:10;
plot (x, polyval(P,x));
axis( [ -5, 10, -1000000, 1000000 ] );
grid on
% Из графика видно то, что:
-
Данный полином – полином четной степени
-
Значения полинома наиболее приближенны к нулю на (0; 0.6) и на (5; 6). Подробные графики полинома на этих интервалах построены в подпункте b
Подпункт b
% построение спорных моментов
x=0:0.01:0.6;
plot (x, polyval(P,x));
axis( [ 0, 0.6, -1, 1 ] );
grid on
x=5:0.01:6;
plot (x, polyval(P,x));
axis( [ 5, 6, -1000, 1000 ] );
grid on
Подпункт c
% производные
P1 = polyder(P);
P2 = polyder(P1);
P3 = polyder(P2);
% корни данного полинома и его производных
r = roots(P); % 6 действительных корней (всего 10)
r1 = roots(P1); % 6 действительных корней (всего 9)
r2 = roots(P2); % 6 действительных корней (всего 8)
r3 = roots(P3); % 6 действительных корней (всего 7)