mapfilter
Make new arrays by transforming elements of given arrays selected according to specified criteria.
[x, y, z,...]=mapfilter(a, b, c,..., mapfunction, selectfunction)
Inputs
{a, b, c,...} One or more arrays of identical type and size.
mapfunction A function of the form [xi, yi, zi,..]=mapfunction(ai, bi, ci,..) that transforms the selected scalar elements of the inputs.
selectfunction A function of the form select=selectfunction(ai, bi, ci,..) that returns a boolean value indicating if the scalars that are the elements of the arrays input to mapfilter should be selected for constructing the outputs.
Outputs
{x, y, z, ...} The arrays constructed by mapping the selected elements of the inputs.


Description
If the inputs are numeric arrays, the function is equivalent to the following (pseudocode)
   n=numel(a);
   // Make sure that the input arrays are identical in size.
   for i=1:n
    if(selectfunction(a[i],b[i],..))
             (x[i],y[i],z[i],..)=mapfunction(a[i], b[i], c[i],...)
    end
   end