Skip to main contentIBM Quantum Documentation
You are viewing the API reference for an old version of Qiskit SDK. Switch to latest version

TrotterQRTE

TrotterQRTE(product_formula=None, expectation=None, quantum_instance=None)

GitHub(opens in a new tab)

Bases: qiskit.algorithms.evolvers.real_evolver.RealEvolver

Pending deprecation: Quantum Real Time Evolution using Trotterization.

The TrotterQRTE class has been superseded by the qiskit.algorithms.time_evolvers.trotterization.TrotterQRTE class. This class will be deprecated in a future release and subsequently removed after that.

Type of Trotterization is defined by a ProductFormula provided.

Examples:

from qiskit.opflow import X, Z, Zero
from qiskit.algorithms import EvolutionProblem, TrotterQRTE
from qiskit import BasicAer
from qiskit.utils import QuantumInstance
 
operator = X + Z
initial_state = Zero
time = 1
evolution_problem = EvolutionProblem(operator, 1, initial_state)
# LieTrotter with 1 rep
backend = BasicAer.get_backend("statevector_simulator")
quantum_instance = QuantumInstance(backend=backend)
trotter_qrte = TrotterQRTE(quantum_instance=quantum_instance)
evolved_state = trotter_qrte.evolve(evolution_problem).evolved_state

Parameters

  • product_formula (Optional[ProductFormula]) – A Lie-Trotter-Suzuki product formula. The default is the Lie-Trotter first order product formula with a single repetition.
  • expectation (Optional[ExpectationBase]) – An instance of ExpectationBase which defines a method for calculating expectation values of EvolutionProblem.aux_operators.
  • quantum_instance (Union[Backend, QuantumInstance, None]) – A quantum instance used for calculating expectation values of EvolutionProblem.aux_operators.

Methods

evolve

TrotterQRTE.evolve(evolution_problem)

Evolves a quantum state for a given time using the Trotterization method based on a product formula provided. The result is provided in the form of a quantum circuit. If auxiliary operators are included in the evolution_problem, they are evaluated on an evolved state using a backend provided.

Note

Time-dependent Hamiltonians are not yet supported.

Parameters

evolution_problem (EvolutionProblem) – Instance defining evolution problem. For the included Hamiltonian, PauliOp, SummedOp or PauliSumOp are supported by TrotterQRTE.

Return type

EvolutionResult

Returns

Evolution result that includes an evolved state as a quantum circuit and, optionally, auxiliary operators evaluated for a resulting state on a backend.

Raises

  • ValueError – If t_param is not set to None in the EvolutionProblem (feature not currently supported).
  • ValueError – If the initial_state is not provided in the EvolutionProblem.

supports_aux_operators

classmethod TrotterQRTE.supports_aux_operators()

Whether computing the expectation value of auxiliary operators is supported.

Return type

bool

Returns

True if aux_operators expectations in the EvolutionProblem can be evaluated, False

otherwise.


Attributes

expectation

Returns an expectation used in the algorithm.

Return type

Optional[ExpectationBase]

product_formula

Returns a product formula used in the algorithm.

Return type

ProductFormula

quantum_instance

Returns a quantum instance used in the algorithm.

Return type

Optional[QuantumInstance]

Was this page helpful?
Report a bug or request content on GitHub.