Library / Code module
Transient amplification profile of a linear update
transient_amplification_profile
Compute ||A^h||_2 over a horizon for a linear update x_(h+1) = A x_h, with the peak, the step after which the norm stays below 1, the spectral radius and the Gelfand bound. Use it to find updates that are stable in the limit but amplify perturbations first.
ATTRIBUTION.md3.9 KBLICENSE1.0 KBREADME.md3.3 KBatom_cli.py3.0 KBcomponent.json10.0 KBnumerics.py28.0 KBschema_lite.py8.9 KBtest_package.py12.0 KBtest_transient_amplification_profile.py4.2 KBtransient_amplification_profile.py7.1 KB
Full files in your harness.
What it takes and gives
- Runs with
- Python 3.10 or later
- Entry points
- transient_profile, spectral_norm, spectral_radius
- Known answers
- 9 cases its tests reproduce
Cases it covers
- radius below one still amplifies: Reading stability from eigenvalues alone predicts monotone decay 0.8^h; the non-normal coupling amplifies about eightfold first.
- fourth power is not eigenvalue forecast: 0.8^4 is the eigenvalue-only forecast of ||A^4||; the true norm is about 8.21.
Limits and scope
- Limits
- Dense powers by repeated multiplication: meant for matrices up to about 60 rows and horizons up to a few thousand steps. Power iteration converges slowly when the top two singular values nearly coincide; the result reports converged. Eigenvalues come from the characteristic polynomial, so they are limited to 8 rows and a repeated eigenvalue is accurate to about 1e-8. Linear time-invariant updates only; it does not model nonlinear or time-varying dynamics.
- Guarantees
- Each norm is the Rayleigh-quotient limit of power iteration on B^T B from two deterministic starts; the tests match closed forms to 1e-12. gelfand_bound = min over h >= 1 of ||A^h||^(1/h) is an upper bound on the spectral radius. settles_below_one_at is the first step from which every norm up to the horizon is below 1, or null.
- Assumes
- The update is linear and time-invariant: the same A at every step. Norms are Euclidean (spectral) norms; another norm gives another profile.
Details
- Kind
- Code module
- Licence
- MIT
- Declared effects
- runs commands
- Source
- github.com/alisonjieli-png/loop-engine/tools/creative_originals/evaluation_atoms/items/transient_amplification_profile
- Size
- 10 files, 81.5 KB
- Identity
library.supply.creative_originals.5c1ca3c79d0070383def2428.047a4c5f595a9b5f- Version
047a4c5f595a9b5ff6e3f029fc208f5fa0a21e51741e4916ebce4c5d341774f8
The version is the SHA-256 of the item your harness downloads; every file in it names its own checksum.
Where it is shown
- Statistics for comparing resultsDeterministic skills
Related components
Something wrong with this item, its rights or its safety? Report it on the support page, or from your harness after a download.