Eigentools is a set of tools for studying linear eigenvalue problems. The underlying eigenproblems are solved using Dedalus, which provides a domain-specific language for partial differential equations. Eigentools extends Dedalus's EigenvalueProblem object and provides
- automatic rejection of unresolved eigenvalues
- simple plotting of specified eigenmodes
- simple plotting of spectra
- computation of pseudospectra for any Differential-Algebraic Equations with user-specifiable norms
- tools to find critical parameters for linear stability analysis
- ability to project eigenmode onto 2- or 3-D domain for visualization
- ability to output projected eigenmodes as Dedalus-formatted HDF5 file to be used as initial conditions for Initial Value Problems
- simple plotting of drift ratios (both ordinal and nearest) to evaluate tolerance for eigenvalue rejection
Eigentools can be pip installed, though it requires Dedalus, which has non-pip installable dependencies. See the installation instructions for details.
Documentation (including detailed API documentation) can be found at Read the Docs.
Eigentools welcomes community contributions from issue reports to code contributions. For details, please see our contribution policy.
The core development team consists of
- Jeff Oishi ([email protected])
- Keaton Burns ([email protected])
- Susan Clark ([email protected])
- Evan Anders ([email protected])
- Ben Brown ([email protected])
- Geoff Vasil ([email protected])
- Daniel Lecoanet ([email protected])
Eigentools was developed with support from the Research Corporation under award Scialog Collaborative Award (TDA) ID# 24231.