|
25 | 25 | !! and output the average,max/min, etc. based on the 'reduction' method specified in the table. |
26 | 26 | !! |
27 | 27 | !! <H3>Diag Manager Implementation</H3> |
28 | | -!! The diag_manager module provides a unified public interface that supports both legacy (ASCII-based) and modern |
| 28 | +!! The diag_manager module provides a unified public interface that supports legacy (ASCII-based) and modern |
29 | 29 | !! (YAML-based) diagnostic table formats. The modern implementation was rewritten to improve performance, |
30 | | -!! maintainability, and support for YAML-formatted diag_tables. |
31 | | -!! |
32 | | -!! <H4>Module Organization</H4> |
33 | | -!! All new modules introduced in the modern diag_manager implementation are prefaced with <TT>fms_diag_</TT> |
34 | | -!! to distinguish them from the legacy implementation: |
35 | | -!! <UL> |
36 | | -!! <LI><B>Legacy modules:</B> diag_axis, diag_data, diag_grid, diag_manager, diag_output, diag_table, diag_util</LI> |
37 | | -!! <LI><B>Modern modules (fms_diag_ prefaced):</B> fms_diag_object, fms_diag_field_object, fms_diag_file_object, |
38 | | -!! fms_diag_axis_object, fms_diag_bbox, fms_diag_output_buffer, fms_diag_time_reduction, |
39 | | -!! fms_diag_reduction_methods, fms_diag_elem_weight_procs, fms_diag_fieldbuff_update, |
40 | | -!! fms_diag_input_buffer, fms_diag_yaml, fms_diag_time_utils</LI> |
41 | | -!! </UL> |
42 | | -!! The <TT>fms_</TT> prefix indicates these modules are part of the modernized implementation and should not be |
43 | | -!! directly used by external code. This module (diag_manager_mod) provides the stable public API. |
| 30 | +!! maintainability, and support for YAML-formatted diag_tables. For more information, see the diag_manager/README.md |
| 31 | +!! file and the documentation for the individual modern diag_manager modules. |
44 | 32 | !! |
45 | 33 | !! <H4>Enabling the Modern Diag Manager</H4> |
46 | 34 | !! The modern diag manager is enabled via the <TT>use_modern_diag</TT> flag in the <TT>diag_manager_nml</TT> |
47 | 35 | !! namelist. By default, the legacy diag manager is used to maintain backward compatibility. When |
48 | | -!! <TT>use_modern_diag = .true.</TT>, the modern implementation is used while maintaining the same public interface. |
49 | | -!! |
| 36 | +!! <TT>use_modern_diag = .true.</TT>, the modern implementation is used while maintaining the same public interfaces. |
| 37 | +!! FMS must be built with libyaml support via the <TT>-Duse_yaml</TT> flag to use the modern diag manager. |
50 | 38 | !! |
51 | 39 | !! @author Matt Harrison, Giang Nong, Seth Underwood |
52 | 40 | !! |
|
0 commit comments