function outerProduct_(v1, v2) {
    const $v1 = (0, _tensorUtilEnv.convertToTensor)(v1, "v1", "outerProduct");
    const $v2 = (0, _tensorUtilEnv.convertToTensor)(v2, "v2", "outerProduct");
    _util.assert($v1.rank === 1 && $v2.rank === 1, ()=>`Error in outerProduct: inputs must be rank 1, but got ranks ` + `${$v1.rank} and ${$v2.rank}.`);
    const v12D = (0, _reshape.reshape)($v1, [
        -1,
        1
    ]);
    const v22D = (0, _reshape.reshape)($v2, [
        1,
        -1
    ]);
    return (0, _matMul.matMul)(v12D, v22D);
}
Computes the outer product of two vectors, `v1` and `v2`.

```js
const a = tf.tensor1d([1, 2, 3]);
const b = tf.tensor1d([3, 4, 5]);

tf.outerProduct(a, b).print();
```
@param v1 The first vector in the outer product operation.
@param v2 The second vector in the outer product operation.

@doc {heading: 'Operations', subheading: 'Matrices'}