63
Didier Auroux University of Nice Sophia Antipolis France [email protected] Data assimilation for geophysical fluids Modelling and simulation of complex systems : stochastic and deterministic approaches CEMRACS’13 July 22 - August 30, 2013

Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France [email protected]

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Didier Auroux

University of Nice Sophia Antipolis

France

[email protected]

Data assimilation for geophysical fluids

Modelling and simulation of complex systems : stochastic and deterministic approaches

CEMRACS’13 July 22 - August 30, 2013

Page 2: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Talk overview

1. Data and models

2. Variational methods : 4D-VAR

3. Sequential methods : Kalman filter

4. Hybrid scheme : Back and Forth Nudging algorithm

5. Diffusive BFN algorithm

CEMRACS’13, CIRM - July 24, 2013 1/57

Page 3: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Motivations

Environmental and geophysical studies : forecast the natural evolution

retrieve at best the current state (or initial condition) of the environment.

Geophysical fluids (atmosphere, oceans, . . .) : turbulent systems =⇒ high

sensitivity to the initial condition =⇒ need for a precise identification (much

more than observations)

Environmental problems (ground pollution, air pollution, hurricanes, . . .) :

problems of huge dimension, generally poorly modelized or observed

Data assimilation consists in combining in an optimal way the observations of

a system and the knowledge of the physical laws which govern it.

Main goal : identify the initial condition, or estimate some unknown parame-

ters, and obtain reliable forecasts of the system evolution.

CEMRACS’13, CIRM - July 24, 2013 2/57

Page 4: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Data assimilation

t

Observations

Model

combination

model + observations

identification of the initial condition

in a geophysical system

Fundamental for a chaotic system (atmosphere, ocean, . . .)

Issue : These systems are generally irreversible.

Goal : Combine models and data.

CEMRACS’13, CIRM - July 24, 2013 3/57

Page 5: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

⇒ 1. Data and models

2. Variational methods : 4D-VAR

3. Sequential methods : Kalman filter

4. Hybrid scheme : Back and Forth Nudging algorithm

5. Diffusive BFN algorithm

CEMRACS’13, CIRM - July 24, 2013 4/57

Page 6: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Models

The equations governing the geophysical flows are derived from the general

equations of fluid dynamics. The main variables used to describe the fluids are :

– The components of the velocity

– Pressure

– Temperature

– Humidity in the atmosphere, salinity in the ocean

– Concentrations for chemical species

The constraints applied to these variables are :

– Equations of mass conservation.

– Momentum equation containing the Coriolis acceleration term, which is

essential in the dynamic of flows at extra tropical latitudes.

– Equation of energy conservation including law of thermodynamics.

– Law of behavior (e.g. Mariotte’s Law).

– Equations of chemical kinetics if a pollution type problem is considered.

CEMRACS’13, CIRM - July 24, 2013 5/57

Page 7: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Shallow water model

∂tu− (f + ζ)v + ∂xB =τx

ρ0h− ru + ν∆u

∂tv + (f + ζ)u + ∂yB =τy

ρ0h− rv + ν∆v (1)

∂th + ∂x(hu) + ∂y(hv) = 0

CEMRACS’13, CIRM - July 24, 2013 6/57

Page 8: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Quasi-geostrophic ocean model

k = 1 :D1 (θ1(Ψ) + f)

Dt− β∆2Ψ1 = F1

2 ≤ k ≤ n− 1 :Dk (θk(Ψ) + f)

Dt− β∆2Ψk = 0

k = n :Dn (θn(Ψ) + f)

Dt+ α∆Ψn − β∆2Ψn = 0

CEMRACS’13, CIRM - July 24, 2013 7/57

Page 9: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Primitive equations model

∂Uxy

∂t= −[U.∇U ]xy − ρ0∇xyp + DU ∂p

∂z= −ρg ∇.U = 0

∂T

∂t= −∇.(TU) + DT ∂S

∂t= −∇.(SU) + DS ρ = ρ(T, S, p)

CEMRACS’13, CIRM - July 24, 2013 8/57

Page 10: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Data

SYNOP/SHIP data : synoptic networks in red, airport data in blue, ship data

in green.

CEMRACS’13, CIRM - July 24, 2013 9/57

Page 11: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Data

Observations from ten geostationary satellites.

CEMRACS’13, CIRM - July 24, 2013 10/57

Page 12: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Data

Trajectories of six polar orbiting satellites.

CEMRACS’13, CIRM - July 24, 2013 11/57

Page 13: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Data

Satellite altimetry (from AVISO web site).

CEMRACS’13, CIRM - July 24, 2013 12/57

Page 14: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Data assimilation methods

Data assimilation methods :

1. 4D-VAR : optimal control method, based on the minimization of a

functional estimating the discrepancy between the model solution and the

observations.

[Le Dimet-Talagrand (Tellus, vol. 38A, 1986)]

2. Sequential methods : Kalman filtering, extended Kalman and ensemble

Kalman filters.

[Evensen (Ocean Dynamics, vol. 53, 2003)]

3. Hybrid method : the Back and Forth Nudging.

[A.-Blum (Nonlinear Processes in Geophysics, vol. 15, 2008)]

CEMRACS’13, CIRM - July 24, 2013 13/57

Page 15: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

1. Data and models

2. Variational methods : 4D-VAR

3. Sequential methods : Kalman filter

4. Hybrid scheme : Back and Forth Nudging algorithm

5. Diffusive BFN algorithm

CEMRACS’13, CIRM - July 24, 2013 14/57

Page 16: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

4D-VAR

Observations

t

Xb

X0

dX

dt= F (X),

X(0) = X0

Y(t) : observations of the system, H : observation operator, Xb : background,

B and R : covariance matrices of background and observation errors respecti-

vely.

J(X0) =1

2(X0 −Xb)

T B−1(X0 −Xb)

+1

2

∫ T

0

[Y(t)−H(X(t))]T

R−1 [Y(t)−H(X(t))] dt

CEMRACS’13, CIRM - July 24, 2013 15/57

Page 17: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Optimality system

Optimization under constraints :

L (X0, X, P ) = J(X0) +

∫ T

0

⟨P ,

dX

dt− F (X)

⟩dt

Direct model :

dX

dt= F (X)

X(0) = X0

Adjoint model :

dP

dt=

[∂F

∂X

]T

P + HT R−1 [Y(t)−H(X(t))]

P (T ) = 0

Gradient of the cost-function :∂J

∂X0= B−1(X0 −Xb)− P (0)

Optimal solution : X0 = Xb + BP (0) [Le Dimet-Talagrand (86)]

CEMRACS’13, CIRM - July 24, 2013 16/57

Page 18: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

4D-VAR algorithm computation

4D-VAR algorithm :

Xk0

direct−→ Xk(t)

adjoint−→ P k(t)

Xk+10

descent←− ∇Jk = ∇J(Xk

0 )

Each iteration = one integration of the direct model + one integration of the

adjoint model.

Biggest issue : computation of the adjoint code ! ! !

Big issue : validation of the adjoint code

Smaller issue but still big : small number of iterations for operational DA

Smaller issue, ... actually really quite small : efficient optimization algo

CEMRACS’13, CIRM - July 24, 2013 17/57

Page 19: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Example

Quasi-geostrophic ocean model :

True solution 4D-VAR identified solution

True initial condition (left) and identified initial condition by the 4D-VAR

(right), for the upper layer.

CEMRACS’13, CIRM - July 24, 2013 18/57

Page 20: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Example

True solution 4D-VAR identified solution

True initial condition (left) and identified initial condition by the 4D-VAR

(right), for the bottom layer. [Luong-Blum-Verron (98), A.-Blum (04)]

CEMRACS’13, CIRM - July 24, 2013 19/57

Page 21: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

1. Data and models

2. Variational methods : 4D-VAR

3. Sequential methods : Kalman filter

4. Hybrid scheme : Back and Forth Nudging algorithm

5. Diffusive BFN algorithm

CEMRACS’13, CIRM - July 24, 2013 20/57

Page 22: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Kalman filter

The Kalman filter is a recursive filter that estimates the state of a dynamic

system from a series of incomplete and noisy measurements.

It is an extension to dynamical systems of the optimal interpolation, or BLUE

(Best Linear Unbiased Estimator) between the observation and the forecast

state.

Two steps, repeated for each observation time : prediction and correction.

CEMRACS’13, CIRM - July 24, 2013 21/57

Page 23: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Kalman filter

Kalman filter :

k − 2 k − 1 k t

state

xf

! yo

!

yo

!

yo

CEMRACS’13, CIRM - July 24, 2013 22/57

Page 24: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Kalman filter

Kalman filter :

k − 2 k − 1 k t

state

xf

! yo

xa

!

yo

!

yo

CEMRACS’13, CIRM - July 24, 2013 22/57

Page 25: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Kalman filter

Kalman filter :

k − 2 k − 1 k t

state

xf

! yo

xa

!

yo

xf

!

yo

CEMRACS’13, CIRM - July 24, 2013 22/57

Page 26: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Kalman filter

Kalman filter :

k − 2 k − 1 k t

state

xf

! yo

xa

!

yo

xf

xa

!

yo

CEMRACS’13, CIRM - July 24, 2013 22/57

Page 27: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Kalman filter

Kalman filter :

k − 2 k − 1 k t

state

xf

! yo

xa

!

yo

xf

xa

!

yo

xf

CEMRACS’13, CIRM - July 24, 2013 22/57

Page 28: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Kalman filter

Kalman filter :

k − 2 k − 1 k t

state

xf

! yo

xa

!

yo

xf

xa

!

yo

xf

xa

CEMRACS’13, CIRM - July 24, 2013 22/57

Page 29: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Prediction step

We denote by Xan the analyzed state at time tn, and Mn the system resolvent

from time tn to tn+1.

Prediction/forecast step : get a background state at time tn+1

Xfn+1 = MnXa

n

We denote by P fn the covariance matrix of forecast error Xf

n −Xtn and P a

n the

covariance matrix of analysis error Xan −Xt

n.

Pfn+1 = E

((Xf

n+1 −Xtn+1)(X

fn+1 −Xt

n+1)T)

= E((MnXa

n −MnXtn − εn)(MnXa

n −MnXtn − εn)T

)

Pfn+1 = MnP a

nMTn + Qn

where Qn is the model error covariance matrix at time tn.

CEMRACS’13, CIRM - July 24, 2013 23/57

Page 30: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Correction step

Analysis step : Correction of the background vector Xfn+1 with the innovation

vector Yn+1 −Hn+1Xfn+1 :

Xan+1 = X

fn+1 + Kn+1(Yn+1 −Hn+1X

fn+1)

The new analysis error ean+1 = Xa

n+1 −Xtn+1 is :

ean+1 = e

fn+1 + Kn+1(ǫn+1 −Hn+1e

fn+1)

where ǫ is the observation error (of covariance matrix R) and ef is the forecast

error (of covariance matrix P f ).

P an+1 = [I −Kn+1Hn+1]P

fn+1[I −Kn+1Hn+1]

T + Kn+1Rn+1KTn+1

One chooses Kn+1 such that the variance of analysis error is minimum :

Kn+1 = Pfn+1H

Tn+1[Hn+1P

fn+1H

Tn+1 + Rn+1]

−1

Then, P an+1 = [I −Kn+1Hn+1]P

fn+1

CEMRACS’13, CIRM - July 24, 2013 24/57

Page 31: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

KF algorithm

• Initialization :

Xf0 and P

f0 given

• Analysis :

Kn = P fn HT

n [HnP fn HT

n + Rn]−1

Xan = Xf

n + Kn(Yn −HnXfn)

P an = [I −KnHn]P f

n

(2)

• Forecast :

Xfn+1 = Mn;n+1X

an

Pfn+1 = Mn;n+1P

anMT

n;n+1 + Qn

CEMRACS’13, CIRM - July 24, 2013 25/57

Page 32: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Kalman filter

Computational cost of Kalman filter :

The Kalman filter assuming the dynamical model has n unknowns in the state

vector then error covariance matrix has n2 unknowns.

The evolution of the error covariance is very time consuming.

(remind that n ≃ 109. . .)

Thus KF in usual form can only be used for rather low dimensional dynamical

models (use of model reduction : POD, SVD, . . .).

The basic Kalman filter is limited to a linear assumption. However, most

non-trivial systems are non-linear. The non-linearity can be associated either

with the process model or with the observation model or with both.

⇒ extended Kalman filter, ensemble Kalman filter, reduced KF, local ensemble

KF, evolutive reduced extended local ensemble KF, . . .

interlude ”data assimilation for dummies”

CEMRACS’13, CIRM - July 24, 2013 26/57

Page 33: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

1. Data and models

2. Variational methods : 4D-VAR

3. Sequential methods : Kalman filter

4. Hybrid scheme : Back and Forth Nudging algorithm

5. Diffusive BFN algorithm

CEMRACS’13, CIRM - July 24, 2013 27/57

Page 34: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Forward nudging

Let us consider a model governed by a system of ODE :

dX

dt= F (X), 0 < t < T,

with an initial condition X(0) = x0.

Y(t) : observations of the system

H : observation operator.

dX

dt= F (X)+K(Y −H(X)), 0 < t < T,

X(0) = X0,

where K is the nudging (or gain) matrix.

In the linear case (where F is a matrix), the forward nudging is called

Luenberger or asymptotic observer.

CEMRACS’13, CIRM - July 24, 2013 28/57

Page 35: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Forward nudging

– Meteorology : Hoke-Anthes (1976)

– Oceanography (QG model) : De Mey et al. (1987), Verron-Holland (1989)

– Atmosphere (meso-scale) : Stauffer-Seaman (1990)

– Optimal determination of the nudging coefficients :

Zou-Navon-Le Dimet (1992), Stauffer-Bao (1993),

Vidard-Le Dimet-Piacentini (2003)

Lakshmivarahan-Lewis (2011)

CEMRACS’13, CIRM - July 24, 2013 29/57

Page 36: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Forward nudging : linear case

Luenberger observer, or asymptotic observer

(Luenberger, 1966)

dXtrue

dt= FXtrue, Y = HXtrue,

dX

dt= FX+K(Y −HX).

d

dt(X −Xtrue) = (F−KH)(X −Xtrue)

If F − KH is a Hurwitz matrix, i.e. its spectrum is strictly included in the

half-plane λ ∈ C; Re(λ) < 0, then X → Xtrue when t→ +∞.

CEMRACS’13, CIRM - July 24, 2013 30/57

Page 37: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Backward nudging

How to recover the initial state from the final solution ?

Backward model :

dX

dt= F (X), T > t > 0,

X(T ) = XT .

If we apply nudging to this backward model :

dX

dt= F (X)−K(Y −HX), T > t > 0,

X(T ) = XT .

CEMRACS’13, CIRM - July 24, 2013 31/57

Page 38: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

BFN : Back and Forth Nudging algorithm

Iterative algorithm (forward and backward resolutions) :

X0(0) = Xb (first guess)

dXk

dt= F (Xk)+K(Y −H(Xk))

Xk(0) = Xk−1(0)

dXk

dt= F (Xk)−K ′(Y −H(Xk))

Xk(T ) = Xk(T )

[A.-Blum, C. R. Acad. Sci. Math. 2005]

If Xk and Xk converge towards the same limit X, and if K = K ′, then X

satisfies the state equation and fits to the observations.

CEMRACS’13, CIRM - July 24, 2013 32/57

Page 39: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Choice of the direct nudging matrix K

Implicit discretization of the direct model equation with nudging :

Xn+1 −Xn

∆t= FXn+1 + K(Y −HXn+1).

Variational interpretation : direct nudging is a compromise between the mini-

mization of the energy of the system and the quadratic distance to the obser-

vations :

minX

[1

2〈X −Xn, X −Xn〉 −

∆t

2〈FX, X〉+

∆t

2〈R−1(Y −HX),Y −HX〉

],

by chosing

K = kHT R−1

where R is the covariance matrix of the errors of observation, and k is a scalar.

[A.-Blum, Nonlin. Proc. Geophys. 2008]

CEMRACS’13, CIRM - July 24, 2013 33/57

Page 40: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Choice of the backward nudging matrix K′

The feedback term has a double role :

• stabilization of the backward resolution of the model (irreversible system)

• feedback to the observations

If the system is observable, i.e. rank[H, HF, . . . , HFN−1] = N , then there

exists a matrix K ′ such that −F −K ′H is a Hurwitz matrix (pole assignment

method).

Simpler solution : one can define K ′ = k′HT R−1, where k′ is e.g. the smallest

value making the backward numerical integration stable.

CEMRACS’13, CIRM - July 24, 2013 34/57

Page 41: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Example of convergence results

Viscous linear transport equation :

∂tu− ν∂xxu + a(x)∂xu = −K(u− uobs), u(x, t = 0) = u0(x)

∂tu− ν∂xxu + a(x)∂xu = K ′(u− uobs), u(x, t = T ) = uT (x)

We set w(t) = u(t)− uobs(t) and w(t) = u(t)− uobs(t) the errors.

• If K and K ′ are constant, then ∀t ∈ [0, T ] : w(t) = e(−K−K′)(T−t)w(t)

(still true if the observation period does not cover [0, T ])

• If the domain is not fully observed, then the problem is ill-posed.

Error after k iterations : wk(0) = e−[(K+K′)kT ]w0(0)

exponential decrease of the error, thanks to :

• K + K ′ : infinite feedback to the observations (not physical)

• T : asymptotic observer (Luenberger)

• k : infinite number of iterations (BFN) [A.-Nodet, COCV 2012]

CEMRACS’13, CIRM - July 24, 2013 35/57

Page 42: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Observability condition

Let χ(x) be the time during which the characteristic curve with foot x lies in

the support of K. Then the system is observable if and only if minx

χ(x) > 0.

Partial observations in space : half of the domain is observed.

0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

x

T=0.5T=0.3T=0.15T=0.05

0 0.2 0.4 0.6 0.8 10

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2

x

T=1T=0.5T=0.3T=0.15T=0.05

Decrease rate of the error after one iteration of BFN as a function of the space

variable x, for various final times T .

Linear case (left) : theoretical observability condition = T > 0.5

Nonlinear case (right) : numerical observability condition = T > 1

CEMRACS’13, CIRM - July 24, 2013 36/57

Page 43: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Shallow water model

∂tu− (f + ζ)v + ∂xB =τx

ρ0h− ru + ν∆u

∂tv + (f + ζ)u + ∂yB =τy

ρ0h− rv + ν∆v

∂th + ∂x(hu) + ∂y(hv) = 0

• ζ = ∂xv − ∂yu is the relative vorticity ;

• B = g∗h +1

2(u2 + v

2) is the Bernoulli potential ;

• g∗ = 0.02 m.s−2 is the reduced gravity ;

• f = f0 + βy is the Coriolis parameter (in the β-plane approximation), with f0 =

7.10−5 s−1 and β = 2.10−11 m−1.s−1 ;

• τ = (τx, τy) is the forcing term of the model (e.g. the wind stress), with a maximum

amplitude of τ0 = 0.05 s−2 ;

• ρ0 = 103 kg.m−3 is the water density ;

• r = 9.10−8 s−1 is the friction coefficient.

• ν = 5 m2.s−1 is the viscosity (or dissipation) coefficient.

CEMRACS’13, CIRM - July 24, 2013 37/57

Page 44: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Shallow water model

2D shallow water model, state = height h and horizontal velocity (u, v)

Numerical parameters : (run example)

Domain : L = 2000 km × 2000 km ; Rigid boundary and no-slip BC ; Time

step = 1800 s ; Assimilation period : 15 days ; Forecast period : 15 + 45 days

Observations : of h only (∼ satellite obs), every 5 gridpoints in each space

direction, every 24 hours.

Background : true state one month before the beginning of the assimilation

period + white gaussian noise (∼ 10%)

Comparison BFN - 4DVAR : sea height h ; velocity :u and v.

CEMRACS’13, CIRM - July 24, 2013 38/57

Page 45: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Diffusion problem

Backward model and diffusion :

The main issue of the BFN is : how to handle diffusion processes in the

backward equation ?

Let us consider only diffusion : heat equation (in 1D)

∂tu = ∂xxu

The backward nudging model will be :

∂tu = ∂xxu+K(u− uobs)

from time T to 0. By using a change of variable t′ = T − t, we can rewrite the

backward model as a forward one :

∂t′ u = −∂xxu−K(u− uobs),

and we can see that even if the nudging term stabilizes the model, the backward

diffusion is a real issue (unbounded eigenvalues, except for discrete Laplacian).

CEMRACS’13, CIRM - July 24, 2013 39/57

Page 46: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

1. Data and models

2. Variational methods : 4D-VAR

3. Sequential methods : Kalman filter

4. Back and forth nudging algorithm

5. Diffusive BFN algorithm

CEMRACS’13, CIRM - July 24, 2013 40/57

Page 47: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Diffusive BFN

Diffusive free equations in the geophysical context :

In meteorology or oceanography, theoretical equations are usually diffusive

free (e.g. Euler’s equation for meteorological processes).

In a numerical framework, a diffusive term is added to the equations (or

a diffusive scheme is used), in order to both stabilize the numerical inte-

gration of the equations, and take into consideration some subscale phenomena.

Example : weather forecast is done with Euler’s equation (at least in Meteo

France. . .), which is diffusive free. Also, in quasi-geostrophic ocean models,

people usually consider ∇4 or ∇6 for dissipation at the bottom, or for vertical

mixing.

CEMRACS’13, CIRM - July 24, 2013 41/57

Page 48: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Diffusive BFN

Standard BFN algorithm :

Original model :

∂tX = F (X), 0 < t < T.

Corresponding BFN algorithm :

∂tXk = F (Xk)+K(Y −H(Xk)),

Xk(0) = Xk−1(0), 0 < t < T,

∂tXk = F (Xk)−K ′(Y −H(Xk)),

Xk(T ) = Xk(T ), T > t > 0,

with the notation X0(0) = x0.

CEMRACS’13, CIRM - July 24, 2013 42/57

Page 49: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Diffusive BFN

Addition of a diffusion term :

∂tX = F (X)+ν∆X, 0 < t < T,

where F has no diffusive terms, ν is the diffusion coefficient, and we assume

that the diffusion is a standard second-order Laplacian (could be a higher

order operator).

We introduce the D-BFN algorithm in this framework, for k ≥ 1 :

∂tXk = F (Xk)+ν∆Xk+K(Y −H(Xk)),

Xk(0) = Xk−1(0), 0 < t < T,

∂tXk = F (Xk)−ν∆Xk−K ′(Y −H(Xk)),

Xk(T ) = Xk(T ), T > t > 0.

CEMRACS’13, CIRM - July 24, 2013 43/57

Page 50: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Diffusive BFN

It is straightforward to see that the backward equation can be rewritten, using

t′ = T − t :

∂t′Xk = −F (Xk)+ν∆Xk+K ′(Y −H(Xk)), Xk(t′ = 0) = Xk(T ),

where X is evaluated at time t′. As it is now forward in time, this equation can

be compared with the forward nudging equation :

∂tXk = F (Xk)+ν∆Xk+K(Y −H(Xk)), Xk(0) = Xk−1(t′ = T ).

Then the backward equation can easily be solved, with an initial condition,

and the same diffusion operator as in the forward equation. Only the physical

model has an opposite sign.

The diffusion term both takes into account the subscale processes and stabilizes

the numerical backward integrations, and the feedback term still controls the

trajectory with the observations.

CEMRACS’13, CIRM - July 24, 2013 44/57

Page 51: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Linear transport equation

∂tu + a(x) ∂xu = 0, t ∈ [0, T ], x ∈ Ω, u(t = 0) = u0 ∈ L2(Ω)

with periodic boundary conditions, and we assume that a ∈W 1,∞(Ω).

Numerically, for both stability and subscale modelling, the following equation

would be solved :

∂tu + a(x) ∂xu = ν∂xxu, t ∈ [0, T ], x ∈ Ω, u(t = 0) = u0 ∈ L2(Ω),

where ν ≥ 0 is assumed to be constant.

CEMRACS’13, CIRM - July 24, 2013 45/57

Page 52: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Linear transport equation

Let us assume that the observations satisfy the physical model (without diffu-

sion) :

∂tuobs + a(x) ∂xuobs = 0, t ∈ [0, T ], x ∈ Ω, uobs(t = 0) = u0obs ∈ L2(Ω).

We assume in this idealized situation that the system is fully observed (and H

is then the identity operator).

Then the D-BFN algorithm applied to this problem gives, for k ≥ 1 :

∂tuk+a(x) ∂xuk = ν∂xxuk+K(uobs,k − uk),

t ∈ [2(k − 1)T, 2(k − 1)T + T ], x ∈ Ω

uk(2(k − 1)T, x) = uk−1(2(k − 1)T, x)

∂tuk−a(x) ∂xuk = ν∂xxuk+K(uobs,k − uk),

t ∈ [2kT − T, 2kT ], x ∈ Ω

uk(2kT − T, x) = uk(2kT − T, x).

CEMRACS’13, CIRM - July 24, 2013 46/57

Page 53: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Smoothing equation

At the limit k →∞, vk and vk tend to v∞(x) solution of

ν∂xxv∞ + K(u0obs(x)− v∞) = 0,

or equivalently

−ν

K∂xxv∞ + v∞ = u0

obs.

This equations is well known in signal or image processing, as being the

standard linear diffusion restoration equation. In some sense, v∞ is the

result of a smoothing process on the observations uobs, where the degree of

smoothness is given by the ratio νK

.

Convergence result for constant advection equation.

[A.-Blum-Nodet, CRAS 2011]

CEMRACS’13, CIRM - July 24, 2013 47/57

Page 54: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Numerical experiments

0 0.2 0.4 0.6 0.8 10

0.2

0.4

0.6

0.8

1

observationssmoothed observations

0 0.2 0.4 0.6 0.8 10

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

Time

RM

S e

rror

Initial condition of the observation

and corresponding smoothed solu-

tion ; RMS difference between the

BFN iterates and the smoothed ob-

servations ; same in semi-log scale.

Movie

0 0.2 0.4 0.6 0.8 1−4

−3

−2

−1

0

1

2

3

Time

Log

RM

S e

rror

CEMRACS’13, CIRM - July 24, 2013 48/57

Page 55: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Numerical experiments

Linear transport equation with non-constant transport :

0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1a

Movie

CEMRACS’13, CIRM - July 24, 2013 49/57

Page 56: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Full primitive ocean model

Primitive equations : Navier-Stokes equations (velocity-pressure), coupled

with two active tracers (temperature and salinity).

Momentum balance :

∂Uh

∂t= −

[(∇∧ U) ∧ U +

1

2∇(|U |2)

]

h

− f.z ∧ Uh −1

ρ0∇hp + DU + FU

Incompressibility equation : ∇.U = 0

Hydrostatic equilibrium :∂p

∂z= −ρg

Heat and salt conservation equations :∂T

∂t= −∇.(TU) + DT + FT (+ same for S)

Equation of state : ρ = ρ(T, S, p)

CEMRACS’13, CIRM - July 24, 2013 50/57

Page 57: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Full primitive ocean model

Free surface formulation : the height of the sea surface η is given by

∂η

∂t= −divh((H + η)Uh) + [P − E]

The surface pressure is given by : ps = ρgη.

This boundary condition is then used for integrating the hydrostatic equili-

brium and calculating the pressure.

Numerical experiments : double gyre circulation confined between closed

boundaries (similar to the shallow water model). The circulation is forced by a

sinusoidal (with latitude) zonal wind.

Twin experiments : observations are extracted from a reference run, accor-

ding to networks of realistic density : SSH is observed similarly to TO-

PEX/POSEIDON, and temperature is observed on a regular grid that mimics

the ARGO network density.

CEMRACS’13, CIRM - July 24, 2013 51/57

Page 58: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Full primitive ocean model

Example of observation network used in the assimilation : along-track altimetric

observations (Topex-Poseidon) of the SSH every 10 days ; vertical profiles of

temperature (ARGO float network) every 18 days.

CEMRACS’13, CIRM - July 24, 2013 52/57

Page 59: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Numerical results

0 2 4 6 8 10 12 14 16 18 200.005

0.01

0.015

0.02

0.025

0.03

0.035

temps (jours)

RM

S re

lativ

e −

Tem

pera

ture

Nudging direct 1Nudging retrograde 1Nudging direct 2Nudging retrograde 2Nudging direct 3Nudging retrograde 3Nudging direct 4Nudging retrograde 4Nudging direct 5Nudging retrograde 5Nudging direct 6Nudging retrograde 6

0 2 4 6 8 10 12 14 16 18 200.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1.1

1.2

temps (jours)R

MS

rela

tive

− u

Nudging direct 1Nudging retrograde 1Nudging direct 2Nudging retrograde 2Nudging direct 3Nudging retrograde 3Nudging direct 4Nudging retrograde 4Nudging direct 5Nudging retrograde 5Nudging direct 6Nudging retrograde 6

Relative RMS error of the temperature (left) and longitudinal velocity (right), 6

iterations of BFN (nudging terms in the temperature and SSH equations only), with

full and unnoisy SSH observations every day.

CEMRACS’13, CIRM - July 24, 2013 53/57

Page 60: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Numerical results

0 2 4 6 8 10 12 14 16 18 200.65

0.7

0.75

0.8

0.85

0.9

0.95

1

1.05

1.1

1.15

temps (jours)

RM

S r

ela

tive

− u

0 2 4 6 8 10 12 14 16 18 200.7

0.8

0.9

1

1.1

1.2

1.3

1.4

temps (jours)R

MS

re

lative

− v

Relative RMS error of the longitudinal and transversal velocities, 3 iterations of

BFN (nudging terms in the temperature and SSH equations only), with “realistic”

SSH observations (T/P track + 15% noise).

CEMRACS’13, CIRM - July 24, 2013 54/57

Page 61: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Conclusions

4D-VAR :

• Requires linearization of the model, computation of the adjoint state and

an optimization algorithm

• Requires covariance error matrices on observations and background.

• Model is a strong constraint

• Advantage : robustness and global optimization (reanalysis)

Kalman filtering :

• No adjoint state

• Drawback : huge error covariance matrices

• Ensemble Kalman filter becomes more realistic for the implementation

• Requires simulation of model errors

CEMRACS’13, CIRM - July 24, 2013 55/57

Page 62: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Conclusions

BFN :

• Easy implementation (no linearization, no adjoint state, no minimization

process)

• Very efficient in the first iterations

• Converges more rapidly than 4D-VAR

• Lower computational and memory costs than 4D-VAR

• Model is a weak constraint

• Excellent preconditioner for other DA methods

CEMRACS’13, CIRM - July 24, 2013 56/57

Page 63: Didier Auroux - École des ponts ParisTechcermics.enpc.fr/~lelievre/CEMRACS/slides/Auroux.pdf · 2013. 7. 30. · Didier Auroux University of Nice Sophia Antipolis France auroux@unice.fr

Thank you for your

attention !

CEMRACS’13, CIRM - July 24, 2013 57/57