<p><b>kavulich@ucar.edu</b> 2013-04-26 15:50:25 -0600 (Fri, 26 Apr 2013)</p><p>-Deleting old un-needed files<br>
-Adding new chapters (quickstart, 3dvar)<br>
-Add start of new namelist appendix<br>
-Other minor updates<br>
</p><hr noshade><pre><font color="gray">Added: trunk/wrfvar/3DVAR_technote/3dvar.tex
===================================================================
--- trunk/wrfvar/3DVAR_technote/3dvar.tex                                (rev 0)
+++ trunk/wrfvar/3DVAR_technote/3dvar.tex        2013-04-26 21:50:25 UTC (rev 422)
@@ -0,0 +1,10 @@
+\chapter{WRFDA\textendash 3DVAR}
+\label{3dvar}
+
+\section{Running WRFDA\textendash 3DVAR}
+\label{running}
+
+\section{Output}
+\label{output}
+
+We should detail ALL the output files and what the options mean
\ No newline at end of file

Copied: trunk/wrfvar/3DVAR_technote/be.tex (from rev 421, trunk/wrfvar/3DVAR_technote/gen_be.tex)
===================================================================
--- trunk/wrfvar/3DVAR_technote/be.tex                                (rev 0)
+++ trunk/wrfvar/3DVAR_technote/be.tex        2013-04-26 21:50:25 UTC (rev 422)
@@ -0,0 +1,209 @@
+\chapter{Background Error}
+\label{be}
+
+
+
+
+\section{Overview}
+
+Forecast (first guess or background) error covariances are a vital input to any modern data assimilation system. They influence the analysis fit to observations and also completely define the analysis response away from observations. The latter impact is particularly important in data-sparse areas of the globe. Unlike ensemble filter data assimilation techniques (e.g. the Ensemble Adjustment Kalman Filter, the Ensemble Transform Kalman Filter), 3/4D-Var systems do not implicitly evolve forecast error covariances in real-time. Instead, climatologic statistics are typically estimated offline, and tuned to represent forecast errors for particular applications. This document describes the generation and tuning of forecast error covariances for the WRF-Var system.
+
+WRF-Var is a freely available community variational data assimilation system. It is used in a number of applications spanning convective to synoptic scales, tropical to polar domains, and variable observation distributions. In addition, the WRF-Var system is used to provide initial conditions for a number of forecast models in addition to WRF, e.g. MM5, the Korean Meteorological Administration's (KMA's) global spectral model, and the Taiwanese Nonhydrostatic Forecast Model (NFS). Perhaps understandably, the issue of forecast error generation for WRF-Var applications is the number 1 user question to date. For all these reasons, it is therefore vital that an accurate, portable, flexible, and efficient utility to generate and tune forecast error statistics be made available for community use.
+
+In the next subsection, a brief overview of the role of forecast error covariances in variational data assimilation is given. Default forecast error statistics are supplied with the WRF-Var release. These data files are made available primarily for training purposes, i.e. to permit the user to configure and test the WRF-Var/WRF system in their own application. It is important to note that the default statistics are not intended for extended testing or real-time applications of WRF-Var. For those applications, there is no substitute to creating one's own forecast error covariances with the {\it gen\_be} utility, described in subsection (\ref{gen_be_sub}). Having created domain-specific statistics, it may then be necessary to further tune both forecast and observation error statistics. A variety of algorithms are supplied with WRF-Var to perform this tuning, and documented in Chapter (\ref{diagnostics}). These tuning algorithms include both innovation vector-based approaches \
 citep{hollingsworth86}
+and variational tuning approaches \citep{desroziers01}. Clearly, the whole process of tuning error statistics for data assimilation is rather complex. However, it has been shown in many applications, that this work is vital if one is to produce the optimal analysis.
+
+\section{Scientific Background}
+
+As shown in Chapter (\ref{intro}), the basic goal of any variational data assimilation system is to produce an optimal estimate of the true atmospheric state at analysis time through iterative solution of a prescribed cost-function {\it J}. The particular variational data assimilation algorithm adopted in WRF-Var is a model-space, incremental formulation of the variational problem.  In this approach, observations, previous forecasts, their errors, and physical laws are combined to produce analysis increments ${\partial \bf x^{a}}$, which are added to the first guess $x_{b}$ to provide an updated analysis.
+
+The background (or &quot;first guess&quot;) error covariance matrix is defined as
+
+\begin{equation}
+{\bf B}=\overline{\epsilon \epsilon^{T}} \simeq \overline{{\bf x'}{\bf x'}^{T}},
+\label{var-b}
+\end{equation}
+
+</font>
<font color="gray">oindent where the overbar denotes an average over time, and/or geographical area. The true background error $\epsilon$ is not known in reality, but is assumed to be statistically well represented by a model state perturbation ${\bf x'}$. In the standard NMC-method \citep{parrish92}, the perturbation ${\bf x'}$ is given by the difference between two forecasts (e.g. 24 hour minus 12 hour) verifying at the same time. Climatological estimates of background error may then be obtained by averaging such forecast differences over a period of time (e.g. one month). An alternative strategy proposed by \citep{fisher03} makes use of ensemble forecast output, defining the ${\bf x'}$ vectors as ensemble perturbations (ensemble minus ensemble mean). In either approach, the end results is the same  - an ensemble of model perturbation vectors from which estimates of background error may be derived. The new {\it gen$\_$be} code has been designed to work with either forecast 
 difference, or ensemble-based perturbations.
+
+In model-space variational data assimilation systems, the background error covariances are specified not in model space ${\bf x'}$, but in a control variable space ${\bf v}$, related to the model variables (e.g. wind components, temperature, humidity, and surface pressure) via a control variable transform U defined by
+
+\begin{equation}
+{\bf x'} = {\rm U}{\bf v}= {\rm U}_{p} {\rm U}_{v} {\rm U}_{h}{\bf v}.
+\label{var-cv}
+\end{equation}
+
+where the breakdown into components of U represents transformations of variable (p), and vertical (v) and horizontal (h) components of spatial error covariances. The transform (\ref{var-cv}), and its adjoint are required in the WRF-Var code, and will be dsecribed in more detail in Chapter (\ref{be_modeling}). In contrast, the gen\_be code performs the inverse transform
+
+\begin{equation}
+{\bf v} = {\rm U}^{-1}{\bf x'}= {\rm U}^{-1}_{h} {\rm U}^{-1}_{v} {\rm U}^{-1}_{p} {\bf x'}.
+\label{var-cv-inv}
+\end{equation}
+in order to accumulate statistics for each component of the control vector $\bf v$. The detailed procedure for performing this calculation is described in the next section.
+
+
+\section{WRF's Forecast Error Covariance Estimator - gen\_be}
+\label{gen_be_sub}
+
+The background error covariance generation code gen\_be is designed to take input from a variety of regional/global models (e.g. WRF, MM5, KMA global model, etc.), and process it in order to provide error covariance statistics. Note only the first stage (stage0) is model-specific - the output from stage0 is in a standard model-independent format. The gen\_be output forecast error statistics may be used in a variety of ways, including: i) Forecast error covariances for multi-model applications of WRF-Var, ii) Multi-model error intercomparison studies, iii) Studying multivariate correlations within ensemble prediction systems, and iv) Defining optimal control variable/balance constraints for particular applications.
+
+The gen\_be utility comprises a number of fortran codes, as described in the following subsections.
+
+\subsection{gen\_be\_stage0\_wrf - Calculate perturbations of standard fields}
+
+This stage is the only part of the process that has knowledge of the model supplying the forecast data and is specific to individual models. The purpose of this stage is to read model-specific, full field forecast data, to create model perturbations ${\bf x'}$, convert to standard perturbation fields (and metadata), and output them in a standard binary format for further processing as illustrated in Fig. 1.
+
+Using the NMC-method, ${\bf x}'={\bf x_{T2}}-{\bf x_{T1}}$ where $T2$ and $T1$ are the forecast difference times (e.g. 48hr, 24hr for global, 24hr, 12hr for regional).  Alternatively, for an ensemble-based approach, ${\bf x_{k}}'={\bf x_{k}}-\bar{\bf x}$ where the overbar is an average over ensemble members $k=1,n_{e}$. The total number of binary files produced by stage0 is $n_{f} \times n_e$ where $n_f$ is the number of forecast times used (e.g. for 30 days with forecast every 12 hours, $n_f=60$). Using the NMC-method, $n_e=1$ (1 forecast difference per time). For ensemble-based statistics, $n_e$ is the number of ensemble members.
+
+
+Fig. 1: Sketch of gen\_be's stage0 program. Model-specific (e.g. gen\_be\_stage0\_wrf for WRF) processing of full field forecast fields is performed to convert to perturbation fields of &quot;standard&quot; variables and relevant metadata, e.g. latitude, height, land/sea, etc.
+        
+Input: Model-specific forecast files.
+
+Processing: Read forecasts, calculate ${\bf x'}$ perturbations, transform to standard perturbation fields.
+
+Output: File containing standard fields in specific binary format, with filename e.g. \\pert.2003010112.e001 (perturbation valid at 12Z on 1 January 2003).
+
+The standard gridpoint fields are:
+
+\begin{itemize}\setlength{\parskip}{-4pt}
+\item
+         Perturbations: Streamfunction $\psi'(i,j,k)$, velocity potential $\chi'(i,j,k)$,
+temperature $T'(i,j,k)$, relative humidity $r'(i,j,k)$, surface pressure $p_s'(i,j)$.
+
+\item
+         Full-fields: height $z(i,j,k)$, latitude $\phi(i,j)$. (These are required for the
+production of background error statistics stored in terms of physics variables,
+rather than tied to a specific grid. This flexibility is included in {\it gen$\_$be} through a
+namelist option to define the bins over which data is averaged in a variety of ways
+(e.g., latitude height, grid points). Land-sea and orographic effects may also be
+represented in this way.
+\end{itemize}
+
+The calculation of streamfunction and velocity potential from input $u$ and $v$ fields is performed via a Fast Fourier Transform (FFT) decomposition of computed vorticity and divergence fields. Each model has it's own stage0 (only that for WRF - gen\_be\_stage0\_wrf is supported at present) which outputs a common format so that the remaining stages below are the same for all model data.
+
+
+\subsection{gen\_be\_stage1 - Remove Mean}
+
+
+
+This stage simply reads the perturbation fields output by stage0 and removes the time/bin mean from each standard field and level. The zero-mean fields are output to separate directories/files for each variable, date and member (e.g. psi/2003010112.psi.e001 contains the 3D psi field with mean removed).
+
+Input: Perturbation fields (output of stage 0)
+
+Processing: Remove mean for each variable/level.
+
+Output: Standard fields: $z(i,j,k)$, $\phi(i,j)$, $\psi'(i,j,k)$, $\chi'(i,j,k)$,
+$T'(i,j,k)$, $r'(i,j,k)$, $p_s'(i,j)$.
+
+\subsection{gen\_be\_stage2 - Calculate balance regressions coefficients}
+
+The standard control variables (i.e. those variable for which we assume cross-correlations are zero) in WRF-Var are streamfunction, &quot;pseudo&quot; relative humidity, and the unbalanced components of velocity potential, temperature, and surface pressure.
+
+The unbalanced control variables are defined as the difference between full and balanced (or correlated) components of the field. In this stage of the calculation of background errors, the balanced component of particular fields is modeled via a regression analysis of the field using specified predictor fields (e.g. streamfunction). (see \citet{wu02} for further details). The resulting regression coefficients are output for use in WRF-Var's ${\rm U}_p$ transform, and are also used in gen\_be\_stage2a (see below). Currently, three regression analyses are performed resulting in three sets of regression coefficients (note: drop the perturbation notation from now on for clarity):
+
+
+\begin{itemize}\setlength{\parskip}{-4pt}
+\item   Velocity potential/streamfunction regression: $\chi_b=c\psi$;
+\item        Temperature/streamfunction regression: $T_{b,k1}=\sum_{k2}G_{k1,k2}\psi_{k2}$; and
+\item        Surface pressure/streamfunction regression: $p_{sb}=\sum{k}W_{k}\psi_{k}$.
+\end{itemize}
+
+Data is read from all $n_f \times n_e$ files and sorted into bins defined via the namelist option {\it bin$\_$type}. Regression coefficients $G(k1,k2)$ and $W(k)$ are computed individually for each bin ({\it bin$\_$type}=1 is used here, representing latitudinal dependence) in order to allow representation of differences between e.g. polar, mid-latitude, and tropical dynamical and physical processes. In addition, the scalar coefficient $c$ used to estimate velocity potential errors from those of streamfunction is calculated as a function of height to represent e.g. the impact of boundary-layer physics. Latitudinal /height smoothing of the resulting coefficients may be optionally performed to avoid artificial discontinuities at the edges of latitude/height boxes.
+
+In summary, gen\_be\_stage2 proceeds as follows:
+
+Input: Standard fields (output of stage 1).
+
+Processing: Regression analysis to determine multivariate correlations between perturbation fields.
+
+Output: Regression coefficients $c$, $W$, $G$.
+
+
+\subsection{gen\_be\_stage2a - Calculate unbalanced control variable fields}
+
+Having computed regression coefficients, the unbalanced components of the fields are
+calculated as $\chi_u=\chi-c\psi$, $T_{u,k1}=T_{k1}-\sum_{k2}G_{k1,k2}\psi_{k2}$,
+and $p_{su}=p_s - \sum_{k} W_{k}\psi_{k}$. These fields are output for the
+subsequent calculation of the spatial covariances as described below.
+
+Input: Standard fields (output of stage 1) and regression coefficients (output of stage 2).
+
+Processing: Compute unbalanced components of selected fields.
+
+Output: Unbalanced fields $\chi_u$,  $T_u$, and $p_{su}$.
+
+
+\subsection{gen\_be\_stage3 - Eigenvectors/values of Vertical Error Covariances}
+
+The gen\_be\_stage3 program calculates the statistics required for the vertical component of the control variable transform of WRF-Var. This involves the projection of 3D fields on model-levels onto empirical orthogonal functions (EOFs) of the vertical component of background error covariances \citep{barker04}.
+
+
+The {\it gen$\_$be} code calculates both domain-averaged and local
+values of the vertical component of the background error covariance
+matrix. The definition of local again depends on the value of the
+namelist variable bin$\_$type chosen. For example, for bin$\_$type=1,
+a $kz \times kz$ (where $kz$ is the number of vertical levels) vertical
+component of $\bf B$ is produced at every latitude (data is averaged
+over time and longitude) for each control variable. Eigendecomposition
+of the resulting climatological vertical error covariances ${\bf
+B}={\bf E}{\Lambda}{\bf E}^{T}$ results in both domain-averaged and
+local eigenvectors $\bf E$ and eigenvalues $\Lambda$. Both sets of
+statistics are included in the dataset supplied to WRF-Var, allowing
+the choice between homogeneous (domain-averaged) or local
+(inhomogeneous) background error variances and vertical correlations
+to be chosen at run time \citep{barker04}.
+
+Having calculated and stored eigenvectors and eigenvalues, the final
+part of {\it gen$\_$be$\_$stage3} is to project the entire sequence of
+3D control variable fields into EOF space ${\bf v_v}=U_{v}^{-1}{\bf
+v_p}=\Lambda^{-1/2}{\bf E}^{T} {\bf v_p}$.
+
+Input: 3D (i,j,k) control variable fields: $\psi$, $\chi_u$,  $T_u$, and $r$ (output from stage 1 and 2a).
+
+Processing: For each variable: compute vertical component of ${\bf B}$, perform eigenvector decomposition, and compute projections of fields onto eigenvectors.
+
+Output: Eigenvectors $\bf E$, eigenvalues $\Lambda$, and projected 3D (i,j,m) control variable fields:  $\psi$, $\chi_u$,  $T_u$, and $r$ for calculation of horizontal correlations.
+
+
+\subsection{gen\_be\_stage4 - Horizontal Error Correlations}
+
+The last aspect of the climatological component of background error covariance data required for WRF-Var are the horizontal error correlations, the representation of which forms the largest difference between running WRF-Var in regional and global mode (it is however, still a fairly local change).
+
+In global applications (gen\_be\_stage4\_global). a spectral decomposition of the grid-point data is performed, and power spectra computed for each variable and vertical mode. Details of the spectral technique used to project gridpoint fields to spectral modes are given in Appendix B together with a description of the power spectra computed from the spectral modes.
+
+In regional applications (gen\_be\_stage4\_regional), a recursive filter is used to provide the horizontal correlations (\citet{barker04}). The error covariance inputs to the recursive filter is a correlation lengthscale (provided by gen\_be\_stage4\_regional), and a WRF-Var namelist parameters to define the correlations shape (the number of passes through the recursive filter).  The calculation of horizontal lengthscales in gen\_be\_stage4\_regional is described in section 8c of (\citet{barker04}). Note: This is the most expensive part of the entire gen\_be process.
+
+Input: Projected 3D (i,j,m) control variable fields: $\psi$, $\chi_u$,  $T_u$, and $r$, and $p_{su}$(i,j). (output from stage 3 and 2a)
+
+Processing (regional): Perform linear regression of horizontal correlations to calculate recursive filter lengthscales (see \citet{barker04}).
+
+Processing (global): Perform horizontal spectral decomposition, and compute power spectra for each field/mode (see Appendix B).
+
+Output (regional): Recursive filter lengthscales for each control variable, vertical mode.
+
+Output (global): Power spectra for each control variable, vertical mode.
+
+
+\subsection{gen\_be\_diags - Generate gen\_be.dat to be used in WRF-Var}
+
+The gen\_be\_diags program simply gathers information from gen\_be\_stage2-4 output and writes out a file named gen\_be.dat which is one of the required input files when running WRF-Var.
+
+Input:
+\begin{itemize}\setlength{\parskip}{-4pt}
+\item Regression coefficients $c$, $W$, $G$. (output of stage 2)
+\item Eigenvectors $\bf E$, eigenvalues $\Lambda$. (output of stage 3)
+\item Recursive filter lengthscales. (output of stage 4 regional) or Power spectra. (output of stage 4 global)
+\end{itemize}
+
+Output: A binary-format gen\_be.dat to be used in WRF-Var.
+
+
+\section{Example Results from an Application of gen\_be}
+
+Background error statistics calculated with NMC-method (24-hour and 12-hour forecast difference) from a low-resolution (200km) CONUS domain is shown in the figure below. The data period is one month in January 2003.
+
+\includegraphics[width=7.0in]{figures/gen_be_results.pdf}
+
+NCL scripts for plotting gen\_be results are included in the WRF-Var system in the directory graphics/ncl/gen\_be. The ASCII format input data required by the NCL scripts are generated using programs gen\_be\_diags\_read, gen\_be\_cov2d, and gen\_be\_cov3d in the gen\_be utility.
+

Modified: trunk/wrfvar/3DVAR_technote/cover.tex
===================================================================
--- trunk/wrfvar/3DVAR_technote/cover.tex        2013-04-23 21:42:49 UTC (rev 421)
+++ trunk/wrfvar/3DVAR_technote/cover.tex        2013-04-26 21:50:25 UTC (rev 422)
@@ -8,24 +8,17 @@
   &amp;\textsf{\textbf{NCAR TECHNICAL NOTE}}&amp;\\ \hline
   &amp;February 2007&amp;\\[1cm]
 \multicolumn{2}{l|}
-{\LARGE \textsf{\textbf{The WRF Variational Data Assimilation}}}
+{\LARGE \textsf{\textbf{The WRF Data Assimilation System}}}
 &amp;\\ [5pt]
 
 \multicolumn{2}{l|}
-{\LARGE \textsf{\textbf{System (WRF-Var) Version 2}}}
+{\LARGE \textsf{\textbf{(WRFDA) Version 3.5}}}
 &amp;\\[1cm]
 
 </font>
<font color="gray">ormalsize
-Dale M. Barker&amp;&amp;\\
+Michael J. Kavulich, Jr.&amp;&amp;\\
 Xin Zhang&amp;&amp;\\
-Meral Demirtas&amp;&amp;\\
-Yong-Run Guo&amp;&amp;\\
-Hans Huang&amp;&amp;\\
-Hui-Chuan Lin&amp;&amp;\\
-Zhiquan Liu&amp;&amp;\\
-Syed R. H. Rizvi&amp;&amp;\\
-Hui Shao&amp;&amp;\\
-Qingnong Xiao&amp;&amp;\\[10cm]
+Dale M. Barker&amp;&amp;\\[10cm]
 &amp;&amp;\\%[15cm]
 \multicolumn{2}{r|}{Mesoscale and Microscale Meteorology Division}&amp;\\ \hline
 \multicolumn{2}{r|}{National Center for Atmospheric Research}&amp;\\
@@ -67,11 +60,11 @@
 \&gt; \&gt; Data compilations, theoretical and numerical\\
 \&gt; \&gt; investigations, and experimental results.\\[2cm]
 \end{tabbing}
-\emph{The National Center for Atmospheric Research (NCAR) is 
+\emph{The National Center for Atmospheric Research (NCAR) is
 operated by the University Corporation for Atmospheric Research
 (UCAR) and is sponsored by the National Science Foundation.
 Any opinions, findings, conclusions, or recommendations expressed
-in this publication are those of the authors and do not 
+in this publication are those of the authors and do not
 necessarily reflect the views of the National Science Foundation.}
 \rmfamily
 \end{titlepage}

Modified: trunk/wrfvar/3DVAR_technote/description.tex
===================================================================
--- trunk/wrfvar/3DVAR_technote/description.tex        2013-04-23 21:42:49 UTC (rev 421)
+++ trunk/wrfvar/3DVAR_technote/description.tex        2013-04-26 21:50:25 UTC (rev 422)
@@ -21,13 +21,21 @@
 % Use changebar package for highlighting changes
 \usepackage{changebar}
 %
-% Use fancyheadings package for headers and footers 
+% Use fancyheadings package for headers and footers
 \usepackage{fancyheadings}
 \lhead[\wrf~Scientific Description]{\wrf~Scientific Description}
-\rhead[January, 2007]{January 1, 2007}
+\rhead[April, 2013]{April 22, 2013}
 % Use hyperref to insert links in pdf documents
 %\usepackage[colorlinks,citecolor=black,linkcolor=black,urlcolor=black]{hyperref}
 \usepackage[colorlinks,citecolor=blue,linkcolor=red,urlcolor=cyan]{hyperref}
+
+% Use packages longtable, pdflscape, endnotes, and color for namelist appendix, define gray
+\usepackage{longtable,tabu}
+\usepackage{pdflscape}
+\usepackage{endnotes}
+\usepackage{color, colortbl}
+\definecolor{light-gray}{gray}{0.95}
+\definecolor{gray}{gray}{0.5}
 %
 %\usepackage{html}
 %\begin{htmlonly}
@@ -51,6 +59,7 @@
 % Include some coding shortcuts
 \def \eg{{\emph{e.g.} }}
 \def \ie{{\emph{i.e.} }}
+\def \WRFDA3DVAR{{\emph{WRFDA\textendash 3DVAR} }}
 \def </font>
<font color="black">i{</font>
<font color="black">oindent}
 </font>
<font color="black">ewcommand{\xbmf}[1]{\hbox{\sffamily\slshape #1}}
 </font>
<font color="gray">ewcommand{\xmathbf}{\boldsymbol}
@@ -71,26 +80,24 @@
 \pagenumbering{arabic}
 \setcounter{page}{1}
 \include{intro}
-\include{minim}
-\include{gen_be}
-\include{be_modeling}
+\include{quickstart}
+\include{basics}
+\include{installation}
 \include{obs}
-\include{radiances}
-\include{radar}
-\include{gps}
-\include{diagnostics}
-\include{suites}
-\include{se}
+\include{be}
+\include{3dvar}
 % Next two lines MUST come right before the last chapter include
 \addtocontents{toc}{\contentsline {chapter}{}{}{}}
 \addtocontents{toc}{\contentsline {chapter}{Appendices}{}{}}
+\include{se}
 %\include{asf}
 %
 % appendices
 \appendix
 \include{appena}
-\include{appenb}
-\include{appenc}
+\begin{landscape}
+\include{namelist}
+\end{landscape}
 %
 % bibliography
 \addcontentsline{toc}{chapter}{</font>
<font color="gray">umberline{}References}

Deleted: trunk/wrfvar/3DVAR_technote/gen_be.doc
===================================================================
(Binary files differ)

Copied: trunk/wrfvar/3DVAR_technote/gen_be.doc (from rev 421, trunk/wrfvar/3DVAR_technote/gen_be.doc)
===================================================================
(Binary files differ)

Deleted: trunk/wrfvar/3DVAR_technote/gen_be.tex
===================================================================
--- trunk/wrfvar/3DVAR_technote/gen_be.tex        2013-04-23 21:42:49 UTC (rev 421)
+++ trunk/wrfvar/3DVAR_technote/gen_be.tex        2013-04-26 21:50:25 UTC (rev 422)
@@ -1,208 +0,0 @@
-\chapter{Background Error Covariance Estimation}
-\label{gen_be}
-
-Barker, Lin
-
-\section{Overview}
-
-Forecast (first guess or background) error covariances are a vital input to any modern data assimilation system. They influence the analysis fit to observations and also completely define the analysis response away from observations. The latter impact is particularly important in data-sparse areas of the globe. Unlike ensemble filter data assimilation techniques (e.g. the Ensemble Adjustment Kalman Filter, the Ensemble Transform Kalman Filter), 3/4D-Var systems do not implicitly evolve forecast error covariances in real-time. Instead, climatologic statistics are typically estimated offline, and tuned to represent forecast errors for particular applications. This document describes the generation and tuning of forecast error covariances for the WRF-Var system.
-
-WRF-Var is a freely available community variational data assimilation system. It is used in a number of applications spanning convective to synoptic scales, tropical to polar domains, and variable observation distributions. In addition, the WRF-Var system is used to provide initial conditions for a number of forecast models in addition to WRF, e.g. MM5, the Korean Meteorological Administration's (KMA's) global spectral model, and the Taiwanese Nonhydrostatic Forecast Model (NFS). Perhaps understandably, the issue of forecast error generation for WRF-Var applications is the number 1 user question to date. For all these reasons, it is therefore vital that an accurate, portable, flexible, and efficient utility to generate and tune forecast error statistics be made available for community use. 
-
-In the next subsection, a brief overview of the role of forecast error covariances in variational data assimilation is given. Default forecast error statistics are supplied with the WRF-Var release. These data files are made available primarily for training purposes, i.e. to permit the user to configure and test the WRF-Var/WRF system in their own application. It is important to note that the default statistics are not intended for extended testing or real-time applications of WRF-Var. For those applications, there is no substitute to creating one's own forecast error covariances with the {\it gen\_be} utility, described in subsection (\ref{gen_be_sub}). Having created domain-specific statistics, it may then be necessary to further tune both forecast and observation error statistics. A variety of algorithms are supplied with WRF-Var to perform this tuning, and documented in Chapter (\ref{diagnostics}). These tuning algorithms include both innovation vector-based approaches \
 citep{hollingsworth86}
-and variational tuning approaches \citep{desroziers01}. Clearly, the whole process of tuning error statistics for data assimilation is rather complex. However, it has been shown in many applications, that this work is vital if one is to produce the optimal analysis.
-
-\section{Scientific Background}
-
-As shown in Chapter (\ref{intro}), the basic goal of any variational data assimilation system is to produce an optimal estimate of the true atmospheric state at analysis time through iterative solution of a prescribed cost-function {\it J}. The particular variational data assimilation algorithm adopted in WRF-Var is a model-space, incremental formulation of the variational problem.  In this approach, observations, previous forecasts, their errors, and physical laws are combined to produce analysis increments ${\partial \bf x^{a}}$, which are added to the first guess $x_{b}$ to provide an updated analysis.
-
-The background (or &quot;first guess&quot;) error covariance matrix is defined as 
-
-\begin{equation}
-{\bf B}=\overline{\epsilon \epsilon^{T}} \simeq \overline{{\bf x'}{\bf x'}^{T}},
-\label{var-b}
-\end{equation}
-
-</font>
<font color="gray">oindent where the overbar denotes an average over time, and/or geographical area. The true background error $\epsilon$ is not known in reality, but is assumed to be statistically well represented by a model state perturbation ${\bf x'}$. In the standard NMC-method \citep{parrish92}, the perturbation ${\bf x'}$ is given by the difference between two forecasts (e.g. 24 hour minus 12 hour) verifying at the same time. Climatological estimates of background error may then be obtained by averaging such forecast differences over a period of time (e.g. one month). An alternative strategy proposed by \citep{fisher03} makes use of ensemble forecast output, defining the ${\bf x'}$ vectors as ensemble perturbations (ensemble minus ensemble mean). In either approach, the end results is the same  - an ensemble of model perturbation vectors from which estimates of background error may be derived. The new {\it gen$\_$be} code has been designed to work with either forecast 
 difference, or ensemble-based perturbations.
-
-In model-space variational data assimilation systems, the background error covariances are specified not in model space ${\bf x'}$, but in a control variable space ${\bf v}$, related to the model variables (e.g. wind components, temperature, humidity, and surface pressure) via a control variable transform U defined by
-
-\begin{equation}
-{\bf x'} = {\rm U}{\bf v}= {\rm U}_{p} {\rm U}_{v} {\rm U}_{h}{\bf v}.
-\label{var-cv}
-\end{equation}
-
-where the breakdown into components of U represents transformations of variable (p), and vertical (v) and horizontal (h) components of spatial error covariances. The transform (\ref{var-cv}), and its adjoint are required in the WRF-Var code, and will be dsecribed in more detail in Chapter (\ref{be_modeling}). In contrast, the gen\_be code performs the inverse transform
-
-\begin{equation}
-{\bf v} = {\rm U}^{-1}{\bf x'}= {\rm U}^{-1}_{h} {\rm U}^{-1}_{v} {\rm U}^{-1}_{p} {\bf x'}.
-\label{var-cv-inv}
-\end{equation}
-in order to accumulate statistics for each component of the control vector $\bf v$. The detailed procedure for performing this calculation is described in the next section.
-
-
-\section{WRF's Forecast Error Covariance Estimator - gen\_be}
-\label{gen_be_sub}
-
-The background error covariance generation code gen\_be is designed to take input from a variety of regional/global models (e.g. WRF, MM5, KMA global model, etc.), and process it in order to provide error covariance statistics. Note only the first stage (stage0) is model-specific - the output from stage0 is in a standard model-independent format. The gen\_be output forecast error statistics may be used in a variety of ways, including: i) Forecast error covariances for multi-model applications of WRF-Var, ii) Multi-model error intercomparison studies, iii) Studying multivariate correlations within ensemble prediction systems, and iv) Defining optimal control variable/balance constraints for particular applications.
-
-The gen\_be utility comprises a number of fortran codes, as described in the following subsections. 
-
-\subsection{gen\_be\_stage0\_wrf - Calculate perturbations of standard fields}
-
-This stage is the only part of the process that has knowledge of the model supplying the forecast data and is specific to individual models. The purpose of this stage is to read model-specific, full field forecast data, to create model perturbations ${\bf x'}$, convert to standard perturbation fields (and metadata), and output them in a standard binary format for further processing as illustrated in Fig. 1.
-
-Using the NMC-method, ${\bf x}'={\bf x_{T2}}-{\bf x_{T1}}$ where $T2$ and $T1$ are the forecast difference times (e.g. 48hr, 24hr for global, 24hr, 12hr for regional).  Alternatively, for an ensemble-based approach, ${\bf x_{k}}'={\bf x_{k}}-\bar{\bf x}$ where the overbar is an average over ensemble members $k=1,n_{e}$. The total number of binary files produced by stage0 is $n_{f} \times n_e$ where $n_f$ is the number of forecast times used (e.g. for 30 days with forecast every 12 hours, $n_f=60$). Using the NMC-method, $n_e=1$ (1 forecast difference per time). For ensemble-based statistics, $n_e$ is the number of ensemble members.
-
-
-Fig. 1: Sketch of gen\_be's stage0 program. Model-specific (e.g. gen\_be\_stage0\_wrf for WRF) processing of full field forecast fields is performed to convert to perturbation fields of &quot;standard&quot; variables and relevant metadata, e.g. latitude, height, land/sea, etc.
-        
-Input: Model-specific forecast files.
-
-Processing: Read forecasts, calculate ${\bf x'}$ perturbations, transform to standard perturbation fields.
-
-Output: File containing standard fields in specific binary format, with filename e.g. \\pert.2003010112.e001 (perturbation valid at 12Z on 1 January 2003).
-
-The standard gridpoint fields are:
-
-\begin{itemize}\setlength{\parskip}{-4pt}
-\item
-         Perturbations: Streamfunction $\psi'(i,j,k)$, velocity potential $\chi'(i,j,k)$, 
-temperature $T'(i,j,k)$, relative humidity $r'(i,j,k)$, surface pressure $p_s'(i,j)$.
-
-\item
-         Full-fields: height $z(i,j,k)$, latitude $\phi(i,j)$. (These are required for the 
-production of background error statistics stored in terms of physics variables, 
-rather than tied to a specific grid. This flexibility is included in {\it gen$\_$be} through a 
-namelist option to define the bins over which data is averaged in a variety of ways 
-(e.g., latitude height, grid points). Land-sea and orographic effects may also be 
-represented in this way.
-\end{itemize}
-
-The calculation of streamfunction and velocity potential from input $u$ and $v$ fields is performed via a Fast Fourier Transform (FFT) decomposition of computed vorticity and divergence fields. Each model has it's own stage0 (only that for WRF - gen\_be\_stage0\_wrf is supported at present) which outputs a common format so that the remaining stages below are the same for all model data.
-
-
-\subsection{gen\_be\_stage1 - Remove Mean}
-
-
-
-This stage simply reads the perturbation fields output by stage0 and removes the time/bin mean from each standard field and level. The zero-mean fields are output to separate directories/files for each variable, date and member (e.g. psi/2003010112.psi.e001 contains the 3D psi field with mean removed).
-
-Input: Perturbation fields (output of stage 0)
-
-Processing: Remove mean for each variable/level.
-
-Output: Standard fields: $z(i,j,k)$, $\phi(i,j)$, $\psi'(i,j,k)$, $\chi'(i,j,k)$, 
-$T'(i,j,k)$, $r'(i,j,k)$, $p_s'(i,j)$.
-
-\subsection{gen\_be\_stage2 - Calculate balance regressions coefficients}
-
-The standard control variables (i.e. those variable for which we assume cross-correlations are zero) in WRF-Var are streamfunction, &quot;pseudo&quot; relative humidity, and the unbalanced components of velocity potential, temperature, and surface pressure.
-
-The unbalanced control variables are defined as the difference between full and balanced (or correlated) components of the field. In this stage of the calculation of background errors, the balanced component of particular fields is modeled via a regression analysis of the field using specified predictor fields (e.g. streamfunction). (see \citet{wu02} for further details). The resulting regression coefficients are output for use in WRF-Var's ${\rm U}_p$ transform, and are also used in gen\_be\_stage2a (see below). Currently, three regression analyses are performed resulting in three sets of regression coefficients (note: drop the perturbation notation from now on for clarity):
-
-
-\begin{itemize}\setlength{\parskip}{-4pt}
-\item   Velocity potential/streamfunction regression: $\chi_b=c\psi$;
-\item        Temperature/streamfunction regression: $T_{b,k1}=\sum_{k2}G_{k1,k2}\psi_{k2}$; and
-\item        Surface pressure/streamfunction regression: $p_{sb}=\sum{k}W_{k}\psi_{k}$.
-\end{itemize}
-
-Data is read from all $n_f \times n_e$ files and sorted into bins defined via the namelist option {\it bin$\_$type}. Regression coefficients $G(k1,k2)$ and $W(k)$ are computed individually for each bin ({\it bin$\_$type}=1 is used here, representing latitudinal dependence) in order to allow representation of differences between e.g. polar, mid-latitude, and tropical dynamical and physical processes. In addition, the scalar coefficient $c$ used to estimate velocity potential errors from those of streamfunction is calculated as a function of height to represent e.g. the impact of boundary-layer physics. Latitudinal /height smoothing of the resulting coefficients may be optionally performed to avoid artificial discontinuities at the edges of latitude/height boxes.
-
-In summary, gen\_be\_stage2 proceeds as follows:
-
-Input: Standard fields (output of stage 1).
-
-Processing: Regression analysis to determine multivariate correlations between perturbation fields.
-
-Output: Regression coefficients $c$, $W$, $G$.
-
-
-\subsection{gen\_be\_stage2a - Calculate unbalanced control variable fields}
-
-Having computed regression coefficients, the unbalanced components of the fields are 
-calculated as $\chi_u=\chi-c\psi$, $T_{u,k1}=T_{k1}-\sum_{k2}G_{k1,k2}\psi_{k2}$, 
-and $p_{su}=p_s - \sum_{k} W_{k}\psi_{k}$. These fields are output for the 
-subsequent calculation of the spatial covariances as described below.
-
-Input: Standard fields (output of stage 1) and regression coefficients (output of stage 2).
-
-Processing: Compute unbalanced components of selected fields.
-
-Output: Unbalanced fields $\chi_u$,  $T_u$, and $p_{su}$.
-
-
-\subsection{gen\_be\_stage3 - Eigenvectors/values of Vertical Error Covariances}
-
-The gen\_be\_stage3 program calculates the statistics required for the vertical component of the control variable transform of WRF-Var. This involves the projection of 3D fields on model-levels onto empirical orthogonal functions (EOFs) of the vertical component of background error covariances \citep{barker04}.
-
-
-The {\it gen$\_$be} code calculates both domain-averaged and local
-values of the vertical component of the background error covariance
-matrix. The definition of local again depends on the value of the
-namelist variable bin$\_$type chosen. For example, for bin$\_$type=1,
-a $kz \times kz$ (where $kz$ is the number of vertical levels) vertical
-component of $\bf B$ is produced at every latitude (data is averaged
-over time and longitude) for each control variable. Eigendecomposition
-of the resulting climatological vertical error covariances ${\bf
-B}={\bf E}{\Lambda}{\bf E}^{T}$ results in both domain-averaged and
-local eigenvectors $\bf E$ and eigenvalues $\Lambda$. Both sets of
-statistics are included in the dataset supplied to WRF-Var, allowing
-the choice between homogeneous (domain-averaged) or local
-(inhomogeneous) background error variances and vertical correlations
-to be chosen at run time \citep{barker04}.
-
-Having calculated and stored eigenvectors and eigenvalues, the final
-part of {\it gen$\_$be$\_$stage3} is to project the entire sequence of
-3D control variable fields into EOF space ${\bf v_v}=U_{v}^{-1}{\bf
-v_p}=\Lambda^{-1/2}{\bf E}^{T} {\bf v_p}$.
-
-Input: 3D (i,j,k) control variable fields: $\psi$, $\chi_u$,  $T_u$, and $r$ (output from stage 1 and 2a).
-
-Processing: For each variable: compute vertical component of ${\bf B}$, perform eigenvector decomposition, and compute projections of fields onto eigenvectors.
-
-Output: Eigenvectors $\bf E$, eigenvalues $\Lambda$, and projected 3D (i,j,m) control variable fields:  $\psi$, $\chi_u$,  $T_u$, and $r$ for calculation of horizontal correlations.
-
-
-\subsection{gen\_be\_stage4 - Horizontal Error Correlations}
-
-The last aspect of the climatological component of background error covariance data required for WRF-Var are the horizontal error correlations, the representation of which forms the largest difference between running WRF-Var in regional and global mode (it is however, still a fairly local change).
-
-In global applications (gen\_be\_stage4\_global). a spectral decomposition of the grid-point data is performed, and power spectra computed for each variable and vertical mode. Details of the spectral technique used to project gridpoint fields to spectral modes are given in Appendix B together with a description of the power spectra computed from the spectral modes.
-
-In regional applications (gen\_be\_stage4\_regional), a recursive filter is used to provide the horizontal correlations (\citet{barker04}). The error covariance inputs to the recursive filter is a correlation lengthscale (provided by gen\_be\_stage4\_regional), and a WRF-Var namelist parameters to define the correlations shape (the number of passes through the recursive filter).  The calculation of horizontal lengthscales in gen\_be\_stage4\_regional is described in section 8c of (\citet{barker04}). Note: This is the most expensive part of the entire gen\_be process.
-
-Input: Projected 3D (i,j,m) control variable fields: $\psi$, $\chi_u$,  $T_u$, and $r$, and $p_{su}$(i,j). (output from stage 3 and 2a)
-
-Processing (regional): Perform linear regression of horizontal correlations to calculate recursive filter lengthscales (see \citet{barker04}).
-
-Processing (global): Perform horizontal spectral decomposition, and compute power spectra for each field/mode (see Appendix B).
-
-Output (regional): Recursive filter lengthscales for each control variable, vertical mode.
-
-Output (global): Power spectra for each control variable, vertical mode.
-
-
-\subsection{gen\_be\_diags - Generate gen\_be.dat to be used in WRF-Var}
-
-The gen\_be\_diags program simply gathers information from gen\_be\_stage2-4 output and writes out a file named gen\_be.dat which is one of the required input files when running WRF-Var.
-
-Input:
-\begin{itemize}\setlength{\parskip}{-4pt}
-\item Regression coefficients $c$, $W$, $G$. (output of stage 2)
-\item Eigenvectors $\bf E$, eigenvalues $\Lambda$. (output of stage 3)
-\item Recursive filter lengthscales. (output of stage 4 regional) or Power spectra. (output of stage 4 global)
-\end{itemize}
-
-Output: A binary-format gen\_be.dat to be used in WRF-Var.
-
-
-\section{Example Results from an Application of gen\_be}
-
-Background error statistics calculated with NMC-method (24-hour and 12-hour forecast difference) from a low-resolution (200km) CONUS domain is shown in the figure below. The data period is one month in January 2003.
-
-\includegraphics[width=7.0in]{figures/gen_be_results.pdf}
-
-NCL scripts for plotting gen\_be results are included in the WRF-Var system in the directory graphics/ncl/gen\_be. The ASCII format input data required by the NCL scripts are generated using programs gen\_be\_diags\_read, gen\_be\_cov2d, and gen\_be\_cov3d in the gen\_be utility.
-

Deleted: trunk/wrfvar/3DVAR_technote/gps.tex
===================================================================
--- trunk/wrfvar/3DVAR_technote/gps.tex        2013-04-23 21:42:49 UTC (rev 421)
+++ trunk/wrfvar/3DVAR_technote/gps.tex        2013-04-26 21:50:25 UTC (rev 422)
@@ -1,5 +0,0 @@
-\chapter{GPS Data Assimilation}
-\label{radar}
-
-Guo, Kuo, ?
-

Deleted: trunk/wrfvar/3DVAR_technote/intro.new.txt
===================================================================
--- trunk/wrfvar/3DVAR_technote/intro.new.txt        2013-04-23 21:42:49 UTC (rev 421)
+++ trunk/wrfvar/3DVAR_technote/intro.new.txt        2013-04-26 21:50:25 UTC (rev 422)
@@ -1,105 +0,0 @@
-\chapter{Introduction}
-\label{intro}
-
-\section{Overview of Variational Data Assimilation}
-\label{overview}
-
-The basic goal of any variational data assimilation system is to produce
-an optimal estimate of the true atmospheric state at analysis time
-through iterative solution of a prescribed cost-function \citep{ide97}:
-
-\begin{equation}
-J({\bf x}) = J_b({\bf x}) + J_o({\bf x}) = \frac{1}{2 
-} ({\bf x}-{\bf x}^{b})^{T}{\bf B}^{-1}({\bf x}-{\bf x}^{b}) + 
-\frac{1}{2}
-({\bf y}-{\bf y}^{o})^{T}({\bf E+F})^{-1}({\bf y}-{\bf y}^{o}).
-\label{cost_function}
-\end{equation}
-
-The variational problem can be summarized as the iterative minimization
-of (\ref{cost_function}) to find the analysis state ${\bf x}$ that
-minimizes $J({\bf x})$. This solution represents the {\it a posteriori}
-maximum likelihood (minimum variance) estimate of the true state of the
-atmosphere given the two sources of {\it a priori} data: the first guess
-(or background) ${\bf x^{b}}$ and observations ${\bf y^{o}}$
-\citep{lorenc86}. The fit to individual data points is weighted by
-estimates of their errors: ${\bf B}$, ${\bf E}$, and ${\bf F}$ are the
-background, observation (instrumental), and representivity error
-covariance matrices, respectively. Representivity error is an estimate of
-inaccuracies introduced in the observation operator $H$ used to
-transform the gridded analysis ${\bf x}$ to observation space ${\bf
-y}=H({\bf x})$ for comparison against observations. This error will be
-resolution dependent and may also include a contribution from
-approximations (e.g., linearizations) in $H$.
-
-\section{Overview of WRF-Var}
-\label{overview-wrfvar}
-
-As described in \citet{barker04}, the particular variational data
-assimilation algorithm adopted in WRF-Var is a model-space, incremental
-formulation of the variational problem.  In this approach, observations,
-previous forecasts, their errors, and physical laws are combined to
-produce analysis increments ${\bf x^{a'}}$, which are added to the first
-guess ${\bf x^{b}}$ to provide an updated analysis.
-
-Figure \ref{var-sketch} illustrates the relationship between WRF-Var,
-the various datasets, and the other components of a typical NWP system
-(here ARW). The WRF-Var assimilation proceeds as described in
-\citet{barker04}. A number of recent upgrades to the WRF-Var algorithm
-will be described in Section \ref{var-upgrade}.
-
-%
-%  Figure 9.1 var-sketch
-%
-\begin{figure}
-  \centering
-  \includegraphics[width=6.5in]{figures/var-sketch.pdf}
-  \caption{\label{var-sketch}Sketch showing the relationship between datasets (circles), 
-           and algorithms (rectangles) of the ARW system.}
-\end{figure}
-
-The three inputs to WRF-Var are: 
-
-\vspace{0.5cm}
-
-a) First guess ${\bf x^{b}}$--- In cold-start mode, this is typically a
-forecast/analysis from another model interpolated to the ARW grid (and variables) via the 
-WRF SI and {\it real} programs. In cycling mode, the first guess 
-is a short-range (typically 1--6 hour) ARW forecast. 
-
-\vspace{0.5cm}
-
-b) Observations ${\bf y^{o}}$--- In the current version of WRF-Var, observations may be 
-supplied either in a text (MM5 3D-Var) format or BUFR format (but not a 
-combination of the two). An observation preprocessor (3DVAR$\_$OBSPROC) 
-is supplied with the code release to perform basic quality control, assign 
-observation errors, and reformat observations from the MM5 {\it little$\_$r} text 
-format into 3D-Var's own text format. Details can be found in \citet{barker03, barker04}.
-
-\vspace{0.5cm}
-
-c) Background error covariances ${\bf B}$--- used to define the spatial
-and multivariate response of the analysis to an observation. In
-variational systems, these covariances are typically calculated
-off-line, and significant tuning is required to optimize performance
-for a particular application (e.g., \citet{ingleby01, wu02}). The
-amount of work required to do this satisfactorily is significant, and
-should not be underestimated. In order to assist the user, WRF
-developers supply the following: i) a default set of statistics used
-for the initial set up of a domain; ii) a utility {\it gen$\_$be}
-(described in Section
-\ref{var-be}) to process ensembles of forecasts into the appropriate control variable 
-space; and iii) diagnostic routines to assess the accuracy of
-observation and background error statistics. These routines include
-both innovation vector-based approaches \citep{hollingsworth86} and
-variational tuning approaches \citep{desroziers01}.
-
-Following assimilation of all data, an analysis ${\bf x^{a}}$ is produced that must be 
-merged with the existing lateral boundary conditions ${\bf x^{lbc}}$ (described in 
-\citet{barker03}). Note: In cycling mode, only the {\it wrfbdy} lateral boundary condition 
-files (${\bf x^{lbc}}$) output of SI/real are used, and not the {\it wrfinput} initial condition 
-files (${\bf x^{b}}$). In cold-start mode, both are required.
-
-\section{This Technical Report}
-\label{techrep}
-

Modified: trunk/wrfvar/3DVAR_technote/intro.tex
===================================================================
--- trunk/wrfvar/3DVAR_technote/intro.tex        2013-04-23 21:42:49 UTC (rev 421)
+++ trunk/wrfvar/3DVAR_technote/intro.tex        2013-04-26 21:50:25 UTC (rev 422)
@@ -1,7 +1,9 @@
 \chapter{Introduction}
 \label{intro}
 
-Barker, Huang
+Data assimilation is the technique by which \textbf{observations} are combined with an NWP product (the \textbf{first guess} or background forecast) and their respective error statistics to provide an improved estimate (the \textbf{analysis}) of the atmospheric (or oceanic, Jovian, etc.) state. Variational (Var) data assimilation achieves this through the iterative minimization of a prescribed cost (or penalty) function. Differences between the analysis and observations/first guess are penalized (damped) according to their perceived error.
+The MMM Division of NCAR supports a unified (global/regional, multi-model, 3/4D-Var) model-space data assimilation system (WRFDA) for use by the NCAR staff and collaborators, and is also freely available to the general community, together with further documentation, test results, plans etc., from the WRFDA web-page (\url{http://www.mmm.ucar.edu/wrf/users/wrfda/index.html}).
+Various components of the WRFDA system are shown in blue in the sketch below, to-gether with their relationship with the rest of the WRF system.
 
 \section{Overview of Variational Data Assimilation}
 \label{overview}

Deleted: trunk/wrfvar/3DVAR_technote/minim.tex
===================================================================
--- trunk/wrfvar/3DVAR_technote/minim.tex        2013-04-23 21:42:49 UTC (rev 421)
+++ trunk/wrfvar/3DVAR_technote/minim.tex        2013-04-26 21:50:25 UTC (rev 422)
@@ -1,14 +0,0 @@
-\chapter{Minimization Algorithm}
-\label{minim}
-
-Rizvi, Barker
-
-\section{Inner/Outer Loop Structure}
-\label{inoutloop}
-
-\section{Conjugate Gradient Minimization}
-\label{conjgrad}
-
-etc....
-
-Rizvi, Barker

Added: trunk/wrfvar/3DVAR_technote/namelist.tex
===================================================================
--- trunk/wrfvar/3DVAR_technote/namelist.tex                                (rev 0)
+++ trunk/wrfvar/3DVAR_technote/namelist.tex        2013-04-26 21:50:25 UTC (rev 422)
@@ -0,0 +1,372 @@
+\chapter{WRFDA namelist}
+\label{namelist}
+
+\section{Description of namelist variables}
+\label{namelist_variables}
+
+Options highlighted in gray (\colorbox{light-gray}{like this}) are not recommended, as they are either obsolete or for debugging purposes only.
+
+%\begin{tabular}[t]{lllp{5cm}}
+\begin{longtabu} to \linewidth {llp{1cm}p{3cm}p{13cm}}
+\rowfont\bfseries Name &amp; Type &amp; Size\endnote{A size of ``1'' indicates a scalar value, a size greater than one indicates a vector of the indicated length. See the appropriate section on namelist formatting and handling for more information.} &amp; Default &amp; Description \\ \hline
+\endhead
+
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar1}
+\\ \rowcolor{light-gray} 
+   use\_background\_errors   &amp; logical &amp; 1 &amp; .true. &amp; Setting this value to ``.false.'' disables the reading of background error, and no assimilation is performed. For debugging purposes only.
+\\ write\_increments         &amp; logical &amp; 1 &amp; .false.  &amp;
+\\ var4d                     &amp; logical &amp; 1 &amp; .false. &amp; .true.: 4D-Var mode
+\\ var4d\_bin                &amp; integer &amp;  1 &amp; 3600     &amp;  var4d\_bin
+\\ var4d\_bin\_rain          &amp; integer &amp;  1 &amp; 3600     &amp;  var4d\_bin\_rain
+\\ var4d\_lbc                &amp; logical &amp;  1 &amp; .false.  &amp;  var4d\_lbc
+\\ multi\_inc                &amp; integer &amp;  1 &amp; 0        &amp;  multi\_incremental\_flag
+\\ print\_detail\_radar      &amp; logical &amp;  1 &amp; .false.  &amp;  print\_detail\_radar
+\\ print\_detail\_rain       &amp; logical &amp;  1 &amp; .false.  &amp;  print\_detail\_rain
+\\ print\_detail\_rad        &amp; logical &amp;  1 &amp; .false.  &amp;  print\_detail\_rad
+\\ print\_detail\_xa         &amp; logical &amp;  1 &amp; .false.  &amp;  print\_detail\_xa
+\\ print\_detail\_xb         &amp; logical &amp;  1 &amp; .false.  &amp;  print\_detail\_xb
+\\ print\_detail\_obs        &amp; logical &amp;  1 &amp; .false.  &amp;  print\_detail\_obs
+\\ print\_detail\_f\_obs     &amp; logical &amp;  1 &amp; .false.  &amp;  print\_detail\_f\_obs
+\\ print\_detail\_map        &amp; logical &amp;  1 &amp; .false.  &amp;  print\_detail\_map
+\\ print\_detail\_grad       &amp; logical &amp;  1 &amp; .false.  &amp;  print\_detail\_grad
+\\ print\_detail\_regression &amp; logical &amp;  1 &amp; .false.  &amp;  print\_detail\_regression
+\\ print\_detail\_spectral   &amp; logical &amp;  1 &amp; .false.  &amp;  print\_detail\_spectral
+\\ print\_detail\_testing    &amp; logical &amp;  1 &amp; .false.  &amp;  print\_detail\_testing
+\\ print\_detail\_paralle    &amp; logical &amp;  1 &amp; .false.  &amp;  print\_detail\_parallel
+\\ print\_detail\_be         &amp; logical &amp;  1 &amp; .false.  &amp;  print\_detail\_be
+\\ print\_detail\_outerloop  &amp; logical &amp;  1 &amp; .false.  &amp;  print\_detail\_outerloop
+\\ check\_max\_iv\_print     &amp; logical &amp;  1 &amp; .true.   &amp;  check\_max\_iv\_print
+\\ check\_buddy\_print       &amp; logical &amp;  1 &amp; .false.  &amp;  ``buddy\_check'' is depreciated, and will likely be removed in a future version.
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar2}
+\\ analysis\_accu            &amp; integer &amp;  1 &amp; 900      &amp;  analysis\_accu
+\\ calc\_w\_increment        &amp; logical &amp;  1 &amp; .false.  &amp;  calc\_w\_increment
+\\ dt\_cloud\_model          &amp; logical &amp;  1 &amp; .false.  &amp;  dt\_cloud\_model
+\\ write\_mod\_filtered\_obs &amp; logical &amp;  1 &amp; .false.  &amp;  write\_mod\_filtered\_obs
+\\ var\_wind                 &amp; logical &amp;  1 &amp; .false.  &amp;  var\_wind
+\\ qc\_rej\_both             &amp; logical &amp;  1 &amp; .false.  &amp;  qc\_rej\_both
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar3}
+\\ fg\_format                &amp; integer &amp;  1 &amp; 1        &amp; fg\_format                  1=WRF-ARW, 2=WRF-NMM, 3=WRF-GLOBAL, 4=KMA
+\\ ob\_format                &amp; integer &amp;  1 &amp; 2        &amp; ob\_format                  1=BUFR,2=ASCII
+\\ num\_fgat\_time           &amp; integer &amp;  1 &amp; 1        &amp; num\_fgat\_time
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar4}
+\\ thin\_conv                &amp; logical &amp;  1 &amp; .true.   &amp; thin\_conv
+\\ thin\_mesh\_conv          &amp; real    &amp;  note\endnote{\label{maxinst}``max\_instruments'', which is set in the file \texttt{WRFDA/frame/module\_driver\_constants.F} (see \ref{namelist_details} for more information). Default value is 30.} &amp; 20.0   &amp; thin\_mesh\_conv
+\\ thin\_rainobs             &amp; logical &amp;  1 &amp; .true.   &amp; thin\_rainobs
+\\ use\_synopobs             &amp; logical &amp;  1 &amp; .true.   &amp; use\_synopobs
+\\ use\_shipsobs             &amp; logical &amp;  1 &amp; .true.   &amp; use\_shipsobs
+\\ use\_metarobs             &amp; logical &amp;  1 &amp; .true.   &amp; use\_metarobs
+\\ use\_soundobs             &amp; logical &amp;  1 &amp; .true.   &amp; use\_soundobs
+\\ use\_mtgirsobs            &amp; logical &amp;  1 &amp; .true.   &amp; use\_mtgirsobs
+\\ use\_tamdarobs            &amp; logical &amp;  1 &amp; .true.   &amp; use\_tamdarobs
+\\ use\_pilotobs             &amp; logical &amp;  1 &amp; .true.   &amp; use\_pilotobs
+\\ use\_airepobs             &amp; logical &amp;  1 &amp; .true.   &amp; use\_airepobs
+\\ use\_geoamvobs            &amp; logical &amp;  1 &amp; .true.   &amp; use\_geoamvobs
+\\ use\_polaramvobs          &amp; logical &amp;  1 &amp; .true.   &amp; use\_polaramvobs
+\\ use\_bogusobs             &amp; logical &amp;  1 &amp; .true.   &amp; use\_bogusobs
+\\ use\_buoyobs              &amp; logical &amp;  1 &amp; .true.   &amp; use\_buoyobs
+\\ use\_profilerobs          &amp; logical &amp;  1 &amp; .true.   &amp; use\_profilerobs
+\\ use\_satemobs             &amp; logical &amp;  1 &amp; .true.   &amp; use\_satemobs
+\\ use\_gpsztdobs            &amp; logical &amp;  1 &amp; .false.  &amp; use\_gpsztdobs
+\\ use\_gpspwobs             &amp; logical &amp;  1 &amp; .true.   &amp; use\_gpspwobs
+\\ use\_gpsrefobs            &amp; logical &amp;  1 &amp; .true.   &amp; use\_gpsrefobs
+\\ top\_km\_gpsro            &amp; real    &amp;  1 &amp; 30.0     &amp; top\_km\_gpsro
+\\ bot\_km\_gpsro            &amp; real    &amp;  1 &amp;  0.0     &amp; bot\_km\_gpsro
+\\ use\_ssmiretrievalobs     &amp; logical &amp;  1 &amp; .false.  &amp; use\_ssmiretrievalobs
+\\ use\_ssmitbobs            &amp; logical &amp;  1 &amp; .false.  &amp; use\_ssmitbobs
+\\ use\_ssmt1obs             &amp; logical &amp;  1 &amp; .false.  &amp; use\_ssmt1obs
+\\ use\_ssmt2obs             &amp; logical &amp;  1 &amp; .false.  &amp; use\_ssmt2obs
+\\ use\_qscatobs             &amp; logical &amp;  1 &amp; .true.   &amp; use\_qscatobs
+\\ use\_radarobs             &amp; logical &amp;  1 &amp; .false.  &amp; use\_radarobs
+\\ use\_radar\_rv            &amp; logical &amp;  1 &amp; .false.  &amp; use\_radar\_rv
+\\ use\_radar\_rf            &amp; logical &amp;  1 &amp; .false.  &amp; use\_radar\_rf
+\\ use\_radar\_rle           &amp; logical &amp;  1 &amp; .false.  &amp; use\_radar\_rle
+\\ use\_radar\_rr            &amp; logical &amp;  1 &amp; .false.  &amp; use\_radar\_rr
+\\ use\_rainobs              &amp; logical &amp;  1 &amp; .false.  &amp; use\_rainobs
+\\ use\_hirs2obs             &amp; logical &amp;  1 &amp; .false.  &amp; use\_hirs2obs
+\\ use\_hirs3obs             &amp; logical &amp;  1 &amp; .false.  &amp; use\_hirs3obs
+\\ use\_hirs4obs             &amp; logical &amp;  1 &amp; .false.  &amp; use\_hirs4obs
+\\ use\_mhsobs               &amp; logical &amp;  1 &amp; .false.  &amp; use\_mhsobs
+\\ use\_msuobs               &amp; logical &amp;  1 &amp; .false.  &amp; use\_msuobs
+\\ use\_amsuaobs             &amp; logical &amp;  1 &amp; .false.  &amp; use\_amsuaobs
+\\ use\_amsubobs             &amp; logical &amp;  1 &amp; .false.  &amp; use\_amsubobs
+\\ use\_airsobs              &amp; logical &amp;  1 &amp; .false.  &amp; use\_airsobs
+\\ use\_airsretobs           &amp; logical &amp;  1 &amp; .true.   &amp; use\_airsretobs
+\\ use\_eos\_amsuaobs        &amp; logical &amp;  1 &amp; .false.  &amp; use\_eos\_amsuaobs
+\\ use\_hsbobs               &amp; logical &amp;  1 &amp; .false.  &amp; use\_hsbobs
+\\ use\_ssmisobs             &amp; logical &amp;  1 &amp; .false.  &amp; use\_ssmisobs
+\\ use\_iasiobs              &amp; logical &amp;  1 &amp; .false.  &amp; use\_iasiobs
+\\ use\_kma1dvar             &amp; logical &amp;  1 &amp; .false.  &amp; use\_kma1dvar
+\\ use\_filtered\_rad        &amp; logical &amp;  1 &amp; .false.  &amp; use\_filtered\_rad
+\\ use\_obs\_errfac          &amp; logical &amp;  1 &amp; .false.  &amp; use\_obs\_errfac
+\\ use\_atmsobs              &amp; logical &amp;  1 &amp; .false.  &amp; use\_atmsobs
+\\ use\_mwtsobs              &amp; logical &amp;  1 &amp; .false.  &amp; use\_mwtsobs
+\\ use\_mwhsobs              &amp; logical &amp;  1 &amp; .false.  &amp; use\_mwhsobs
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar5}
+\\ check\_max\_iv            &amp; logical &amp;  1 &amp; .true.   &amp; check\_max\_iv
+\\ max\_error\_t             &amp; real    &amp;  1 &amp;  5.0     &amp; max\_error\_t
+\\ max\_error\_uv            &amp; real    &amp;  1 &amp;  5.0     &amp; max\_error\_uv
+\\ max\_error\_sp            &amp; real    &amp;  1 &amp;  5.0     &amp; max\_error\_sp
+\\ max\_error\_dir           &amp; real    &amp;  1 &amp;  5.0     &amp; max\_error\_dir
+\\ max\_omb\_sp              &amp; real    &amp;  1 &amp;  14.0    &amp; max\_omb\_sp
+\\ max\_omb\_dir             &amp; real    &amp;  1 &amp;  135.0   &amp; max\_omb\_dir
+\\ max\_error\_pw            &amp; real    &amp;  1 &amp;  5.0     &amp; max\_error\_pw
+\\ max\_error\_ref           &amp; real    &amp;  1 &amp;  5.0     &amp; max\_error\_ref
+\\ max\_error\_rh            &amp; real    &amp;  1 &amp;  5.0     &amp; max\_error\_rh
+\\ max\_error\_q             &amp; real    &amp;  1 &amp;  5.0     &amp; max\_error\_q
+\\ max\_error\_p             &amp; real    &amp;  1 &amp;  5.0     &amp; max\_error\_p
+\\ max\_error\_tb            &amp; real    &amp;  1 &amp;  5.0     &amp; max\_error\_tb
+\\ max\_error\_thickness     &amp; real    &amp;  1 &amp;  5.0     &amp; max\_error\_thickness
+\\ max\_error\_rv            &amp; real    &amp;  1 &amp;  5.0     &amp; max\_error\_rv
+\\ max\_error\_rf            &amp; real    &amp;  1 &amp;  5.0     &amp; max\_error\_rf
+\\ max\_error\_rain          &amp; real    &amp;  1 &amp;  5.0     &amp; max\_error\_rain
+\\ max\_error\_buv           &amp; real    &amp;  1 &amp;  500.0   &amp; max\_error\_buv
+\\ max\_error\_bt            &amp; real    &amp;  1 &amp;  500.0   &amp; max\_error\_bt
+\\ max\_error\_bq            &amp; real    &amp;  1 &amp;  500.0   &amp; max\_error\_bq
+\\ max\_error\_slp           &amp; real    &amp;  1 &amp;  500.0   &amp; max\_error\_slp
+\\ check\_buddy              &amp; logical &amp;  1 &amp; .false.  &amp; check\_buddy
+\\ put\_rand\_seed           &amp; logical &amp;  1 &amp; .false.  &amp; put\_rand\_seed
+\\ omb\_set\_rand            &amp; logical &amp;  1 &amp; .false.  &amp; omb\_set\_rand
+\\ omb\_add\_noise           &amp; logical &amp;  1 &amp; .false.  &amp; omb\_add\_noise
+\\ position\_lev\_dependant  &amp; logical &amp;  1 &amp; .false.  &amp; position\_lev\_dependant
+\\ obs\_qc\_pointer          &amp; integer &amp;  1 &amp; 0        &amp; obs\_qc\_pointer
+\\ qmarker\_retain           &amp; integer &amp;  1 &amp; 3        &amp; qmarker\_retain
+\\ max\_sound\_input         &amp; integer &amp;  1 &amp; 50000000 &amp; max\_sound\_input
+\\ max\_mtgirs\_input        &amp; integer &amp;  1 &amp; 50000000 &amp; max\_mtgirs\_input
+\\ max\_tamdar\_input        &amp; integer &amp;  1 &amp; 50000000 &amp; max\_tamdar\_input
+\\ max\_synop\_input         &amp; integer &amp;  1 &amp; 50000000 &amp; max\_synop\_input
+\\ max\_geoamv\_input        &amp; integer &amp;  1 &amp; 30000000 &amp; max\_geoamv\_input
+\\ max\_polaramv\_input      &amp; integer &amp;  1 &amp; 30000000 &amp; max\_polaramv\_input
+\\ max\_airep\_input         &amp; integer &amp;  1 &amp; 20000000 &amp; max\_airep\_input
+\\ max\_satem\_input         &amp; integer &amp;  1 &amp; 50000000 &amp; max\_satem\_input
+\\ max\_pilot\_input         &amp; integer &amp;  1 &amp; 30000000 &amp; max\_pilot\_input
+\\ max\_radar\_input         &amp; integer &amp;  1 &amp; 10000000 &amp; max\_radar\_input
+\\ max\_rain\_input          &amp; integer &amp;  1 &amp; 10000000 &amp; max\_rain\_input
+\\ max\_metar\_input         &amp; integer &amp;  1 &amp; 30000000 &amp; max\_metar\_input
+\\ max\_gpspw\_input         &amp; integer &amp;  1 &amp; 40000000 &amp; max\_gpspw\_input
+\\ max\_ships\_input         &amp; integer &amp;  1 &amp; 20000000 &amp; max\_ships\_input
+\\ max\_profiler\_input      &amp; integer &amp;  1 &amp; 30000000 &amp; max\_profiler\_input
+\\ max\_bogus\_input         &amp; integer &amp;  1 &amp; 50000000 &amp; max\_bogus\_input
+\\ max\_buoy\_input          &amp; integer &amp;  1 &amp; 30000000 &amp; max\_buoy\_input
+\\ max\_ssmi\_rv\_input      &amp; integer &amp;  1 &amp; 30000000 &amp; max\_ssmi\_rv\_input
+\\ max\_ssmi\_tb\_input      &amp; integer &amp;  1 &amp; 30000000 &amp; max\_ssmi\_tb\_input
+\\ max\_ssmt1\_input         &amp; integer &amp;  1 &amp; 30000000 &amp; max\_ssmt1\_input
+\\ max\_ssmt2\_input         &amp; integer &amp;  1 &amp; 30000000 &amp; max\_ssmt2\_input
+\\ max\_qscat\_input         &amp; integer &amp;  1 &amp; 50000000 &amp; max\_qscat\_input
+\\ max\_gpsref\_input        &amp; integer &amp;  1 &amp; 80000000 &amp; max\_gpsref\_input
+\\ max\_airsr\_input         &amp; integer &amp;  1 &amp; 10000000 &amp; max\_airsr\_input
+\\ max\_tovs\_input          &amp; integer &amp;  1 &amp; 10000000 &amp; max\_tovs\_input
+\\ max\_ssmis\_input         &amp; integer &amp;  1 &amp; 10000000 &amp; max\_ssmis\_input
+\\ report\_start             &amp; integer &amp;  1 &amp; 1        &amp; report\_start
+\\ report\_end               &amp; integer &amp;  1 &amp; 10000000 &amp; report\_end
+\\ tovs\_start               &amp; integer &amp;  1 &amp; 1        &amp; tovs\_start
+\\ tovs\_end                 &amp; integer &amp;  1 &amp; 10000000 &amp; tovs\_end
+\\ gpsref\_thinning          &amp; logical &amp;  1 &amp; .false.  &amp; gpsref\_thinning
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar6}
+\\ outer\_loop\_restart      &amp; logical &amp;  1 &amp; .false.  &amp; outer\_loop\_restart
+\\ max\_ext\_its             &amp; integer &amp;  1 &amp; 1        &amp; max\_ext\_its
+\\ ntmax                     &amp; integer &amp;  note\endnote{\label{maxoutits}``max\_outer\_iterations'', which is set in the file \texttt{WRFDA/frame/module\_driver\_constants.F}. Default value is 30.} &amp;  200      &amp; ntmax
+\\ nsave                     &amp; integer &amp;  1 &amp; 4        &amp; nsave
+\\ write\_interval           &amp; integer &amp;  1 &amp; 5        &amp; write\_interval
+\\ eps                       &amp; real    &amp;  note\textsuperscript{\ref{maxoutits}} &amp; 0.01     &amp; eps
+\\ precondition\_cg          &amp; logical &amp;  1 &amp; .false.  &amp;  precondition\_cg
+\\ precondition\_factor      &amp; real    &amp;  1 &amp; 1.0      &amp;  precondition\_factor
+\\ use\_lanczos              &amp; logical &amp;  1 &amp; .false.  &amp; use\_lanczos
+\\ read\_lanczos             &amp; logical &amp;  1 &amp; .false.  &amp; read\_lanczos
+\\ write\_lanczos            &amp; logical &amp;  1 &amp; .false.  &amp; write\_lanczos
+\\ orthonorm\_gradient       &amp; logical &amp;  1 &amp; .false.  &amp; orthonorm\_gradient
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar7}
+\\ cv\_options               &amp; integer &amp;  1 &amp; 5        &amp; cv\_options
+\\ cloud\_cv\_options        &amp; integer &amp;  1 &amp; 1        &amp; cloud\_cv\_options
+\\ as1                       &amp; real    &amp;  note\endnote{\label{3maxoutits}3 * ``max\_outer\_iterations'', which is set in the file \texttt{WRFDA/frame/module\_driver\_constants.F}. Default value of max\_outer\_iterations is 30.} &amp; -1.0    &amp; as1
+\\ as2                       &amp; real    &amp;  note\textsuperscript{\ref{3maxoutits}} &amp; -1.0    &amp; as2
+\\ as3                       &amp; real    &amp;  note\textsuperscript{\ref{3maxoutits}} &amp; -1.0    &amp; as3
+\\ as4                       &amp; real    &amp;  note\textsuperscript{\ref{3maxoutits}} &amp; -1.0    &amp; as4
+\\ as5                       &amp; real    &amp;  note\textsuperscript{\ref{3maxoutits}} &amp; -1.0    &amp; as5
+\\ do\_normalize             &amp; logical &amp;  1 &amp; .false.  &amp; do\_normalize Do normalize
+\\ use\_rf                   &amp; logical &amp;  1 &amp; .true.   &amp; use\_rf Use recursive filters
+\\ rf\_passes                &amp; integer &amp;  1 &amp; 6        &amp; rf\_passes
+\\ var\_scaling1             &amp; real    &amp;  note\textsuperscript{\ref{maxoutits}} &amp;  1.0      &amp; var\_scaling1
+\\ var\_scaling2             &amp; real    &amp;  note\textsuperscript{\ref{maxoutits}} &amp;  1.0      &amp; var\_scaling2
+\\ var\_scaling3             &amp; real    &amp;  note\textsuperscript{\ref{maxoutits}} &amp;  1.0      &amp; var\_scaling3
+\\ var\_scaling4             &amp; real    &amp;  note\textsuperscript{\ref{maxoutits}} &amp;  1.0      &amp; var\_scaling4
+\\ var\_scaling5             &amp; real    &amp;  note\textsuperscript{\ref{maxoutits}} &amp;  1.0      &amp; var\_scaling5
+\\ var\_scaling6             &amp; real    &amp;  note\textsuperscript{\ref{maxoutits}} &amp;  1.0      &amp; var\_scaling6
+\\ var\_scaling7             &amp; real    &amp;  note\textsuperscript{\ref{maxoutits}} &amp;  1.0      &amp; var\_scaling7
+\\ var\_scaling8             &amp; real    &amp;  note\textsuperscript{\ref{maxoutits}} &amp;  1.0      &amp; var\_scaling8
+\\ var\_scaling9             &amp; real    &amp;  note\textsuperscript{\ref{maxoutits}} &amp;  1.0      &amp; var\_scaling9
+\\ len\_scaling1             &amp; real    &amp;  note\textsuperscript{\ref{maxoutits}} &amp;  1.0      &amp; len\_scaling1
+\\ len\_scaling2             &amp; real    &amp;  note\textsuperscript{\ref{maxoutits}} &amp;  1.0      &amp; len\_scaling2
+\\ len\_scaling3             &amp; real    &amp;  note\textsuperscript{\ref{maxoutits}} &amp;  1.0      &amp; len\_scaling3
+\\ len\_scaling4             &amp; real    &amp;  note\textsuperscript{\ref{maxoutits}} &amp;  1.0      &amp; len\_scaling4
+\\ len\_scaling5             &amp; real    &amp;  note\textsuperscript{\ref{maxoutits}} &amp;  1.0      &amp; len\_scaling5
+\\ len\_scaling6             &amp; real    &amp;  note\textsuperscript{\ref{maxoutits}} &amp;  1.0      &amp; len\_scaling6
+\\ len\_scaling7             &amp; real    &amp;  note\textsuperscript{\ref{maxoutits}} &amp;  1.0      &amp; len\_scaling7
+\\ len\_scaling8             &amp; real    &amp;  note\textsuperscript{\ref{maxoutits}} &amp;  1.0      &amp; len\_scaling8
+\\ len\_scaling9             &amp; real    &amp;  note\textsuperscript{\ref{maxoutits}} &amp;  1.0      &amp; len\_scaling9
+\\ je\_factor                &amp; real    &amp;  1 &amp; 1.0      &amp; je\_factor
+\\ power\_truncation         &amp; real    &amp;  1 &amp; 1.0      &amp; power\_truncation
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar8}
+\\ def\_sub\_domain          &amp; logical &amp;  1 &amp; .false.  &amp; def\_sub\_domain
+\\ x\_start\_sub\_domain     &amp; real    &amp;  1 &amp; 1.0      &amp; x\_start\_sub\_domain
+\\ y\_start\_sub\_domain     &amp; real    &amp;  1 &amp; 1.0      &amp; y\_start\_sub\_domain
+\\ x\_end\_sub\_domain       &amp; real    &amp;  1 &amp; 1.0e10   &amp; x\_end\_sub\_domain
+\\ y\_end\_sub\_domain       &amp; real    &amp;  1 &amp; 1.0e10   &amp; y\_end\_sub\_domain
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar9}
+\\ stdout                    &amp; integer &amp;  1 &amp; 6         &amp; stdout
+\\ stderr                    &amp; integer &amp;  1 &amp; 0         &amp; stderr
+\\ trace\_unit               &amp; integer &amp;  1 &amp; 7         &amp; trace\_unit
+\\ trace\_pe                 &amp; integer &amp;  1 &amp; 0         &amp; trace\_pe
+\\ trace\_repeat\_head       &amp; integer &amp;  1 &amp; 10        &amp; trace\_repeat\_head
+\\ trace\_repeat\_body       &amp; integer &amp;  1 &amp; 10        &amp; trace\_repeat\_body
+\\ trace\_max\_depth         &amp; integer &amp;  1 &amp; 30        &amp; trace\_max\_depth
+\\ trace\_use                &amp; logical &amp;  1 &amp; .false.   &amp; trace\_use
+\\ trace\_use\_frequent      &amp; logical &amp;  1 &amp; .false.   &amp; trace\_use\_frequent
+\\ trace\_use\_dull          &amp; logical &amp;  1 &amp; .false.    &amp; trace\_use\_dull
+\\ trace\_memory             &amp; logical &amp;  1 &amp; .true.    &amp; trace\_memory
+\\ trace\_all\_pes           &amp; logical &amp;  1 &amp; .false.   &amp; trace\_all\_pes
+\\ trace\_csv                &amp; logical &amp;  1 &amp; .true.    &amp; trace\_csv
+\\ use\_html                 &amp; logical &amp;  1 &amp; .true.    &amp; use\_html
+\\ warnings\_are\_fatal      &amp; logical &amp;  1 &amp; .false.   &amp; warnings\_are\_fatal
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar10}
+\\ test\_transforms          &amp; logical &amp;  1 &amp; .false.  &amp; test\_transforms
+\\ test\_gradient            &amp; logical &amp;  1 &amp; .false.  &amp; test\_gradient
+\\ test\_statistics          &amp; logical &amp;  1 &amp; .false.  &amp; test\_statistics
+\\ interpolate\_stats        &amp; logical &amp;  1 &amp; .false.  &amp; interpolate\_stats
+\\ be\_eta                   &amp; real    &amp; 99 &amp; 0.0      &amp; interpolate\_stats
+\\ test\_dm\_exact           &amp; logical &amp;  1 &amp; .false.  &amp; test\_dm\_exact
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar11}
+\\ cv\_options\_hum          &amp; integer &amp;  1 &amp; 1        &amp; cv\_options\_hum
+\\ check\_rh                 &amp; integer &amp;  1 &amp; 0        &amp; check\_rh
+\\ set\_omb\_rand\_fac       &amp; real    &amp;  1 &amp; 1.0      &amp; set\_omb\_rand\_fac
+\\ seed\_array1              &amp; integer &amp;  1 &amp; 0        &amp; seed\_array1
+\\ seed\_array2              &amp; integer &amp;  1 &amp; 0        &amp; seed\_array2
+\\ sfc\_assi\_options        &amp; integer &amp;  1 &amp; 1        &amp; sfc\_assi\_options
+\\ calculate\_cg\_cost\_fn   &amp; logical &amp;  1 &amp; .false.  &amp; calculate\_cg\_cost\_fn
+\\ lat\_stats\_option        &amp; logical &amp;  1 &amp; .false.  &amp; lat\_stats\_option
+\\ interp\_option            &amp; integer &amp;  1 &amp; 1        &amp; interp\_option
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar12}
+\\ balance\_type             &amp; integer &amp;  1 &amp; 1        &amp; balance\_type
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar13}
+\\ vert\_corr                &amp; integer &amp;  1 &amp; 2        &amp; vert\_corr
+\\ vertical\_ip              &amp; integer &amp;  1 &amp; 0        &amp; vertical\_ip
+\\ vert\_evalue              &amp; integer &amp;  1 &amp; 1        &amp; vert\_evalue
+\\ max\_vert\_var1           &amp; real    &amp;  1 &amp; 99.0     &amp; max\_vert\_var1
+\\ max\_vert\_var2           &amp; real    &amp;  1 &amp; 99.0     &amp; max\_vert\_var2
+\\ max\_vert\_var3           &amp; real    &amp;  1 &amp; 99.0     &amp; max\_vert\_var3
+\\ max\_vert\_var4           &amp; real    &amp;  1 &amp; 99.0     &amp; max\_vert\_var4
+\\ max\_vert\_var5           &amp; real    &amp;  1 &amp; 99.0     &amp; max\_vert\_var5
+\\ max\_vert\_var6           &amp; real    &amp;  1 &amp; 99.0     &amp; max\_vert\_var6
+\\ max\_vert\_var7           &amp; real    &amp;  1 &amp; 99.0     &amp; max\_vert\_var7
+\\ max\_vert\_var8           &amp; real    &amp;  1 &amp; 99.0     &amp; max\_vert\_var8
+\\ max\_vert\_var9           &amp; real    &amp;  1 &amp; 99.0     &amp; max\_vert\_var9
+\\ max\_vert\_var\_alpha     &amp; real    &amp;  1 &amp; 99.0     &amp; max\_vert\_var\_alpha
+\\ psi\_chi\_factor          &amp; real    &amp;  1 &amp; 1.0      &amp; psi\_chi\_factor
+\\ psi\_t\_factor            &amp; real    &amp;  1 &amp; 1.0      &amp; psi\_t\_factor
+\\ psi\_ps\_factor           &amp; real    &amp;  1 &amp; 1.0      &amp; psi\_ps\_factor
+\\ psi\_rh\_factor           &amp; real    &amp;  1 &amp; 1.0      &amp; psi\_rh\_factor
+\\ chi\_u\_t\_factor         &amp; real    &amp;  1 &amp; 1.0      &amp; chi\_u\_t\_factor
+\\ chi\_u\_ps\_factor        &amp; real    &amp;  1 &amp; 1.0      &amp; chi\_u\_ps\_factor
+\\ chi\_u\_rh\_factor        &amp; real    &amp;  1 &amp; 1.0      &amp; chi\_u\_rh\_factor
+\\ t\_u\_rh\_factor          &amp; real    &amp;  1 &amp; 1.0      &amp; t\_u\_rh\_factor
+\\ ps\_u\_rh\_factor         &amp; real    &amp;  1 &amp; 1.0      &amp; ps\_u\_rh\_factor
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar14}
+\\ rttov\_emis\_atlas\_ir    &amp; integer &amp;  1 &amp; 0        &amp; rttov\_emis\_atlas\_ir
+\\ rttov\_emis\_atlas\_mw    &amp; integer &amp;  1 &amp; 0        &amp; rttov\_emis\_atlas\_mw
+\\ rtminit\_print            &amp; integer &amp;  1 &amp; 1        &amp; rtminit\_print
+\\ rtminit\_nsensor          &amp; integer &amp;  1 &amp; 1        &amp; rtminit\_nsensor
+\\ rtminit\_platform         &amp; integer &amp;  note\textsuperscript{\ref{maxinst}} &amp; -1       &amp; rtminit\_platform
+\\ rtminit\_satid            &amp; integer &amp;  note\textsuperscript{\ref{maxinst}} &amp; -1.0     &amp; rtminit\_satid
+\\ rtminit\_sensor           &amp; integer &amp;  note\textsuperscript{\ref{maxinst}} &amp; -1.0     &amp; rtminit\_sensor
+\\ rad\_monitoring           &amp; integer &amp;  note\textsuperscript{\ref{maxinst}} &amp; 0        &amp; rad\_monitoring
+\\ thinning\_mesh            &amp; real    &amp;  note\textsuperscript{\ref{maxinst}} &amp; 60.0     &amp; thinning\_mesh
+\\ thinning                  &amp; logical &amp;  1 &amp; .false.  &amp; thinning
+\\ read\_biascoef            &amp; logical &amp;  1 &amp; .false.  &amp; read\_biascoef
+\\ biascorr                  &amp; logical &amp;  1 &amp; .false.  &amp; biascorr
+\\ biasprep                  &amp; logical &amp;  1 &amp; .false.  &amp; biasprep
+\\ rttov\_scatt              &amp; logical &amp;  1 &amp; .false.  &amp; rttov\_scatt
+\\ write\_profile            &amp; logical &amp;  1 &amp; .false.  &amp; write\_profile
+\\ write\_jacobian           &amp; logical &amp;  1 &amp; .false.  &amp; write\_jacobian
+\\ qc\_rad                   &amp; logical &amp;  1 &amp; .true.   &amp; qc\_rad
+\\ write\_iv\_rad\_ascii     &amp; logical &amp;  1 &amp; .false.  &amp; write\_iv\_rad\_ascii
+\\ write\_oa\_rad\_ascii     &amp; logical &amp;  1 &amp; .false.  &amp; write\_oa\_rad\_ascii
+\\ write\_filtered\_rad      &amp; logical &amp;  1 &amp; .false.  &amp; write\_filtered\_rad
+\\ use\_error\_factor\_rad   &amp; logical &amp;  1 &amp; .false.  &amp; use\_error\_factor\_rad
+\\ use\_landem               &amp; logical &amp;  1 &amp; .false.  &amp; use\_landem
+\\ use\_antcorr              &amp; logical &amp;  note\textsuperscript{\ref{maxinst}} &amp; .false.  &amp; use\_antcorr
+\\ use\_mspps\_emis          &amp; logical &amp;  note\textsuperscript{\ref{maxinst}} &amp; .false.  &amp; use\_mspps\_emis
+\\ use\_mspps\_ts            &amp; logical &amp;  note\textsuperscript{\ref{maxinst}} &amp; .false.  &amp; use\_mspps\_ts
+\\ mw\_emis\_sea             &amp; integer &amp;  1 &amp; 1        &amp; mw\_emis\_sea
+\\ tovs\_min\_transfer       &amp; integer &amp;  1 &amp; 10       &amp; tovs\_min\_transfer
+\\ tovs\_batch               &amp; logical &amp;  1 &amp; .false.  &amp; tovs\_batch
+\\ rtm\_option               &amp; integer &amp;  1 &amp; 1        &amp; rtm\_option
+\\ use\_crtm\_kmatrix        &amp; logical &amp;  1 &amp; .false.  &amp; use\_crtm\_kmatrix
+\\ use\_rttov\_kmatrix       &amp; logical &amp;  1 &amp; .false.  &amp; use\_rttov\_kmatrix
+\\ crtm\_cloud               &amp; logical &amp;  1 &amp; .false.  &amp; crtm\_cloud
+\\ only\_sea\_rad            &amp; logical &amp;  1 &amp; .false.  &amp; only\_sea\_rad
+\\ use\_pseudo\_rad          &amp; logical &amp;  1 &amp; .false.  &amp; use\_pseudo\_rad
+\\ pseudo\_rad\_platid       &amp; integer &amp;  1 &amp; 1        &amp; pseudo\_rad\_platid
+\\ pseudo\_rad\_satid        &amp; integer &amp;  1 &amp; 16        &amp; pseudo\_rad\_satid
+\\ pseudo\_rad\_senid        &amp; integer &amp;  1 &amp; 3        &amp; pseudo\_rad\_senid
+\\ pseudo\_rad\_ichan        &amp; integer &amp;  1 &amp; 6        &amp; pseudo\_rad\_ichan
+\\ pseudo\_rad\_lat          &amp; real    &amp;  1 &amp; 35.0     &amp; pseudo\_rad\_lat
+\\ pseudo\_rad\_lon          &amp; real    &amp;  1 &amp; 130.0     &amp; pseudo\_rad\_lon
+\\ pseudo\_rad\_inv          &amp; real    &amp;  1 &amp; 1.0       &amp; pseudo\_rad\_inv
+\\ pseudo\_rad\_err          &amp; real    &amp;  1 &amp; 1.0       &amp; pseudo\_rad\_err
+\\ use\_simulated\_rad       &amp; logical &amp;  1 &amp; .false.  &amp; use\_simulated\_rad
+\\ simulated\_rad\_io        &amp; logical &amp;  1 &amp; .false.  &amp; simulated\_rad\_io
+\\ simulated\_rad\_ngrid     &amp; integer &amp;  1 &amp; 0        &amp; simulated\_rad\_ngrid
+\\ use\_varbc                &amp; logical &amp;  1 &amp; .false.  &amp; use\_varbc
+\\ freeze\_varbc             &amp; logical &amp;  1 &amp; .false.  &amp; freeze\_varbc
+\\ varbc\_factor             &amp; real    &amp;  1 &amp; 1.0      &amp; varbc\_factor
+\\ varbc\_nbgerr             &amp; integer &amp; 1 &amp; 5000     &amp; varbc\_nbgerr
+\\ varbc\_nobsmin            &amp; integer &amp; 1 &amp; 10       &amp; varbc\_nobsmin
+\\ use\_clddet\_mmr          &amp; logical &amp; 1 &amp; .false.  &amp; use\_clddet\_mmr
+\\ use\_clddet\_ecmwf        &amp; logical &amp; 1 &amp; .false.  &amp; use\_clddet\_ecmwf
+\\ airs\_warmest\_fov        &amp; logical &amp; 1 &amp; .false.  &amp; airs\_warmest\_fov
+\\ use\_satcv                &amp; logical &amp; 2 &amp; .false.  &amp; use\_satcv
+\\ use\_blacklist\_rad       &amp; logical &amp; 1 &amp; .false.  &amp; use\_blacklist\_rad
+\\ calc\_weightfunc          &amp; logical &amp; 1 &amp; .false.  &amp; calc\_weightfunc
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar15}
+\\ num\_pseudo               &amp; integer &amp; 1 &amp; 0        &amp; num\_pseudo
+\\ pseudo\_x                 &amp; real    &amp; 1 &amp; 1.0      &amp; pseudo\_x
+\\ pseudo\_y                 &amp; real    &amp; 1 &amp; 1.0      &amp; pseudo\_y
+\\ pseudo\_z                 &amp; real    &amp; 1 &amp; 1.0      &amp; pseudo\_z
+\\ pseudo\_val               &amp; real    &amp; 1 &amp; 1.0      &amp; pseudo\_val
+\\ pseudo\_err               &amp; real    &amp; 1 &amp; 1.0      &amp; pseudo\_err
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar16}
+\\ alphacv\_method           &amp; integer &amp; 1 &amp; 2        &amp; alphacv\_method
+\\ ensdim\_alpha             &amp; integer &amp; 1 &amp; 0        &amp; ensdim\_alpha
+\\ alpha\_truncation         &amp; integer &amp; 1 &amp; 0        &amp; alpha\_truncation
+\\ alpha\_corr\_type         &amp; integer &amp; 1 &amp; 3        &amp; alpha\_corr\_type
+\\ alpha\_corr\_scale        &amp; real    &amp; 1 &amp; 1500.0   &amp; alpha\_corr\_scale          km
+\\ alpha\_std\_dev           &amp; real    &amp; 1 &amp; 1.0      &amp; alpha\_std\_dev
+\\ alpha\_vertloc            &amp; logical &amp; 1 &amp; .false.  &amp; alpha\_vertloc
+\\ alpha\_hydrometeors       &amp; logical &amp; 1 &amp; .false.  &amp; alpha\_hydrometeors
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar17}
+\\ analysis\_type            &amp; string  &amp; 1 &amp; ``3D-VAR'' &amp; analysis\_type
+\\ sensitivity\_option       &amp; integer &amp; 1 &amp; -1       &amp; sensitivity\_option
+\\ adj\_sens                 &amp; logical &amp; 1 &amp; .false.  &amp; adj\_sens
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar18}
+\\ analysis\_date            &amp; string  &amp; 1 &amp; ``2002-08-03\_00:00:00.0000'' &amp;  analysis\_date
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar19}
+\\ pseudo\_var               &amp; string  &amp; 1 &amp; ``t'' &amp;  pseudo\_var
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar20}
+\\ documentation\_url        &amp; string  &amp; 1 &amp; note\endnote{``http://www.mmm.ucar.edu/people/wrfhelp/wrfvar/code/trunk''} &amp;  documentation\_url
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar21}
+\\ time\_window\_min         &amp; string  &amp; 1 &amp; ``2002-08-02\_21:00:00.0000'' &amp;  time\_window\_min
+\\ \hspace{10 pt}\textbf{\&amp;wrfvar22}
+\\ time\_window\_max         &amp; string  &amp; 1 &amp; ``2002-08-03\_03:00:00.0000'' &amp;  time\_window\_max
+\\ \hspace{10 pt}\textbf{\&amp;perturbation}
+\\ jcdfi\_use                &amp; logical &amp;  1 &amp; .false.  &amp;   jcdfi\_use   JcDFI on/off
+\\ jcdfi\_diag               &amp; integer &amp;  1 &amp; 1        &amp;   jcdfi\_diag  JcDFI diag. on/off
+\\ jcdfi\_penalty            &amp; real    &amp;  1 &amp; 10.      &amp;   jcdfi\_penalty    Penalty parameter for JcDF
+\\ enable\_identity          &amp; logical &amp;  1 &amp; .false.  &amp;   enable identity AD/TL model
+\\ trajectory\_io            &amp; logical &amp;  1 &amp; .true.   &amp;  0:disk IO;1:memory IO
+\\ var4d\_detail\_out        &amp; logical &amp;  1 &amp; .false.  &amp;  true:output perturbation, gradient to disk
+\end{longtabu}
+\theendnotes
+
+\section{Namelist formatting and registry details}
+\label{namelist_details}
+Have to use this section to mention how the registry handles default values, vector values, and module\_driver\_constants.
+

Added: trunk/wrfvar/3DVAR_technote/quickstart.tex
===================================================================
--- trunk/wrfvar/3DVAR_technote/quickstart.tex                                (rev 0)
+++ trunk/wrfvar/3DVAR_technote/quickstart.tex        2013-04-26 21:50:25 UTC (rev 422)
@@ -0,0 +1,14 @@
+\chapter{WRFDA\textendash3DVAR Quick Start Guide}
+\label{quickstart}
+
+This opening section will serve as a guide for users who do not care about the specific details of the WRFDA\textendash3DVAR system or data assimilation in general, but just wish to get the system up and running.
+
+\section{Installing WRFDA}
+\label{install}
+
+\subsubsection{Obtaining the WRFDA source code}
+\label{source}
+
+Users can download the WRFDA source code from \url{http://www.mmm.ucar.edu/wrf/users/wrfda/download/get_source.html}. You will be required to register (for free) with an email address (which will be kept confidential) before downloading the code. After the source code has been downloaded, it must be unzipped (gunzip WRFDAV3.5.TAR.gz) and untarred (tar -xf WRFDAV3.5.TAR), which should result in the \texttt{WRFDA} directory being created.
+
+

</font>
</pre>