Gradient#
- class qiskit.opflow.gradients.Gradient(grad_method='param_shift', **kwargs)[source]#
Bases :
GradientBase
Deprecated: Convert an operator expression to the first-order gradient.
Obsolète depuis la version 0.24.0: The class
qiskit.opflow.gradients.gradient.Gradient
is deprecated as of qiskit-terra 0.24.0. It will be removed no earlier than 3 months after the release date. For code migration guidelines, visit https://qisk.it/opflow_migration.Attributes
- grad_method#
Returns
CircuitGradient
.- Renvoie:
CircuitGradient
.
Methods
- convert(operator, params=None)[source]#
- Paramètres:
operator (OperatorBase) – The operator we are taking the gradient of.
params (ParameterVector | ParameterExpression | List[ParameterExpression] | None) – The parameters we are taking the gradient with respect to. If not explicitly passed, they are inferred from the operator and sorted by name.
- Renvoie:
An operator whose evaluation yields the Gradient.
- Lève:
ValueError – If
params
contains a parameter not present inoperator
.ValueError – If
operator
is not parameterized.
- Type renvoyé:
- get_gradient(operator, params)[source]#
Get the gradient for the given operator w.r.t. the given parameters
- Paramètres:
operator (OperatorBase) – Operator w.r.t. which we take the gradient.
params (ParameterExpression | ParameterVector | List[ParameterExpression]) – Parameters w.r.t. which we compute the gradient.
- Renvoie:
Operator which represents the gradient w.r.t. the given params.
- Lève:
ValueError – If
params
contains a parameter not present inoperator
.OpflowError – If the coefficient of the operator could not be reduced to 1.
OpflowError – If the differentiation of a combo_fn requires JAX but the package is not installed.
TypeError – If the operator does not include a StateFn given by a quantum circuit
Exception – Unintended code is reached
MissingOptionalLibraryError – jax not installed
- Type renvoyé: