119 lines
5.3 KiB
Plaintext
119 lines
5.3 KiB
Plaintext
---
|
||
title: TrotterQRTE
|
||
description: API reference for qiskit.algorithms.TrotterQRTE
|
||
in_page_toc_min_heading_level: 1
|
||
python_api_type: class
|
||
python_api_name: qiskit.algorithms.TrotterQRTE
|
||
---
|
||
|
||
# TrotterQRTE
|
||
|
||
<Class id="qiskit.algorithms.TrotterQRTE" isDedicatedPage={true} github="https://github.com/qiskit/qiskit/tree/stable/0.24/qiskit/algorithms/evolvers/trotterization/trotter_qrte.py" signature="TrotterQRTE(product_formula=None, expectation=None, quantum_instance=None)" modifiers="class">
|
||
Bases: [`RealEvolver`](qiskit.algorithms.RealEvolver "qiskit.algorithms.evolvers.real_evolver.RealEvolver")
|
||
|
||
Deprecated: Quantum Real Time Evolution using Trotterization.
|
||
|
||
The TrotterQRTE class has been superseded by the [`qiskit.algorithms.time_evolvers.trotterization.TrotterQRTE`](qiskit.algorithms.time_evolvers.trotterization.TrotterQRTE "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:
|
||
|
||
```python
|
||
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
|
||
```
|
||
|
||
<Admonition title="Deprecated since version 0.24.0" type="danger">
|
||
The class `qiskit.algorithms.evolvers.trotterization.trotter_qrte.TrotterQRTE` is deprecated as of qiskit-terra 0.24.0. It will be removed no earlier than 3 months after the release date. Instead, use the class `qiskit.algorithms.time_evolvers.trotterization.TrotterQRTE`. See [https://qisk.it/algo\_migration](https://qisk.it/algo_migration) for a migration guide.
|
||
</Admonition>
|
||
|
||
**Parameters**
|
||
|
||
* **product\_formula** ([*ProductFormula*](qiskit.synthesis.ProductFormula "qiskit.synthesis.ProductFormula") *| None*) – A Lie-Trotter-Suzuki product formula. The default is the Lie-Trotter first order product formula with a single repetition.
|
||
* **expectation** ([*ExpectationBase*](qiskit.opflow.expectations.ExpectationBase "qiskit.opflow.expectations.ExpectationBase") *| None*) – An instance of ExpectationBase which defines a method for calculating expectation values of EvolutionProblem.aux\_operators.
|
||
* **quantum\_instance** ([*QuantumInstance*](qiskit.utils.QuantumInstance "qiskit.utils.QuantumInstance") *|*[*Backend*](qiskit.providers.Backend "qiskit.providers.Backend") *| None*) – A quantum instance used for calculating expectation values of EvolutionProblem.aux\_operators.
|
||
|
||
## Methods
|
||
|
||
<span id="qiskit-algorithms-trotterqrte-evolve" />
|
||
|
||
### evolve
|
||
|
||
<Function id="qiskit.algorithms.TrotterQRTE.evolve" signature="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.
|
||
|
||
<Admonition title="Note" type="note">
|
||
Time-dependent Hamiltonians are not yet supported.
|
||
</Admonition>
|
||
|
||
**Parameters**
|
||
|
||
**evolution\_problem** ([*EvolutionProblem*](qiskit.algorithms.EvolutionProblem "qiskit.algorithms.evolvers.evolution_problem.EvolutionProblem")) – Instance defining evolution problem. For the included Hamiltonian, `PauliOp`, `SummedOp` or `PauliSumOp` are supported by TrotterQRTE.
|
||
|
||
**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.
|
||
|
||
**Return type**
|
||
|
||
[*EvolutionResult*](qiskit.algorithms.EvolutionResult "qiskit.algorithms.evolvers.evolution_result.EvolutionResult")
|
||
</Function>
|
||
|
||
<span id="qiskit-algorithms-trotterqrte-supports-aux-operators" />
|
||
|
||
### supports\_aux\_operators
|
||
|
||
<Function id="qiskit.algorithms.TrotterQRTE.supports_aux_operators" signature="TrotterQRTE.supports_aux_operators()" modifiers="classmethod">
|
||
Whether computing the expectation value of auxiliary operators is supported.
|
||
|
||
**Returns**
|
||
|
||
**True if `aux_operators` expectations in the EvolutionProblem can be evaluated, False**
|
||
|
||
otherwise.
|
||
|
||
**Return type**
|
||
|
||
bool
|
||
</Function>
|
||
|
||
## Attributes
|
||
|
||
### expectation
|
||
|
||
<Attribute id="qiskit.algorithms.TrotterQRTE.expectation">
|
||
Returns an expectation used in the algorithm.
|
||
</Attribute>
|
||
|
||
### product\_formula
|
||
|
||
<Attribute id="qiskit.algorithms.TrotterQRTE.product_formula">
|
||
Returns a product formula used in the algorithm.
|
||
</Attribute>
|
||
|
||
### quantum\_instance
|
||
|
||
<Attribute id="qiskit.algorithms.TrotterQRTE.quantum_instance">
|
||
Returns a quantum instance used in the algorithm.
|
||
</Attribute>
|
||
</Class>
|
||
|