eigen_util Module#

select_eigenpairs_by_eigenvalue(E, V, k, which)[source]#

Selects the k eigenpairs from the arrays E and V according to the specified ‘which’ option.

Parameters:
  • E (Array) – Array of eigenvalues (n,).

  • V (Array | None) – Array of eigenvectors (n, n) or None.

  • k (int | None) – Number of eigenvalues to select. If None, selects all.

  • which (str) – Which eigenvalues to select. Options are: - ‘SA’ for smallest algebraic - ‘SM’ for smallest magnitude - ‘LA’ for largest algebraic - ‘LM’ for largest magnitude - ‘EA’ for exterior algebraically - ‘EM’ for exterior by magnitude - ‘IA’ for interior algebraically - ‘IM’ for interior by magnitude

Returns:

  • selected_E – Selected eigenvalues (k,).

  • selected_V – Selected eigenvectors (k, n) or None.

Return type:

tuple[Array, Array | None]

select_eigenpairs_by_fn(E, V, k, sort_fn)[source]#

Selects the k eigenpairs from the arrays E and V according to the specified ‘sort_fn’ option.

Parameters:
  • E (Array) – Array of eigenvalues (n,).

  • V (Array | None) – Array of eigenvectors (n, n) or None.

  • k (int | None) – Number of eigenpairs to select. If None, selects all.

  • sort_fn (Callable[[Array, Array | None], int]) – Function that takes in (E, V) and returns the indices that sort E and V.

Returns:

  • selected_E – Selected eigenvalues (k,).

  • selected_V – Selected eigenvectors (k, n) or None.

Return type:

tuple[Array, Array | None]

select_eigenvalues(E, k, which)[source]#

Selects the k eigenvalues from the array E according to the specified ‘which’ option.

Parameters:
  • E (Array) – Array of eigenvalues (n,).

  • k (int | None) – Number of eigenvalues to select. If None, selects all.

  • which (str) – Which eigenvalues to select. Options are: - ‘SA’ for smallest algebraic - ‘SM’ for smallest magnitude - ‘LA’ for largest algebraic - ‘LM’ for largest magnitude - ‘EA’ for exterior algebraically - ‘EM’ for exterior by magnitude - ‘IA’ for interior algebraically - ‘IM’ for interior by magnitude

Returns:

selected_E – Selected eigenvalues (k,).

Return type:

Array

validate_eigensystem_input_shape(input_shape, num_eig)[source]#
Parameters:
  • input_shape (pmm.typing.DataShape)

  • num_eig (int | None)

Return type:

None