Solver algorithms#

Reference for the analysis types and backend algorithms femorph-solver ships. The user-guide section walks through how to drive each solver; this page lists the underlying algorithm and its sources.

Quick reference table#

Analysis

Entry point

Algorithm

Backend chain

Static analysis

Model.solve

Sparse direct factor + back-substitute

Linear-solver backends

Modal analysis

Model.modal_solve

Shift-invert Lanczos / block-Davidson / LOBPCG

Eigen-solver backends × Linear-solver backends

Cyclic-symmetry modal analysis

Model.cyclic_modal_solve

Per-harmonic real 2n-augmented Lanczos (Grimes-Lewis-Simon 1994)

Eigen-solver backends × Linear-solver backends

Transient analysis

Model.transient_solve() (roadmap) / modal-superposition (TA-14)

Newmark-β / generalised-α (direct); modal-superposition (decoupled SDOFs)

Linear-solver backends

How the dispatch chains plug together#

  • Linear-solver backends — one chain (Pardiso → CHOLMOD → MUMPS → UMFPACK → SuperLU) used by every analysis that factors a sparse matrix.

  • Eigen-solver backends — modal / cyclic-modal pick ARPACK / PRIMME / LOBPCG. The shift-invert path inside the Lanczos / block-Davidson loop calls back into the linear chain, so the same Pardiso / CHOLMOD factor accelerates every shift-invert matrix-vector product.

See the per-chapter cite blocks for full algorithmic references.

See also

Solving — the user-facing how-to for each entry point.