MapThread - apply a procedure to corresponding elements of n array
[[a11 ... a1n]...[am1 ... amn]] {f} MapThread ->
[f(a11, a21,... am1)...f(a1n, a2n,...,amn)]
[[1 2][3 4]] {add} MapThread -> [4 6]
[[1 2 3 4] [1 1 1 1]] {add} MapThread -> [2 3 4 5]
MapThread is like a multidimensional Map. It applies the function
of to corresponding elements of m argument arrays.
the first parameter is a list of m arrays of equal size n.
The second parameter is a procedure which takes m arguments and
returns a single value.
This function implements the simple version of Mathematica's
MapThread
/var/www/debian/nest/nest-simulator-2.20.0/sli/sliarray.cc