gives the generalized outer product of the listi, forming all possible combinations of the lowest‐level elements in each of them, and feeding them as arguments to f.
treats as separate elements only sublists at level n in the listi.
treats as separate elements only sublists at level ni in the corresponding listi.
- Outer[Times,list1,list2] gives an outer product.
- The result of applying Outer to the tensors Ti1i2...ir and Uj1j2...js is the tensor Vi1i2...irj1j2...js with elements f[Ti1i2...ir,Uj1j2...js]. Applying Outer to two tensors of ranks r and s gives a tensor of rank r+s.
- The heads of all listi must be the same, but need not necessarily be List. »
- Outer[f] returns f.
- The listi need not necessarily be cuboidal arrays.
- The specifications ni of levels must be positive integers, or Infinity.
- If only a single level specification is given, it is assumed to apply to all the listi. If there are several ni, but fewer than the number of listi, the lowest‐level elements in the remaining listi will be used.
- Outer can be used on SparseArray objects, returning a SparseArray object when possible. »
Examplesopen allclose all
Treat nested lists as rank-1 vectors of sublists:
Outer product of SparseArray objects:
Generalizations & Extensions (1)
The head need not be List:
Generate all possible binary trees with nodes from f and leaves from e to depth n:
Apply a function on a tensor product grid:
Show a contour plot of the values and the grid:
Properties & Relations (6)
The dimensions of the result are a concatenation of the dimensions of the inputs:
Outer[f] returns f:
Distribute forms the same combinations of all elements, but in a flat structure:
KroneckerProduct is a flattened outer product of matrices:
Part effectively uses an outer product when given lists of parts at multiple levels:
Table can also make a generalized outer product from lists:
Possible Issues (1)
If backgrounds are inconsistent, a generalized outer product may not be sparse:
You can convert it into a SparseArray by choosing a background:
Wolfram Research (1988), Outer, Wolfram Language function, https://reference.wolfram.com/language/ref/Outer.html (updated 2020).
Wolfram Language. 1988. "Outer." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2020. https://reference.wolfram.com/language/ref/Outer.html.
Wolfram Language. (1988). Outer. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Outer.html