Releases: pnkraemer/probdiffeq
Releases · pnkraemer/probdiffeq
v0.2.1
What's Changed
- Taylor series benchmark by @pnkraemer in #655
- Taylor series benchmark: Fitzhugh-Nagumo by @pnkraemer in #656
- Simplify taylor_mode_doubling implementation and tweak FHN benchmark by @pnkraemer in #657
Full Changelog: v0.2.0...v0.2.1
v0.2.0
What's Changed
- Rename
dense_output.py
tosolution.py
by @pnkraemer in #480 - Group tests for IVP solvers and solutions by @pnkraemer in #481
- Move cubature module to implementations by @pnkraemer in #482
- Rename solvers by @pnkraemer in #483
- Renamed negative_marginal_log_likelihood to log_marginal_likelihood by @pnkraemer in #484
- Changelog by @pnkraemer in #485
- Replace "condition_on_qoi_observations" with "observe_qoi" by @pnkraemer in #487
- Conditionals by @pnkraemer in #488
norm_of_whitened_residual_sqrtm
ismahalanobis_norm
by @pnkraemer in #491- Moved test-dependencies to backend by @pnkraemer in #492
- Whitened residuals in IsoTS0 by @pnkraemer in #494
- Replaced
jnp.sqrt(jnp.dot(...))
andjnp.sqrt(jnp.einsum(...))
with square-root arithmetic by @pnkraemer in #496 - Moved square-root utilities to top-level and renamed to sqrt_util by @pnkraemer in #497
- Sum of squares by @pnkraemer in #498
- Scalar solvers in public API by @pnkraemer in #499
- Doc improvements by @pnkraemer in #501
- Cubature factories by @pnkraemer in #502
- Skip JVP tests for Dense SLR1 by @pnkraemer in #503
- Removed unused method by @pnkraemer in #505
- IBM factories by @pnkraemer in #504
- Define public API by @pnkraemer in #506
- Correction factories by @pnkraemer in #507
- Remove type-checking tab by @pnkraemer in #510
- Implementation recipes are functions by @pnkraemer in #508
- Simplify extrapolation by @pnkraemer in #511
- Cache in state-space variable by @pnkraemer in #512
- Initial step in solver signature by @pnkraemer in #513
- Extract inverse to init for adaptive solvers by @pnkraemer in #514
- Time-step in controller state by @pnkraemer in #515
- Type-stability in filtering methods by @pnkraemer in #516
- The big output-scale-sqrtm overhaul by @pnkraemer in #517
- Initialise solution from posterior by @pnkraemer in #518
- Separate solver state from solution by @pnkraemer in #519
- Rename _ivpsolve_impl.py to _collocate.py by @pnkraemer in #520
- Group examples and benchmarks in directories by @pnkraemer in #521
- Remove 'rv1' from case_interpolate signature by @pnkraemer in #522
- Rename linearisation pt by @pnkraemer in #523
- Clean up strategy signatures by @pnkraemer in #524
- Use interpolation result type in strategies by @pnkraemer in #525
- Extract fn in strategy by @pnkraemer in #526
- Mention MLESolver fix in changelog by @pnkraemer in #527
- Improve usage of
posterior
vocabulary in solvers by @pnkraemer in #528 - Smoother state by @pnkraemer in #529
- Moved some properties from IVP solution to Strategy-states by @pnkraemer in #530
- Some cosmetic updates by @pnkraemer in #531
- Remove
gain
fromcomplete_correction
output by @pnkraemer in #532 probdiffeq.implementations
->probdiffeq.statespace
by @pnkraemer in #533- Remove the middle-man: No more
Implementation
class. by @pnkraemer in #534 - Removed eq for solvers by @pnkraemer in #535
init_output_scale
ispromote_output_scale
by @pnkraemer in #536- Move
t
field to strategy states by @pnkraemer in #537 - case_* methods private wherever appropriate by @pnkraemer in #538
- Removed _fn suffix for a bunch of methods by @pnkraemer in #539
- Extrapolation and correction define only
begin
andcomplete
by @pnkraemer in #540 - Reintroduce mypy checks by @pnkraemer in #541
- Delete readthedocs file and format yaml files by @pnkraemer in #542
- Remove u and marginals from solver state by @pnkraemer in #543
- Moved sample() to solution by @pnkraemer in #544
- Mini updates by @pnkraemer in #545
- Remove unneded test cases by @pnkraemer in #547
- Increase fixed-grid test coverage by @pnkraemer in #548
- Increase save-at test coverage by @pnkraemer in #550
- Split
statespace._collections.py
file and abbreviateStateSpaceVar
toSSV
by @pnkraemer in #551 - Change function order in _collocate.py by @pnkraemer in #552
- Remove 'Abstract' from class names by @pnkraemer in #553
- Target shape in state-space variable by @pnkraemer in #554
- Increase terminal value test coverage by @pnkraemer in #549
- Filters and smoothers implement begin() and complete() directly by @pnkraemer in #555
- Filters implement only begin() and complete() now by @pnkraemer in #556
- Smoothers only implement
begin
andcomplete
now by @pnkraemer in #557 - Strategy & statespace signatures by @pnkraemer in #558
- Remove num data points by @pnkraemer in #559
- Solution assembly outside of ivpsolvers.py by @pnkraemer in #560
- Extract output scale by @pnkraemer in #561
- Delete unused function by @pnkraemer in #562
init_conditional
->smoother_init_conditional
by @pnkraemer in #563- Controls are now longer abstract by @pnkraemer in #564
- IVP solvers no longer abstract by @pnkraemer in #565
- Strategy no longer abstract by @pnkraemer in #566
- Removed unused caches in filter_begin and filter_complete by @pnkraemer in #567
- Remove _SmootherCommon by @pnkraemer in #568
- Fixed-point implementations gain dedicated begin/complete methods by @pnkraemer in #569
- Fix interpolation error by @pnkraemer in #571
- Test mle calibration by @pnkraemer in #570
- Moved
u
from_FiState
and_SmState
toSSV
by @pnkraemer in #573 - Split extrapolations into filter-, smoother-, and fixedpoint-implementations by @pnkraemer in #574
- AdaptiveState is a named tuple now. by @pnkraemer in #575
- Extracted filtering functionality from LML by @pnkraemer in #576
- Dataclasses and Pytrees by @pnkraemer in #577
- Nested dataclasses by @pnkraemer in #579
- Removed custom dataclasses (they don't work as expected) by @pnkraemer in #580
- Phrased runge-kutta starter as a smoother by @pnkraemer in #581
- Removed last abstract classes by @pnkraemer in #582
- Split _collections into _markov and _interp by @pnkraemer in https://github.com/pnkraemer/...
v0.1.4
What's Changed
- Taylor mode AD with scan by @pnkraemer in #474
- Taylor documentation by @pnkraemer in #475
- Split dense output tests into separate files by @pnkraemer in #478
- Resolve nmll error by @pnkraemer in #479
Full Changelog: v0.1.3...v0.1.4
v0.1.3
What's Changed
- Flexible while_loop backend in simulate_terminal_values by @pnkraemer in #471
- Fix negative log likelihood and introduce likelihood on terminal values by @pnkraemer in #473
Full Changelog: v0.1.2...v0.1.3
v0.1.2
What's Changed
- HIRES benchmark by @pnkraemer in #443
- Improved BlackJAX tutorial by @pnkraemer in #448
- Prior in sampling tutorial by @pnkraemer in #449
- Neural ODE example by @pnkraemer in #450
- Make benchmark by @pnkraemer in #451
- Improve color scheme in benchmarks by @pnkraemer in #454
- Precompute factorials by @pnkraemer in #462
- Doc-publish only on release instead of every push to main by @pnkraemer in #463
- Remove vstack by @pnkraemer in #464
- More efficinet extract_qoi for Iso* solvers by @pnkraemer in #465
- Init hidden state error by @pnkraemer in #466
- Warning about compilation times by @pnkraemer in #467
- Solver-test-case refactor by @pnkraemer in #469
Full Changelog: v0.1.1...v0.1.2
v0.1.1
What's Changed
- Build documentation with a GitHub Action by @pnkraemer in #423
- Added a whole bunch of links to the readme by @pnkraemer in #424
- Reran benchmarks by @pnkraemer in #425
- Moved benchmark utility functions by @pnkraemer in #426
- Revised text by @pnkraemer in #427
- Benchmark refactor by @pnkraemer in #429
- Moved Lotka-Volterra benchmarks to dedicated folder by @pnkraemer in #430
- Pleiades benchmark by @pnkraemer in #431
- Added diffrax to pleiades benchmark by @pnkraemer in #432
- Stiff ODE benchmark: Van der Pol by @pnkraemer in #437
- Array -> ArrayLike by @pnkraemer in #438
- Error estimate in state by @pnkraemer in #439
- init_corrected -> init_hidden_state by @pnkraemer in #440
- Link in readme by @pnkraemer in #441
- Fixed a typo by @pnkraemer in #442
Full Changelog: v0.1.0...v0.1.1
v0.1.0
What's Changed
- Doc build by @pnkraemer in #1
- Lean out ek0 by @pnkraemer in #2
- Ek0 class by @pnkraemer in #3
- New stuff by @pnkraemer in #4
- Reorganise by @pnkraemer in #5
- Pretty up by @pnkraemer in #6
- Control refactor by @pnkraemer in #7
- Adaptive steps by @pnkraemer in #8
- New attempt at adaptivity by @pnkraemer in #9
- Undo custom pytree for solver state by @pnkraemer in #10
- Information fns by @pnkraemer in #11
- Ode problems by @pnkraemer in #12
- Extract extrapolation model by @pnkraemer in #14
- Taylor mode by @pnkraemer in #15
- Ivp data by @pnkraemer in #16
- Introduce equinox by @pnkraemer in #17
- Refactor by @pnkraemer in #18
- Flatter hierarchy by @pnkraemer in #19
- No attribute wrapping by @pnkraemer in #20
- Classmethod instead of factory by @pnkraemer in #21
- Renamed filtersolution attributes by @pnkraemer in #22
- Rename backends by @pnkraemer in #23
- remove separation by @pnkraemer in #24
- Isotropic filter by @pnkraemer in #25
- Clean up sqrtm by @pnkraemer in #27
- Move step-clipping to adaptive solver by @pnkraemer in #26
- Remove problem by @pnkraemer in #30
- EK1 draft by @pnkraemer in #32
- Simplify by @pnkraemer in #34
- Implementations in docs by @pnkraemer in #38
- Init module by @pnkraemer in #42
- Collect test cases by @pnkraemer in #45
- Rename inits by @pnkraemer in #46
- Solve checkpoints by @pnkraemer in #47
- Undo aux module by @pnkraemer in #49
- Jax odeint reference in tests by @pnkraemer in #52
- flake8 pre-commit hook by @pnkraemer in #54
- Rename simulate function by @pnkraemer in #56
- Recipes by @pnkraemer in #57
- Backend solution objects simplified by @pnkraemer in #58
- Improved dev docs by @pnkraemer in #59
- Backend to strategy by @pnkraemer in #63
- Move to solution by @pnkraemer in #66
- Rename odefilter states by @pnkraemer in #67
- Solving modes by @pnkraemer in #70
- Init apply extract smoothing by @pnkraemer in #71
- Ibm in implementation by @pnkraemer in #73
- Prepare stepping end by @pnkraemer in #77
- Test cases ivpsolve via recipes by @pnkraemer in #78
- Checkpoint corners by @pnkraemer in #79
- QOI in Posteriors by @pnkraemer in #81
- Smoothing changes QOI now by @pnkraemer in #82
- Solve for all states by @pnkraemer in #83
- Jitting by @pnkraemer in #84
- Moved low-level tests away by @pnkraemer in #90
- Remove taylor-mode attribute from solver by @pnkraemer in #91
- Update Taylor series functions by @pnkraemer in #94
- Merge odefilter and adaptive by @pnkraemer in #95
- Move interpolation to odefilter by @pnkraemer in #96
- Split smoothers into fixed-point and normal by @pnkraemer in #97
- Ivpsolve tests tags by @pnkraemer in #98
- Update solver routines by @pnkraemer in #99
- Notebook by @pnkraemer in #101
- Info op refactor by @pnkraemer in #104
- Description by @pnkraemer in #105
- Simple benchmark by @pnkraemer in #108
- Cleaned up benchmark by @pnkraemer in #110
- Fix checkpointing corner-case by @pnkraemer in #112
- Fixed another corner case by @pnkraemer in #113
- Split up equivalence tests even more by @pnkraemer in #115
- fixed a checkpointing test by @pnkraemer in #116
- More test stuff by @pnkraemer in #117
- Tests pass without jit by @pnkraemer in #118
- Checkpoint equivalence by @pnkraemer in #122
- Fixed same-grid-eks0 test by @pnkraemer in #123
- Off grid tests by @pnkraemer in #127
- Split solver routines into different files by @pnkraemer in #128
- Implementation interface by @pnkraemer in #129
- Marginals in solution object by @pnkraemer in #130
- Revisit control by @pnkraemer in #133
- Iterable solutions by @pnkraemer in #134
- Tornadox equivalence by @pnkraemer in #136
- Ode signature by @pnkraemer in #138
- Recompilation resolve by @pnkraemer in #141
- Ekf1 by @pnkraemer in #142
- Add an example notebook for second-order problems by @pnkraemer in #143
- Filter dense output by @pnkraemer in #144
- Smoother dense output by @pnkraemer in #147
- Rework dense output by @pnkraemer in #150
- EKF1 equivalence tests pass by @pnkraemer in #151
- fixpt -> fixedpt by @pnkraemer in #152
- Split offgrid marginals into different tests by @pnkraemer in #153
- Improve example notebooks by @pnkraemer in #154
- Fixedpoint by @pnkraemer in #155
- Fixed diffusion by @pnkraemer in #157
- Dynamic EKS1 by @pnkraemer in #160
- Refactor small things by @pnkraemer in #162
- Unskip tests by @pnkraemer in #165
- Improved LV benchmark by @pnkraemer in #171
- Multiply away by @pnkraemer in #173
- Different extract functions by @pnkraemer in #174
- Simplify strategy by @pnkraemer in #176
- Solution by @pnkraemer in #183
- Rename recipes by @pnkraemer in #184
- FixedPoint EKS1 by @pnkraemer in #185
- Move information op by @pnkraemer in #186
- Unify more strategies by @pnkraemer in #188
- Extract solver from strategy by @pnkraemer in #190
- New solvers by @pnkraemer in #193
- Samples by @pnkraemer in #194
- Info op by @pnkraemer in #195
- Readme by @pnkraemer in #199
- Diagonal EK0 by @pnkraemer ...