Outline
What is data assimilation
Scalar case
Two state variables case
General case
Outline
What is data assimilation
Scalar case
Two state variables case
General case
Scalar Case
State variable to estimate x, e.g., consider
todays temperature of Boulder at 12 UTC.
Now we have a background (or prior)
information xb of x, which is from a 6-h GFS or
WRF forecast initiated from 06 UTC today.
We also have an observation y of x at a surface
station in Boulder
What is the best estimate (analysis) xa of x?
WRFDA Tutorial August 2016
Scalar Case
1
x
=
We can simply average them: a 2 (xb + y)
Scalar Case
Then we can do a weighted mean: xa = axb + by in
a least square sense, i.e.,
Minimize
J(x) =
dJ ( x )
Requires
dx
2
1 ( xxb )
2 b2
( xxb )
b2
xa =
o2
b2 + o2
xb +
2
1 ( xy)
2 o2
( xy)
o2
b2
b2 + o2
=0
xa xb =
b2
b2 + o2
(y xb )
Scalar Case
Minimize
J(x) =
2
(
xx
)
b
1
2 b2
2
(
xy)
1
2 o2
ce
J (x)
!
2
1
#
B=
# c 1 2
"
c 1 2
22
$
&
&
%
10
b
x x = 2
(y
x
1
1)
2
1 + o
c 1 2
a
b
b
x2 x2 = 2
(y
x
1
1)
2
1 + o
a
1
b
1
11
General Case
Observations
yo, ~105-106
Model state
x, ~107
12
observation vector
y
1
y2
y=
!
y
n
x1
x = x2
!
xm
background error covariance
!
2
1
#
# c12 1 2
B =#
#
#
"
$
c12 1 2 &
22
&
&
! &
m2 &%
!
#
#
R =#
#
#
"
o12
2
o2
!
0
$
0 &
0 &
&
" ! &
2 &
on
%
13
1
1
b T 1
b
J(x) = (x x ) B (x x ) + [Hx y]T R 1[Hx y]
2
2
H maps x to y space, e. g., interpolation.
Terminology in DA: observation operator
Minimize J(x) is equivalent to maximize a
multi-dimensional Gaussian PDF
Constant *
J (x)
14
x x = BH (HBH + R) [y Hx ]
HBHT : projection of background error covariance
in observation space
BHT : projection of background error covariance
in background-observation space
WRFDA Tutorial August 2016
15
Or in another form:
1
1
1
= 2+ 2
2
a b o
A = (I KH)B
With
T
K = BH (HBH + R)
called Kalman gain matrix
WRFDA Tutorial August 2016
16
17
clk l k
b
x x = 2
(yk xk )
2
k + ok
a
l
b
l
It is generalization of previous
two variables case:
12
b
x x = 2
(y
x
1
1)
2
1 + o
c 1 2
a
b
b
x2 x2 = 2
(y
x
1
1)
2
1 + o
a
1
b
1
cv_options=6 in WRFDA
18
Other Remarks
Observation operator can be non-linear and thus
analysis error PDF is not necessarily Gaussian
J(x) can have multiple local minima. Final solution of
least square depends on starting point of iteration, e.g.,
choose the background xb as the first guess.
19
Other Remarks
B matrix is of very large dimension, explicit inverse of B
is impossible, substantial efforts in data assimilation
were given to the estimation and modeling of B.
B shall be spatially-varied and time-evolving according
to weather regime.
Analysis can be sub-optimal if using inaccurate
estimate of B and R.
Could use non-Gaussian PDF
Thus not a least square cost function
Difficult (usually slow) to solve; could transform into Gaussian
problem via variable transform
WRFDA Tutorial August 2016
20
Outline
What is data assimilation
Scalar case
Two state variables case
General case
21
22
23
4DVAR
TL/Adjoint (i.e., WRFPlus code) of WRF up-to-date with WRF
Allow LBC control variable and Jc-DFI
Hybrid-3DEnVar
Can run in dual-resolution mode
Can ingest ensemble from global or regional sources
24
WRFDA Observations
In-Situ:
-
-
-
-
-
-
-
-
Bogus:
-
-
SYNOP
-
METAR
-
SHIP
-
BUOY
-
TEMP
-
PIBAL
AIREP, AIREP humidity -
-
TAMDAR
TC bogus
Global bogus
Radiances:
HIRS
AMSU-A
AMSU-B
MHS
AIRS
SSMIS
IASI
ATMS
MWTS
MWHS
SEVIRI
AMSR2
NCEP PrepBufr,
NCEP radiance bufr
25
WRFDA
Radiance Assimilation
Two RTM interfaces
RTTOV or CRTM
DMSP(SSMI/S)
26
Frequency
(GHz)
Polarization
Footprint
(along scan*
along track)
1,2
6.925
V,H
35*61 km
3,4
7.3
V,H
35*61 km
5,6
10.65
V,H
24*41 km
7,8
18.7
V,H
13*22 km
9,10
23.8
V,H
15*26 km
11,12
36.5
V,H
7*12 km
13,14
89.0
V,H
3*5 km
27
28
29
1
J(x0 ) = (x0
2
2.2
xb0 )T B 1 (x0
xb0 )
N
1X
+
[Hi (Mi (x0 ))
2 i=1
yi ] (1
Linearization, let x0 = x0
1
J( x0 ) = ( x0
2
xg0 )T B 1 (
1
xg0 )+
N
X
2 i=1
(1
2.3
xg0 )T B 1 (
x0
xg0 ) +
N
1X
(Hi Mi x0
2 i=1
di )T Ri 1 (Hi Mi x0
di ) (1
Again, control variable transform x0 = Uv and xg0 = Uvg . x0 indicates that analys
WRFDA Tutorial August 2016
increment is valid at the beginning
of the 4DVAR time window. Then the cost30functio
x1a
x1f
x1a
x1a
x a2
x a2
H(x 2f ), o
.
.
.
.
.
.
.
.
.
x1f
H(x1f ), o
x a2
.
.
.
a
N
x 2f
.
.
.
x 2f
.
.
.
x Nf
x Nf
x aN
x aN
H(x Nf ), o
Hybrid
Var+ETKF
xf
a
xVar
yo
3/4D-Var
n
W T 1 1
T
J=
v v+
a A a + [ d i Hi Mi Uv ] R i1 [ d i Hi Mi Uv ]
2
2
2 i=0
b
31
30/10/3.3/1.1-km
9km
3km
15km
synop
+ metar
ship
buoy
* sound
gpsref
profiler
airep
quikscat
SatWind
3km
32
12km
12km
4km
4km
15km
4km
12km
33
15KM
3KM
OBS
WRFDA
RADAR
34
35
36
37
38
H%(x, y, ) = H (x) b( y, )
0+ + 1+ w if w > 0
b( y, ) = n pn ( y ) =
n =0
0 + 1 w if w < 0
dp
w = , is updated in cost function each cycle and written in parameter table.
dt
N
39
TS
0.5
VarBC
0.4
0.3
0.2
0.1
0
0.05
0.1
0.25
0.5
1.25 Tutorial
1.5 August
1.75 2016 2
WRFDA
Precipitation (inch)
2.5
3.5
40
obs
No-GOES DA
GOES-DA
41
42
Last Remarks
We welcome contributions from external users/
developers.
Contact wrfhelp@ucar.edu or directly email to me
liuz@ucar.edu for contributing back your code
43