Repository navigation
v0.2.0
ReducedBasisMethods v0.2.0
Breaking Changes
ReducedTensoris built onGridTensor, not onPoissonTensor. A caller passes any rank-3
MultiIndexArrays.GridTensor; aPoissonTensor, a dense array, or aGridTensorof another rank
is aMethodError.GeometricBracketsleaves[deps]and[compat], andMultiIndexArrays
takes the bound0.1.2.- The grid-based and particle-based code left this package.
src/gridbased/and
src/particles/are gone, with every name they exported.ReducedTensorstays, now in
src/reduced_tensor.jland re-parameterised onGridTensor. - Vlasov and training code left this package.
TrainingSetandsrc/trainingset.jlare
removed, together with the exports ofread_sampling_parameters,IntegratorCacheand
integrate_vp, which had no definitions. - Minimum Julia is now 1.11, raised from the declared 1.7.
- The 0.1.0 reduced-basis algorithms and their fields are removed. A basis is no longer split
into a particle part and a field part:ΛreplacesΛₚandΛₑas the full spectrum. - The 0.1.0 basis functions are deleted, with their exports.
- The HDF5 layout changed, so a file written by 0.1.0 no longer loads.
New Features
ReducedBasisis built from a snapshot by one constructor, with five algorithms:PODSVD,
PODEVD,CotangentLiftSVD,CotangentLiftEVDandComplexSVD.Matrixassembles the basis, andliftand two error measures are exported.scripts/reference_spectra.jlregenerates the paper's reference spectra.SymplecticDEIMandhamiltonian_gradient!. Structure-preserving DEIM for a Hamiltonian.ReducedTensorwraps any rank-3GridTensor, of any width its grid holds.reference/is under version control.
Bug Fixes
- The DEIM selection follows the magnitude of the residual, and its result is no longer silently
Float64. ReducedTensornow follows theAbstractArrayconvention for out-of-bounds dimensions.
Changed
get_DEIM_interpolation_matrixrejects a basis it cannot interpolate.[deps]is now generic infrastructure only.- The test suite checks the package structure, and the test dependencies are in
test/Project.toml. - The SVD routes skip the right singular vectors, and the EVD routes are rewritten.
LazyArraysis no longer a dependency.ReducedComplexityModelingis required at0.1.1.
Merged pull requests:
- Normalise the bump-on-tail script to NFC (#35) (@michakraus)
- Name the character the NFC entry actually normalised (#36) (@michakraus)
- Combine the open compat updates (#37) (@michakraus)
- Split the grid-based and particle-based code out of the package (#39) (@michakraus)
- Reduce to a generic-only module skeleton (P28, T7.2) (#41) (@michakraus)
- Migrate the test suite to the SafeTestsets convention (part M8) (#43) (@michakraus)
- Update Plots requirement to 1.41.7 in /docs (#44) (@dependabot[bot])
- Update Weave requirement to 0.10.12 in /docs (#45) (@dependabot[bot])
- Update Documenter requirement to 1.19.0 in /docs (#46) (@dependabot[bot])
- Update Aqua requirement to 0.8.18 in /test (#48) (@dependabot[bot])
- Remove the shared compat entries from test/Project.toml (#49) (@michakraus)
- CI: coverage from Julia 1 on ubuntu, save the cache only from a job that succeeds (#50) (@michakraus)
- Build a reduced basis from its snapshot: POD, both PSD routes, the complex SVD, basis size, project and lift (#52) (@michakraus)
- DEIM: select by the magnitude of the residual, and add symplectic DEIM (#53) (@michakraus)
- ReducedTensor on GridTensor's locality interface, GeometricBrackets out of [deps] (#54) (@michakraus)