133 lines
6.0 KiB
Plaintext
133 lines
6.0 KiB
Plaintext
---
|
||
title: EOH
|
||
description: API reference for qiskit.aqua.algorithms.EOH
|
||
in_page_toc_min_heading_level: 1
|
||
python_api_type: class
|
||
python_api_name: qiskit.aqua.algorithms.EOH
|
||
---
|
||
|
||
# qiskit.aqua.algorithms.EOH
|
||
|
||
<Class id="qiskit.aqua.algorithms.EOH" isDedicatedPage={true} github="https://github.com/qiskit-community/qiskit-aqua/tree/stable/0.9/qiskit/aqua/algorithms/education/eoh.py" signature="EOH(operator, initial_state, evo_operator, evo_time=1, num_time_slices=1, expansion_mode='trotter', expansion_order=1, quantum_instance=None)" modifiers="class">
|
||
The Quantum EOH (Evolution of Hamiltonian) algorithm.
|
||
|
||
EOH provides the lower-level building blocks for simulating universal quantum systems. For any given quantum system that can be decomposed into local interactions (for example, a global hamiltonian as the weighted sum of several Pauli spin operators), the local interactions can then be used to approximate the global quantum system via, for example, Lloyd’s method or Trotter-Suzuki decomposition.
|
||
|
||
**Parameters**
|
||
|
||
* **operator** (`LegacyBaseOperator`) – Operator to evaluate
|
||
* **initial\_state** (`Union`\[`InitialState`, `QuantumCircuit`]) – Initial state for evolution
|
||
* **evo\_operator** (`LegacyBaseOperator`) – Operator to evolve
|
||
* **evo\_time** (`float`) – Evolution time, has min value of 0
|
||
* **num\_time\_slices** (`int`) – Number of time slices, has minimum value of 1
|
||
* **expansion\_mode** (`str`) – Either `"trotter"` (Lloyd’s method) or `"suzuki"` (for Trotter-Suzuki expansion)
|
||
* **expansion\_order** (`int`) – The Trotter-Suzuki expansion order.
|
||
* **quantum\_instance** (`Union`\[`QuantumInstance`, `Backend`, `BaseBackend`, `None`]) – Quantum Instance or Backend
|
||
|
||
### \_\_init\_\_
|
||
|
||
<Function id="qiskit.aqua.algorithms.EOH.__init__" signature="__init__(operator, initial_state, evo_operator, evo_time=1, num_time_slices=1, expansion_mode='trotter', expansion_order=1, quantum_instance=None)">
|
||
**Parameters**
|
||
|
||
* **operator** (`LegacyBaseOperator`) – Operator to evaluate
|
||
* **initial\_state** (`Union`\[`InitialState`, `QuantumCircuit`]) – Initial state for evolution
|
||
* **evo\_operator** (`LegacyBaseOperator`) – Operator to evolve
|
||
* **evo\_time** (`float`) – Evolution time, has min value of 0
|
||
* **num\_time\_slices** (`int`) – Number of time slices, has minimum value of 1
|
||
* **expansion\_mode** (`str`) – Either `"trotter"` (Lloyd’s method) or `"suzuki"` (for Trotter-Suzuki expansion)
|
||
* **expansion\_order** (`int`) – The Trotter-Suzuki expansion order.
|
||
* **quantum\_instance** (`Union`\[`QuantumInstance`, `Backend`, `BaseBackend`, `None`]) – Quantum Instance or Backend
|
||
</Function>
|
||
|
||
## Methods
|
||
|
||
| | |
|
||
| --------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------- |
|
||
| [`__init__`](#qiskit.aqua.algorithms.EOH.__init__ "qiskit.aqua.algorithms.EOH.__init__")(operator, initial\_state, evo\_operator) | **type operator**`LegacyBaseOperator` |
|
||
| [`construct_circuit`](#qiskit.aqua.algorithms.EOH.construct_circuit "qiskit.aqua.algorithms.EOH.construct_circuit")() | Construct the circuit. |
|
||
| [`run`](#qiskit.aqua.algorithms.EOH.run "qiskit.aqua.algorithms.EOH.run")(\[quantum\_instance]) | Execute the algorithm with selected backend. |
|
||
| [`set_backend`](#qiskit.aqua.algorithms.EOH.set_backend "qiskit.aqua.algorithms.EOH.set_backend")(backend, \*\*kwargs) | Sets backend with configuration. |
|
||
|
||
## Attributes
|
||
|
||
| | |
|
||
| ---------------------------------------------------------------------------------------------------------------- | ------------------------- |
|
||
| [`backend`](#qiskit.aqua.algorithms.EOH.backend "qiskit.aqua.algorithms.EOH.backend") | Returns backend. |
|
||
| [`quantum_instance`](#qiskit.aqua.algorithms.EOH.quantum_instance "qiskit.aqua.algorithms.EOH.quantum_instance") | Returns quantum instance. |
|
||
| [`random`](#qiskit.aqua.algorithms.EOH.random "qiskit.aqua.algorithms.EOH.random") | Return a numpy random. |
|
||
|
||
### backend
|
||
|
||
<Attribute id="qiskit.aqua.algorithms.EOH.backend">
|
||
Returns backend.
|
||
|
||
**Return type**
|
||
|
||
`Union`\[`Backend`, `BaseBackend`]
|
||
</Attribute>
|
||
|
||
### construct\_circuit
|
||
|
||
<Function id="qiskit.aqua.algorithms.EOH.construct_circuit" signature="construct_circuit()">
|
||
Construct the circuit.
|
||
|
||
**Returns**
|
||
|
||
the circuit.
|
||
|
||
**Return type**
|
||
|
||
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
|
||
</Function>
|
||
|
||
### quantum\_instance
|
||
|
||
<Attribute id="qiskit.aqua.algorithms.EOH.quantum_instance">
|
||
Returns quantum instance.
|
||
|
||
**Return type**
|
||
|
||
`Optional`\[`QuantumInstance`]
|
||
</Attribute>
|
||
|
||
### random
|
||
|
||
<Attribute id="qiskit.aqua.algorithms.EOH.random">
|
||
Return a numpy random.
|
||
</Attribute>
|
||
|
||
### run
|
||
|
||
<Function id="qiskit.aqua.algorithms.EOH.run" signature="run(quantum_instance=None, **kwargs)">
|
||
Execute the algorithm with selected backend.
|
||
|
||
**Parameters**
|
||
|
||
* **quantum\_instance** (`Union`\[`QuantumInstance`, `Backend`, `BaseBackend`, `None`]) – the experimental setting.
|
||
* **kwargs** (*dict*) – kwargs
|
||
|
||
**Returns**
|
||
|
||
results of an algorithm.
|
||
|
||
**Return type**
|
||
|
||
dict
|
||
|
||
**Raises**
|
||
|
||
[**AquaError**](qiskit.aqua.AquaError "qiskit.aqua.AquaError") – If a quantum instance or backend has not been provided
|
||
</Function>
|
||
|
||
### set\_backend
|
||
|
||
<Function id="qiskit.aqua.algorithms.EOH.set_backend" signature="set_backend(backend, **kwargs)">
|
||
Sets backend with configuration.
|
||
|
||
**Return type**
|
||
|
||
`None`
|
||
</Function>
|
||
</Class>
|
||
|