From Eigenvector Research Documentation Wiki
Jump to navigation Jump to search


Builds finite impulse response (FIR) models for multi-input single output (MISO) systems using partial least squares regression.


b = plspulsm(u,y,n,maxlv,split,delay)


plspulsm calculates a vector of FIR coefficients b using PLS regression.

Note: plspulsm uses contiguous blocks of data for cross-validation.


  • u = matrix of process input vectors
  • y = process output vector
  • n = a row vector with the number of FIR coefficients to use for each input
  • maxlv = maximum number of latent variables to consider
  • split = number of times the model is rebuilt and tested during cross-validation
  • delay = row vector containing the number of time units of delay for each input


  • b = vector of FIR coefficients


b = plspulsm([u1 u2],y,[25 15],5,10,[0 3])

In this example, the system has 2 inputs as column vectors u1 and u2 and a single output vector y. The FIR model will use 25 coefficients for input variable u1 and 15 coefficients for input variable u2. For this model a maximum of 5 latent variables will be considered. The cross validation split the data into 10 block-wise subsets. The number of time units of delay for the first input variable u1 is 0 and for the second input variable u2 it is 3.

See Also

autocor, crosscor, fir2ss, wrtpulse