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.
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.