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

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

Нахождение всех корней полинома производится с помощью функции roots.

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

>> polyval(p,-1)

ans =

1.8000

>> polyval(p,4)

ans =

1.5616e+004

>> polyval(p,2.2)

ans =

191.9939

>> polyval(p,pi)

ans =

2.7412e+003

>> roots(p)

ans =

1.2712 + 0.3945i

1.2712 - 0.3945i

-0.7372 + 1.4159i

-0.7372 - 1.4159i

-1.0998

0.0159 + 0.7772i

0.0159 - 0.7772i

poly(roots(p))

ans =

1.0000 0.0000 0.0000 -3.2000 0.0000 3.0000 -0.0000 3.0000

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

Для умножения полиномов используется функция conv. Для деления полиномов с остатком используется функция deconv, имеющая два выходных аргумента – частное и остаток.

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

>> roots(p)

ans =

-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

>> poly(roots(p))

ans =

Columns 1 through 8

1.0000 0.0000 0.0000 -1.5000 -0.0000 -0.0000 3.5000 0.0000

Column 9

-1.0000

Упражнение 3. Вычислить произведение полиномов и и частное и остаток от деления на

Для сложения и вычитания полиномов нет специальной функции. Использование знака + приведёт к ошибке при сложении полиномов разной степени.

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

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

>> conv(p,q)

ans =

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

>> deconv(p,q)

ans =

1 2 3 5

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

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

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

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

\

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

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

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

>> prp=polyder(p)

prp =

5 -4 0 -6 0

>> prq=polyder(q)

prq =

6 0 0 0 0 -3

>> prpr=polyder(p,q)

prpr =

11 -10 0 -24 0 -30 20 -4 27 -6 6

>> [a b]=polyder(p,q)

a =

-1 2 0 12 0 0 14 -4 9 -6 -6

b =

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

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

function f=fun(p,n,x) for i=1:n:1 f=polyder(p);

end polyval(f,x); script([1,0,0,-1,0,0,0,0,3,0,-2],5,0.2) ans = Columns 1 through 9 10 0 0 -7 0 0 0 0 6 Column 10 0

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

Соседние файлы в папке Математический Анализ_1