Outer[f, list1, list2, ...]
gives the generalized outer product of the , forming all possible combinations of the lowest-level elements in each of them, and feeding them as arguments to f.

Outer[f, list1, list2, ..., n]
treats as separate elements only sublists at level n in the .

Outer[f, list1, list2, ..., n1, n2, ...]
treats as separate elements only sublists at level in the corresponding .


  • Outer[Times, list1, list2] gives an outer product.
  • The result of applying Outer to the tensors and is the tensor with elements . Applying Outer to two tensors of ranks r and s gives a tensor of rank .
  • The heads of all must be the same, but need not necessarily be List. »
  • The need not necessarily be cuboidal arrays.
  • The specifications of levels must be positive integers, or Infinity.
  • If only a single level specification is given, it is assumed to apply to all the . If there are several , but fewer than the number of , the lowest-level elements in the remaining will be used.
  • Outer can be used on SparseArray objects, returning a SparseArray object when possible. »
New in 1 | Last modified in 5
New to Mathematica? Find your learning path »
Have a question? Ask support »