Skip to main contentIBM Quantum Documentation
This page is from an old version of Qiskit SDK and does not exist in the latest version. We recommend you migrate to the latest version. See the release notes for more information.
Important

IBM Quantum Platform is moving and this version will be sunset on July 1. To get started on the new platform, read the migration guide.

qiskit.chemistry.algorithms.QEomEE

class QEomEE(operator, num_orbitals, num_particles, qubit_mapping='parity', two_qubit_reduction=True, active_occupied=None, active_unoccupied=None, is_eom_matrix_symmetric=True, se_list=None, de_list=None, z2_symmetries=None, untapered_op=None, aux_operators=None)

GitHub

QEomEE algorithm (classical)

Parameters

  • operator (LegacyBaseOperator) – qubit operator
  • num_orbitals (int) – total number of spin orbitals, has a min. value of 1.
  • num_particles (Union[List[int], int]) – number of particles, if it is a list, the first number is alpha and the second number if beta.
  • qubit_mapping (str) – qubit mapping type
  • two_qubit_reduction (bool) – two qubit reduction is applied or not
  • active_occupied (Optional[List[int]]) – list of occupied orbitals to include, indices are 0 to n where n is num particles // 2
  • active_unoccupied (Optional[List[int]]) – list of unoccupied orbitals to include, indices are 0 to m where m is (num_orbitals - num particles) // 2
  • is_eom_matrix_symmetric (bool) – is EoM matrix symmetric
  • se_list (Optional[List[List[int]]]) – single excitation list, overwrite the setting in active space
  • de_list (Optional[List[List[int]]]) – double excitation list, overwrite the setting in active space
  • z2_symmetries (Optional[Z2Symmetries]) – represent the Z2 symmetries
  • untapered_op (Optional[LegacyBaseOperator]) – if the operator is tapered, we need untapered operator to build element of EoM matrix
  • aux_operators (Optional[List[LegacyBaseOperator]]) – Auxiliary operators to be evaluated at each eigenvalue

Raises

ValueError – invalid parameter

__init__

__init__(operator, num_orbitals, num_particles, qubit_mapping='parity', two_qubit_reduction=True, active_occupied=None, active_unoccupied=None, is_eom_matrix_symmetric=True, se_list=None, de_list=None, z2_symmetries=None, untapered_op=None, aux_operators=None)

Parameters

  • operator (LegacyBaseOperator) – qubit operator
  • num_orbitals (int) – total number of spin orbitals, has a min. value of 1.
  • num_particles (Union[List[int], int]) – number of particles, if it is a list, the first number is alpha and the second number if beta.
  • qubit_mapping (str) – qubit mapping type
  • two_qubit_reduction (bool) – two qubit reduction is applied or not
  • active_occupied (Optional[List[int]]) – list of occupied orbitals to include, indices are 0 to n where n is num particles // 2
  • active_unoccupied (Optional[List[int]]) – list of unoccupied orbitals to include, indices are 0 to m where m is (num_orbitals - num particles) // 2
  • is_eom_matrix_symmetric (bool) – is EoM matrix symmetric
  • se_list (Optional[List[List[int]]]) – single excitation list, overwrite the setting in active space
  • de_list (Optional[List[List[int]]]) – double excitation list, overwrite the setting in active space
  • z2_symmetries (Optional[Z2Symmetries]) – represent the Z2 symmetries
  • untapered_op (Optional[LegacyBaseOperator]) – if the operator is tapered, we need untapered operator to build element of EoM matrix
  • aux_operators (Optional[List[LegacyBaseOperator]]) – Auxiliary operators to be evaluated at each eigenvalue

Raises

ValueError – invalid parameter


Methods

__init__(operator, num_orbitals, num_particles)type operatorLegacyBaseOperator
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_operatorsReturns the auxiliary operators.
filter_criterionreturns the filter criterion if set
operatorReturn the operator.
randomReturn a numpy random.

aux_operators

Returns the auxiliary operators.

Return type

Optional[List[Optional[OperatorBase]]]

compute_minimum_eigenvalue

compute_minimum_eigenvalue(operator=None, aux_operators=None)

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

filter_criterion

returns the filter criterion if set

Return type

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

operator

Return the operator.

Return type

Optional[OperatorBase]

random

Return a numpy random.

run

run()

Execute the classical algorithm.

Returns

results of an algorithm.

Return type

dict

supports_aux_operators

classmethod supports_aux_operators()

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

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