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

1 семестр_1 / МА / МП-12_Николаев_Олег_Практ_9 / МП-12_Николаев_Олег_Практ_9

.docx
Скачиваний:
20
Добавлен:
05.06.2015
Размер:
68.64 Кб
Скачать

Отчет к упражнению 1

Вычислить значения полинома в точках Значения аргументов задать в виде вектора. Сохранить значения полинома.

p=[1 0 0 -3.2 0 3 0 3];

x=[-1 4 2.2 pi];

y=polyval(p,x)

y =

1.0e+004 *

0.0002 1.5616 0.0192 0.2741

Отчет к упражнению 2

Вычислить корни полинома сохранить их, сделать проверку.

p=[2 0 0 -3 0 0 7 0 -2];

r=roots(p)

r =

-0.9586 + 0.7952i

-0.9586 - 0.7952i

-0.1514 + 1.2536i

-0.1514 - 1.2536i

1.0927 + 0.4678i

1.0927 - 0.4678i

-0.5179

0.5525

p1=round(2*poly(r))

p1 =

2 0 0 -3 0 0 7 0 -2

Отчет к упражнению 3

Вычислить произведение полиномов

и ,

а также частное и остаток от деления на

p=[1 2 0 0 -3 0 4];

q=[1 0 -3 1];

m=conv(p,q)

m =

1 2 -3 -5 -1 0 13 -3 -12 4

[d,r]=deconv(p,q)

d =

1 2 3 5

r =

0 0 0 0 4 12 -1

Отчет к упражнению 4

Написать файл-функцию с двумя аргументами, осуществляющую сложение полиномов разной степени. Алгоритм:

1) Найти большую из длин входных аргументов (обозначим её

2) Создать вспомогательные векторы длины представляющие те же самые полиномы, что и аргументы. Для заполнения части элементов нулями можно использовать функцию zeros.

3) Вычислить сумму.

function s=polysum(p,q)

l1=length(p);l2=length(q);

m=max(l1,l2);

p1=[zeros(1,m-l1),p];

q1=[zeros(1,m-l2),q];

s=p1+q1;

end

Протестировать файл-функцию, используя полиномы и

p=[1 2 0 0 -3 0 4];

q=[1 0 -3 1];

polysum(p,q)

ans =

1 2 0 1 -3 -3 5

Отчет к упражнению 5

Для многочленов и найти их производные, производную произведения и частного.

p=[1 -1 0 -3 -2];

q=[1 0 0 0 0 -3 1];

n1=polyder(p)

n1 =

4 -3 0 -3

n2=polyder(q)

n2 =

6 0 0 0 0 -3

n=polyder(p,q)

n =

10 -9 0 -21 -12 -15 16 -3 18 3

[n,d]=polyder(p,q)

n =

-2 3 0 15 12 -9 10 -3 0 -9

d =

1 0 0 0 0 -6 2 0 0 0 9 -6 1

Отчет к упражнению 6

Создать файл-функцию, вычисляющую производную порядка n полинома , заданного вектором коэффициентов. Производную задать вектором коэффициентов. С помощью созданной файл-функции найти 5-ую производную полинома и вычислить её значение в точке 0,2.

function [p,v]=polydern(p,x0,n)

for i=1:1:n

p=polyder(p);

end

v=polyval(p,x0);

end

p=[1 0 0 -1 0 0 0 0 3 0 -2];

[p,v]=polydern(p,0.2,5)

p =

30240 0 0 -2520 0 0

v =

-91.1232

Отчет к упражнению 7

Создать М-файл, вычисляющий значения коэффициентов (в виде вектора) в многочлене Тейлора для полинома произвольной степени в произвольной точке. С помощью созданной функции вычислить коэффициенты для разложений полинома в многочлен Тейлора по степеням и

function b=taylor(p,x0,n)

b=zeros(1,n+1);

for i=0:1:n

[p1,v]=polydern(p,x0,i);

b(i+1)=v/factorial(i);

end

end

p=[1 0 2 0 0 -3 -2];

b=taylor(p,1,6)

b =

-2 11 27 28 17 6 1

b=taylor(p,-2,6)

b =

100 -259 288 -176 62 -12 1

Отчет к упражнению C1

Вычислить корни полинома сохранить их, сделать проверку.

p=[1 0 0 0 0 0 -1];

v=roots(p)

v =

-1.0000

-0.5000 + 0.8660i

-0.5000 - 0.8660i

1.0000

0.5000 + 0.8660i

0.5000 - 0.8660i

p1=round(poly(v))

p1 =

1 0 0 0 0 0 -1

Отчет к упражнению C2

Вычислить произведение полиномов и , частное и остаток от деления на , сумму полиномов, если

и .

p=[1 1 1];

q=[1 -1];

m=conv(p,q)

m =

1 0 0 -1

[d,r]=deconv(p,q)

d =

1 2

r =

0 0 3

Отчет к упражнению C3

Для многочлена записать многочлен Тейлора по степеням .

p=[1 -2 0 1];

b=taylor(p,2,3)

b =

1 4 4 1

Соседние файлы в папке МП-12_Николаев_Олег_Практ_9