dq.tensor
tensor(*args: QArrayLike) -> QArray
Returns the tensor product of multiple kets, bras, density matrices or operators.
The returned qarray shape is:
- \((..., n, 1)\) with \(n=\prod_k n_k\) if all input qarrays are kets with shape \((..., n_k, 1)\),
- \((..., 1, n)\) with \(n=\prod_k n_k\) if all input qarrays are bras with shape \((..., 1, n_k)\),
- \((..., n, n)\) with \(n=\prod_k n_k\) if all input qarrays are density matrices or operators with shape \((..., n_k, n_k)\).
Parameters:
-
*args(qarray-like of shape (..., n_k, 1) or (..., 1, n_k) or (..., n_k, n_k)) –Variable length argument list of kets, bras, density matrices or operators.
Returns:
-
(qarray of shape (..., n, 1) or (..., 1, n) or (..., n, n))
–
Tensor product of the input qarrays.
Examples:
>>> psi = dq.tensor(dq.fock(3, 0), dq.fock(4, 2), dq.fock(5, 1))
>>> psi.shape
(60, 1)