kron
Graph.kron(x, y, *, name=None)
Calculate the Kronecker product between np.ndarrays, Tensors, Pwcs, or Stfs.
If any of the inputs is a Pwc or Stf, the output is also a Pwc or Stf (mixing Pwcs and Stfs is not supported). Otherwise, the output is a Tensor.
This operation supports broadcasting between the batch dimensions of the two input objects. All the dimensions with the exception of the two innermost ones (where the Kronecker product is performed) are considered batch dimensions.
When operating a tensor-like object with an Stf or a Pwc, the time dimension of the latter is ignored.
Parameters
- x (np.ndarray or Tensor or Pwc or Stf) – The left multiplicand. It must be a have at least two dimensions.
- y (np.ndarray or Tensor or Pwc or Stf) – The right multiplicand. It must be a have at least two dimensions.
- name (str or None , optional) – The name of the node. You can only provide a name if neither x nor y are Stfs.
Returns
The Kronecker product of the input objects. If any of the input objects is a Pwc or Stf, the returned objects has the same type. Otherwise, it is a Tensor.
Return type
SEE ALSO
Graph.embed_operators
: Embed operators into a larger Hilbert space.
Graph.kronecker_product_list
: Kronecker product of a list of operators.
Graph.pauli_kronecker_product
: Embed Pauli matrices into a larger Hilbert space.