Иллюстрированный самоучитель по MatLab

Работа с полиномами. Умножение и деление полиномов.

Полиномы (у нас их принято называть также степенными многочленами) – широко известный объект математических вычислений и обработки данных. Обычно полином записывается в виде:

р(х) = а n х^n + x n-1 x^n – 1+… + а 2 x^2 + а 1 ^х + а 0 ,

И так обычно принято в MATLAB для п, отрицательных по умолчанию, хотя и возможны иные формы записи, например:

р(х) = a 1 x^n + а 2 x^n-1 +… + а n х + а n+1.

Последняя запись обычно принята в MATLAB для n, по умолчанию положительных.

Широкое применение полиномов отчасти обусловлено большими возможностями полиномов в представлении данных, а также их простотой и единообразием вычислений. В этом разделе описаны основные функции для работы с полиномами. При этом полиномы обычно задаются векторами их коэффициентов.

Умножение и деление полиномов

Ниже приведены функции, осуществляющие умножение и деление полиномов, или, что то же самое, свертку двух входных векторов, в которых находятся коэффициенты полиномов, и операцию, обратную свертке.

  • w = conv(u.v) – возвращает свертку векторов u и v. Алгебраически свертка – то же самое, что и произведение полиномов, чьи коэффициенты – элементы векторов и и v. Если длина вектора и равна т, а длина вектора v – n, то вектор w имеет длину т+n-1, а его k-й элемент вычисляется по следующей формуле

Иллюстрированный самоучитель по MatLab › Численные методы › Работа с полиномами. Умножение и деление полиномов.

Пример:

>> f=[2.3.5.6];d=[7.8.3]:r=conv(f,d)
r =
14 37 65 91 63 18
  • [q,r] = deconv(v.u) – возвращает результат деления полинома v на полином и. Вектор q представляет собой частное от деления, а г – остаток от деления, так что выполняется соотношение v=conv(u,q)+r.

Пример:

>> t=[14.37.65.91.63.18]:r=[7.8.3];[w.e]=deconv(t.r)
w =
2.0000 3.0000 5.0000 6.0000
e =
1.0e-013
0 0 0.1421-0.1421-0.2132-0.1066
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.