Changeset 11311
- Timestamp:
- 2019-07-19T18:03:07+02:00 (5 years ago)
- Location:
- NEMO/branches/2019/dev_r11233_obsasm_docfixes/doc/latex/NEMO/subfiles
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/dev_r11233_obsasm_docfixes/doc/latex/NEMO/subfiles/chap_ASM.tex
r11307 r11311 15 15 \begin{tabular}{l||l|m{0.65\linewidth}} 16 16 Release & Author & Modifications \\ 17 {\em 4.0} & {\em D. J. Lea} & {\em NEMO 4.0 updates} \\17 {\em 4.0} & {\em D. J. Lea} & {\em \NEMO 4.0 updates} \\ 18 18 {\em 3.4} & {\em D. J. Lea, M. Martin, K. Mogensen, A. Weaver} & {\em Initial version} \\ 19 19 \end{tabular} -
NEMO/branches/2019/dev_r11233_obsasm_docfixes/doc/latex/NEMO/subfiles/chap_OBS.tex
r11307 r11311 15 15 \begin{tabular}{l||l|m{0.65\linewidth}} 16 16 Release & Author & Modifications \\ 17 {\em 4.0} & {\em D. J. Lea} & {\em NEMO 4.0 updates} \\17 {\em 4.0} & {\em D. J. Lea} & {\em \NEMO 4.0 updates} \\ 18 18 {\em 3.6} & {\em M. Martin, A. Ryan} & {\em Add averaging operator, standalone obs oper} \\ 19 19 {\em 3.4} & {\em D. J. Lea, M. Martin, ...} & {\em Initial version} \\ … … 25 25 26 26 The observation and model comparison code, the observation operator (OBS), reads in observation files 27 (profile temperature and salinity, sea surface temperature, sea level anomaly, sea ice concentration, and velocity) and calculates an interpolated model equivalent value at the observation location and nearest model time step.27 (profile temperature and salinity, sea surface temperature, sea level anomaly, sea ice concentration, and velocity) and calculates an interpolated model equivalent value at the observation location and nearest model time step. 28 28 The resulting data are saved in a ``feedback'' file (or files). 29 29 The code was originally developed for use with the NEMOVAR data assimilation code, 30 30 but can be used for validation or verification of the model or with any other data assimilation system. 31 31 32 The OBS code is called from \mdl{nemogcm} for model initialisation and to calculate the model equivalent values for observations on the 0th time step.33 The code is then called again after each time step from \mdl{step}.32 The OBS code is called from \mdl{nemogcm} for model initialisation and to calculate the model equivalent values for observations on the 0th time step. 33 The code is then called again after each time step from \mdl{step}. 34 34 The code is only activated if the \ngn{namobs} namelist logical \np{ln\_diaobs} is set to true. 35 35 … … 46 46 the observation operator code can calculate equivalent night-time average model SST fields by 47 47 setting the namelist value \np{ln\_sstnight} to true. 48 Otherwise (by default) the model value from the nearest time step to the observation time is used.48 Otherwise (by default) the model value from the nearest time step to the observation time is used. 49 49 50 50 The code is controlled by the namelist \ngn{namobs}. 51 51 See the following sections for more details on setting up the namelist. 52 52 53 \autoref{sec:OBS_example} introduces a test example of the observation operator codeincluding53 In \autoref{sec:OBS_example} a test example of the observation operator code is introduced, including 54 54 where to obtain data and how to setup the namelist. 55 \autoref{sec:OBS_details} introduces some more technical details of the different observation types used and 56 also show sa more complete namelist.57 \autoref{sec:OBS_theory} introduces some of the theoretical aspects of the observation operatorincluding55 In \autoref{sec:OBS_details} some more technical details of the different observation types used are introduced, and we 56 also show a more complete namelist. 57 In \autoref{sec:OBS_theory} some of the theoretical aspects of the observation operator are described including 58 58 interpolation methods and running on multiple processors. 59 \autoref{sec:OBS_sao} describes the standalone observation operator code.60 \autoref{sec:OBS_obsutils} introduces some utilities to help workingwith the files produced by the OBS code.59 In \autoref{sec:OBS_sao} the standalone observation operator code is described. 60 In \autoref{sec:OBS_obsutils} we describe some utilities to help work with the files produced by the OBS code. 61 61 62 62 % ================================================================ … … 68 68 In this section an example of running the observation operator code is described using 69 69 profile observation data which can be freely downloaded. 70 It shows how to adapt an existing run and build of NEMO to run the observation operator. Note also the observation operator and the assimilation increments code are run in the \np{ORCA2\_ICE\_OBS} SETTE test.70 It shows how to adapt an existing run and build of \NEMO to run the observation operator. Note also the observation operator and the assimilation increments code are run in the \np{ORCA2\_ICE\_OBS} SETTE test. 71 71 72 72 \begin{enumerate} … … 89 89 \end{cmds} 90 90 91 \item Include the following in the NEMO namelist to run the observation operator on this data:91 \item Include the following in the \NEMO namelist to run the observation operator on this data: 92 92 \end{enumerate} 93 93 … … 108 108 A number of utilities are now provided to plot the feedback files, convert and recombine the files. 109 109 These are explained in more detail in \autoref{sec:OBS_obsutils}. 110 Utilit es to convert other input data formats into the feedback format are also described in110 Utilities to convert other input data formats into the feedback format are also described in 111 111 \autoref{sec:OBS_obsutils}. 112 112 … … 558 558 In those cases the model counterpart should be calculated by averaging the model grid points over 559 559 the same size as the footprint. 560 NEMO therefore has the capability to specify either an interpolation or an averaging560 \NEMO therefore has the capability to specify either an interpolation or an averaging 561 561 (for surface observation types only). 562 562 … … 585 585 \subsubsection{Horizontal interpolation} 586 586 587 Consider an observation point ${\mathrm P}$ with withlongitude and latitude (${\lambda_{}}_{\mathrm P}$, $\phi_{\mathrm P}$) and587 Consider an observation point ${\mathrm P}$ with longitude and latitude (${\lambda_{}}_{\mathrm P}$, $\phi_{\mathrm P}$) and 588 588 the four nearest neighbouring model grid points ${\mathrm A}$, ${\mathrm B}$, ${\mathrm C}$ and ${\mathrm D}$ with 589 589 longitude and latitude ($\lambda_{\mathrm A}$, $\phi_{\mathrm A}$),($\lambda_{\mathrm B}$, $\phi_{\mathrm B}$) etc. 590 All horizontal interpolation methods implemented in NEMO estimate the value of a model variable $x$ at point $P$ as590 All horizontal interpolation methods implemented in \NEMO estimate the value of a model variable $x$ at point $P$ as 591 591 a weighted linear combination of the values of the model variables at the grid points ${\mathrm A}$, ${\mathrm B}$ etc.: 592 592 … … 680 680 the averaging is likely need to cover. 681 681 \item The longitudes and latitudes of the grid points surrounding the nearest model grid box are extracted using 682 existing mpiroutines.682 existing MPI routines. 683 683 \item The weights for each grid point associated with each observation are calculated, 684 684 either for radial or rectangular footprints. … … 723 723 \subsection{Grid search} 724 724 725 For many grids used by the NEMO model, such as the ORCA family, the horizontal grid coordinates $i$ and $j$ are not simple functions of latitude and longitude.725 For many grids used by the \NEMO model, such as the ORCA family, the horizontal grid coordinates $i$ and $j$ are not simple functions of latitude and longitude. 726 726 Therefore, it is not always straightforward to determine the grid points surrounding any given observational position. 727 727 Before the interpolation can be performed, a search algorithm is then required to determine the corner points of … … 845 845 At the bottom boundary, this is done using the land-ocean mask. 846 846 847 For profile observation types we do both vertical and horizontal interpolation. NEMO has a generalised vertical coordinate system this means the vertical level depths can vary with location. Therefore, it is necessary first to perform vertical interpolation of the model value to the observation depths for each of the four surrounding grid points. After this the model values, at these points, at the observation depth, are horizontally interpolated to the observation location.847 For profile observation types we do both vertical and horizontal interpolation. \NEMO has a generalised vertical coordinate system this means the vertical level depths can vary with location. Therefore, it is necessary first to perform vertical interpolation of the model value to the observation depths for each of the four surrounding grid points. After this the model values, at these points, at the observation depth, are horizontally interpolated to the observation location. 848 848 849 849 \newpage … … 862 862 The observation operator maps model variables to observation space. This is normally done while the model is running, i.e. online, it is possible to apply this mapping offline without running the model with the \textbf{standalone observation operator} (SAO). The process is divided into an initialisation phase, an interpolation phase and an output phase. 863 863 During the interpolation phase the SAO populates the model arrays by 864 reading saved model fields from disk. The interpolation and the output phases use the same OBS code described in the prece eding sections.864 reading saved model fields from disk. The interpolation and the output phases use the same OBS code described in the preceding sections. 865 865 866 866 There are two ways of exploiting the standalone capacity. … … 893 893 894 894 The simplest way to use the executable is to edit and append the \textbf{sao.nml} namelist to 895 a full NEMO namelist and then to run the executable as if it were nemo.exe.895 a full \NEMO namelist and then to run the executable as if it were nemo.exe. 896 896 897 897 %-------------------------------------------------------------------------------------------------------- … … 900 900 \subsection{Configuring the standalone observation operator} 901 901 The observation files and settings understood by \ngn{namobs} have been outlined in the online observation operator section. 902 In addition there are two further namelists wich control the operation of the SAO. 903 \textbf{namsao} which controls the input model fields and \textbf{namcl4} which 904 controls the production of class 4 files. 902 In addition is a further namelist \ngn{namsao} which used to set the input model fields for the SAO 905 903 906 904 \subsubsection{Single field} … … 912 910 \textbf{votemper}, \textbf{vosaline} and optionally \textbf{sshn} present. 913 911 914 For each field read there must be an entry in the \ textbf{namsao} namelist specifying912 For each field read there must be an entry in the \ngn{namsao} namelist specifying 915 913 the name of the file to read and the index along the \emph{time\_counter}. 916 914 For example, to read the second time counter from a single file the namelist would be. … … 959 957 If all that is needed is a single model counterpart at a regular interval then 960 958 the standard SAO is all that is required. 961 However, it is possible to extend this approach by comparing multiple forecasts, analyses, persisted analyses and959 However, just to note, it is possible to extend this approach by comparing multiple forecasts, analyses, persisted analyses and 962 960 climatologies with the same set of observations. 963 This approach is referred to as \emph{Class 4} since it is the fourth metric defined by the GODAE intercomparison project. This requires multiple runs of the SAO and running an additional utility (not currently in the NEMO repository) to combine the feedback files into one class 4 file.961 This approach is referred to as \emph{Class 4} since it is the fourth metric defined by the GODAE intercomparison project. This requires multiple runs of the SAO and running an additional utility (not currently in the \NEMO repository) to combine the feedback files into one class 4 file. 964 962 965 963 \newpage … … 969 967 970 968 For convenience some tools for viewing and processing of observation and feedback files are provided in 971 the NEMO repository.969 the \NEMO repository. 972 970 These tools include OBSTOOLS which are a collection of \fortran programs which are helpful to deal with feedback files. 973 971 They do such tasks as observation file conversion, printing of file contents, … … 979 977 \subsection{Obstools} 980 978 981 A series of \fortran utilities is provided with NEMO called OBSTOOLS.982 This are helpful in handling observation files and the feedback file output from the NEMOobservation operator. A brief description of some of the utilities follows979 A series of \fortran utilities is provided with \NEMO called OBSTOOLS. 980 This are helpful in handling observation files and the feedback file output from the observation operator. A brief description of some of the utilities follows 983 981 984 982 \subsubsection{corio2fb} … … 1003 1001 1004 1002 The program fbcomb combines multiple feedback files produced by individual processors in 1005 an MPI run of NEMO into a single feedback file.1003 an MPI run of \NEMO into a single feedback file. 1006 1004 It is called in the following way: 1007 1005 … … 1134 1132 The plotting colour range can be changed by clicking on the colour bar. 1135 1133 The title of the plot gives some basic information about the date range and depth range shown, 1136 the extreme values, and the mean and rmsvalues.1134 the extreme values, and the mean and RMS values. 1137 1135 It is possible to zoom in using a drag-box. 1138 1136 You may also zoom in or out using the mouse wheel.
Note: See TracChangeset
for help on using the changeset viewer.