That function is a bench of finite impulse response (FIR) filters. For each filters, the same impulse response (h) is used. It can be used both with double or int32 entries.

The computation used here is the discrete convolution.

[y[,z]]=nfilter(u,h[,z])

**u :**The inputs to be filtered. Matrices of size n,m are interpreted as m vectors of size n.**h :**Vector of impulse response (of size nbcoef).**y :**Filtered outputs.**z :**States of filters (m vectors of size nbcoef).

//3 vectors of 200 symbols y = genint(200,3,1,2); //Q-PSK modulation [yi,yq] = modpsk(y,4); //up-sample by 8 yi_s = upsmpl(yi,8,1); yq_s = upsmpl(yq,8,1); //compute Raised Cosine impulse //roll-off=0.35, length 128 pulse = filter_tap(2,128,8,0.35,1); //filtering 3 vectors of I/Q components i = nfilter(yi_s,pulse'); q = nfilter(yq_s,pulse'); //plot eye diagram of the first vector of I plot2d(matrix(i(:,1),16,100));