49 lines
2.9 KiB
Plaintext
49 lines
2.9 KiB
Plaintext
---
|
||
title: RealMcLachlanPrinciple
|
||
description: API reference for qiskit.algorithms.time_evolvers.variational.RealMcLachlanPrinciple
|
||
in_page_toc_min_heading_level: 1
|
||
python_api_type: class
|
||
python_api_name: qiskit.algorithms.time_evolvers.variational.RealMcLachlanPrinciple
|
||
---
|
||
|
||
# RealMcLachlanPrinciple
|
||
|
||
<Class id="qiskit.algorithms.time_evolvers.variational.RealMcLachlanPrinciple" isDedicatedPage={true} github="https://github.com/qiskit/qiskit/tree/stable/0.23/qiskit/algorithms/time_evolvers/variational/variational_principles/real_mc_lachlan_principle.py" signature="RealMcLachlanPrinciple(qgt=None, gradient=None)" modifiers="class">
|
||
Bases: [`qiskit.algorithms.time_evolvers.variational.variational_principles.real_variational_principle.RealVariationalPrinciple`](qiskit.algorithms.time_evolvers.variational.RealVariationalPrinciple "qiskit.algorithms.time_evolvers.variational.variational_principles.real_variational_principle.RealVariationalPrinciple")
|
||
|
||
Class for a Real McLachlan’s Variational Principle. It aims to minimize the distance between both sides of the Schrödinger equation with a quantum state given as a parametrized trial state. The principle leads to a system of linear equations handled by a linear solver. The real variant means that we consider real time dynamics.
|
||
|
||
**Parameters**
|
||
|
||
* **qgt** ([*BaseQGT*](qiskit.algorithms.gradients.BaseQGT "qiskit.algorithms.gradients.BaseQGT") *| None*) – Instance of a the GQT class used to compute the QFI. If `None` provided, `LinCombQGT` is used.
|
||
* **gradient** ([*BaseEstimatorGradient*](qiskit.algorithms.gradients.BaseEstimatorGradient "qiskit.algorithms.gradients.BaseEstimatorGradient") *| None*) – Instance of a class used to compute the state gradient. If `None` provided, `LinCombEstimatorGradient` is used.
|
||
|
||
**Raises**
|
||
|
||
[**AlgorithmError**](qiskit.algorithms.AlgorithmError "qiskit.algorithms.AlgorithmError") – If the gradient instance does not contain an estimator.
|
||
|
||
## Methods Defined Here
|
||
|
||
### evolution\_gradient
|
||
|
||
<Function id="qiskit.algorithms.time_evolvers.variational.RealMcLachlanPrinciple.evolution_gradient" signature="RealMcLachlanPrinciple.evolution_gradient(hamiltonian, ansatz, param_values, gradient_params=None)">
|
||
Calculates an evolution gradient according to the rules of this variational principle.
|
||
|
||
**Parameters**
|
||
|
||
* **hamiltonian** – Operator used for Variational Quantum Time Evolution.
|
||
* **ansatz** – Quantum state in the form of a parametrized quantum circuit.
|
||
* **param\_values** – Values of parameters to be bound.
|
||
* **gradient\_params** – List of parameters with respect to which gradients should be computed. If `None` given, gradients w\.r.t. all parameters will be computed.
|
||
|
||
**Returns**
|
||
|
||
An evolution gradient.
|
||
|
||
**Raises**
|
||
|
||
[**AlgorithmError**](qiskit.algorithms.AlgorithmError "qiskit.algorithms.AlgorithmError") – If a gradient job fails.
|
||
</Function>
|
||
</Class>
|
||
|