Skip to contents

User entry points

High-level functions for partial eigenvalue and SVD computation.

eig_partial()
Compute a partial eigendecomposition.
eig_full()
Compute a full dense eigendecomposition
svd_partial()
Compute a partial singular-value decomposition.
generalized_schur()
Compute a dense generalized Schur decomposition
generalized_svd()
Compute a dense generalized singular value decomposition

Certified PSD geometry

Validate real PSD forms, inspect evidence, and work on their certified image spaces.

psd_tolerance()
Create a scale-aware PSD tolerance
psd_policy()
Create a certified PSD classification policy
psd_identity()
Construct a certified identity PSD factor
psd_factor()
Construct a certified real-double PSD factor
psd_gram_factor()
Construct a supplied Gram PSD factor
psd_laplacian()
Construct a structural sparse graph-Laplacian PSD factor
psd_capabilities()
Inspect certified PSD capabilities
psd_spectrum()
Return a complete certified PSD spectrum
psd_rank()
Return certified tolerance-relative PSD rank
psd_nullity()
Return certified numerical or algebraic nullity
psd_apply()
Apply a certified PSD action to a vector or block
psd_operator()
Expose a certified PSD action as an eigencore operator
psd_reduce()
Reduce an original-coordinate block to canonical PSD image coordinates
psd_lift()
Lift canonical PSD image coordinates
psd_solve()
Strictly solve a compatible singular PSD system
psd_gram()
Compute a PSD Gram or cross-Gram block
psd_orthonormalize()
PSD-orthonormalize a block modulo the certified null space
psd_reduced_operator()
Construct the Euclidean operator induced on a certified PSD image

RSpectra-compatible shims

Drop-in replacements for RSpectra::eigs(), eigs_sym(), and svds().

eigs()
RSpectra-compatible eigen shim.
eigs_sym()
RSpectra-compatible symmetric eigen shim.
svds()
RSpectra-compatible SVD shim.

Problems and planning

Build problem descriptors and inspect the solver plan.

eigen_problem()
Define an eigenproblem.
svd_problem()
Define an SVD problem.
plan_solver()
Plan a solver for a problem.
solve(<eigencore_plan>)
Execute a frozen eigencore solver plan.
solve(<eigencore_eigen_problem>)
Solve a planned eigenproblem.
solve(<eigencore_svd_problem>)
Solve a planned SVD problem.

Operators

Block-native linear operators and operator algebra.

linear_operator()
Create a block-native linear operator.
as_operator()
Convert an object to an eigencore operator.
operator_identity()
Return operator identity and revision provenance.
adjoint()
Return the adjoint operator.
check_adjoint()
Check an operator adjoint identity.
compose()
Compose two operators.
crossprod_operator()
Create A^* A as an operator.
symmetric_operator()
Mark an operator as symmetric/Hermitian.
scale_cols()
Scale operator columns.
scale_rows()
Scale operator rows.
center()
Center an operator by rows or columns.

Targets

Selectors describing which part of the spectrum you want.

largest()
Target the largest algebraic values.
smallest()
Target the smallest algebraic values.
largest_magnitude()
Target the largest values by magnitude.
smallest_magnitude()
Target the smallest values by magnitude.
largest_real()
Target the largest real part.
smallest_real()
Target the smallest real part.
largest_imaginary()
Target the largest imaginary part.
smallest_imaginary()
Target the smallest imaginary part.
both_ends()
Target both algebraic ends.
nearest()
Target values nearest a shift.

Methods

Solver families and method descriptors.

auto()
Automatic solver choice.
lanczos()
Hermitian Lanczos method descriptor.
lobpcg()
LOBPCG method descriptor.
golub_kahan()
Golub-Kahan bidiagonalization method descriptor.
randomized()
Randomized SVD method descriptor.
shift_invert()
Shift-invert method descriptor.

Preconditioners

Preconditioner factories for iterative solvers.

shifted_cholesky_preconditioner()
Shifted Cholesky preconditioner.
shifted_diagonal_preconditioner()
Shifted diagonal preconditioner.
shifted_tridiagonal_preconditioner()
Shifted tridiagonal preconditioner.

Spaces and structure tags

euclidean()
Euclidean vector space descriptor.
hermitian()
Hermitian/symmetric operator structure descriptor.
general()
General operator structure descriptor.

Results, certificates, diagnostics

Inspecting solver output and the numerical evidence.

certificate()
Extract a result certificate.
residuals(<eigencore_eigen_result>) residuals(<eigencore_svd_result>) residuals(<eigencore_certificate>)
Extract residual diagnostics.
backward_error()
Extract backward-error diagnostics.
values()
Extract computed values.
alpha_beta()
Extract homogeneous generalized coordinates.
vectors()
Extract eigenvectors.
left_vectors()
Extract left singular vectors or left eigenvectors.
right_vectors()
Extract right singular vectors.
diagnostics()
Extract diagnostics.

Reusable workflows and work accounting

Persist certified basis state, inspect its memory, and compare typed solver work.

restart_state()
Extract a reusable spectral restart state.
retained_bytes()
Return retained-memory accounting.
work()
Extract typed logical work diagnostics.