Skip to main contentIBM Quantum Documentation
You are viewing the API reference for an old version of Qiskit SDK. Switch to latest version

RealMcLachlanPrinciple

RealMcLachlanPrinciple(qgt=None, gradient=None)

GitHub(opens in a new tab)

Bases: 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 | None) – Instance of a the GQT class used to compute the QFI. If None provided, LinCombQGT is used.
  • gradient (BaseEstimatorGradient | None) – Instance of a class used to compute the state gradient. If None provided, LinCombEstimatorGradient is used.

Raises

AlgorithmError – If the gradient instance does not contain an estimator.


Methods Defined Here

evolution_gradient

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 – If a gradient job fails.

Was this page helpful?
Report a bug or request content on GitHub.