full_matrix_product#

cuquantum.densitymat.full_matrix_product(
*operands: Tuple[MatrixOperator, bool | None, bool | None],
coeff: Number | ndarray | ndarray | Callback | Tuple[Number, Callback] | Tuple[ndarray | ndarray, Callback] = 1.0,
batch_size: int = 1,
) OperatorTerm[source]#

Return an OperatorTerm from a product of matrix operators defined on the full Hilbert space.

Parameters:
  • operands

    Operands in the product. Each operand is a tuple of length 1 to 3 of the form (matrix, conjugation, dual), where matrix is an instance of MatrixOperator and conjugation and dual are optional booleans and default to False.

    • conjugation=True implies that the complex conjugate transpose of the MatrixOperator is applied.

    • dual=True implies that the MatrixOperator acts from the right on the bra modes of a mixed quantum state, while dual=False (default) the MatrixOperator acts from the left on the ket modes of the pure or mixed quantum state.

  • coeff – Coefficient(s) associated with this OperatorTerm.

  • batch_size – Batch size of coefficient coeff, needs to be specified only if coeff is a Callback.

Returns:

An OperatorTerm constructed from the product of MatrixOperator instances.