Repository navigation
Export get_DEIM_indices, the index form of the DEIM interpolation matrix - #57
Merged
Merged
Conversation
Rename the internal _deim_indices to get_DEIM_indices and export it beside get_DEIM_interpolation_matrix. A test checks Π' * A == A[p, :] on a random basis in Float32 and Float64. Co-Authored-By: Claude Opus 5.5 <[email protected]>
With an Inf or a NaN in an unselected row, 0 * Inf makes a column of Π' * A NaN while A[p, :] stays finite. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #57 +/- ##
=======================================
Coverage 91.56% 91.56%
=======================================
Files 10 10
Lines 332 332
=======================================
Hits 304 304
Misses 28 28 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
michakraus
added a commit
that referenced
this pull request
Oct 14, 2026
Resolve the conflicts with the 0.2.1 release and get_DEIM_indices (#57): the spectrumplot entry moves to a new Unreleased section, and the DEIM doctest follows the renamed reference. Co-Authored-By: Claude Opus 5.5 <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
_deim_indices(Ψ)toget_DEIM_indices(Ψ)and export it besideget_DEIM_interpolation_matrix.krows that greedy DEIM selects, and it is the index form ofget_DEIM_interpolation_matrix,Π' * A == A[p, :]forp = get_DEIM_indices(Ψ)and a finiteA.get_DEIM_interpolation_matrix, theSymplecticDEIMconstructor and its two docstring@refs, and both DEIM test files. Theusing ReducedBasisMethods: _deim_indiceslines go, because the name is now exported.get_DEIM_interpolation_matrix(Ψ)' * A == A[get_DEIM_indices(Ψ), :]on a random orthonormal basis, in Float32 and Float64.[Unreleased]. No version bump; not breaking, because the old name was internal.library.mduses@autodocs, so the new export appears with no page change.Tests
test/algorithms/deim.jl,test/algorithms/symplectic_deim.jlandtest/quality/aqua.jl: 397/397 pass..jlfiles.Pre-PR verification
Fixed
get_DEIM_indicesdocstring (src/algorithms/deim.jl): the identityΠ' * A == A[p, :]was stated "for everyN-row matrixA". It now says "finite". With anInforNaNin an unselected row ofA,Π' * Ahas a column that is allNaN(0 * Inf), whileA[p, :]stays finite. The comment of the new testset intest/algorithms/deim.jlhas the same correction.Unresolved
Pre-existing / sequencing
CHANGELOG.mdandsrc/algorithms/deim.jl(checked withgit merge-tree). The one that merges second must resolve the conflict. In the resolution, the@refnext to P33: the CairoMakie extension, Aqua, docs and CHANGELOG of ReducedBasisMethods #56's newjldoctestmust nameget_DEIM_indices, not_deim_indices.Checked and clean
_deim_indicesis undefined after load, andget_DEIM_indicesis public.test_piraciespasses.get_DEIM_indicesinfersVector{Int64}for Float64, Float32, Int32 and reshaped inputs.get_DEIM_interpolation_matrixfollows the element type. NoAnyoriginates at a changed line.fatou lintis clean on the changed files. The diff adds no allocating construct.CHANGELOG.md.algorithms/deim.jl,algorithms/symplectic_deim.jl,quality/aqua.jl: 397/397). JuliaFormatter passes.Not checked
makedocs).🤖 Generated with Claude Code