samer@3: function y=filter(a,b,x,z,dim) samer@3: % filter - filter for sequences of array samer@3: % samer@3: % filter :: [[P]], [[P]], seq [Size], [[P]], D:natural -> seq [Size]. samer@3: % filter :: [[P]], [[P]], seq [Size], [[P]] -> seq [Size]. samer@3: % filter :: [[P]], [[P]], seq [Size] -> seq [Size]. samer@3: % samer@3: % filtering is done along Dth dimension of the array (default=1) samer@3: samer@23: if isempty(x), y=nil; return; end samer@3: if nargin<5, samer@3: dim=find(size(x)>1,1); samer@3: if isempty(dim), dim=1; end samer@3: if nargin<4, z=[]; end samer@3: end samer@3: samer@25: y = mapaccum(@(x1,z1)filter(a,b,x1,z1,dim),z,x);