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

Gradient

Gradient(grad_method='param_shift', **kwargs)

GitHub(opens in a new tab)

Bases: qiskit.opflow.gradients.gradient_base.GradientBase

Convert an operator expression to the first-order gradient.

Parameters

  • grad_method (Union[str, CircuitGradient]) – The method used to compute the state/probability gradient. Can be either 'param_shift' or 'lin_comb' or 'fin_diff'. Ignored for gradients w.r.t observable parameters.
  • kwargs (dict) – Optional parameters for a CircuitGradient

Raises

ValueError – If method != fin_diff and epsilon is not None.


Methods Defined Here

convert

Gradient.convert(operator, params=None)

Parameters

Return type

OperatorBase

Returns

An operator whose evaluation yields the Gradient.

Raises

  • ValueError – If params contains a parameter not present in operator.
  • ValueError – If operator is not parameterized.

get_gradient

Gradient.get_gradient(operator, params)

Get the gradient for the given operator w.r.t. the given parameters

Parameters

Return type

OperatorBase

Returns

Operator which represents the gradient w.r.t. the given params.

Raises

  • ValueError – If params contains a parameter not present in operator.
  • 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

Attributes

grad_method

Returns CircuitGradient.

Return type

CircuitGradient

Returns

CircuitGradient.

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