11import EnsembleKalmanProcesses as EKP
22import YAML
33
4- export forward_model, observation_map
4+ export forward_model, observation_map, analyze_iteration
55
66"""
77 forward_model(iteration, member)
@@ -24,3 +24,30 @@ This function must be implemented for each calibration experiment.
2424function observation_map(iteration)
2525 error(" observation_map not implemented" )
2626end
27+
28+ """
29+ analyze_iteration(ekp, g_ensemble, prior, output_dir, iteration)
30+
31+ After each evaluation of the observation map and before updating the ensemble,
32+ `analyze_iteration` is evaluated.
33+
34+ This function is optional to implement.
35+
36+ For example, one may want to print information from the `eki` object or plot
37+ `g_ensemble`.
38+ """
39+ function analyze_iteration(ekp, g_ensemble, prior, output_dir, iteration)
40+ @info " Mean constrained parameter(s): $(EKP. get_ϕ_mean_final(prior, ekp)) "
41+ @info " Covariance-weighted error: $(last(EKP. get_error(ekp))) "
42+ return nothing
43+ end
44+
45+ """
46+ postprocess_g_ensemble(ekp, g_ensemble, prior, output_dir, iteration)
47+
48+ Postprocess `g_ensemble` after evaluating the observation map and before
49+ updating the ensemble.
50+ """
51+ function postprocess_g_ensemble(ekp, g_ensemble, prior, output_dir, iteration)
52+ return g_ensemble
53+ end
0 commit comments