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. ...@@ -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 The options are explained in \autoref{sec:MISC_closea} but
it should be noted here that a successful use of these options requires it should be noted here that a successful use of these options requires
appropriate mask fields to be present in the domain configuration file. 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} \subsection{Output grid files}
......
...@@ -337,17 +337,6 @@ non-reference configuration. ...@@ -337,17 +337,6 @@ non-reference configuration.
Options are defined through the \nam{ctl}{ctl} namelist variables. 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} \subsection{Status and debugging information output}
...@@ -366,46 +355,33 @@ on-off switches this structure also allows selection of a range of processors fo ...@@ -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 individual reporting (where appropriate) and a time-increment option to restrict
globally collected values to specified time-step increments. 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: with their default settings:
\begin{forlines} \begin{forlines}
sn_cfctl%l_allon = .FALSE. ! IF T activate all options. If F deactivate all unless l_config is T sn_cfctl%l_runstat = .TRUE. ! switches and which areas produce reports with the proc integer settings.
sn_cfctl%l_config = .TRUE. ! IF .true. then control which reports are written with the following sn_cfctl%l_trcstat = .FALSE. ! The default settings for the proc integers should ensure
\end{forlines} sn_cfctl%l_oceout = .FALSE. ! that all areas report.
sn_cfctl%l_layout = .FALSE. !
The first switch is a convenience option which can be used to switch on and off all sn_cfctl%l_prtctl = .FALSE. !
sub-options. However, if it is false then switching off all sub-options is only done sn_cfctl%l_prttrc = .FALSE. !
if \forcode{sn_cfctl%l\_config} is also false. Specifically, the logic is: sn_cfctl%l_oasout = .FALSE. !
sn_cfctl%procmin = 0 ! Minimum area number for reporting [default:0]
\begin{forlines} sn_cfctl%procmax = 1000000 ! Maximum area number for reporting [default:1000000]
IF ( sn_cfctl%l_allon ) THEN sn_cfctl%procincr = 1 ! Increment for optional subsetting of areas [default:1]
set all suboptions .TRUE. sn_cfctl%ptimincr = 1 ! Timestep increment for writing time step progress info
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
\end{forlines} \end{forlines}
Details of the suboptions follow but first an explanation of the stand-alone option: Details of the suboptions follow:
\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.
\subsubsection{Control print suboptions} \subsection{Control print suboptions}
The options that can be individually selected fall into three categories: 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 \texttt{run.stat} and \texttt{tracer.stat} files which record certain physical and
passive tracer metrics (respectively). Typical contents of \texttt{run.stat} include passive tracer metrics (respectively). Typical contents of \texttt{run.stat} include
global maximums of ssh, velocity; and global minimums and maximums of temperature 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 ...@@ -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 extra monitoring information. \texttt{tracer.stat} contains the volume-weighted
average tracer value for each passive tracer. Collecting these metrics involves average tracer value for each passive tracer. Collecting these metrics involves
global communications and will impact on model efficiency so both these options are 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 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 \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 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 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 the global metrics are collected and reported. This increment also applies to the
time.step file which is otherwise updated every timestep. 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 ...@@ -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 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} 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 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, 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 \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 named with a \_XXXX extension to their name, where XXXX is a zero-padded, 4-digit area number
leading zeros, if required). This is useful as a debugging aid since all processes can (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 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: systems so bug-hunting efforts using this facility should also utilise the \fortran:
\forline|CALL FLUSH(numout)| \forline|CALL FLUSH(numout)|
statement after any additional write statements to ensure that file contents reflect 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 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 file but rather activates the writing of addition information regarding the OASIS
configuration when coupling via oasis and the sbccpl routine. This information is 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 ...@@ -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{ 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 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 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} 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 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 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 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}, 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 \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 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 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 which additional \texttt{ocean.output} and \texttt{layout.dat} files are produced if
...@@ -466,23 +445,6 @@ those suboptions are active. ...@@ -466,23 +445,6 @@ those suboptions are active.
\end{enumerate} \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}} \subinc{\input{../../global/epilogue}}
\end{document} \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