4 |
<!-- CMIREDIR:sectionexf: --> |
<!-- CMIREDIR:sectionexf: --> |
5 |
\end{rawhtml} |
\end{rawhtml} |
6 |
|
|
7 |
|
Authors: Patrick Heimbach and Dimitris Menemenlis |
8 |
|
|
9 |
\subsubsection{Introduction |
\subsubsection{Introduction |
10 |
\label{sec:pkg:exf:intro}} |
\label{sec:pkg:exf:intro}} |
36 |
|
|
37 |
\paragraph{Compile-time options |
\paragraph{Compile-time options |
38 |
\label{sec:pkg:exf:config}} |
\label{sec:pkg:exf:config}} |
39 |
|
~ |
40 |
|
|
41 |
As with all MITgcm packages, EXF can be turned on or off at compile time |
As with all MITgcm packages, EXF can be turned on or off at compile time |
42 |
using the \texttt{packages.conf} file or the \texttt{genmake2} |
% |
43 |
\texttt{-enable=exf} or \texttt{-disable=exf} switches. |
\begin{itemize} |
44 |
|
% |
45 |
|
\item |
46 |
|
using the \texttt{packages.conf} file by adding \texttt{exf} to it, |
47 |
|
% |
48 |
|
\item |
49 |
|
or using \texttt{genmake2} adding |
50 |
|
\texttt{-enable=exf} or \texttt{-disable=exf} switches |
51 |
|
% |
52 |
|
\end{itemize} |
53 |
|
(see Section \ref{sect:buildingCode}). |
54 |
|
|
55 |
Parts of the exf code can be enabled or disabled at compile time |
Parts of the EXF code can be enabled or disabled at compile time |
56 |
via CPP preprocessor flags. These options are set in either |
via CPP preprocessor flags. These options are set in either |
57 |
\texttt{EXF\_OPTIONS.h} or in \texttt{ECCO\_CPPOPTIONS.h}. |
\texttt{EXF\_OPTIONS.h} or in \texttt{ECCO\_CPPOPTIONS.h}. |
58 |
Table \ref{tab:pkg:exf:cpp} summarizes these options. |
Table \ref{tab:pkg:exf:cpp} summarizes these options. |
105 |
\subsubsection{Run-time parameters |
\subsubsection{Run-time parameters |
106 |
\label{sec:pkg:exf:runtime}} |
\label{sec:pkg:exf:runtime}} |
107 |
|
|
108 |
Run-time parameters are set in files \texttt{data.pkg}, |
Run-time parameters are set in files |
109 |
and \texttt{data.pkg\_clim} (for relaxation/climatological fields) |
\texttt{data.pkg}, \texttt{data.exf}, and |
110 |
|
\texttt{data.exf\_clim} (for relaxation/climatological fields) |
111 |
which are read in \texttt{exf\_readparms.F}. |
which are read in \texttt{exf\_readparms.F}. |
112 |
Run-time parameters may be broken into 2 categories: |
Run-time parameters may be broken into 3 categories: |
113 |
(i) general flags and parameters, and |
(i) switching on/off the package at runtime, |
114 |
(ii) attributes for each forcing and climatological field. |
(ii) general flags and parameters, and |
115 |
|
(iii) attributes for each forcing and climatological field. |
116 |
|
|
117 |
\paragraph{General flags and parameters} |
\paragraph{Enabling the package} |
118 |
|
~ \\ |
119 |
~ |
% |
120 |
|
A package is usually switched on/off at runtime by setting |
121 |
|
(e.g. for EXF) \texttt{useEXF = .TRUE.} in \texttt{data.pkg}. |
122 |
|
For EXF this flag is omitted, i.e. EXF is always ON if it is compiled. |
123 |
|
|
124 |
|
\paragraph{General flags and parameters} |
125 |
|
~ \\ |
126 |
|
% |
127 |
\begin{table}[h!] |
\begin{table}[h!] |
128 |
\label{tab:pkg:exf:runtime_flags} |
\label{tab:pkg:exf:runtime_flags} |
129 |
{\footnotesize |
{\footnotesize |
157 |
\end{table} |
\end{table} |
158 |
|
|
159 |
|
|
160 |
\paragraph{Field attributes} ~ \\ |
\paragraph{Field attributes} |
161 |
|
~ \\ |
162 |
% |
% |
163 |
All EXF fields are listed in Section \ref{sec:pkg:exf:fields_units}. |
All EXF fields are listed in Section \ref{sec:pkg:exf:fields_units}. |
164 |
Each field has a number of attributes which can be customized. |
Each field has a number of attributes which can be customized. |
262 |
\textbf{fu}, \textbf{fv}, \textbf{Qnet}, \textbf{Qsw}, \textbf{EmPmR}, |
\textbf{fu}, \textbf{fv}, \textbf{Qnet}, \textbf{Qsw}, \textbf{EmPmR}, |
263 |
and \textbf{pload}. They are defined in \texttt{FFIELDS.h}. |
and \textbf{pload}. They are defined in \texttt{FFIELDS.h}. |
264 |
|
|
265 |
{\scriptsize |
{\footnotesize |
266 |
\begin{verbatim} |
\begin{verbatim} |
267 |
|
|
268 |
c---------------------------------------------------------------------- |
c---------------------------------------------------------------------- |
386 |
|
|
387 |
Top-level routine: \texttt{exf\_getforcing.F} |
Top-level routine: \texttt{exf\_getforcing.F} |
388 |
|
|
389 |
{\scriptsize |
{\footnotesize |
390 |
\begin{verbatim} |
\begin{verbatim} |
391 |
|
|
392 |
C !CALLING SEQUENCE: |
C !CALLING SEQUENCE: |