CliMA / CliMA/EnsembleKalmanProcesses.jl

Currently we do not error if all particles fail

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

Description

## Issue

After the imputation check, or during the successful ensemble check, we should really throw an error if `> N-2` particles fail. as it is not possible to create a meaningful update in this situation. Yet, somehow, some processes e.g., `TransformUnscented` will create an update without error (though it is not meaningful).

I think it should be suggested that one can increase the `nan_tolerance` to reduce the likelihood of this failure mode.

## Possible solution,

There are two sensible places for the error:
https://github.com/CliMA/EnsembleKalmanProcesses.jl/blob/026880cddf0d3b87b991ed8b74345a31e9a29756/src/EnsembleKalmanProcess.jl#L1274

or

https://github.com/CliMA/EnsembleKalmanProcesses.jl/blob/026880cddf0d3b87b991ed8b74345a31e9a29756/src/EnsembleKalmanProcess.jl#L1162-L1168

I think, the former; in the `impute_over_nans` function, a stopping error + suggestion that `nan_tolerance` should be increased. is a good solution

Contributor guide

No contributing guide indexed for this repository

Research direction

Start in src/EnsembleKalmanProcess.jl at impute_over_nans around line 1274, and compare the successful ensemble check around lines 1162-1168. Reproduce the TransformUnscented case where more than N-2 particles fail, then verify that processing stops with an error suggesting an increased nan_tolerance.

Written by the indexing model from the issue text.

Assessment

Tech stack
julia
Domain
machine-learning
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.