Skip to content

Uncertainty correction #24

Description

@NPounder

Corrections to the Hessian can happen after the assimilation has returned a value and has calculated the approximation to the Hessian, broadly speaking after every band has been processed, or before the following line

P_forecast = P_analysis

The function to calculate the correction term will calculate for a single band the Hessian from the emulator (gp.hessian(x)) which yields H'' (a 4x4 matrix). The other term is just innovation divided by the per-band variance, which is a scalar. The other ingredients are

  • The analysis state x_analysis
  • The per pixel uncertainty
  • The innovations (check that they're defined in the right order eg H(x) -y )

Easiest thing is to use the cached_obs structure, which is a n_bands list where each element contains:

  1. observations
  2. R_mat (uncertainty matrix) (needed)
  3. Mask (needed)
  4. Metadata
  5. Emulator (needed)

Innovations come from innovations_prime (but you might just want to either change their definition, or just put a - in front)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions