Data Assimilation

Daniel Wheeler

04/09/2025

Why DA?

  • DA is one of the underpinnings for DT
  • First DT: dynamic data assimilation enabled weather forecasting
  • DA + ROM (physics-driven surrogate models)

Why DA?

  • FNO + DA
  • Melt pool dimensions for experimental observations
  • Laser absorption is free parameter

DA Methods

Perfect System

X_{k+1} = \Phi X_k + w_k
z_k = H X_{k} + v_k

State vector mapping

Observation mapping

with noise

w_k \sim N(0, Q)
v_k \sim N(0, R)

Q and R are stationary over time!

Note on covariance matrices

R = E[v v^T]
R_{ij} = \frac{1}{n} \sum_{l=1}^n v_{i,l} v_{j,l}

Covariance matrices are important here (dropping  k)

What does that mean? Sampe n times for element of v

Imperfect System

\hat{X}_{k+1}^{\prime} = \Phi \hat{X}_k + w_k
z_k - H \hat{X}_k^{\prime} \ne 0

The imperfect state vector

It's imperfect so we have a measurment residual or innovation

We need to improve the imperfect state vector with the innovation

\hat{X}_k = \hat{X}_k^{\prime} + K_k \left( z_k - H \hat{X}_k^{\prime} \right)

Kalman Gain

How to find the Kalman gain?

Write down the error covariance matrix 

P_k = E[(X_k - \hat{X}_k)(X_k - \hat{X}_k)^T]

Note that the trace of P is the mean square error. Minimize with respect to K.

P_k = \left(I + K_k H\right) P_k^{\prime} \left(I + K_k H\right)^T + K_k R K_k^T

Using

using independence of v and w as well as

P_k^{\prime} = E[(X_k - \hat{X}_k^{\prime})(X_k - \hat{X}_k^{\prime})^T]
\hat{X}_k = \hat{X}_k^{\prime} + K_k \left(H X_k + v - H \hat{X}_k^{\prime} \right)

sub into error matrix

How to find the Kalman gain?

Minimize Tr(P) w.r.t K

\frac{\partial \text{Tr}[P_k]}{\partial K_k} = -2 \left(H P_k^{\prime}\right)^T + 2 K_k \left(H P_k^{\prime} H^T + R \right)
K_k = P_k^{\prime} H^T \left(H P_k^{\prime} H^T + R \right)^{-1}
\frac{\partial \text{Tr}[P_k]}{\partial K_k} = -2 \left(H P_k^{\prime}\right)^T + 2 K_k \left(H P_k^{\prime} H^T + R \right)

Set to 0 and find K

Putting it together

Forward Model

Correction

\hat{X}_{k+1}^{\prime} = \Phi \hat{X}_k + w_k
\hat{X}_k = \hat{X}_k^{\prime} + K_k \left( z_k - H \hat{X}_k^{\prime} \right)

Can also show that

P_k = \left(I - K_k H\right) P_k^{\prime}
P_{k+1}^{\prime} = \Phi P_k^{\prime} \Phi^T + Q
K_k = P_k^{\prime} H^T \left(H P_k^{\prime} H^T + R \right)^{-1}

EnKF

\hat{X}_{k+1}^{(i)\prime} = \mathcal{\Phi} \left( \hat{X}_k^{(i)} \right) + w_k^{(i)}

EnKF

Non-linear forward model

P prime represents the covariance error of the mean of the ensemble

\hat{X}_{k+1}^{(i)\prime} = \mathcal{\Phi} \left( \hat{X}_k^{(i)} \right) + w_k^{(i)}
P_k^{\prime} = E[(X_k - \overline{\hat{X}_k^{(i)\prime}})(X_k - \overline{\hat{X}_k^{(i)\prime}})^T]
\hat{X}_k^{(i)} = \hat{X}_k^{(i)\prime} + K_k \left( z_k^{(i)} - \mathcal{H} \left( \hat{X}_k^{(i)\prime} \right) \right)
K_k = P_k^{\prime} H^T \left(H P_k^{\prime} H^T + R \right)^{-1}

Parameter Estimation

Forward model for joint state-parameter estimation

\hat{X}_{k+1}^{(i)\prime} = \mathcal{\Phi} \left( \hat{X}_k^{(i)}; \theta_k \right) + w_k^{(i)}
  • Joint state-parameter estimation
  • Dual estimation (separate EnKFs)
  • Augmented
  • Iterative
  • Adapative
\hat{Z}_{k+1}^{(i)\prime} = \mathcal{\Phi} \left( \hat{Z}_k^{(i)} \right) + w_k^{(i)}
Z_{k+1} = \left[ X_k, \theta_k \right]^T

becomes 

TorchDA

deck

By Daniel Wheeler

deck

  • 43