Mathematics of Data Assimilation- Complex Systems in ...mamamf/talks/melinabics.pdf · Mathematics...
Transcript of Mathematics of Data Assimilation- Complex Systems in ...mamamf/talks/melinabics.pdf · Mathematics...
Mathematics of Data Assimilation-Complex Systems in Numerical Weather Prediction
Melina Freitag
Department of Mathematical Sciences
University of Bath
BICS meeting ’The Maths of Complex Systems’6th February 2008
1 Introduction
2 Basic concepts
3 Variational Data AssimilationLeast square estimationKalman Filter
4 Problems
5 Plan
Outline
1 Introduction
2 Basic concepts
3 Variational Data AssimilationLeast square estimationKalman Filter
4 Problems
5 Plan
What is Data Assimilation?
Loose definition
Estimation and prediction (analysis) of an unknown, true state bycombining observations and system dynamics (model output).
What is Data Assimilation?
Loose definition
Estimation and prediction (analysis) of an unknown, true state bycombining observations and system dynamics (model output).
Some examples
Navigation (collect observations and produce velocity corrections)
Geophysics (values of some model parameter must be obtained fromthe observed data)
Medical imaging
What is Data Assimilation?
Loose definition
Estimation and prediction (analysis) of an unknown, true state bycombining observations and system dynamics (model output).
Some examples
Navigation (collect observations and produce velocity corrections)
Geophysics (values of some model parameter must be obtained fromthe observed data)
Medical imaging
Numerical weather prediction
The atmosphere
The atmosphere is a complex system!Mathematical modelling, observations and mathematical DataAssimilation help to understand this complex multi-scale system
Figure: http://www.usoe.k12.ut.us
The atmosphere
The atmosphere is a complex system!Mathematical modelling, observations and mathematical DataAssimilation help to understand this complex multi-scale system
Figure: http://www.usoe.k12.ut.us
⇒”Aspects of Ionosphere modelling”Nathan (see talk later this afternoon)
The weather (NWP)
Data Assimilation in NWP
Estimate the state of the atmosphere xi at a certain time/certain times i.
A priori information xB
background state (usualprevious forecast)
Data Assimilation in NWP
Estimate the state of the atmosphere xi at a certain time/certain times i.
A priori information xB
background state (usualprevious forecast)
Observations y
Satellites
Ships and buoys
Surface stations
Airplanes
Data Assimilation in NWP
Estimate the state of the atmosphere xi at a certain time/certain times i.
A priori information xB
background state (usualprevious forecast)
Models
a model how the atmosphereevolves in time (imperfect)
xi+1 = M(xi)
Observations y
Satellites
Ships and buoys
Surface stations
Airplanes
Data Assimilation in NWP
Estimate the state of the atmosphere xi at a certain time/certain times i.
A priori information xB
background state (usualprevious forecast)
Models
a model how the atmosphereevolves in time (imperfect)
xi+1 = M(xi)
a function linking model spaceand observation space(imperfect)
yi = H(xi)
Observations y
Satellites
Ships and buoys
Surface stations
Airplanes
Data Assimilation in NWP
Estimate the state of the atmosphere xi at a certain time/certain times i.
A priori information xB
background state (usualprevious forecast)
Models
a model how the atmosphereevolves in time (imperfect)
xi+1 = M(xi)
a function linking model spaceand observation space(imperfect)
yi = H(xi)
Observations y
Satellites
Ships and buoys
Surface stations
Airplanes
Assimilation algorithms
used to find an (approximate)state of the atmosphere xi attimes i (usually i = 0)
using this/these states aforecast for future states of theatmosphere can be obtained
Outline
1 Introduction
2 Basic concepts
3 Variational Data AssimilationLeast square estimationKalman Filter
4 Problems
5 Plan
Schematics of DA
Figure: Background state xB
Schematics of DA
Figure: Observations y
Schematics of DA
Figure: Analysis xA (consistent with observations and model dynamics)
Data Assimilation in NWP
Underdeterminacy
Size of the state vector x: 432 × 320 × 50 × 7 = O(107)
Number of observations (size of y): O(105 − 106)
Operator H (nonlinear!) maps from state space into observationsspace: y = H(x)
Notation
xTruth: True state
xB: Background state (taken from previous forecast)
xA: Analysis (estimation of the true state after the DA)
Outline
1 Introduction
2 Basic concepts
3 Variational Data AssimilationLeast square estimationKalman Filter
4 Problems
5 Plan
Data Assimilation in NWP
We are looking for the state of the atmosphere xi at a certain time/certaintimes i.
Apriori information xB
background state (usualprevious forecast) has errors!
Models
a model how the atmosphereevolves in time (imperfect)
xi+1 = M(xi) + error
a function linking model spaceand observation space(imperfect)
yi = H(xi) + error
Observations y has errors!
Satellites
Ships and buoys
Surface stations
Airplanes
Assimilation algorithms
used to find an (approximate)state of the atmosphere xi attimes i (usually i = 0)
using this/these states aforecast for future states of theatmosphere can be obtained
Error variables
Modelling the errors
background error εB = xB − xTruth of average εB and covariance
B = (εB − εB)(εB − εB)T
observation error εO = y − H(xTruth) of average εO and covariance
R = (εO − εO)(εO − εO)T
Error variables
Modelling the errors
background error εB = xB − xTruth of average εB and covariance
B = (εB − εB)(εB − εB)T
observation error εO = y − H(xTruth) of average εO and covariance
R = (εO − εO)(εO − εO)T
Assumptions
Linearised observation operator: H(x) − H(xB) = H(x− xB)
Nontrivial errors: B, R are positive definite
Unbiased errors: xB − xTruth = y − H(xTruth) = 0
Uncorrelated errors: (xB − xTruth)(y − H(xTruth))T = 0
Optimal least-squares estimater
Cost function minimisation (3D-Var)
Solution of the variational optimisation problem xA = arg minJ(x) where
J(x) = (x − xB)T
B−1(x− x
B) + (y − H(x))TR
−1(y − H(x))
= JB(x) + JO(x)
B−1 expensive!
Optimal least-squares estimater
Cost function minimisation (3D-Var)
Solution of the variational optimisation problem xA = arg minJ(x) where
J(x) = (x − xB)T
B−1(x− x
B) + (y − H(x))TR
−1(y − H(x))
= JB(x) + JO(x)
B−1 expensive!
Interpolation equations
xA = x
B + K(y − H(xB)), where
K = BHT (HBH
T + R)−1K . . . gain matrix
expensive!
Four-dimensional variational assimilation (4D-Var)
Minimise the cost function
J(x0) = (x0 − xB)T
B−1(x0 − x
B) +nX
i=0
(yi − Hi(xi))TR
−1i (yi − Hi(xi))
subject to model dynamics xi = M0→ix0
Four-dimensional variational assimilation (4D-Var)
Minimise the cost function
J(x0) = (x0 − xB)T
B−1(x0 − x
B) +nX
i=0
(yi − Hi(xi))TR
−1i (yi − Hi(xi))
subject to model dynamics xi = M0→ix0
Figure: Copyright:ECMWF
Example - Three-Body Problem
Motion of three bodies in a plane, two position (q) and two momentum (p)coordinates for each body α = 1, 2, 3
Equations of motion
H(q,p) =1
2
X
α
|pα|2
mα
−X X
α<β
mαmβ
|qα − qβ|
dqα
dt=
∂H
∂pα
dpα
dt= −
∂H
∂qα
Example - Three-Body problem
solver: partitioned Runge-Kutta scheme with time step h = 0.001
observations are taken as noise from the truth trajectory
background is given from a perturbed initial condition
assimilation window is taken 300 time steps
minimisation of cost function J using a Gauss-Newton method
∇J(x0) = 0
∇∇J(xj0)∆x
j0 = −∇J(xj
0), xj+10 = x
j0 + ∆x
j0
subsequent forecast is take 5000 time steps
Example- Three-Body problem
Figure: Truth trajectory
Example- Three-Body problem
500 1000 1500 2000 2500 3000 3500 4000 4500 5000 5500−0.05
0
0.05
0.1
0.15
0.2
Time step
x po
sitio
n of
the
sun
Solution for position of the sun
500 1000 1500 2000 2500 3000 3500 4000 4500 5000 5500−1
−0.5
0
0.5
1
Time step
x po
sitio
n of
the
moo
n
Solution for position of the moon
Truth x
Observation x
Background x
Figure: Truth trajectory with observations and background
Example- Three-Body problem
500 1000 1500 2000 2500 3000 3500 4000 4500 5000 5500−0.05
0
0.05
0.1
0.15
0.2
Time step
x po
sitio
n of
the
sun
Solution for position of the sun
500 1000 1500 2000 2500 3000 3500 4000 4500 5000 5500−1
−0.5
0
0.5
1
Time step
x po
sitio
n of
the
moo
n
Solution for position of the moon
Truth x
Observation x
Background x
Analysis x (after EKF)
Figure: Analysis
Example- Three-Body problem
500 1000 1500 2000 2500 3000 3500 4000 4500 5000 55000
0.05
0.1
0.15
0.2
Time step
RM
S e
rror
before assimilation
after assimilation
Figure: RMS error
Example- Three-Body problem
500 1000 1500 2000 2500 3000 3500 4000 4500 5000 55000
0.05
0.1
0.15
0.2
Time step
RM
S e
rror
before assimilation
after assimilation
500 1000 1500 2000 2500 3000 3500 4000 4500 5000 55000
0.02
0.04
0.06
0.08
0.1
0.12
0.14
0.16
0.18
0.2
sun before
planet before
moon before
sun after
planet after
moon after
Figure: RMS error
The Kalman Filter Algorithm
Sequential data assimilation
covariance matrices are updated at each step PF , PA
State and error covariance forecast
State forecast xFi+1 = Mi+1,ix
Ai
Error covariance forecast PFi+1 = Mi+1,iP
Ai M
Ti+1,i + Qi
The Kalman Filter Algorithm
Sequential data assimilation
covariance matrices are updated at each step PF , PA
State and error covariance forecast
State forecast xFi+1 = Mi+1,ix
Ai
Error covariance forecast PFi+1 = Mi+1,iP
Ai M
Ti+1,i + Qi
State and error covariance analysis
Kalman gain Ki = PFi H
Ti (HiP
Fi H
Ti + Ri)
−1
State analysis xAi = x
Fi + Ki(yi − Hix
Fi )
Error covariance of analysis PAi = (I− KiHi)P
Fi
Example - Three-Body Problem
same setup as before
Compare using B = I with using a flow-dependent matrix B which wasgenerated by a Kalman Filter before the assimilation starts (see G.Inverarity (2007))
Example - Three-Body Problem
2.4 2.5 2.6 2.7 2.8 2.9 3
x 104
0
0.02
0.04
0.06
0.08
0.1
0.12
Time step
RM
S e
rror
before assimilation
after assimilation
Figure: 4D-Var with B = I
2.4 2.5 2.6 2.7 2.8 2.9 3
x 104
0
0.005
0.01
0.015
0.02
0.025
0.03
Time step
RM
S e
rror
before assimilation
after assimilation
Figure: 4D-Var with B = PA
Outline
1 Introduction
2 Basic concepts
3 Variational Data AssimilationLeast square estimationKalman Filter
4 Problems
5 Plan
Problems with Data Assimilation
DA is computational very expensive, one cycle is much more expensivethan the actual forecast (many applications of the tangent linear modeland adjoint)
Problems with Data Assimilation
DA is computational very expensive, one cycle is much more expensivethan the actual forecast (many applications of the tangent linear modeland adjoint)
estimation of the B-matrix is hardin operational DA B is about 107
× 107
B should be flow-dependent but in practice often staticB needs to be modeled and diagonalised since B−1 too expensive tocompute (”control variable transform”)
Problems with Data Assimilation
DA is computational very expensive, one cycle is much more expensivethan the actual forecast (many applications of the tangent linear modeland adjoint)
estimation of the B-matrix is hardin operational DA B is about 107
× 107
B should be flow-dependent but in practice often staticB needs to be modeled and diagonalised since B−1 too expensive tocompute (”control variable transform”)
many assumptions are not validerrors non-Gaussian, data have biasesforward model operator M is not exact and also non-linear and systemdynamics are chaoticminimisation of the cost function needs close initial guess, smallassimilation window
Problems with Data Assimilation
DA is computational very expensive, one cycle is much more expensivethan the actual forecast (many applications of the tangent linear modeland adjoint)
estimation of the B-matrix is hardin operational DA B is about 107
× 107
B should be flow-dependent but in practice often staticB needs to be modeled and diagonalised since B−1 too expensive tocompute (”control variable transform”)
many assumptions are not validerrors non-Gaussian, data have biasesforward model operator M is not exact and also non-linear and systemdynamics are chaoticminimisation of the cost function needs close initial guess, smallassimilation window
model error not included
Outline
1 Introduction
2 Basic concepts
3 Variational Data AssimilationLeast square estimationKalman Filter
4 Problems
5 Plan
Model error and perturbation error
Figure: One assimilation window (6 hours)
xF1 − x
Truth1 = Mappr(x
A0 ) − M(xTruth
0 )
= Mappr(xA0 ) − Mappr(x
Truth0 )
| {z }
Perturbation error
+Mappr(xTruth0 ) − M(xTruth
0 )| {z }
Model error
Model error and perturbation error
Figure: Model error and perturbation error
Model error
Figure: Perturbation error after 7 hours (Copyright: MetOffice)
Model error
Figure: Perturbation error after 12 hours (Copyright: MetOffice)
Model error
Figure: Model error after 12 hours (Copyright: MetOffice)
Plan
design a simple chaotic model of reduced order (Lorenz model)
include several time scales (to model the atmosphere)
Plan
design a simple chaotic model of reduced order (Lorenz model)
include several time scales (to model the atmosphere)
include model error and analyse influence of this model error onto theDA scheme
analyse the influence of the error made by the numericalapproximation (part of the model error) on the error in the DA scheme
investigate several assimilation algorithms and optimisation strategiesto reduce existing errors
Plan
design a simple chaotic model of reduced order (Lorenz model)
include several time scales (to model the atmosphere)
include model error and analyse influence of this model error onto theDA scheme
analyse the influence of the error made by the numericalapproximation (part of the model error) on the error in the DA scheme
investigate several assimilation algorithms and optimisation strategiesto reduce existing errors
improve the representation of multi-scale behaviour in the atmospherein existing DA methods
improve the forecast of small scale features (like convective storms)
Plan
design a simple chaotic model of reduced order (Lorenz model)
include several time scales (to model the atmosphere)
include model error and analyse influence of this model error onto theDA scheme
analyse the influence of the error made by the numericalapproximation (part of the model error) on the error in the DA scheme
investigate several assimilation algorithms and optimisation strategiesto reduce existing errors
improve the representation of multi-scale behaviour in the atmospherein existing DA methods
improve the forecast of small scale features (like convective storms)
Theme D: Numerical methods for multi-scale modelling