CliMA / CliMA/EnsembleKalmanProcesses.jl

Reduce duplication in the failure handling methods for UKI/UTKI

Open
#478 0 comments 1 reaction 0 assignees View on GitHub
Dominant language
Julia
Stars
125
Forks
24
Avg merge
1d 18h
Merged PRs (30d)
5

Description

Right now e.g. in UKI, we have to call different methods `update_ensemble_analysis!` and `succ_gauss_analysis!`.

https://github.com/CliMA/EnsembleKalmanProcesses.jl/blob/81e249a240a820da8b681300f881f33c4ac0160a/src/UnscentedKalmanInversion.jl#L607-L611

https://github.com/CliMA/EnsembleKalmanProcesses.jl/blob/81e249a240a820da8b681300f881f33c4ac0160a/src/UnscentedKalmanInversion.jl#L275

This is confusing, and at the very least, much of the logic is shared.

## Possible solution.

As these methods largely derive from calling `construct_mean` or `construct_successful_mean` (and the same with `cov`) , there should be a way of safely removing much of the code duplication outside of these methods,

Contributor guide

No contributing guide indexed for this repository

Research direction

Start in src/UnscentedKalmanInversion.jl at the cited update_ensemble_analysis! and succ_gauss_analysis! methods, then trace their construct_mean and construct_successful_mean calls and corresponding covariance logic. The refactor is done when UKI/UTKI failure handling shares the duplicated logic safely while preserving the existing successful and failure analysis behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
julia
Domain
backend
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.