Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

4D-VAR Incremental Analysis Update (IAU) #38

Merged
merged 2 commits into from
Aug 10, 2024
Merged

4D-VAR Incremental Analysis Update (IAU) #38

merged 2 commits into from
Aug 10, 2024

Conversation

hga007
Copy link
Collaborator

@hga007 hga007 commented Aug 10, 2024

Description

Since no dynamical balance constraint is imposed on the analysis increments computed during 4D-Var, the resulting geostrophic adjustment process at the beginning of the assimilation window can lead to the generation of large amplitude inertia-gravity waves, so-called initialization shocks. These waves typically dissipate within 12-24 hours and are not usually a concern for the physical circulations that develop at the end of the assimilation window. However, these inertia-gravity waves can be very detrimental for coupled biogeochemical configurations of ROMS or those that include sediment processes. Therefore, it is desirable to suppress the generation of inertia-gravity waves during the assimilation window to the maximum extent possible.

Initialization shock is a severe issue in numerical weather prediction (NWP), and mitigation attempts have a long history (e.g., Machenhaur,1977). Two common approaches used to minimize the influence of initialization shock in modern NWP systems are the application of a digital filter (Gauthier and Thépaut, 2001) and incremental analysis updates (IAU; Bloom et al., 1996), although under certain conditions, the two approaches are equivalent (Polavarapu et al., 2004).

IAU is straightforward to implement and has been included as an option in ROMS 4D-Var. Following the usual convention, we will denote by $𝒙(𝑡_k)$ the ocean state vector at time $𝑡_k$. Integration of the ROMS nonlinear model can then be represented as $𝒙(𝑡_{k+1}) = ℳ(𝒙(𝑡_k))$ where $ℳ$ represents the nonlinear model operators. Let $[𝑡_k−\tau, 𝑡_k]$ represent the 4D-Var data assimilation window of length $\tau$, where $𝑡_k$ is the current time. The usual practice in 4D-Var is to compute the analysis increment $\Delta 𝒙(𝑡_k − \tau)$ at the beginning of the analysis window and then integrate $𝒙(𝑡_k − \tau) + \Delta 𝒙(𝑡_k − \tau)$ forward in time to the end of the assimilation window using the nonlinear model $ℳ$. This occurs at the end of each 4D-Var outer loop. However, since no explicit dynamical balance constraints are imposed on $\Delta 𝒙(𝑡_k − \tau)$, the ensuing geostrophic adjustment process during the assimilation window $[𝑡_k − \tau, 𝑡_k]$ can lead to the generation of inertia-gravity waves as described above. Instead of adding the increment $\Delta 𝒙(𝑡_k − \tau)$ to the initial condition $𝒙(𝑡_k − \tau)$, the IAU approach imposes the increment as a forcing term in the nonlinear model so that:

$$𝒙(𝑡_{k+1}) = ℳ 𝒙(t_k)) + 𝒇(𝑡)$$

where $𝒇(𝑡) = \Delta 𝒙(𝑡_k − \tau)\Delta 𝑡/𝑇$ for $𝑡_k − \tau \leq 𝑡 \leq 𝑡_k− \tau + 𝑇$ and $𝒇(𝑡) = 0$ for $𝑡 > 𝑡_k − \tau + 𝑇$. In this way, the nonlinear model at the end of each outer loop can be gently steered toward the desired analysis increment over some time interval $[𝑡_k − \tau, 𝑡_k − \tau + 𝑇]$ during the assimilation window with the result that the initialization shock is greatly reduced. The size of the forcing term $𝒇(𝑡)$ each timestep $\Delta 𝑡$ depends on the choice of $𝑇$, which in turn influences the filtering properties of the IAU procedure. The IAU procedure, as implemented in ROMS, is illustrated in the figure below. Since the forcing amplitude is generally small, the response function resulting from IAU can be conveniently quantified using the tangent linear approximation described by Bloom et al. (1996). The connection between the IAU and the digital filter approach was explored by Polavarapu et al. (2004).

cropped

ROMS Implementation

In ROMS 4D-Var, the IAU is activated by the parameter timeIAU in s4dvar.in, where time_IAU represents $T$ in the equation for $𝒇(𝑡)$ introduced in above. If timeIAU=0, then the IAU is not applied, and the increment $\Delta 𝒙(𝑡_k − \tau)$ is added to the initial condition at the beginning of the analysis window as normal.

NOTE:

  • The IAU is only available for dual 4D-Var using the RBL4DVAR and SPLIT_RBL4DVAR algorithms. IAU is not currently implemented in the primal formulation of 4D-Var (I4DVAR).

  • If timeIAU $\neq$ 0, the IAU is activated in each outer-loop.

  • If running SPLIT_RBL4DVAR, the analysis phase can be run separately with different values of timeIAU but only if timeIAU was initially chosen as non-zero in the background and increment phases. This allows users to explore different choices of timeIAU without rerunning the inner loops.

Dependencies:

None. The ws_remove.sh script cleaned several files by removing white spaces after the text.

References:

  • Bloom, S.C., L.L. Takacs, A.M. da Silva and D. Ledvina, 1996: Data assimilation using incremental analysis updates, Mon. Wea. Rev., 124, 1256-1271.
  • Gauthier, P., and J.-N. Thépaut, 2001: Impact of the digital filter as a weak constraint in the preoperational 4DVAR assimilation system of Météo-France, Mon. Wea. Rev., 129, 2089–2102.
  • Machenhaur, B., 1977: On the dynamics of gravity oscillations in a shallow water model with
    application to non-linear initialization, Beit. Phys. Atmos., 50, 253-271.
  • Polavarparu, S., R. Shuzan, A.M. Clayton, D. Sankey and Y. Rochon, 2004: On the relationship
    between incremental analysis updating and incremental digital filtering, Mon. Wea. Rev., 132,
    2495-2502.

Many Thanks to Andy Moore for implementing this option and writing the documentation. Notice that the PDF file uses timIAU instead of timeIAU in the code.

ROMS_IAU_v2.pdf

@hga007 hga007 added the enhancement New feature or request label Aug 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants