About cookies on this site Our websites require some cookies to function properly (required). In addition, other cookies may be used with your consent to analyze site usage, improve the user experience and for advertising. For more information, please review your options. By visiting our website, you agree to our processing of information as described in IBM’sprivacy statement. To provide a smooth navigation, your cookie preferences will be shared across the IBM web domains listed here.
TrotterQRTE
class TrotterQRTE(product_formula=None, expectation=None, quantum_instance=None)
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
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
product_formula
quantum_instance
Was this page helpful?
Report a bug or request content on GitHub.