source: CONFIG_DEVT/IPSLCM6.5_work_ENSEMBLES/oasis3-mct/doc/UGA4_changes.tex

Last change on this file was 5725, checked in by aclsce, 3 years ago

Added new oasis3-MCT version to be used to handle ensembles simulations with XIOS.

  • Property svn:executable set to *
File size: 25.8 KB
Line 
1\newpage
2
3\chapter{Changes between the different versions of OASIS3-MCT}
4\label{sec_changes}
5
6The evolution between the different versions of OASIS3-MCT can be
7followed in real-time by registering on the Redmine project management
8site at https://inle.cerfacs.fr/ (see "Register" at the right top of
9the page). On this site, registered users can browse the sources and
10consult tickets describing bug fixes and developments. To follow day
11to day evolution of the OASIS3-MCT sources, it is also possible to
12have your e-mail added to the list of addresses to which the log files
13of the SVN checkins are automatically sent; contact
14oasishelp@cerfacs.fr if you wish to be added to that list.
15
16\section{Changes between current master OASIS3-MCT version and OASIS3-MCT\_4.0}
17
18\begin{itemize}
19
20\item The {\tt oasis\_def\_var} interface was overloaded to support excluding the argument, {\tt id\_var\_shape}, from the argument list.  This argument is no longer used.  For backwards compatibility, it can still be passed.
21
22\item  {\tt DESTARTR}, {\tt FRACARTR} or {\tt FRACNNTR} options : the ``True Area'' (TR) correction
23
24New options for {\tt SCRIPR CONSERV} to have an exact conservation of the field surface-integrated values, based on the "TRue" (TR) area of the cells. Details can be found in section \ref{subsec_interp} and in \cite{valcke19}. Note that to activate these TR options, the true area of the cell must be provided in the auxiliary file {\it areas.nc} in {\bf square radians}.
25
26\item New {\tt GSSPOS} and {\tt BSSPOS} for global CONSERV
27
28These new options operate as {\tt GLBPOS} and {\tt BASPOS} except that the multiplicative term is computed separately for positive
29      and negative values of the field. More details can be found in section \ref{subsec_cooking} and in \cite{craig19}.
30
31\item Bugfixes
32
33\begin{enumerate}
34
35\item Argument {\tt id\_var\_nodim} defined as IN in {\tt mod\_oasis\_var.F90} to compile again with NEMO\_4.0 and NEMO trunk (git commit 28f4fe59)
36
37\item Fix the treatment of the periodicity of the grids (git commits 20127fd9, 68021b13, facc08c1)
38
39\item GAUSWGT remapping: exact calculation of average distance (commit 1df003a1) ; see details in https://cerfacs.fr/wp-content/uploads/2019/08/GlobC-TR-maisonnave-gaussian\_interpolation-2\_2019.pdf
40
41 \item Bugfix ``lcoinc''  : ensures that a condition on coincidence of segments is reinitialised to .false. for each cell. A detailed analysis of the bug that lead to this bugfix condition can be found at the end of the page https://inle.cerfacs.fr/projects/oasis3-mct/wiki/Discussion\_about\_specific\_treatments\_of\_polar\_cells\_in\_scrip\_CONSERV\_interpolation.
42
43 \end{enumerate}
44
45\end{itemize}
46
47\section{Changes between OASIS3-MCT\_4.0 and OASIS3-MCT\_3.0}
48
49Different developments were realised to improve the parallel performance of OASIS3-MCT\_4.0. These developments are detailed in \cite{valcke11} .
50
51\begin{itemize}
52
53\item A new communication method, using the remapping weights to define the intermediate mapping decomposition, offers a significant gain at run time, especially for high-resolution cases running on a high number of tasks, thanks to reduced communication. However, as expected, the new method takes longer to initialize, partly due to the fact that the mapping weight file has to be read twice but also due to the extra cost for the initialization of the different MCT routers.  That initialization cost is largely mitigated by an upgrade to MCT 2.10.beta1 which reduces the penalty to few seconds.  Generally, it should be worth the extra initial cost to speed up the run time. See {\tt \$NMAPDEC} in section \ref{subsec_namcouplefirst}.
54
55\item The hybrid MPI+OpenMP parallelisation of the SCRIP library (previously fully sequential) leads to great improvement in the calculation of the remapping weights. The results obtained here show a reduction in the weight calculation time of 2 to 3 orders of magnitude with the new parallel SCRIP library for high-resolution grids. Details are available in \cite{piacentini08}. The {\tt test\_interpolation} environment (see section \ref{subsec_testinterpolation} ) gives a practical example on how to use OASIS3-MCT\_4.0 to pre-calculate (i.e. in a separate job prior to the “real” simulation) the remapping weight and address file.
56
57Thanks to some preliminary work, few bugs were fixed, in particular in the bounding box definition of the grid cells. This solves an important bug observed in the Pacific near the equator for the bilinear and bicubic interpolations for Cartesian grids.
58
59However, given these modifications, one cannot expect to get exactly the same results for the interpolation weight-and-adress remapping files with this new parallel SCRIP version as compared to the previous SCRIP version in OASIS3-MCT\_3.0. We checked in many different cases that the interpolation error is smaller or of the same order than before. We also observed that the parallelisation does not ensure bit reproducible results when varying the number of processes or threads.
60
61\item The new methods introduced in the global CONSERV operation reduce its calculation costs by one order of magnitude while still ensuring an appropriate level of reproducibility. This removes the bottleneck foreseen at high resolution with this important, and in few cases still unavoidable, global operation. These new methods are detailed in section \ref{subsec_cooking} .
62
63\end{itemize}
64
65The other new features offered by OASIS3-MCT\_4.0 are the following:
66
67\begin{itemize}
68
69\item Support for bundled coupling fields.
70
71Bundled fields is now supported in the {\tt oasis\_put} and {\tt oasis\_get} interfaces to allow
72easier coupling of multi-level or other related fields via a single
73namcouple coupling definition and a single call to {\tt oasis\_put} or {\tt oasis\_get}.
74Further details are provided in sec \ref{subsubsec_sendingreceiving}
75
76\item Automatic coupling restart writing
77
78An optional argument {\tt write\_restart} was added to the {\tt oasis\_put} routine. This argument is false by default but if it is explicitly set to true in the code, a coupling restart file will be written for that field only for that coupling timestep, saving the data that exists at the time of the call (see section \ref{prismput}).
79
80\item Exact consistency between the number of weights and fields
81
82Exact consistency is now required between number of weights fields in the coupling restart file and the arrays passed as arguments to the {\tt oasis\_put} routine. For example, for a 2nd order conservative remapping (CONSERV SECOND), 3 weights are needed and 3 fields must be provided as arguments i.e. the value of the field, its gradient with respect to the longitude and its gradient with respect to the latitude. For a first order conservative remapping (CONSERV FIRST), only one weight and one field are needed. Using a weight file with 3 weights for a first order conservative remapping is no longer allowed.
83
84\item Upgrade in the namcouple configuration file
85
86The namcouple reading routine was cleaned up including a refactoring of the gotos and continue statements, addition of few reusable routines including an abort routine, removal of some dead code, addition of support for blank lines (which are now considered comments), removal of requirement that keywords start at character 2 on a line, removal of requirement for {\tt \$END} in the namcouple, and updates to some error messages.
87
88\item Other new functionalities with corresponding new namcouple keywords (see section \ref{subsec_namcouplefirst})
89
90        \begin{itemize}
91
92        \item {\tt \$NUNITNO}: specifies the minimum and maximum unit numbers to be used for input and output files in the coupling layer.
93
94        \item {\tt \$NMATXRD}: indicates the method used to read mapping weights, either {\tt orig} or {\tt ceg}. In both methods, the weights are read in chunks by the model master task. With the {\tt orig} option, the weights are then broadcast to all other tasks and each task then saves the weights that will be applied to its grid points. With the {\tt ceg} option, the master task reads the weights and then identifies to which other task each weight should be sent.  A series of exchanges are then done with each other task involving just the weights needed by that other task. The {\tt orig} method sends much more data but is more parallel, while the {\tt ceg} method does most of the work on the master task but less data is communicated.
95
96        \item {\tt \$NWGTOPT}: indicates how to handle bad interpolation weights.
97
98        \item {\tt \$NNOREST} : if true, OASIS3-MCT will initialise any variable that normally requires a coupling restart file with zeros if that file does not exist.
99
100        \end{itemize}
101\end{itemize}
102
103\section{Changes between OASIS3-MCT\_3.0 and OASIS3-MCT\_2.0}
104\label{sec_oa2_oa3}
105
106The main evolution of OASIS3-MCT\_3.0 with respect to OASIS3-MCT\_2.0 is the support of coupling exchanges between parallel components deployed in much more diverse configurations than before, for example, within one same executable between components running concurrently on separate sets of tasks or between components running sequentially on overlapping sets of tasks. All details are provided in section \ref{sec_deploy}.
107
108This new version also includes:
109\begin{itemize}
110\item memory and performance upgrades
111\item a new LUCIA tool for load balancing analysis
112\item new memory tracking tool (gilt)
113\item improved error checking and error messages
114\item doxygen documentation
115\item expanded test cases and testing automation
116\item testing at high resolution (> 1M gridpoints), high processor counts (32k pes), and with large variable counts (> 1k coupling fields)
117\item many bug fixes
118\end{itemize}
119
120\section{Changes between OASIS3-MCT\_2.0 and OASIS3-MCT\_1.0}
121\label{sec_oa1_oa2}
122
123The main changes and bug fixes new in OASIS3-MCT\_2.0 are the
124following:
125\begin{itemize}
126
127\item Support of {\tt BICUBIC} interpolation, see paragraph {\tt
128    BICUBIC} in section \ref{subsec_interp}. If the source grid
129    is not a gaussian reduced grid (D), the gradient in the first dimension,
130    the gradient in the second dimension, and the cross-gradient
131    of the coupling field must be calculated by the model and
132    given as arguments to {\tt oasis\_put}, as explained in section \ref{prismput}.
133    If the source grid is a gaussian reduced grid (D), OASIS3-MCT\_2.0
134    can calculate the interpolated field using only the values of the source
135    field points.
136
137\item Support of {\tt CONSERV/SECOND} remapping, see paragraph {\tt
138    CONSERV/SECOND} in section \ref{subsec_interp}.
139
140\item Support of components exchanging data on only a subdomain of the
141  global grid: a new optional argument, ig\_size was added to
142  oasis\_def\_partition, that provides the user with the ability to
143  define the total number of grid cells on the grid (see section
144  \ref{subsubsec_Partition}).
145
146%\item The CPP key "balance" in mod\_oasis\_advance was added; this
147%  option can be used to produce timestamps in OASIS debug file (see
148%  section \ref{subsec_cpp}).
149
150\item The variable {\tt TIMER\_Debug} controlling the amount of time
151  statistics written out is now an optional argument read in the {\it
152    namcouple}; see the {\tt NLOGPRT} line in
153  \ref{subsec_namcouplefirst} and all details about time statistics in
154  section \ref{timestat}.
155
156\item Specific problems in writing out the time statistics when all
157  the processors are not coupling were solved (see Redmine issue
158  \#497)
159
160\item The problem with restart files when one coupling field is sent
161  to 2 target components was solved (see Redmine ticket \#522)
162
163\item A memory leak in mod\_oasis\_getput\_interface.F90 was fixed
164  thanks to R. Hill from the MetOffice (see Redmine ticket \#437)
165
166\item A bug fix was provided to ensure that the nearest neighbour
167  option is activated when the option {\tt FRACNNEI} is defined in the
168  {\it namcouple} for the conservative interpolation .
169
170\item The behaviour of OASIS3-MCT was changed in the case a
171  component model tries to send with {\tt oasis\_put} a field declared
172  with a {\tt oasis\_def\_var} but not defined in the configuration
173  file {\it namcouple}; this will now lead to an abort. In this case,
174  the field ID returned by the {\tt oasis\_def\_var} is equal to -1
175  and the corresponding {\tt oasis\_put} should not be called.
176  Conversely, all coupling fields appearing in the {\it namcouple}
177  must be defined with a call to {\tt oasis\_def\_var}; this constraint
178is imposed to avoid that a typo in the namcouple would lead to
179coupling exchanges not corresponding to what the user intends to activate.
180
181\item OASIS3-MCT developments are now continuously tested and
182  validated on different computers with a test suite under Buildbot,
183  which is a software written in Python to automate compile and test
184  cycles required in software project (see
185  https://inle.cerfacs.fr/projects/oasis3-mct/wiki/Buildbot on the
186  Redmine site).
187
188\end{itemize}
189
190\section{Changes between OASIS3-MCT\_1.0 and OASIS3.3}
191
192\subsection{General architecture}
193\label{sec_changes_gen}
194
195\begin{itemize}
196\item OASIS3-MCT is (only) a coupling library
197
198Much of the underlying implementation of OASIS3 was refactored to
199leverage the Model Coupling Toolkit (MCT). OASIS3-MCT is a coupling
200library to be linked to the component models and that
201carries out the coupling field transformations (e.g. remappings/interpolations)
202in parallel on either the source or target processes and that performs
203all communication in parallel directly between the component models; there
204is no central coupler executable anymore\footnote{As with OASIS3.3,
205  the ``put'' calls are non-blocking but the ``get'' calls are
206blocking. As before, the user has to take care of implementing a coupling
207algorithm that will result in matching ``put'' and ``get'' calls to
208avoid deadlocks (see section \ref{subsubsec_sendingreceiving}). The lag (LAG) index works as
209before in OASIS3.3 (see section \ref{subsec_lag})}.
210
211\item {\tt MAPPING} transformation to use a pre-defined mapping file
212
213With {\tt MAPPING}, OASIS3-MCT has the ability to read a predefined
214set of weights and addresses (mapping file) specified in the {\it
215  namcouple} to perform the interpolation/remapping. The user also has
216the flexibility to choose the location and the parallelization strategy of the
217remapping with specific {\tt MAPPING} options (see section \ref{subsec_interp}).
218
219\item Mono-process mapping file generation with the SCRIP library
220
221But as before, OASIS3-MCT\_1.0 can
222also generate the mapping file using the SCRIP library
223\citep{Jones99}. When this is the case, the mapping file generation is
224done on one process of the model components; all previous {\tt SCRIPR} remapping
225schemes available in OASIS3.3 are still supported besides {\tt
226  BICUBIC} and {\tt CONSERV/SECOND}. (Note: these remapping schemes, not available in OASIS3-MCT\_1.0
227  were reactivated in OASIS3-MCT\_2.0, see \ref{sec_oa1_oa2}.)
228
229\item MPI2 job launching is NOT supported.
230
231  Only MPI1 start mode is allowed. As before with the MPI1 mode, all
232  component models must be started by the user in the job script in a
233  pseudo-MPMD mode; in this case, they will automatically share the
234  same {\tt MPI\_COMM\_WORLD} communicator and an internal
235  communicator created by OASIS3-MCT needs to be used for internal
236  parallelization (see section \ref{subsec_MPI1}).
237
238\end{itemize}
239
240\subsection{Changes in the coupling interface in the component models}
241\label{sec_changes_API}
242
243\begin{itemize}
244
245\item Use statement
246
247The different OASIS3.3 {\tt USE} statements were gathered into one {\tt
248  USE mod\_oasis} (or one {\tt USE mod\_prism}), therefore much
249  simpler to use.
250
251\item Support of previous {\tt prism\_xxx} and new {\tt oasis\_xxx}
252  interfaces
253
254OASIS3-MCT retains prior interface names of OASIS3.3
255  (e.g. {\tt prism\_put\_proto}) to ensure full backward
256  compatibility. However, new interface names such as {\tt
257    oasis\_put} are also available and should be prefered. Both
258  routine names are listed in chapter \ref{sec_modelinterfacing}.
259
260\item Auxiliary routines not supported yet
261
262Auxiliary routines {\tt prism\_put\_inquire}, {\tt
263  prism\_put\_restart\_proto}, {\tt prism\_get\_freq} are not
264  supported yet. (Note: {\tt prism\_put\_inquire} and {\tt prism\_get\_freqs} were  reintroduced in OASIS3-MCT\_3.0 and equivalent of  {\tt
265  prism\_put\_restart\_proto} in OASIS3-MCT\_4.0.)
266
267\item Support of components for which only a subset of processes
268  participate in the coupling
269
270New routines {\tt oasis\_create\_couplcomm} and {\tt
271  oasis\_set\_couplcomm} are now available to create or set a coupling
272  communicator in the case only a subset of the component processes
273  participate in the coupling. But
274  even in this case, all OASIS3-MCT interface routines, besides the
275  grid definition (see section \ref{subsubsec_griddef}) and the
276  ``put'' and `` get'' call per se (see section
277  \ref{subsubsec_sendingreceiving}), are collective and must be called
278  by all processes. (Note: this has changed with OASIS3-MCT\_3.0.)
279
280\item New routines {\tt oasis\_get\_debug} and {\tt oasis\_set\_debug}
281
282New routines {\tt oasis\_get\_debug} and {\tt oasis\_set\_debug}
283  are now available to respectively retrieve the current OASIS3-MCT
284  internal debug level (set by {\tt \$NLOGPRT} in the {\it namcouple}) or to change it (see section
285  \ref{subsubsec_auxroutines}).
286
287\end{itemize}
288
289\subsection{Functionality not offered anymore}
290\label{sec_changes_old}
291
292\begin{itemize}
293
294\item {\tt SCRIPR/BICUBIC} and {\tt SCRIPR/CONSERV/SECOND} remappings
295
296As in OASIS3.3, the SCRIP library can be used to generate the
297  remapping/interpolation weights and addresses and write them to a
298  mapping file. All previous {\tt SCRIPR} remapping
299schemes available in OASIS3.3 are still supported in OASIS3-MCT\_1.0 besides {\tt
300  BICUBIC} and {\tt CONSERV/SECOND} because these remapping involve
301at each source grid point the value of the field but also the value of the
302gradients of the field (which are not known or calculated). (Note: these remapping schemes,
303not available in OASIS3-MCT\_1.0 were reactivated in OASIS3-MCT\_2.0, see \ref{sec_oa1_oa2}.)
304
305\item Vector field remapping
306
307Vector field remapping is not and will not be supported (see ``Support
308  of vector fields with the SCRIPR remappings'' in section \ref{subsec_interp}).
309
310\item Automatic calculation of grid mesh corners in {\tt SCRIPR/CONSERV}
311
312For {\tt SCRIPR/CONSERV} remapping, grid mesh corners will not
313  be compute automatically if they are needed but not provided.
314
315\item Other transformations not supported
316
317\begin{itemize}
318
319\item The following transformations are not available in OASIS3.3
320and will most probably not be implemented as it should be not
321too difficult to implement the equivalent operations in the component
322models themselves: {\tt CORRECT}, {\tt FILLING}, {\tt SUBGRID}, {\tt MASKP}
323
324\item {\tt LOCTRANS/ONCE} is not explicitely offered as it is equivalent to
325defining a coupling period equal to the total runtime.
326
327\item The following transformations are not available as they were already
328deprecated in OASIS3.3 : {\tt REDGLO}, {\tt INVERT},
329{\tt REVERSE}, {\tt GLORED}
330
331\item {\tt MASK} and {\tt EXTRAP} are not available but the corresponding
332linear extrapolation can be replaced by the more efficient option
333using the nearest non-masked source neighbour for target points having
334their original neighbours all masked. This is now the default option for {\tt SCRIPR/}{\tt DISTWGT}, {\tt GAUSWGT} and {\tt BILINEAR} interpolations. It is
335also included in \newline {\tt SCRIPR/CONSERV} if {\tt FRACNNEI}
336normalization option is chosen (see section \ref{subsec_interp}).
337
338\item {\tt INTERP} interpolations are not available; {\tt SCRIPR}
339  should be used instead.
340
341\item {\tt MOZAIC} is not available as {\tt MAPPING} should be used
342  instead.
343
344\item{\tt NOINTERP} does not need to be specified anymore if no
345  interpolation is required.
346
347\item Field combination with {\tt BLASOLD} and {\tt BLASNEW}; these
348  transformations only support multiplication and addition terms to
349the fields (see section \ref{subsec_preproc}).
350
351\end{itemize}
352
353\item Using the coupler in interpolator-only mode
354
355This is not possible anymore as OASIS3-MCT is now only a coupling
356library. However, it is planned, in a further release, to provide a
357toy coupled model that could be use to check the quality of the
358remapping for any specific couple of grids. (Note: this was done in OASIS3-MCT\_2.0.)
359
360\item Coupling field CF standard names
361
362The file cf\_name\_table.txt is not needed or used anymore. The CF
363  standard names of the coupling fields are not written to the debug
364  files.
365
366\item Binary auxiliay files
367
368All auxiliary files, besides the {\it namcouple} must be NetCDF;
369  binary files are not supported anymore.
370\end{itemize}
371
372\subsection{New functionality offered}
373\label{sec_changes_new}
374
375\begin{itemize}
376
377\item Better support of components for which only a subset of processes
378  participate in the coupling
379
380In OASIS3.3, components for which only a subset of processes
381  participated in the coupling were supported in a very restricted
382  way. In fact, this subset had to be composed of the N first
383  processes and N had to be specified in the {\it namcouple}. Now, the
384  subset of processes can be composed of any of the component
385  processes and does not have to be pre-defined in the {\it
386    namcouple}. New routines {\tt oasis\_create\_couplcomm} and {\tt
387  oasis\_set\_couplcomm} are now available to create or set a coupling
388  communicator gathering only these processes (see section \ref{subsec_MPI1}). (Note: this was further improved in OASIS3-MCT\_3.0.)
389
390\item Exact restart for {\tt LOCTRANS} transformations
391
392If needed, LOCTRANS transformations write partially
393  transformed fields  in the coupling restart file at the end of a run
394  to ensure an exact restart of the next run (see section
395  \ref{subsec_timetrans}). For that
396  reason, coupling restart filenames are now required for all {\it
397    namcouple} entries that use LOCTRANS (with non INSTANT
398  values). This is the reason an optional restart file is now provided
399  on the OUTPUT {\it namcouple} input line. If the coupling periods of
400  two (or more) coupling fields are different, it is necessary to define
401  two (or more) restart files, one for each field.
402
403\item Support to couple multiple fields via a single communication.
404
405 This is supported through colon
406delimited field lists in the {\it namcouple}, for example
407
408{\tt ATMTAUX:ATMTAUY:ATMHFLUX  TAUX:TAUY:HEATFLUX 1 3600 3 rstrt.nc EXPORTED}
409
410 in a single {\it namcouple} entry. All fields will use the
411{\it namcouple} settings for that entry. In the component model codes,
412these fields are still sent (``put'') or received (``get'') one at a
413time. Inside OASIS3-MCT, the fields are stored and a single mapping
414and send or receive instruction is executed for all fields. This is
415useful in cases where multiple fields have the same coupling
416transformations and to reduce communication costs by aggregating multiple
417fields into a single communication. If a LOCTRAN transformation is needed
418for these multiple fields, it is necessary to define a restart file for
419these multiple fields. The coupling fields must be sent and received in the same order
420as they are defined in the corresponding single entry of the namcouple
421(not relevant in further versions of OASIS3-MCT).
422
423\item Matching one source filed with multiple targets
424
425  A coupling field sent by a source component model can be associated
426  with more than one target field and model (get). In that case, the
427  source model needs to send (``put'') the field only once and the
428  corresponding data will arrive at multiple targets as specified in
429  the {\it namcouple} configuration file. Different coupling
430  frequencies and transformations are allowed for different coupling
431  exchanges of the same field. If coupling restart files are required
432  (either if a {\tt LAG} or if a {\tt LOCTRANS} transformation is
433  specified), it is mandatory to specify different files for the
434  different fields.
435
436%In addition, a single
437%  coupling field can be sent to the same destination model using
438%  multiple transforms as long as the destination field name is
439%  unique.
440The inverse feature is not allowed, i.e. a single target (get) field
441CANNOT be associated with multiple source (put) fields.
442
443\item The debug files
444
445The debug mode was greatly improved as compared to OASIS3.3. The level
446of debug information written out to the OASIS3-MCT debug files for
447each model process is defined by the \$NLOGPRT value in the {\it
448  namcouple}. All details are provided in section
449\ref{subsec_namcouplefirst}.
450
451\end{itemize}
452
453\subsection{Changes in the configuration file {\it namcouple}}
454\label{sec_changes_namcouple}
455
456\begin{itemize}
457
458\item The {\it namcouple} configuration file of OASIS3-MCT is fully backward
459compatible with OASIS3.3. However, several {\it namcouple} keywords
460have been deprecated even if they are still
461allowed.  These keywords are noted ``UNUSED'' in sections
462\ref{subsec_namcouplefirst} and \ref{subsec_namcouplesecond} and are
463not fully described. Information below these keywords will not be read
464and will not be used: \$SEQMODE , \$CHANNEL, \$JOBNAME, \$INIDATE,
465\$MODINFO, \$CALTYPE.
466
467\item Also the following inputs should not appear in the {\it namcouple}
468anymore as the related functionality are not supported anymore in
469OASIS3-MCT (see above): field status AUXILARY, time transformation
470ONCE, REDGLO, INVERT, MASK, EXTRAP, CORRECT, INTERP, MOZAIC, FILLING,
471SUBGRID, MASKP, REVERSE, GLORED.
472
473\item To get 2D fields in the debug output NetCDF files, the 2D dimensions of the
474  grids must be provided in the {\it namcouple} (except if the field
475  has the status OUTPUT); otherwise, the fields in the debug output files will be 1D.
476
477\end{itemize}
478
479\subsection{Other differences}
480\label{sec_changes_other}
481
482\begin{itemize}
483
484\item IGNORED and IGNOUT fields are converted to EXPORTED and EXPOUT
485  respectively.
486
487\item The file {\tt areas.nc} is not needed anymore to calculate some
488  statistics with options CHECKIN and/or CHECKOUT.
489
490\item SEQ index is no longer needed to ensure correct coupling
491  sequencing within the coupler. Use of SEQ allows the coupling layer
492  to detect potential deadlocks before they happen and to exit
493  gracefully (see section \ref{subsec_sec}).
494
495\item The I/O library mpp\_io is no longer used to write the restart and output files.
496
497
498\end{itemize}
Note: See TracBrowser for help on using the repository browser.