English
Languages
English
Japanese
German
Korean
Shortcuts

qiskit.aqua.algorithms.NumPyMinimumEigensolver

class NumPyMinimumEigensolver(operator=None, aux_operators=None, filter_criterion=None)[source]

The Numpy Minimum Eigensolver algorithm.

Parameters
  • operator (Union[OperatorBase, LegacyBaseOperator, None]) – Operator instance

  • aux_operators (Optional[List[Union[OperatorBase, LegacyBaseOperator, None]]]) – Auxiliary operators to be evaluated at minimum eigenvalue

  • filter_criterion (Optional[Callable[[Union[List, ndarray], float, Optional[List[float]]], bool]]) – callable that allows to filter eigenvalues/eigenstates. The minimum eigensolver is only searching over feasible states and returns an eigenstate that has the smallest eigenvalue among feasible states. The callable has the signature filter(eigenstate, eigenvalue, aux_values) and must return a boolean to indicate whether to consider this value or not. If there is no feasible element, the result can even be empty.

__init__(operator=None, aux_operators=None, filter_criterion=None)[source]
Parameters
  • operator (Union[OperatorBase, LegacyBaseOperator, None]) – Operator instance

  • aux_operators (Optional[List[Union[OperatorBase, LegacyBaseOperator, None]]]) – Auxiliary operators to be evaluated at minimum eigenvalue

  • filter_criterion (Optional[Callable[[Union[List, ndarray], float, Optional[List[float]]], bool]]) – callable that allows to filter eigenvalues/eigenstates. The minimum eigensolver is only searching over feasible states and returns an eigenstate that has the smallest eigenvalue among feasible states. The callable has the signature filter(eigenstate, eigenvalue, aux_values) and must return a boolean to indicate whether to consider this value or not. If there is no feasible element, the result can even be empty.

Methods

__init__([operator, aux_operators, …])

type operator

Union[OperatorBase, LegacyBaseOperator, None]

compute_minimum_eigenvalue([operator, …])

Computes minimum eigenvalue.

run()

Execute the classical algorithm.

supports_aux_operators()

Whether computing the expectation value of auxiliary operators is supported.

Attributes

aux_operators

Returns the auxiliary operators.

filter_criterion

returns the filter criterion if set

operator

Return the operator.

random

Return a numpy random.

property aux_operators

Returns the auxiliary operators.

Return type

Optional[List[Optional[OperatorBase]]]

compute_minimum_eigenvalue(operator=None, aux_operators=None)[source]

Computes minimum eigenvalue. Operator and aux_operators can be supplied here and if not None will override any already set into algorithm so it can be reused with different operators. While an operator is required by algorithms, aux_operators are optional. To ‘remove’ a previous aux_operators array use an empty list here.

Parameters
  • operator (Union[OperatorBase, LegacyBaseOperator, None]) – If not None replaces operator in algorithm

  • aux_operators (Optional[List[Union[OperatorBase, LegacyBaseOperator, None]]]) – If not None replaces aux_operators in algorithm

Return type

MinimumEigensolverResult

Returns

MinimumEigensolverResult

property filter_criterion

returns the filter criterion if set

Return type

Optional[Callable[[Union[List, ndarray], float, Optional[List[float]]], bool]]

property operator

Return the operator.

Return type

Optional[OperatorBase]

property random

Return a numpy random.

run()

Execute the classical algorithm.

Returns

results of an algorithm.

Return type

dict

classmethod supports_aux_operators()[source]

Whether computing the expectation value of auxiliary operators is supported.

If the minimum eigensolver computes an eigenstate of the main operator then it can compute the expectation value of the aux_operators for that state. Otherwise they will be ignored.

Return type

bool

Returns

True if aux_operator expectations can be evaluated, False otherwise