<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.myroms.org/wiki/index.php?action=history&amp;feed=atom&amp;title=I4DVAR_ANA_SENSITIVITY</id>
	<title>I4DVAR ANA SENSITIVITY - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.myroms.org/wiki/index.php?action=history&amp;feed=atom&amp;title=I4DVAR_ANA_SENSITIVITY"/>
	<link rel="alternate" type="text/html" href="https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;action=history"/>
	<updated>2026-04-27T17:28:13Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.42.3</generator>
	<entry>
		<id>https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;diff=5780&amp;oldid=prev</id>
		<title>Robertson: Text replacement - &quot;IS4DVAR&quot; to &quot;I4DVAR&quot;</title>
		<link rel="alternate" type="text/html" href="https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;diff=5780&amp;oldid=prev"/>
		<updated>2020-07-21T18:06:51Z</updated>

		<summary type="html">&lt;p&gt;Text replacement - &amp;quot;IS4DVAR&amp;quot; to &amp;quot;I4DVAR&amp;quot;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 18:06, 21 July 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l3&quot;&gt;Line 3:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 3:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;__TOC__&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;__TOC__&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Mathematical Formulation==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Mathematical Formulation==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The mathematical development presented here closely parallels that of [[Bibliography#ZhuY_2008a | Zhu and Gelaro (2008)]]. The sensitivity of any functional, &amp;lt;math&amp;gt;\cal J&amp;lt;/math&amp;gt;, of the analysis &amp;lt;math&amp;gt;\bf\Psi_a&amp;lt;/math&amp;gt; or forecast &amp;lt;math&amp;gt;\bf\Psi_f&amp;lt;/math&amp;gt; can be efficiently computed using the adjoint model which yields information about the gradients of &amp;lt;math&amp;gt;{\cal J}({\bf\Psi_a})&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;{\cal J}({\bf\Psi_f})&amp;lt;/math&amp;gt;. We can extent the concept of the adjoint sensitivity to compute the sensitivity of the [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4DVAR&lt;/del&gt;]] cost function, &amp;lt;math&amp;gt;J&amp;lt;/math&amp;gt;, in (1) and any other function &amp;lt;math&amp;gt;\cal J&amp;lt;/math&amp;gt; of the forecast &amp;lt;math&amp;gt;\bf\Psi_f&amp;lt;/math&amp;gt; to the observations, &amp;lt;math&amp;gt;\bf y&amp;lt;/math&amp;gt;.  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The mathematical development presented here closely parallels that of [[Bibliography#ZhuY_2008a | Zhu and Gelaro (2008)]]. The sensitivity of any functional, &amp;lt;math&amp;gt;\cal J&amp;lt;/math&amp;gt;, of the analysis &amp;lt;math&amp;gt;\bf\Psi_a&amp;lt;/math&amp;gt; or forecast &amp;lt;math&amp;gt;\bf\Psi_f&amp;lt;/math&amp;gt; can be efficiently computed using the adjoint model which yields information about the gradients of &amp;lt;math&amp;gt;{\cal J}({\bf\Psi_a})&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;{\cal J}({\bf\Psi_f})&amp;lt;/math&amp;gt;. We can extent the concept of the adjoint sensitivity to compute the sensitivity of the [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;I4DVAR&lt;/ins&gt;]] cost function, &amp;lt;math&amp;gt;J&amp;lt;/math&amp;gt;, in (1) and any other function &amp;lt;math&amp;gt;\cal J&amp;lt;/math&amp;gt; of the forecast &amp;lt;math&amp;gt;\bf\Psi_f&amp;lt;/math&amp;gt; to the observations, &amp;lt;math&amp;gt;\bf y&amp;lt;/math&amp;gt;.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;In [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4DVAR&lt;/del&gt;]], we define a quadratic cost function:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;In [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;I4DVAR&lt;/ins&gt;]], we define a quadratic cost function:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{| class=&amp;quot;eqno&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{| class=&amp;quot;eqno&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l23&quot;&gt;Line 23:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 23:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;where &amp;lt;math&amp;gt;\psi_a&amp;lt;/math&amp;gt; is referred to as the analysis increment, the desired solution of the incremental data assimilation procedure.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;where &amp;lt;math&amp;gt;\psi_a&amp;lt;/math&amp;gt; is referred to as the analysis increment, the desired solution of the incremental data assimilation procedure.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4DVAR&lt;/del&gt;]] analysis can be written in the more traditional form as &amp;lt;math&amp;gt;{\bf\Psi_a} = {\bf\Psi_b} + {\bf K} {\bf d}&amp;lt;/math&amp;gt; ([[Bibliography#DaleyR_1991a | Daley, 1991]]), where &amp;lt;math&amp;gt;\psi_a = {\bf K} {\bf d}&amp;lt;/math&amp;gt;, the Kalman gain matrix &amp;lt;math&amp;gt;{\bf K} = {\cal H}^{-1} {\bf G}^T {\bf O}^{-1}&amp;lt;/math&amp;gt;, and &amp;lt;math&amp;gt;{\cal H} = {\partial^{2}J}/{\partial\psi^2} = {\bf B}^{-1} {\bf G}^T {\bf O}^{-1} {\bf G}&amp;lt;/math&amp;gt; is the Hessian matrix. The entire [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4DVAR&lt;/del&gt;]] procedure is therefore neatly embodied in &amp;lt;math&amp;gt;\bf K&amp;lt;/math&amp;gt;. At the cost function minimum, (1) can be written as &amp;lt;math&amp;gt;J = \frac{1}{2} {\bf d}^T ({\bf I} - {\bf K}^T {\bf G}^T) {\bf O}^{-1} {\bf d}&amp;lt;/math&amp;gt; which yields the sensitivity of the [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4DVAR&lt;/del&gt;]] cost function to the observations.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;I4DVAR&lt;/ins&gt;]] analysis can be written in the more traditional form as &amp;lt;math&amp;gt;{\bf\Psi_a} = {\bf\Psi_b} + {\bf K} {\bf d}&amp;lt;/math&amp;gt; ([[Bibliography#DaleyR_1991a | Daley, 1991]]), where &amp;lt;math&amp;gt;\psi_a = {\bf K} {\bf d}&amp;lt;/math&amp;gt;, the Kalman gain matrix &amp;lt;math&amp;gt;{\bf K} = {\cal H}^{-1} {\bf G}^T {\bf O}^{-1}&amp;lt;/math&amp;gt;, and &amp;lt;math&amp;gt;{\cal H} = {\partial^{2}J}/{\partial\psi^2} = {\bf B}^{-1} {\bf G}^T {\bf O}^{-1} {\bf G}&amp;lt;/math&amp;gt; is the Hessian matrix. The entire [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;I4DVAR&lt;/ins&gt;]] procedure is therefore neatly embodied in &amp;lt;math&amp;gt;\bf K&amp;lt;/math&amp;gt;. At the cost function minimum, (1) can be written as &amp;lt;math&amp;gt;J = \frac{1}{2} {\bf d}^T ({\bf I} - {\bf K}^T {\bf G}^T) {\bf O}^{-1} {\bf d}&amp;lt;/math&amp;gt; which yields the sensitivity of the [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;I4DVAR&lt;/ins&gt;]] cost function to the observations.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;In the current [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4DVAR&lt;/del&gt;]]/[[LANCZOS]] data assimilation algorithm, the cost function minimum of (1) is identified using the Lanczos method  [[Bibliography#GolubG_1989a | (Golub and Van Loan, 1989)]], in which case:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;In the current [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;I4DVAR&lt;/ins&gt;]]/[[LANCZOS]] data assimilation algorithm, the cost function minimum of (1) is identified using the Lanczos method  [[Bibliography#GolubG_1989a | (Golub and Van Loan, 1989)]], in which case:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{| class=&amp;quot;eqno&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{| class=&amp;quot;eqno&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l32&quot;&gt;Line 32:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 32:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;where &amp;lt;math&amp;gt;{\bf Q}_k = ({\bf q}_i)&amp;lt;/math&amp;gt; is the matrix of &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt; orthogonal Lanczos vectors, and &amp;lt;math&amp;gt;{\bf T}_k&amp;lt;/math&amp;gt; is a known tridiagonal matrix. Each of the &amp;lt;math&amp;gt;k-&amp;lt;/math&amp;gt;iterations of [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4DVAR&lt;/del&gt;]] employed in finding the minimum of &amp;lt;math&amp;gt;J&amp;lt;/math&amp;gt; yields one column &amp;lt;math&amp;gt;{\bf q}_i&amp;lt;/math&amp;gt; of &amp;lt;math&amp;gt;{\bf Q}_k&amp;lt;/math&amp;gt;. From (3) we can identify the Kalman gain matrix as &amp;lt;math&amp;gt;{\bf K} = - {\bf Q}_k {\bf T}_{k}^{-1} {\bf Q}_{k}^{T} {\bf G}^T {\bf O}^{-1}&amp;lt;/math&amp;gt; in which case &amp;lt;math&amp;gt;{\bf K}^T = - {\bf O}^{-1} {\bf G} {\bf Q}_k {\bf T}_{k}^{-1} {\bf Q}_{k}^{T}&amp;lt;/math&amp;gt; represents the adjoint of the entire [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4DVAR&lt;/del&gt;]] system. The action of &amp;lt;math&amp;gt;{\bf K}^T&amp;lt;/math&amp;gt; on the vector &amp;lt;math&amp;gt;{\bf G}^T {\bf O}^{-1} {\bf d}&amp;lt;/math&amp;gt; in (3) can be readily computed since the Lanczos vectors &amp;lt;math&amp;gt;{\bf q}_i&amp;lt;/math&amp;gt; and the matrix &amp;lt;math&amp;gt;{\bf T}_k&amp;lt;/math&amp;gt; are available at the end of each [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4DVAR&lt;/del&gt;]] assimilation cycle.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;where &amp;lt;math&amp;gt;{\bf Q}_k = ({\bf q}_i)&amp;lt;/math&amp;gt; is the matrix of &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt; orthogonal Lanczos vectors, and &amp;lt;math&amp;gt;{\bf T}_k&amp;lt;/math&amp;gt; is a known tridiagonal matrix. Each of the &amp;lt;math&amp;gt;k-&amp;lt;/math&amp;gt;iterations of [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;I4DVAR&lt;/ins&gt;]] employed in finding the minimum of &amp;lt;math&amp;gt;J&amp;lt;/math&amp;gt; yields one column &amp;lt;math&amp;gt;{\bf q}_i&amp;lt;/math&amp;gt; of &amp;lt;math&amp;gt;{\bf Q}_k&amp;lt;/math&amp;gt;. From (3) we can identify the Kalman gain matrix as &amp;lt;math&amp;gt;{\bf K} = - {\bf Q}_k {\bf T}_{k}^{-1} {\bf Q}_{k}^{T} {\bf G}^T {\bf O}^{-1}&amp;lt;/math&amp;gt; in which case &amp;lt;math&amp;gt;{\bf K}^T = - {\bf O}^{-1} {\bf G} {\bf Q}_k {\bf T}_{k}^{-1} {\bf Q}_{k}^{T}&amp;lt;/math&amp;gt; represents the adjoint of the entire [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;I4DVAR&lt;/ins&gt;]] system. The action of &amp;lt;math&amp;gt;{\bf K}^T&amp;lt;/math&amp;gt; on the vector &amp;lt;math&amp;gt;{\bf G}^T {\bf O}^{-1} {\bf d}&amp;lt;/math&amp;gt; in (3) can be readily computed since the Lanczos vectors &amp;lt;math&amp;gt;{\bf q}_i&amp;lt;/math&amp;gt; and the matrix &amp;lt;math&amp;gt;{\bf T}_k&amp;lt;/math&amp;gt; are available at the end of each [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;I4DVAR&lt;/ins&gt;]] assimilation cycle.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Therefore, the basic observation sensitivity algorithm is as follows:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Therefore, the basic observation sensitivity algorithm is as follows:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l48&quot;&gt;Line 48:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 48:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;which again can be readily evaluated using the adjoint model denoted by &amp;lt;math&amp;gt;{\bf R}^{T}(t,t_0+\tau)&amp;lt;/math&amp;gt; and the adjoint of [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4DVAR&lt;/del&gt;]], &amp;lt;math&amp;gt;{\bf K}^{T}&amp;lt;/math&amp;gt;.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;which again can be readily evaluated using the adjoint model denoted by &amp;lt;math&amp;gt;{\bf R}^{T}(t,t_0+\tau)&amp;lt;/math&amp;gt; and the adjoint of [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;I4DVAR&lt;/ins&gt;]], &amp;lt;math&amp;gt;{\bf K}^{T}&amp;lt;/math&amp;gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Technical Description==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Technical Description==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This ROMS driver can be used to evaluate the impact of each observation on the [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4DVAR&lt;/del&gt;]] data assimilation algorithm by measuring their sensitivity over a specified circulation functional index, &amp;lt;math&amp;gt;{\cal J}&amp;lt;/math&amp;gt;. This algorithm is an extension of the adjoint sensitivity driver, [[AD_SENSITIVITY]]. As mentioned above, this algorithm is equivalent to taking the adjoint of the [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4DVAR&lt;/del&gt;]] algorithm.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This ROMS driver can be used to evaluate the impact of each observation on the [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;I4DVAR&lt;/ins&gt;]] data assimilation algorithm by measuring their sensitivity over a specified circulation functional index, &amp;lt;math&amp;gt;{\cal J}&amp;lt;/math&amp;gt;. This algorithm is an extension of the adjoint sensitivity driver, [[AD_SENSITIVITY]]. As mentioned above, this algorithm is equivalent to taking the adjoint of the [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;I4DVAR&lt;/ins&gt;]] algorithm.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The following steps are carried out in [[obs_sen_is4dvar.h]]:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The following steps are carried out in [[obs_sen_is4dvar.h]]:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l58&quot;&gt;Line 58:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 58:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;ol style=&amp;quot;list-style-type:lower-roman&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;ol style=&amp;quot;list-style-type:lower-roman&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;We begin by running the incremental strong constraint 4DVar data assimilation algorithm ([[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4DVAR&lt;/del&gt;]]) with the Lanczos conjugate gradient minimization algorithm ([[LANCZOS]]) using &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt; inner-loops (&amp;lt;math&amp;gt;\text{Ninner}=k&amp;lt;/math&amp;gt;) and a single outer-loop (&amp;lt;math&amp;gt;\text{Nouter}=1&amp;lt;/math&amp;gt;) for the period &amp;lt;math&amp;gt;t=[t_0,t_1]&amp;lt;/math&amp;gt;. We will denote by &amp;lt;math&amp;gt;{\bf\Psi_b}(t_0)&amp;lt;/math&amp;gt; the background initial condition, and the observations vector by &amp;lt;math&amp;gt;\bf y&amp;lt;/math&amp;gt;.  The resulting Lanczos vectors that we save in the adjoint NetCDF file will be denoted by &amp;lt;math&amp;gt;{\bf q}_i&amp;lt;/math&amp;gt;, where &amp;lt;math&amp;gt;i=1,2,\ldots,k&amp;lt;/math&amp;gt;.&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;We begin by running the incremental strong constraint 4DVar data assimilation algorithm ([[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;I4DVAR&lt;/ins&gt;]]) with the Lanczos conjugate gradient minimization algorithm ([[LANCZOS]]) using &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt; inner-loops (&amp;lt;math&amp;gt;\text{Ninner}=k&amp;lt;/math&amp;gt;) and a single outer-loop (&amp;lt;math&amp;gt;\text{Nouter}=1&amp;lt;/math&amp;gt;) for the period &amp;lt;math&amp;gt;t=[t_0,t_1]&amp;lt;/math&amp;gt;. We will denote by &amp;lt;math&amp;gt;{\bf\Psi_b}(t_0)&amp;lt;/math&amp;gt; the background initial condition, and the observations vector by &amp;lt;math&amp;gt;\bf y&amp;lt;/math&amp;gt;.  The resulting Lanczos vectors that we save in the adjoint NetCDF file will be denoted by &amp;lt;math&amp;gt;{\bf q}_i&amp;lt;/math&amp;gt;, where &amp;lt;math&amp;gt;i=1,2,\ldots,k&amp;lt;/math&amp;gt;.&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;Next we run the nonlinear model for the combined assimilation plus forecast period &amp;lt;math&amp;gt;t=[t_0,t_2]&amp;lt;/math&amp;gt;, where &amp;lt;math&amp;gt;t_2\geq t_1&amp;lt;/math&amp;gt;. This represents the final sweep of the nonlinear model for the period &amp;lt;math&amp;gt;t=[t_0,t_1]&amp;lt;/math&amp;gt; after exiting the inner-loop in the [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4DVAR&lt;/del&gt;]] plus the forecast period &amp;lt;math&amp;gt;t=[t_1,t-2]&amp;lt;/math&amp;gt;. The initial condition for the nonlinear mode at &amp;lt;math&amp;gt;t=t_0&amp;lt;/math&amp;gt; is &amp;lt;math&amp;gt;{\bf\Psi_b}(t_0)&amp;lt;/math&amp;gt; and not the new estimated initial conditions, &amp;lt;math&amp;gt;{\bf\Psi}(t_0) = {\bf\Psi_b}(t_0) + \psi(t_0)&amp;lt;/math&amp;gt;. We save the basic state trajectory, &amp;lt;math&amp;gt;{\bf\Psi_b}(t)&amp;lt;/math&amp;gt;, of this nonlinear model run for use in the adjoint sensitivity calculation next, and for use in the tangent linear model run later in step (vii). Depending on time for which the sensitivity functional &amp;lt;math&amp;gt;{\cal J}(t)&amp;lt;/math&amp;gt; is defined, this will dictate &amp;lt;math&amp;gt;t_2&amp;lt;/math&amp;gt;. For example, if &amp;lt;math&amp;gt;{\cal J}(t)&amp;lt;/math&amp;gt; is a functional defined during the forecast interval &amp;lt;math&amp;gt;t_1&amp;lt;t&amp;lt;t_2&amp;lt;/math&amp;gt;, then &amp;lt;math&amp;gt;t_2&amp;gt;t_1&amp;lt;/math&amp;gt; for this run of the nonlinear model. However, if &amp;lt;math&amp;gt;{\cal J}(t)&amp;lt;/math&amp;gt; is defined during the assimilation interval &amp;lt;math&amp;gt;t_0&amp;lt;t&amp;lt;t_1&amp;lt;/math&amp;gt;, then &amp;lt;math&amp;gt;t_2=t_1&amp;lt;/math&amp;gt;. That is, the definition of &amp;lt;math&amp;gt;t_2&amp;lt;/math&amp;gt; should be flexible depending on the choice of &amp;lt;math&amp;gt;\cal J&amp;lt;/math&amp;gt;.&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;Next we run the nonlinear model for the combined assimilation plus forecast period &amp;lt;math&amp;gt;t=[t_0,t_2]&amp;lt;/math&amp;gt;, where &amp;lt;math&amp;gt;t_2\geq t_1&amp;lt;/math&amp;gt;. This represents the final sweep of the nonlinear model for the period &amp;lt;math&amp;gt;t=[t_0,t_1]&amp;lt;/math&amp;gt; after exiting the inner-loop in the [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;I4DVAR&lt;/ins&gt;]] plus the forecast period &amp;lt;math&amp;gt;t=[t_1,t-2]&amp;lt;/math&amp;gt;. The initial condition for the nonlinear mode at &amp;lt;math&amp;gt;t=t_0&amp;lt;/math&amp;gt; is &amp;lt;math&amp;gt;{\bf\Psi_b}(t_0)&amp;lt;/math&amp;gt; and not the new estimated initial conditions, &amp;lt;math&amp;gt;{\bf\Psi}(t_0) = {\bf\Psi_b}(t_0) + \psi(t_0)&amp;lt;/math&amp;gt;. We save the basic state trajectory, &amp;lt;math&amp;gt;{\bf\Psi_b}(t)&amp;lt;/math&amp;gt;, of this nonlinear model run for use in the adjoint sensitivity calculation next, and for use in the tangent linear model run later in step (vii). Depending on time for which the sensitivity functional &amp;lt;math&amp;gt;{\cal J}(t)&amp;lt;/math&amp;gt; is defined, this will dictate &amp;lt;math&amp;gt;t_2&amp;lt;/math&amp;gt;. For example, if &amp;lt;math&amp;gt;{\cal J}(t)&amp;lt;/math&amp;gt; is a functional defined during the forecast interval &amp;lt;math&amp;gt;t_1&amp;lt;t&amp;lt;t_2&amp;lt;/math&amp;gt;, then &amp;lt;math&amp;gt;t_2&amp;gt;t_1&amp;lt;/math&amp;gt; for this run of the nonlinear model. However, if &amp;lt;math&amp;gt;{\cal J}(t)&amp;lt;/math&amp;gt; is defined during the assimilation interval &amp;lt;math&amp;gt;t_0&amp;lt;t&amp;lt;t_1&amp;lt;/math&amp;gt;, then &amp;lt;math&amp;gt;t_2=t_1&amp;lt;/math&amp;gt;. That is, the definition of &amp;lt;math&amp;gt;t_2&amp;lt;/math&amp;gt; should be flexible depending on the choice of &amp;lt;math&amp;gt;\cal J&amp;lt;/math&amp;gt;.&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;The next step involves an adjoint sensitivity calculation for the combined assimilation plus forecast period &amp;lt;math&amp;gt;t=[t_2,t_0]&amp;lt;/math&amp;gt;. The basic state trajectory for this calculation will be that from the nonlinear model run in step (ii).&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;The next step involves an adjoint sensitivity calculation for the combined assimilation plus forecast period &amp;lt;math&amp;gt;t=[t_2,t_0]&amp;lt;/math&amp;gt;. The basic state trajectory for this calculation will be that from the nonlinear model run in step (ii).&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;After running the regular adjoint sensitivity calculation in (iii), we will have a full 3D-adjoint state vector at time &amp;lt;math&amp;gt;t=t_0&amp;lt;/math&amp;gt;. Let&#039;s call this vector &amp;lt;math&amp;gt;\psi^\dagger(t_0)&amp;lt;/math&amp;gt;. The next thing we want to do is to compute the dot-product of &amp;lt;math&amp;gt;\psi^\dagger(t_0)&amp;lt;/math&amp;gt; with each of the Lanczos vectors from the previous [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4DVAR&lt;/del&gt;]] run. So if we ran [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4DVAR&lt;/del&gt;]] with &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt; inner-loops, we will have &amp;lt;math&amp;gt;k-&amp;lt;/math&amp;gt;Lanczos vectors which we denote as &amp;lt;math&amp;gt;{\bf q}_i&amp;lt;/math&amp;gt; where &amp;lt;math&amp;gt;i=1,2,\ldots,k&amp;lt;/math&amp;gt;. So we will compute &amp;lt;math&amp;gt;a_i = \psi^T {\bf q}_i&amp;lt;/math&amp;gt; where &amp;lt;math&amp;gt;\psi^T&amp;lt;/math&amp;gt; is the transpose of the vector &amp;lt;math&amp;gt;\psi^\dagger(t_0)&amp;lt;/math&amp;gt;, and &amp;lt;math&amp;gt;a_i&amp;lt;/math&amp;gt; for &amp;lt;math&amp;gt;i=1,2,\ldots,k&amp;lt;/math&amp;gt; are scalars, so there will be &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt; of them.&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;After running the regular adjoint sensitivity calculation in (iii), we will have a full 3D-adjoint state vector at time &amp;lt;math&amp;gt;t=t_0&amp;lt;/math&amp;gt;. Let&#039;s call this vector &amp;lt;math&amp;gt;\psi^\dagger(t_0)&amp;lt;/math&amp;gt;. The next thing we want to do is to compute the dot-product of &amp;lt;math&amp;gt;\psi^\dagger(t_0)&amp;lt;/math&amp;gt; with each of the Lanczos vectors from the previous [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;I4DVAR&lt;/ins&gt;]] run. So if we ran [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;I4DVAR&lt;/ins&gt;]] with &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt; inner-loops, we will have &amp;lt;math&amp;gt;k-&amp;lt;/math&amp;gt;Lanczos vectors which we denote as &amp;lt;math&amp;gt;{\bf q}_i&amp;lt;/math&amp;gt; where &amp;lt;math&amp;gt;i=1,2,\ldots,k&amp;lt;/math&amp;gt;. So we will compute &amp;lt;math&amp;gt;a_i = \psi^T {\bf q}_i&amp;lt;/math&amp;gt; where &amp;lt;math&amp;gt;\psi^T&amp;lt;/math&amp;gt; is the transpose of the vector &amp;lt;math&amp;gt;\psi^\dagger(t_0)&amp;lt;/math&amp;gt;, and &amp;lt;math&amp;gt;a_i&amp;lt;/math&amp;gt; for &amp;lt;math&amp;gt;i=1,2,\ldots,k&amp;lt;/math&amp;gt; are scalars, so there will be &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt; of them.&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;The next step is to invert the tridiagonal matrix associated with the Lanczos vectors. Let&amp;#039;s denote this matrix as &amp;lt;math&amp;gt;\bf T&amp;lt;/math&amp;gt;. So what we want to solve &amp;lt;math&amp;gt;{\bf T}{\bf b}={\bf a}&amp;lt;/math&amp;gt;, where &amp;lt;math&amp;gt;\bf a&amp;lt;/math&amp;gt; is the &amp;lt;math&amp;gt;k\times 1&amp;lt;/math&amp;gt; vector of scalars &amp;lt;math&amp;gt;a_i&amp;lt;/math&amp;gt; from step (iv), and &amp;lt;math&amp;gt;\bf b&amp;lt;/math&amp;gt; is the &amp;lt;math&amp;gt;k\times 1&amp;lt;/math&amp;gt; vector that we want to find. So we solve for &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; by using a tridiagonal solver.&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;The next step is to invert the tridiagonal matrix associated with the Lanczos vectors. Let&amp;#039;s denote this matrix as &amp;lt;math&amp;gt;\bf T&amp;lt;/math&amp;gt;. So what we want to solve &amp;lt;math&amp;gt;{\bf T}{\bf b}={\bf a}&amp;lt;/math&amp;gt;, where &amp;lt;math&amp;gt;\bf a&amp;lt;/math&amp;gt; is the &amp;lt;math&amp;gt;k\times 1&amp;lt;/math&amp;gt; vector of scalars &amp;lt;math&amp;gt;a_i&amp;lt;/math&amp;gt; from step (iv), and &amp;lt;math&amp;gt;\bf b&amp;lt;/math&amp;gt; is the &amp;lt;math&amp;gt;k\times 1&amp;lt;/math&amp;gt; vector that we want to find. So we solve for &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; by using a tridiagonal solver.&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;The next step is to compute a weighted sum of the Lanczos vectors. Let&amp;#039;s call this &amp;lt;math&amp;gt;\bf z&amp;lt;/math&amp;gt;, where &amp;lt;math&amp;gt;{\bf z} = \sum_i (b_i {\bf q}_i)&amp;lt;/math&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;The next step is to compute a weighted sum of the Lanczos vectors. Let&amp;#039;s call this &amp;lt;math&amp;gt;\bf z&amp;lt;/math&amp;gt;, where &amp;lt;math&amp;gt;{\bf z} = \sum_i (b_i {\bf q}_i)&amp;lt;/math&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  for &amp;lt;math&amp;gt;i=1,2,\ldots,k&amp;lt;/math&amp;gt;. The &amp;lt;math&amp;gt;b_i&amp;lt;/math&amp;gt; are obtained from solving the tridiagonal equation in (v), and the &amp;lt;math&amp;gt;{\bf q}_i&amp;lt;/math&amp;gt; are the Lanczos vectors. The vector &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt; is a full-state vector and be used as an initial condition for the tangent linear model in step (vii).&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  for &amp;lt;math&amp;gt;i=1,2,\ldots,k&amp;lt;/math&amp;gt;. The &amp;lt;math&amp;gt;b_i&amp;lt;/math&amp;gt; are obtained from solving the tridiagonal equation in (v), and the &amp;lt;math&amp;gt;{\bf q}_i&amp;lt;/math&amp;gt; are the Lanczos vectors. The vector &amp;lt;math&amp;gt;z&amp;lt;/math&amp;gt; is a full-state vector and be used as an initial condition for the tangent linear model in step (vii).&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;Finally, we run the tangent linear model from &amp;lt;math&amp;gt;t=[t_0,t_1]&amp;lt;/math&amp;gt; using &amp;lt;math&amp;gt;\bf z&amp;lt;/math&amp;gt; from (vi) as the initial conditions. During this run of the tangent linear model, we need to read and process the observations &amp;lt;math&amp;gt;\bf y&amp;lt;/math&amp;gt; that we used in the [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4DVAR&lt;/del&gt;]] of step 1 and write the solution at the observation points and times to the [[MODname]] NetCDF file. The values that we write into this [[MODname]] are actually the values multiplied by error covariance &amp;lt;math&amp;gt;-{\bf O}^{-1}&amp;lt;/math&amp;gt; assigned to each observation during the &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4DVAR &lt;/del&gt;in step (i).&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;Finally, we run the tangent linear model from &amp;lt;math&amp;gt;t=[t_0,t_1]&amp;lt;/math&amp;gt; using &amp;lt;math&amp;gt;\bf z&amp;lt;/math&amp;gt; from (vi) as the initial conditions. During this run of the tangent linear model, we need to read and process the observations &amp;lt;math&amp;gt;\bf y&amp;lt;/math&amp;gt; that we used in the [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;I4DVAR&lt;/ins&gt;]] of step 1 and write the solution at the observation points and times to the [[MODname]] NetCDF file. The values that we write into this [[MODname]] are actually the values multiplied by error covariance &amp;lt;math&amp;gt;-{\bf O}^{-1}&amp;lt;/math&amp;gt; assigned to each observation during the &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;I4DVAR &lt;/ins&gt;in step (i).&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/ol&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/ol&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Robertson</name></author>
	</entry>
	<entry>
		<id>https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;diff=5775&amp;oldid=prev</id>
		<title>Robertson at 19:10, 20 July 2020</title>
		<link rel="alternate" type="text/html" href="https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;diff=5775&amp;oldid=prev"/>
		<updated>2020-07-20T19:10:00Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:10, 20 July 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{#lst:Options|&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;I4DVAR_ANA_SENSITIVTY&lt;/del&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{#lst:Options|&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;I4DVAR_ANA_SENSITIVITY&lt;/ins&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;__TOC__&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;__TOC__&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Robertson</name></author>
	</entry>
	<entry>
		<id>https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;diff=5772&amp;oldid=prev</id>
		<title>Robertson: Robertson moved page I4DVAR ANA SENSITIVTY to I4DVAR ANA SENSITIVITY without leaving a redirect: Name title typo</title>
		<link rel="alternate" type="text/html" href="https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;diff=5772&amp;oldid=prev"/>
		<updated>2020-07-20T19:08:09Z</updated>

		<summary type="html">&lt;p&gt;Robertson moved page &lt;a href=&quot;/wiki/index.php?title=I4DVAR_ANA_SENSITIVTY&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;I4DVAR ANA SENSITIVTY (page does not exist)&quot;&gt;I4DVAR ANA SENSITIVTY&lt;/a&gt; to &lt;a href=&quot;/wiki/I4DVAR_ANA_SENSITIVITY&quot; title=&quot;I4DVAR ANA SENSITIVITY&quot;&gt;I4DVAR ANA SENSITIVITY&lt;/a&gt; without leaving a redirect: Name title typo&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:08, 20 July 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Robertson</name></author>
	</entry>
	<entry>
		<id>https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;diff=5770&amp;oldid=prev</id>
		<title>Robertson at 19:02, 20 July 2020</title>
		<link rel="alternate" type="text/html" href="https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;diff=5770&amp;oldid=prev"/>
		<updated>2020-07-20T19:02:16Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:02, 20 July 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{#lst:Options|&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4DVAR_SENSITIVITY&lt;/del&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{#lst:Options|&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;I4DVAR_ANA_SENSITIVTY&lt;/ins&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;__TOC__&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;__TOC__&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Robertson</name></author>
	</entry>
	<entry>
		<id>https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;diff=5768&amp;oldid=prev</id>
		<title>Robertson: Robertson moved page IS4DVAR SENSITIVITY to I4DVAR ANA SENSITIVTY: Option renamed in SVN revision 1022</title>
		<link rel="alternate" type="text/html" href="https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;diff=5768&amp;oldid=prev"/>
		<updated>2020-07-20T18:57:07Z</updated>

		<summary type="html">&lt;p&gt;Robertson moved page &lt;a href=&quot;/wiki/IS4DVAR_SENSITIVITY&quot; class=&quot;mw-redirect&quot; title=&quot;IS4DVAR SENSITIVITY&quot;&gt;IS4DVAR SENSITIVITY&lt;/a&gt; to &lt;a href=&quot;/wiki/index.php?title=I4DVAR_ANA_SENSITIVTY&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;I4DVAR ANA SENSITIVTY (page does not exist)&quot;&gt;I4DVAR ANA SENSITIVTY&lt;/a&gt;: Option renamed in SVN revision 1022&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 18:57, 20 July 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Robertson</name></author>
	</entry>
	<entry>
		<id>https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;diff=5217&amp;oldid=prev</id>
		<title>Robertson at 01:35, 18 May 2016</title>
		<link rel="alternate" type="text/html" href="https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;diff=5217&amp;oldid=prev"/>
		<updated>2016-05-18T01:35:28Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;amp;diff=5217&amp;amp;oldid=3820&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Robertson</name></author>
	</entry>
	<entry>
		<id>https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;diff=3820&amp;oldid=prev</id>
		<title>Robertson at 19:29, 8 January 2010</title>
		<link rel="alternate" type="text/html" href="https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;diff=3820&amp;oldid=prev"/>
		<updated>2010-01-08T19:29:45Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:29, 8 January 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{#lst:Options|&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;OBS_SENSITIVITY&lt;/del&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{#lst:Options|&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4DVAR_SENSITIVITY&lt;/ins&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;__TOC__&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;__TOC__&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l41&quot;&gt;Line 41:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 41:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;wikitex&amp;gt;This ROMS driver can be used to evaluate the impact of each observation on the [[IS4DVAR]] data assimilation algorithm by measuring their sensitivity over a specified circulation functional index, ${\cal J}$. This algorithm is an extension of the adjoint sensitivity driver, [[AD_SENSITIVITY]]. As mentioned above, this algorithm is equivalent to taking the adjoint of the  [[IS4DVAR]] algorithm.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;wikitex&amp;gt;This ROMS driver can be used to evaluate the impact of each observation on the [[IS4DVAR]] data assimilation algorithm by measuring their sensitivity over a specified circulation functional index, ${\cal J}$. This algorithm is an extension of the adjoint sensitivity driver, [[AD_SENSITIVITY]]. As mentioned above, this algorithm is equivalent to taking the adjoint of the  [[IS4DVAR]] algorithm.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The following steps are carried out in [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;obs_sen_ocean&lt;/del&gt;.h]]:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The following steps are carried out in [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;obs_sen_is4dvar&lt;/ins&gt;.h]]:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;:[[Image:obs_sens_time_diagram.png]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;:[[Image:obs_sens_time_diagram.png]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;ol style=&amp;quot;list-style-type:lower-roman&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;ol style=&amp;quot;list-style-type:lower-roman&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;We begin by running the incremental strong constraint 4DVar data assimilation algorithm ([[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4dVAR&lt;/del&gt;]]) with the Lanczos conjugate gradient minimization algorithm ([[LANCZOS]]) using $k$ inner-loops ($\hbox{Ninner}=k$) and a single outer-loop ($\hbox{Nouter}=1$) for the period $t=[t_0,t_1]$. We will denote by ${\bf\Psi_b}(t_0)$ the background initial condition, and the observations vector by $\bf y$.  The resulting Lanczos vectors that we save in the adjoint NetCDF file will be denoted by ${\bf q}_i$, where $i=1,2,\ldots,k$.&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;We begin by running the incremental strong constraint 4DVar data assimilation algorithm ([[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;IS4DVAR&lt;/ins&gt;]]) with the Lanczos conjugate gradient minimization algorithm ([[LANCZOS]]) using $k$ inner-loops ($\hbox{Ninner}=k$) and a single outer-loop ($\hbox{Nouter}=1$) for the period $t=[t_0,t_1]$. We will denote by ${\bf\Psi_b}(t_0)$ the background initial condition, and the observations vector by $\bf y$.  The resulting Lanczos vectors that we save in the adjoint NetCDF file will be denoted by ${\bf q}_i$, where $i=1,2,\ldots,k$.&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;Next we run the nonlinear model for the combined assimilation plus forecast period $t=[t_0,t_2]$, where $t_2\geq t_1$. This represents the final sweep of the nonlinear model for the period $t=[t_0,t_1]$ after exiting the inner-loop in the [[IS4DVAR]] plus the forecast period $t=[t_1,t-2]$. The initial condition for the nonlinear mode at $t=t_0$ is ${\bf\Psi_b}(t_0)$ and not the new estimated initial conditions, ${\bf\Psi}(t_0) = {\bf\Psi_b}(t_0) + \psi(t_0)$. We save the basic state trajectory, ${\bf\Psi_b}(t)$, of this nonlinear model run for use in the adjoint sensitivity calculation next, and for use in the tangent linear model run later in step (vii). Depending on time for which the sensitivity functional ${\cal J}(t)$ is defined, this will dictate $t_2$. For example, if ${\cal J}(t)$ is a functional defined during the forecast interval $t_1&amp;lt;t&amp;lt;t_2$, then $t_2&amp;gt;t_1$ for this run of the nonlinear model. However, if ${\cal J}(t)$ is defined during the assimilation interval $t_0&amp;lt;t&amp;lt;t_1$, then $t_2=t_1$. That is, the definition of $t_2$ should be flexible depending on the choice of $\cal J$.&amp;lt;/li&amp;gt;                                                     &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;Next we run the nonlinear model for the combined assimilation plus forecast period $t=[t_0,t_2]$, where $t_2\geq t_1$. This represents the final sweep of the nonlinear model for the period $t=[t_0,t_1]$ after exiting the inner-loop in the [[IS4DVAR]] plus the forecast period $t=[t_1,t-2]$. The initial condition for the nonlinear mode at $t=t_0$ is ${\bf\Psi_b}(t_0)$ and not the new estimated initial conditions, ${\bf\Psi}(t_0) = {\bf\Psi_b}(t_0) + \psi(t_0)$. We save the basic state trajectory, ${\bf\Psi_b}(t)$, of this nonlinear model run for use in the adjoint sensitivity calculation next, and for use in the tangent linear model run later in step (vii). Depending on time for which the sensitivity functional ${\cal J}(t)$ is defined, this will dictate $t_2$. For example, if ${\cal J}(t)$ is a functional defined during the forecast interval $t_1&amp;lt;t&amp;lt;t_2$, then $t_2&amp;gt;t_1$ for this run of the nonlinear model. However, if ${\cal J}(t)$ is defined during the assimilation interval $t_0&amp;lt;t&amp;lt;t_1$, then $t_2=t_1$. That is, the definition of $t_2$ should be flexible depending on the choice of $\cal J$.&amp;lt;/li&amp;gt;                                                     &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;The next step involves an adjoint sensitivity calculation for the combined assimilation plus forecast period $t=[t_2,t_0]$. The basic state trajectory for this calculation will be that from &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;  &lt;/del&gt;the nonlinear model run in step (ii).&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;The next step involves an adjoint sensitivity calculation for the combined assimilation plus forecast period $t=[t_2,t_0]$. The basic state trajectory for this calculation will be that from the nonlinear model run in step (ii).&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;After running the regular adjoint sensitivity calculation in (iii), we will have a full 3D-adjoint state vector at time $t=t_0$. Let&amp;#039;s call this vector $\psi^\dagger(t_0)$. The next thing we want to do is to compute the dot-product of $\psi^\dagger(t_0)$ with each of the Lanczos vectors from the previous [[IS4DVAR]] run. So if we ran [[IS4DVAR]] with $k$ inner-loops, we will have $k\hyphen$Lanczos vectors which we denote as ${\bf q}_i$ where $i=1,2,\ldots,k$. So we will compute $a_i = \psi^T {\bf q}_i$ where $\psi^T$ is the transpose of the vector $\psi^\dagger(t_0)$, and $a_i$ for $i=1,2,\ldots,k$ are scalars, so there will be $k$ of them.&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;After running the regular adjoint sensitivity calculation in (iii), we will have a full 3D-adjoint state vector at time $t=t_0$. Let&amp;#039;s call this vector $\psi^\dagger(t_0)$. The next thing we want to do is to compute the dot-product of $\psi^\dagger(t_0)$ with each of the Lanczos vectors from the previous [[IS4DVAR]] run. So if we ran [[IS4DVAR]] with $k$ inner-loops, we will have $k\hyphen$Lanczos vectors which we denote as ${\bf q}_i$ where $i=1,2,\ldots,k$. So we will compute $a_i = \psi^T {\bf q}_i$ where $\psi^T$ is the transpose of the vector $\psi^\dagger(t_0)$, and $a_i$ for $i=1,2,\ldots,k$ are scalars, so there will be $k$ of them.&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;The next step is to invert the tridiagonal matrix associated with the Lanczos vectors. Let&amp;#039;s denote this matrix as $\bf T$. So what we want to solve ${\bf T}{\bf b}={\bf a}$, where $\bf a$ is the $k\times 1$ vector of scalars $a_i$ from step (iv), and $\bf b$ is the $k\times 1$ vector that we want to find. So we solve for $b$ by using a tridiagonal solver.&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;The next step is to invert the tridiagonal matrix associated with the Lanczos vectors. Let&amp;#039;s denote this matrix as $\bf T$. So what we want to solve ${\bf T}{\bf b}={\bf a}$, where $\bf a$ is the $k\times 1$ vector of scalars $a_i$ from step (iv), and $\bf b$ is the $k\times 1$ vector that we want to find. So we solve for $b$ by using a tridiagonal solver.&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;The next step is to compute a weighted sum of the Lanczos vectors. Let&#039;s call this $\bf z$, where ${\bf z} = \sum_i (b_i {\bf q}_i)$ for $i=1,2,\ldots,k$. The $b_i$ are obtained from solving the tridiagonal equation in (v), and the ${\bf q}_i$ are the Lanczos vectors. The vector $z$ is a &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;     &lt;/del&gt;full-state vector and be used as an initial condition for the tangent linear model in step (vii).&amp;lt;/li&amp;gt;                                                                                                                  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;The next step is to compute a weighted sum of the Lanczos vectors. Let&#039;s call this $\bf z$, where ${\bf z} = \sum_i (b_i {\bf q}_i)$ for $i=1,2,\ldots,k$. The $b_i$ are obtained from solving the tridiagonal equation in (v), and the ${\bf q}_i$ are the Lanczos vectors. The vector $z$ is a full-state vector and be used as an initial condition for the tangent linear model in step (vii).&amp;lt;/li&amp;gt;                                                                                                                  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;Finally, we run the tangent linear model from $t=[t_0,t_1]$ using $\bf z$ from (vi) as the initial conditions. During this run of the tangent linear model, we need to read and process the observations $\bf y$ that we used in the [[IS4DVAR]] of step 1 and write the solution at the observation points and times to the [[MODname]] NetCDF file. The values that we write into this [[MODname]] are actually the values multiplied by error covariance $-{\bf O}^{-1}$ assigned to each observation during the IS4DVAR in step (i).&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;li&amp;gt;Finally, we run the tangent linear model from $t=[t_0,t_1]$ using $\bf z$ from (vi) as the initial conditions. During this run of the tangent linear model, we need to read and process the observations $\bf y$ that we used in the [[IS4DVAR]] of step 1 and write the solution at the observation points and times to the [[MODname]] NetCDF file. The values that we write into this [[MODname]] are actually the values multiplied by error covariance $-{\bf O}^{-1}$ assigned to each observation during the IS4DVAR in step (i).&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/ol&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/ol&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/wikitex&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/wikitex&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Robertson</name></author>
	</entry>
	<entry>
		<id>https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;diff=3817&amp;oldid=prev</id>
		<title>Robertson: moved OBS SENSITIVITY to IS4DVAR SENSITIVITY:&amp;#32;CPP Option was renamed in revision 431.</title>
		<link rel="alternate" type="text/html" href="https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;diff=3817&amp;oldid=prev"/>
		<updated>2010-01-08T19:25:31Z</updated>

		<summary type="html">&lt;p&gt;moved &lt;a href=&quot;/wiki/OBS_SENSITIVITY&quot; class=&quot;mw-redirect&quot; title=&quot;OBS SENSITIVITY&quot;&gt;OBS SENSITIVITY&lt;/a&gt; to &lt;a href=&quot;/wiki/IS4DVAR_SENSITIVITY&quot; class=&quot;mw-redirect&quot; title=&quot;IS4DVAR SENSITIVITY&quot;&gt;IS4DVAR SENSITIVITY&lt;/a&gt;: CPP Option was renamed in revision 431.&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:25, 8 January 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Robertson</name></author>
	</entry>
	<entry>
		<id>https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;diff=3225&amp;oldid=prev</id>
		<title>Robertson: &lt;wikitex&gt; should only be used INSIDE sections so that the table of contents will work</title>
		<link rel="alternate" type="text/html" href="https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;diff=3225&amp;oldid=prev"/>
		<updated>2008-07-15T15:34:10Z</updated>

		<summary type="html">&lt;p&gt;&amp;lt;wikitex&amp;gt; should only be used INSIDE sections so that the table of contents will work&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 15:34, 15 July 2008&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{#lst:Options|OBS_SENSITIVITY}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{#lst:Options|OBS_SENSITIVITY}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;wikitex&amp;gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;__TOC__&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;__TOC__&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Mathematical Formulation==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Mathematical Formulation==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;wikitex&amp;gt;&lt;/ins&gt;The mathematical development presented here closely parallels that of [[Bibliography#ZhuY_2008a | Zhu and Gelaro (2008)]]. The sensitivity of any functional, $\cal J$, of the analysis $\bf\Psi_a$ or forecast $\bf\Psi_f$ can be efficiently computed using the adjoint model which yields information about the gradients of ${\cal J}({\bf\Psi_a})$ and ${\cal J}({\bf\Psi_f})$. We can extent the concept of the adjoint sensitivity to compute the sensitivity of the [[IS4DVAR]] cost function, $J$, in (1) and any other function $\cal J$ of the forecast $\bf\Psi_f$ to the observations, $\bf y$.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The mathematical development presented here closely parallels that of [[Bibliography#ZhuY_2008a | Zhu and Gelaro (2008)]]. The sensitivity of any functional, $\cal J$, of the analysis $\bf\Psi_a$ or forecast $\bf\Psi_f$ can be efficiently computed using the adjoint model which yields information about the gradients of ${\cal J}({\bf\Psi_a})$ and ${\cal J}({\bf\Psi_f})$. We can extent the concept of the adjoint sensitivity to compute the sensitivity of the [[IS4DVAR]] cost function, $J$, in (1) and any other function $\cal J$ of the forecast $\bf\Psi_f$ to the observations, $\bf y$.  &lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;In [[IS4DVAR]], we define a quadratic cost function:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;In [[IS4DVAR]], we define a quadratic cost function:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l39&quot;&gt;Line 39:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 37:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;which again can be readily evaluated using the adjoint model denoted by ${\bf R}^{T}(t,t_0+\tau)$ and the adjoint of [[IS4DVAR]], ${\bf K}^{T}$.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;which again can be readily evaluated using the adjoint model denoted by ${\bf R}^{T}(t,t_0+\tau)$ and the adjoint of [[IS4DVAR]], ${\bf K}^{T}$.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/wikitex&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Technical Description==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Technical Description==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;wikitex&amp;gt;&lt;/ins&gt;This ROMS driver can be used to evaluate the impact of each observation on the [[IS4DVAR]] data assimilation algorithm by measuring their sensitivity over a specified circulation functional index, ${\cal J}$. This algorithm is an extension of the adjoint sensitivity driver, [[AD_SENSITIVITY]]. As mentioned above, this algorithm is equivalent to taking the adjoint of the  [[IS4DVAR]] algorithm.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This ROMS driver can be used to evaluate the impact of each observation on the [[IS4DVAR]] data assimilation algorithm by measuring their sensitivity over a specified circulation functional index, ${\cal J}$. This algorithm is an extension of the adjoint sensitivity driver, [[AD_SENSITIVITY]]. As mentioned above, this algorithm is equivalent to taking the adjoint of the  [[IS4DVAR]] algorithm.&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The following steps are carried out in [[obs_sen_ocean.h]]:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The following steps are carried out in [[obs_sen_ocean.h]]:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Robertson</name></author>
	</entry>
	<entry>
		<id>https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;diff=3219&amp;oldid=prev</id>
		<title>Arango at 18:25, 11 July 2008</title>
		<link rel="alternate" type="text/html" href="https://www.myroms.org/wiki/index.php?title=I4DVAR_ANA_SENSITIVITY&amp;diff=3219&amp;oldid=prev"/>
		<updated>2008-07-11T18:25:35Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 18:25, 11 July 2008&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{#lst:Options|OBS_SENSITIVITY}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{#lst:Options|OBS_SENSITIVITY}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;wikitex&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;__TOC__&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;__TOC__&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;wikitex&amp;gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Mathematical Formulation==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Mathematical Formulation==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Arango</name></author>
	</entry>
</feed>