Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Проект по MATLAB.docx
Скачиваний:
6
Добавлен:
01.12.2018
Размер:
47.59 Кб
Скачать

Подпункт 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

% Из графика видно то, что:

  1. Данный полином – полином четной степени

  2. Значения полинома наиболее приближенны к нулю на (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)