| Products & Services | Solutions | Academia | Support | User Community | Company |
| Download Product Updates | | | Get Pricing | | | Trial Software |
| Documentation → System Identification Toolbox |
| Contents | Index |
| Learn more about System Identification Toolbox |
R = polyreg(model)
R = polyreg(model,'MaxPower',n)
R = polyreg(model,'MaxPower',n,'CrossTerm',CrossTermVal)
R = polyreg(model) creates an array R of polynomial regressors up to the power 2. If a model order has input u and output y, na=nb=2, and delay nk=1, polynomial regressors are y(t−1)2, u(t−1)2, y(t−2)2, u(t−2)2. model is an idnlarx object. You must add these regressors to the model by assigning the CustomRegressors model property or by using addreg.
R = polyreg(model,'MaxPower',n) creates an array R of polynomial regressors up to the power n. Excludes terms of power 1 and cross terms, such as y(t−1)*u(t−1).
R = polyreg(model,'MaxPower',n,'CrossTerm',CrossTermVal) creates an array R of polynomial regressors up to the power n and includes cross terms (products of standards regressors) when CrossTermVal is 'on'. By default, CrossTermVal is 'off'.
Create polynomial regressors up to order 2:
% Estimate a nonlinear ARX model with % na=nb=2 and nk=1. % Nonlinearity estimator is wavenet. load iddata1 m = nlarx(z1,[2 2 1]) % Create polynomial regressors: R = polyreg(m); % Estimate model: m = nlarx(z1,[2 2 1],'wavenet','CustomReg',R); % View all model regressors (standard and custom): getreg(m)
Create polynomial regressors up to order 3:
R = polyreg(m,'MaxPower',3,'CrossTerm','on')
If the model m that has three standard regressors a, b and c , R includes a^2, b^2, c^2, a*b, a*c, b*c, a^2*b, a^2*c, a*b^2, a*b*c, a*c^2, b^2*c, b*c^2, a^3, b^3, and c^3.
addreg | customreg | getreg | idnlarx | nlarx
![]() | polydata | poly1d | ![]() |

Includes the most popular MATLAB recorded presentations with Q&A sessions led by MATLAB experts.
| © 1984-2009- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |