Представление символов полиномов

Можно задать полиномы как вектор символов или строку с помощью множества синтаксисов, которые соответствуют найденным в литературе. Функции Communications Toolbox™, поддерживающие векторы символов и строковые полиномы, внутренне преобразуют их в соответствующую форму. Форма изменяется в зависимости от функции. Для примера, comm.BCHEncoder функция выражает полиномы как двоичный вектор-строка, степени которого находятся в порядке убывания.

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

  • Порядок полинома, возрастающий или нисходящий, не имеет значения.

  • Пространства игнорируются.

  • Символ каретки, ^, что указывает на наличие экспоненты, необязательно. Если он опущен, функция принимает, что целое число, следующее за именем переменной, является экспонентом.

  • Скобки, {}, обозначают экспоненту. Для примера можно представлять x2 как x{2}.

  • Текст, появляющийся перед полиномиальным выражением (со знаком equals или без него), игнорируется.

  • Пунктуация после квадратных скобок игнорируется.

  • Экспоненты должны быть равномерно положительными или равномерно отрицательными. Смешанные экспоненты не разрешены. Для примера, 'x^2 + x + 1' и '1 + z^-6 + z^-8' действительны во время '1 + z^6 + z^-8' нет.

Чтобы проиллюстрировать эти характеристики, можно выразить полином 1 + 2 x + x3 + 4 x5 + x14 использование любого из следующих примеров, использующих одинарные кавычки для векторов символов, как показано на рисунке, или двойные кавычки для строк.

  • '1+2x+x^3+4x^5+x^14'

  • '1+2m+m3+4m5+m14'

  • 'q14 + 4q5 + q3 + 2q + 1'

  • 'g(x) = 1+2x+x3+4x5+x14'

  • 'g(z) 1+2z+z3+4z5+z14'

  • 'p(x) = x{14} + 4x{5} + x{3} + 2{x} + 1'

  • '[D14 + 4D5 + D3 + 2D + 1]'