PauliTrotterEvolution#

class qiskit.opflow.evolutions.PauliTrotterEvolution(trotter_mode='trotter', reps=1)[ソース]#

ベースクラス: EvolutionBase

Deprecated: An Evolution algorithm replacing exponentiated sums of Paulis by changing them each to the Z basis, rotating with an rZ, changing back, and Trotterizing.

More specifically, we compute basis change circuits for each Pauli into a single-qubit Z, evolve the Z by the desired evolution time with an rZ gate, and change the basis back using the adjoint of the original basis change circuit. For sums of Paulis, the individual Pauli evolution circuits are composed together by Trotterization scheme.

バージョン 0.24.0 で非推奨: The class qiskit.opflow.evolutions.pauli_trotter_evolution.PauliTrotterEvolution is deprecated as of qiskit-terra 0.24.0. It will be removed no earlier than 3 months after the release date. For code migration guidelines, visit https://qisk.it/opflow_migration.

パラメータ:
  • trotter_mode (str | TrotterizationBase | None) – A string (『trotter』, 『suzuki』, or 『qdrift』) to pass to the TrotterizationFactory, or a TrotterizationBase, indicating how to combine individual Pauli evolution circuits to equal the exponentiation of the Pauli sum.

  • reps (int | None) – How many Trotterization repetitions to make, to improve the approximation accuracy.

  • evolution. (# TODO uncomment when we implement Abelian grouped) –

  • group_paulis (#) – Whether to group Pauli sums into Abelian

  • sub-groups (#) –

  • group (so a single diagonalization circuit can be used for each) –

  • Pauli. (# rather than each) –

Attributes

trotter#

TrotterizationBase used to evolve SummedOps.

Methods

convert(operator)[ソース]#

Traverse the operator, replacing EvolvedOps with CircuitOps containing Trotterized evolutions equalling the exponentiation of -i * operator.

パラメータ:

operator (OperatorBase) – The Operator to convert.

戻り値:

The converted operator.

戻り値の型:

OperatorBase

evolution_for_abelian_paulisum(op_sum)[ソース]#

Evolution for abelian pauli sum

戻り値の型:

PrimitiveOp

evolution_for_pauli(pauli_op)[ソース]#

Compute evolution Operator for a single Pauli using a PauliBasisChange.

パラメータ:

pauli_op (PauliOp) – The PauliOp to evolve.

戻り値:

A PrimitiveOp, either the evolution CircuitOp or a PauliOp equal to the identity if pauli_op is the identity.

戻り値の型:

PrimitiveOp