Releases: Team-RADDISH/ParticleDA.jl
Releases · Team-RADDISH/ParticleDA.jl
v1.2.0
ParticleDA v1.2.0
Merged pull requests:
- CompatHelper: add new compat entry for ChunkSplitters at version 2 for package test, (keep existing compat) (#272) (@github-actions[bot])
- CompatHelper: add new compat entry for Statistics at version 1 for package docs, (keep existing compat) (#278) (@github-actions[bot])
- CompatHelper: add new compat entry for DelimitedFiles at version 1 for package docs, (keep existing compat) (#279) (@github-actions[bot])
- CompatHelper: bump compat for Documenter to 1 for package docs (#280) (@github-actions[bot])
- CompatHelper: add new compat entry for PDMats at version 0.11 for package docs, (keep existing compat) (#281) (@github-actions[bot])
- Bump julia-actions/setup-julia from 1 to 2 (#282) (@dependabot[bot])
- Bump julia-actions/cache from 1 to 2 (#283) (@dependabot[bot])
- Update ChunkSplitters.jl to v3 (#284) (@giordano)
- [CI] Fix version of
julia-actions/julia-docdeploy
workflow (#285) (@giordano) - Solve some deprecation warnings (#286) (@giordano)
- Register custom MPI operator for aarch64 (#287) (@giordano)
- Update benchmarks environment to Julia v1.10 (#288) (@giordano)
- [docs] Add
sources
section toProject.toml
(#289) (@giordano)
Closed issues:
- Add missing docstrings to documentation (#268)
v1.1.0
ParticleDA v1.1.0
Merged pull requests:
- Update
GaussianRandomFields
version and add additional tests for linear Gaussian models (#244) (@matt-graham) - fix: Replacing Threads.@threads :static (#247) (@DanGiles)
- Bump to version 1.1.0 (#254) (@matt-graham)
- Remove explicit dependency on
SciMLBase
(#256) (@giordano) - Allow
HDF.jl
v0.17 (#258) (@giordano) - Reduce LLW2d model mesh dimensions + number of samples for test (#259) (@matt-graham)
- [CI] Add dependabot, use newer workflows, use concurrency groups (#260) (@giordano)
- Bump codecov/codecov-action from 3 to 4 (#261) (@dependabot[bot])
- Bump actions/checkout from 3 to 4 (#262) (@dependabot[bot])
- Ignore result of runs with nightly builds in CI job status (#263) (@matt-graham)
- Add extra links to README and improve description (#264) (@matt-graham)
- Run different CI jobs only when relevant files are touched (#266) (@giordano)
- Add compat bound for
ChunkSplitters
(#267) (@giordano)
Closed issues:
- Update
GaussianRandomFields
version in test dependencies (#243) - Replace the use of
Threads.@threads :static
(#246) - Request for code for Lorenz63 plot in paper (#250)
- Adjust number of samples and/or mesh dimension for optimal proposal unit tests with llw2d model (#257)
- Rename default branch to
main
(#265)
v1.0.1
v1.0.0
ParticleDA v1.0.0
Closed issues:
- Implement particle filter (#2)
- Parameters shouldn't be hard-coded in the module (#4)
- Add noise to the model (#6)
- Add distributed parallelism (#7)
- Create test/Project.toml (#14)
- Initial condition in llw2d is obscure (#15)
- Add noise to the observations (#17)
- Add some documentation (#18)
- Add plotting function(s) (#19)
- Rename the package (#23)
- Change output format (#26)
- Benchmark suite (#34)
- Slow performance in Process Noise (#35)
- Timeseries outputs, ESS (#36)
- Don't get observations when PF is not called (#40)
- Redefine time stepping (#44)
- Redefine grid parameters (#45)
- Add variance to output (#46)
- Possible memory allocations improvements (#53)
- Represent states with structs (#58)
- Add integration test that tests particles (#62)
- Names bikeshedding (#64)
- New Initial State of Particles (#67)
- Error when changing nx, ny (#74)
- Simplify station setup (#75)
- Observations should be independent (#76)
- Plot to show estimated Standard Deviation instead of Variance (#81)
- Extra Plot to check effect of Background Noise (#82)
- Parellelisation (#83)
- Add station coordinates to output (#84)
- Provide station coordinates in an input file (#86)
- Consistency at colouring at plots of "true height" and "assimilated height" (#92)
- jupyter notebook for plotting (#96)
- Parallelise resampling (#97)
- Provide plot for initial condition of (the two) true Velocity Fields (not only of initial Height Field) (#101)
- add_random_field is not thread-safe after #94 (#105)
- Discontinuities in variance and mean (#108)
- Parallel performance (#115)
- Thread Scaling (#117)
- Separate particle filter from the model (#124)
- Parametrize initial condition in llw2d properly (#134)
- Optimal particle filter (#136)
- Different Background Noise Parameters for Each of Three State Variables (#175)
- Plotting tool in Julia (#182)
- Add SPEEDY climate model (#199)
- Precompiling ParticleDA Error (#202)
- Role of
weight_std
parameter not clear (#205) - Generalise update_particle_proposal! (#208)
- OptimalFilter BoundsError when running with mpiexecjl (#209)
- Covariance function assumed in optimal proposal not guaranteed to match that used for process noise (#213)
- Fix TODO about covariance in comment (#214)
- Generalising the optimal proposal implementation (#215)
- Allow returning particles as well summary statistics and at multiple time steps (#220)
- Simplify interface for doing reproducible runs when using MPI (#221)
- Optimal proposal filter not using correct weights (#223)
- Observations currently generated within filtering loop (#224)
- Adding test cases for analytically tractable models (#225)
- Inconsistent conventions around spatial grid coordinates in LLW2d model (#229)
- Optimal proposal particle weights are being computed incorrectly (#230)
- Summary statistics computed on every time step when not outputted (#231)
Merged pull requests:
- Particle filter (#1) (@tkoskela)
- Add keyword argument to
tdac
to enable/disable verbosity (#3) (@giordano) - Refactor parameters (#5) (@tkoskela)
- Add instructions on how to install the package in the README (#8) (@giordano)
- Fix copyright of the package in the LICENSE file (#9) (@giordano)
- Add GitHub Actions script for CI (#10) (@giordano)
- MPI Parallelisation (#11) (@tkoskela)
- Bug fix, initheight was called on the wrong state array (#12) (@tkoskela)
- First integration test (#13) (@tkoskela)
- Remove now unused submodule (#16) (@giordano)
- Update README.md (#20) (@tkoskela)
- Jupyter notebook for plotting output files (#21) (@tkoskela)
- Fix link in README.md (#22) (@tkoskela)
- Add gaussian random noise (#25) (@tkoskela)
- [skip ci] Do not fail fast in GitHub Actions (#27) (@giordano)
- Run tests with 1 and 2 threads (#28) (@giordano)
- Update
GaussianRandomFields
and fix lower/upper bounds for deps (#29) (@giordano) - [skip ci] Add CompatHelper (#30) (@giordano)
- Clean up function argument lists (#31) (@tkoskela)
- Move output into HDF5 file (#32) (@tkoskela)
- CompatHelper: bump compat for "Distributions" to "0.23" (#33) (@github-actions[bot])
- Do not run
MPI.Finalize()
(#37) (@giordano) - Add new get_params - function where user can pass dict of parameters (#38) (@tkoskela)
- Generate Gaussian random field with
primes=true
(#39) (@giordano) - Do process noise and observations only when DA is done (#41) (@tkoskela)
- Read default parameters using multiple dispatch (#42) (@tkoskela)
- Define a custom type for the random field (#43) (@giordano)
- Update structure of the time stepping loop (#47) (@tkoskela)
- Set total domain size and derive cell size from it (#48) (@tkoskela)
- Add variance to output, collect arrays in structs (#49) (@tkoskela)
- Introduce timers with the
@timeit_debug
macro (#50) (@tkoskela) - Fix timer on first run, add print on screen (#51) (@tkoskela)
- Use
params.verbose
to check verbosity setting (#52) (@giordano) - Remove dependency on Distributed (#54) (@tkoskela)
- Use multi-dimensional arrays to represent states (#55) (@giordano)
- CompatHelper: add new compat entry for "TimerOutputs" at version "0.5" (#56) (@github-actions[bot])
- Preallocate the buffer for tsunami update (#57) (@giordano)
- Disable FFTW threads in tests (#59) (@giordano)
- Use preallocated buffer in add_random_field (#60) (@tkoskela)
- Use a buffer array to generate the random numbers in gaussian field (#63) (@giordano)
- Move initialisation of the field buffer to
init_tdac
(#65) (@giordano) - Fix distribution of random numbers for the Gaussian random field (#66) (@giordano)
- Update particle initial state (#68) (@tkoskela)
- Add colorbars to contourf plots (#69) (@tkoskela)
- Mean and Var need to be calculated for IO after initial state (#70) (@tkoskela)
- Add particle weights to output + plotting (#71) (@tkoskela)
- Add missing argument from list (#72) (@tkoskela)
- Make output of MPI test visible (#73) (@giordano)
- Fix issue of non-default parameters not getting passed to init_gaussian_random_field_generator (#77) (@tkoskela)
- Add test for different grid and time step size (#78) (@tkoskela)
- Update to weight and observation noise calculation (#79) (@tkoskela)
- Modify to plot standard deviation instead of variance (#85) (@tkoskela)
- Update README.md (#87) (@tkoskela)
- Fix x-axis in ESS plot to start from 1 (#88) (@tkoskela)
- Upgrades to stations (#89) (@tkoskela)
- Update README.md (#90) (@tkoskela)
- Add threads to process noise (#91) (@tkoskela)
- Enforce same color scale in true and avg height plots. Fix unit of var (#93) (@tkoskela)
- Define a thread-safe RNG (#94) (@giordano)
- Separate copying of state vectors from resampling. (#95) (@tkoskela)
- Use in-place version of
var
(#98) (@giordano) - Get rid of unnecessary flattening and reshaping (#99) (@tkoskela)
- Use allocation-free
var
everywhere (#100) (@giordano) - Revert state split (#102) (@tkoskela)
- Add options for particle initial state (#103) (@tkoskela)
- Add tests for particle state (#104) (@tkoskela)
- Write velocity fields to output and plot them (#106) (@tkoskela)
- Move IO functions to separate file (#107) (@tkoskela)
- CompatHelper: bump compat for "MPI" to "0.15" (#109) (@github-actions[bot])
- Move hard-coded parameters from llw2d.jl to parameters.jl and Fix boundary calculation (#110) (@tkoskela)
- Parallel resampling (#111) (@tkoskela)
- Pack all model matrices in a single struct (#112) (@giordano)
- Implementation of custom MPI reduction for mean and variance (#113) (@tkoskela)
- Add scripts to run scaling tests on CSD3 and notebook to plot results (#114) (@tkoskela)
- Rename functions for readability (#119) (@tkoskela)
- Simplify initheight (#120) (@tkoskela)
- Update README.md (#121) (@tkoskela)
- Do not force FFTW threads to 1 (#122) (@giordano)
- Rename
TDAC.jl
->ParticleDA.jl
(#123) (@giordano) - Add disclaimer to README (#125) (@tkoskela)
- Run CI on more versions of Julia (#126) (@giordano)
- Add benchmarks (#127) (@tkoskela)
- Separate model from particle filter (#128) (@giordano)
- CompatHelper: bump compat for "Distributions" to "0.24" (#129) (@github-actions[bot])
- Fix settings for deployment of documentation (#130) (@giordano)
- CompatHelper: bump compat for "MPI" to "0.16" (#131) (@github-actions[bot])
- CompatHelper: bump compat for "HDF5" to "0.14" (#132) (@github-actions[bot])
- Implement optimal particle filter from Alex (#133) (@tkoskela)
- Add SSH key to CompatHelper (#135) (@giordano)
- Update README.md (#137) (@tkoskela)
- Refactor llw2d.initheight (#138) (@tkoskela)
- Remove observation noise from model observations (#139) (@tkoskela)
- Add new filter type argument for dispatch (#140) (@giordano)
- CompatHelper: bump compat for "HDF5" to "0.15" (#141) (@github-actions[bot])
- Move filter initialisations into a function and group arrays into a struct. (#142) (@tkoskela)
- Update documentation to mention new argument to
run_particle_filter
(#143) (@giordano) - Change initial value of bathymetry, pointed out by Devaraj (#144) (@giordano)
- Update model interface for optimal filter (#145) (@tkoskela)
- Add two new functions to implement in the model (#146) (@giordano)
- Slightly simplify test project file (#147) (@giordano)
- Fix bug in update_reference_data.jl (#148) (@tkoskela)
- Restore compat bounds for test dependencies (#149) (@github-actions[bot])
- Add GitHub Action workflow to run benchmarks on CI for pull requests (#153) (@giordano)
- Add more benchmarks (#154) (@giordano)
- Pass filter type to run_particle_filter and use it to dispatch (#155) (@tkoskela)
- Increase required Julia version to v1.5 (#156) (@giordano)
- Split get_grid_size into three functions (#157) (@tkoskela)
- More generic initialisation of boostrap filter (#158) (@giordano)
- Precompute FFTW plan (#159) (@giordan...