toCellArray

Класс: LagOp

Преобразуйте объект полинома оператора задержки в массив ячеек

Синтаксис

[coefficients, lags] = toCellArray(A)

Описание

[coefficients, lags] = toCellArray(A) преобразовывает объект A(L) полинома оператора задержки в эквивалентный массив ячеек. coefficients является массивом ячеек, эквивалентным полиному оператора задержки A(L). lags является вектором уникальных целочисленных задержек, сопоставленных с полиномиальными коэффициентами. Элементы задержек в порядке возрастания. Первый элемент задержек является меньшей из наименьшей ненулевой содействующей задержки объекта и нуля; последний элемент задержек является степенью полинома. Таким образом, lags = [min(A.Lags,0), 1, 2, ... A.Degree].

Примеры

развернуть все

Создайте полином LagOp и преобразуйте его в массив ячеек:

A = LagOp({0.8 1 0 .6});
B = toCellArray(A);
class(B)
ans = 
'cell'

Алгоритмы

Объекты LagOp неявно хранят полиномиальные задержки и соответствующие содействующие матрицы коэффициентов с нулевым знаком через основанную на задержке индексацию. Однако массивы ячеек соответствуют традиционным правилам индексации элемента и должны явным образом сохранить нулевые содействующие матрицы.

Выходной массив ячеек эквивалентен входному полиному оператора задержки в том смысле, что тот же оператор задержки создается, когда выходные коэффициенты и задержки используются, чтобы создать новый объект LagOp. Таким образом, следующие два оператора производят тот же полиномиальный A(L):

[coefficients,lags] = toCellArray(A);
A = LagOp(coefficients,'Lags',lags);