Skip to content
Snippets Groups Projects
Commit 8b512a73 authored by Andrew Coward's avatar Andrew Coward
Browse files

Tidy chap_DOM.tex (closea section) and chap_misc.tex (status and debugging information)

parent e8fc2b86
No related branches found
No related tags found
No related merge requests found
......@@ -637,13 +637,6 @@ optionally decide on the fate of any freshwater imbalance over the area.
The options are explained in \autoref{sec:MISC_closea} but
it should be noted here that a successful use of these options requires
appropriate mask fields to be present in the domain configuration file.
Among the possibilities are:
\begin{forlines}
int closea_mask /* non-zero values in closed sea areas for optional masking */
int closea_mask_rnf /* non-zero values in closed sea areas with runoff locations (precip only) */
int closea_mask_emp /* non-zero values in closed sea areas with runoff locations (total emp) */
\end{forlines}
%% =================================================================================================
\subsection{Output grid files}
......
......@@ -337,17 +337,6 @@ non-reference configuration.
Options are defined through the \nam{ctl}{ctl} namelist variables.
%% =================================================================================================
\subsection{Vector optimisation}
\key{vectopt\_loop} enables the internal loops to collapse.
This is very a very efficient way to increase the length of vector calculations and thus
to speed up the model on vector computers.
% Add here also one word on NPROMA technique that has been found useless, since compiler have made significant progress during the last decade.
% Add also one word on NEC specific optimisation (Novercheck option for example)
%% =================================================================================================
\subsection{Status and debugging information output}
......@@ -366,46 +355,33 @@ on-off switches this structure also allows selection of a range of processors fo
individual reporting (where appropriate) and a time-increment option to restrict
globally collected values to specified time-step increments.
Most options within the structure are influenced by the top-level switches shown here
Options within the structure are selected by the top-level switches shown here
with their default settings:
\begin{forlines}
sn_cfctl%l_allon = .FALSE. ! IF T activate all options. If F deactivate all unless l_config is T
sn_cfctl%l_config = .TRUE. ! IF .true. then control which reports are written with the following
\end{forlines}
The first switch is a convenience option which can be used to switch on and off all
sub-options. However, if it is false then switching off all sub-options is only done
if \forcode{sn_cfctl%l\_config} is also false. Specifically, the logic is:
\begin{forlines}
IF ( sn_cfctl%l_allon ) THEN
set all suboptions .TRUE.
and set procmin, procmax and procincr so that all regions are selected ([0,10000000,1], respectively)
ELSEIF ( sn_cfctl%l_config ) THEN
honour individual settings of the suboptions from the namelist
ELSE
set all suboptions .FALSE.
ENDIF
sn_cfctl%l_runstat = .TRUE. ! switches and which areas produce reports with the proc integer settings.
sn_cfctl%l_trcstat = .FALSE. ! The default settings for the proc integers should ensure
sn_cfctl%l_oceout = .FALSE. ! that all areas report.
sn_cfctl%l_layout = .FALSE. !
sn_cfctl%l_prtctl = .FALSE. !
sn_cfctl%l_prttrc = .FALSE. !
sn_cfctl%l_oasout = .FALSE. !
sn_cfctl%procmin = 0 ! Minimum area number for reporting [default:0]
sn_cfctl%procmax = 1000000 ! Maximum area number for reporting [default:1000000]
sn_cfctl%procincr = 1 ! Increment for optional subsetting of areas [default:1]
sn_cfctl%ptimincr = 1 ! Timestep increment for writing time step progress info
\end{forlines}
Details of the suboptions follow but first an explanation of the stand-alone option:
\forcode{sn_cfctl%l_glochk}. This option modifies the action of the early warning checks
carried out in \texttt{stpctl.F90}. These checks detect probable numerical instabilites
by searching for excessive sea surface heights or velocities and salinity values
outside a sensible physical range. If breaches are detected then the default behaviour
is to locate and report the local indices of the grid-point in breach. These indices
are included in the error message that precedes the model shutdown. When true,
\forcode{sn_cfctl%l_glochk} modifies this action by performing a global location of
the various minimum and maximum values and the global indices are reported. This has
some value in locating the most severe error in cases where the first detected error
may not be the worst culprit.
Details of the suboptions follow:
\subsubsection{Control print suboptions}
\subsection{Control print suboptions}
The options that can be individually selected fall into three categories:
\begin{enumerate} \item{Time step progress information} This category includes
\begin{enumerate}
\item{Time step progress information}
This category includes
\texttt{run.stat} and \texttt{tracer.stat} files which record certain physical and
passive tracer metrics (respectively). Typical contents of \texttt{run.stat} include
global maximums of ssh, velocity; and global minimums and maximums of temperature
......@@ -414,9 +390,9 @@ produced with the same time-series data and this can easily be expanded to inclu
extra monitoring information. \texttt{tracer.stat} contains the volume-weighted
average tracer value for each passive tracer. Collecting these metrics involves
global communications and will impact on model efficiency so both these options are
disabled by default by setting the respective options, \forcode{sn\_cfctl%runstat} and
\forcode{sn\_cfctl%trcstat} to false. A compromise can be made by activating either or
both of these options and setting the \forcode{sn\_cfctl%timincr} entry to an integer
disabled by default by setting the respective options, \forcode{sn_cfctl%runstat} and
\forcode{sn_cfctl%trcstat} to false. A compromise can be made by activating either or
both of these options and setting the \forcode{sn_cfctl%timincr} entry to an integer
value greater than one. This increment determines the time-step frequency at which
the global metrics are collected and reported. This increment also applies to the
time.step file which is otherwise updated every timestep.
......@@ -427,19 +403,20 @@ produced by the first ocean process. This includes the \texttt{ocean.output} fil
which reports on all the namelist options read by the model and remains open to catch
any warning or error messages generated during execution. A \texttt{layout.dat}
file is also produced which details the MPI-decomposition used by the model. The
suboptions: \forcode{sn\_cfctl%oceout} and \forcode{sn\_cfctl%layout} can be used
suboptions: \forcode{sn_cfctl%oceout} and \forcode{sn_cfctl%layout} can be used
to activate the creation of these files by all ocean processes. For example,
when \forcode{sn\_cfctl%oceout} is true all processors produce their own version of
when \forcode{sn_cfctl%oceout} is true all processors produce their own version of
\texttt{ocean.output}. All files, beyond the the normal reporting processor (narea == 1), are
named with a \_XXXX extension to their name, where XXXX is a 4-digit area number (with
leading zeros, if required). This is useful as a debugging aid since all processes can
named with a \_XXXX extension to their name, where XXXX is a zero-padded, 4-digit area number
(more than 4 digits will be used if the processor count exceeds 9999). This is useful as
a debugging aid since all processes can
report their local conditions. Note though that these files are buffered on most UNIX
systems so bug-hunting efforts using this facility should also utilise the \fortran:
\forline|CALL FLUSH(numout)|
statement after any additional write statements to ensure that file contents reflect
the last model state. Associated with the \forcode{sn\_cfctl%oceout} option is the
the last model state. Associated with the \forcode{sn_cfctl%oceout} option is the
additional \forcode{sn\_cfctl%oasout} suboption. This does not activate its own output
file but rather activates the writing of addition information regarding the OASIS
configuration when coupling via oasis and the sbccpl routine. This information is
......@@ -452,13 +429,15 @@ useful for this purpose when dealing with configurations that can be run
on a single processor. The full details can be found in this report: \href{
http://forge.ipsl.jussieu.fr/nemo/attachment/wiki/Documentation/prtctl_NEMO_doc_v2.pdf}{The
control print option in NEMO} The switches to activate production of the control sums
of trends for either the physics or passive tracers are the \forcode{sn\_cfctl%prtctl}
and \forcode{sn\_cfctl%prttrc} suboptions, respectively. Although, perhaps, of limited use for its
of trends for either the physics or passive tracers are the \forcode{sn_cfctl%prtctl}
and \forcode{sn_cfctl%prttrc} suboptions, respectively. Although, perhaps, of limited use for its
original intention, the ability to produce these control sums of trends in specific
areas provides another tool for diagnosing model behaviour. If only the output from a
areas provides another tool for diagnosing model behaviour.
If only the output from a
select few regions is required then additional options are available to activate options
for only a simple subset of processing regions. These are: \forcode{sn\_cfctl%procmin},
\forcode{sn\_cfctl%procmax} and \forcode{sn\_cfctl%procincr} which can be used to specify
for only a simple subset of processing regions. These are: \forcode{sn_cfctl%procmin},
\forcode{sn_cfctl%procmax} and \forcode{sn_cfctl%procincr} which can be used to specify
the minimum and maximum active areas and the increment. The default values are set
such that all regions will be active. Note this subsetting can also be used to limit
which additional \texttt{ocean.output} and \texttt{layout.dat} files are produced if
......@@ -466,23 +445,6 @@ those suboptions are active.
\end{enumerate}
\begin{forlines}
sn_cfctl%l_glochk = .false. ! Range sanity checks are local (F) or global (T). Set T for debugging only
sn_cfctl%l_allon = .false. ! IF T activate all options. If F deactivate all unless l_config is T
sn_cfctl%l_config = .true. ! IF .true. then control which reports are written with the following
sn_cfctl%l_runstat = .false. ! switches and which areas produce reports with the proc integer settings.
sn_cfctl%l_trcstat = .false. ! The default settings for the proc integers should ensure
sn_cfctl%l_oceout = .false. ! that all areas report.
sn_cfctl%l_layout = .false. !
sn_cfctl%l_prtctl = .false. !
sn_cfctl%l_prttrc = .false. !
sn_cfctl%l_oasout = .false. !
sn_cfctl%procmin = 0 ! Minimum area number for reporting [default:0]
sn_cfctl%procmax = 1000000 ! Maximum area number for reporting [default:1000000]
sn_cfctl%procincr = 1 ! Increment for optional subsetting of areas [default:1]
sn_cfctl%ptimincr = 1 ! Timestep increment for writing time step progress info
\end{forlines}
\subinc{\input{../../global/epilogue}}
\end{document}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment