Quick Start

Example 1 — Real general eigenvalues (EVLRG):

import numpy as np
from eigensystems import evlrg

a = np.array([[4.0, 1.0], [2.0, 3.0]])
result = evlrg(a)
print(result.eigenvalues)  # -> [2. 5.]

Example 2 — Symmetric eigenvalues and vectors (EVCSF):

import numpy as np
from eigensystems import evcsf

a = np.array([[4.0, 2.0], [2.0, 3.0]])
result = evcsf(a)
print(result.eigenvalues)    # real, ascending
print(result.eigenvectors)   # orthonormal columns

Example 3 — Singular Value Decomposition:

import numpy as np
from eigensystems import svd

a = np.array([[1.0, 2.0], [3.0, 4.0], [5.0, 6.0]])
u, s, vh = svd(a)
print(s)   # singular values in descending order

Example 4 — Generalized eigenvalue problem (GVCSF):

import numpy as np
from eigensystems import gvcsf

a = np.array([[3.0, 1.0], [1.0, 2.0]])
b = np.eye(2)
result = gvcsf(a, b)
print(result.eigenvalues)    # generalized eigenvalues
print(result.eigenvectors)   # B-orthonormal eigenvectors