Выражения регрессора и числовые значения в нелинейной модели ARX
Rs = getreg(model)
Rm = getreg(model,data)
Rm = getreg(model,data,init)
Rm = getreg(___,'Type',regressorType)
Rs = getreg(model)
возвращает выражения для вычисления регрессоров в нелинейной модели ARX. model
является idnlarx
объект. Типичное использование регрессионных матриц, созданных getreg
является генерировать входные данные, когда вы хотите вычислить выход функции отображения, такой как wavenet
использование evaluate
. Например, следующая пара команд оценивает выход функции отображения model
.
Regressor_Value = getreg(model,data,'z')
y = evaluate(model.OutputFcn,RegressorValue)
y = predict(model,data,1,predictOptions('InitialCondition','z'))
Rm = getreg(model,data)
возвращает значения регрессора как timetable
для заданного набора входных/выходных данных data
.
Rm = getreg(model,data,init)
использует начальные условия, указанные в init
. Первый N
строки каждой матрицы регрессора зависят от начальных состояний init
, где N
- максимальная задержка в регрессорах (см. getDelayInfo
).
Rm = getreg(___,'Type',
возвращает имена регрессоров заданного regressorType
)regressorType
. Для примера используйте команду Rm = getreg(model,'Type','input')
для возврата имен только регрессоров входа.
data
iddata
объект, содержащий измеренные данные или числовую матрицу, которая содержит значения выходной и входной переменных в порядке [model.OutputName model.InputName]
.
init
Начальные условия ваших данных:
'z'
(по умолчанию) задает нулевое начальное состояние.
NaN
обозначает неизвестные начальные условия.
Действительный вектор-столбец, содержащее начальные значения состояний. Для получения дополнительной информации о начальных состояниях смотрите Определение состояний idnlarx в idnlarx
. Для данных нескольких экспериментов это матрица, где каждый столбец задает начальное состояние модели, соответствующей этому эксперименту.
iddata
объект, содержащий входные и выходные выборки в момент времени перед первой выборкой в data
. Когда iddata
объект содержит больше выборок, чем максимальная задержка в модели, используются только самые последние выборки. Количество необходимых выборок равно max(getDelayInfo(model))
.
model
iddata
объект, представляющий нелинейную модель ARX.
regressorType
Тип возвращаемого регрессора, заданный как один из следующих:
'all'
(по умолчанию) - Все регрессоры
'input'
- Только входные регрессоры
'output'
- Только выходные регрессоры
'standard'
- Только линейные и полиномиальные регрессоры
'custom'
- Только пользовательские регрессоры
Rm
timetable
значений регрессора для всех или заданного подмножества регрессоров. Каждый столбец в Rm
содержит столько строк, сколько выборок данных. Для модели с nr
регрессоры, Rm
содержит по одному столбцу для каждого регрессора. Когда data
содержит несколько экспериментов, Rm
- массив ячеек, где каждый элемент соответствует расписанию значений регрессора для эксперимента.
Rs
Выражения регрессора, представленные как массив ячеек из векторов символов. Для примера выражение 'u1(t-2)'
вычисляет регрессор путем задержки входного сигнала u1
двумя временными выборками. Точно так же выражение 'y2(t-1)'
вычисляет регрессор путем задержки сигнала выхода y2
на одну временную выборку.
Порядок регрессоров в Rs
соответствует индексам регрессора в idnlarx
свойство объекта model.RegressorUsage
.
customRegressor
| evaluate
| idnlarx
| linearRegressor
| polynomialRegressor