diff --git a/Metadata-standard-names.md b/Metadata-standard-names.md
index 1d7cab8..17540bf 100644
--- a/Metadata-standard-names.md
+++ b/Metadata-standard-names.md
@@ -385,7 +385,7 @@ Variables defining or relating to timing, dates, calendar, and related concepts
* `real`: units = h
* `index_of_timestep`: Index of timestep
* `integer`: units = index
-* `is_first_timestep`: Is first timestep
+* `is_first_timestep`: Indicates whether the current timestep is the first timestep
* `logical`: units = flag
* `number_of_days_in_current_year`: Number of days in current year
* `integer`: units = days
@@ -1099,12 +1099,12 @@ Variables related to the compute environment, properties of variables, input/out
* `character`: units = none
* `filename_of_rrtmgp_shortwave_k_distribution`: File name of Rapid Radiative Transfer Model for General circulation model applications - Parallel (RRTMGP) shortwave k-distribution
* `character`: units = none
-* `flag_for_mpi_root`: Flag for MPI root process
- * `logical`: units = flag
* `iounit_of_log`: Iounit of log
* `integer`: units = 1
* `iounit_of_namelist`: Iounit of namelist
* `integer`: units = 1
+* `is_mpi_root`: Flag for MPI root process
+ * `logical`: units = flag
* `log_output_unit`: Fortran logical unit for output log file
* `integer`: units = 1
* `map_of_block_column_number_to_global_i_index`: Map of block column number to global i index
@@ -1303,8 +1303,6 @@ Variables that indicate or control some action.
* `integer`: units = 1
* `control_for_vertical_index_direction`: control flag for direction of vertical index; 0 indicates index from toa to surface, 1 indicates index from surface to toa
* `integer`: units = 1
-* `disable_precipitation_radiative_effect`: Disable precipitation radiative effect
- * `logical`: units = flag
* `do_aerosol_physics`: Do aerosol physics
* `logical`: units = flag
* `do_allow_supersaturation_after_sedimentation`: Do allow supersaturation after sedimentation
@@ -1347,6 +1345,8 @@ Variables that indicate or control some action.
* `logical`: units = flag
* `do_diagnostics`: Do diagnostics
* `logical`: units = flag
+* `do_disable_precipitation_radiative_effect`: Do disable precipitation radiative effect
+ * `logical`: units = flag
* `do_dominant_precipitation_type_partition`: Do dominant precipitation type partition
* `logical`: units = flag
* `do_flip`: Flag indicating whether to flip vertical coordinate
@@ -1609,7 +1609,7 @@ Variables that indicate or control some action.
* `integer`: units = 1
* `identifier_for_zhao_carr_pdf_microphysics_scheme`: Identifier for Zhao-Carr probability density function microphysics scheme
* `integer`: units = 1
-* `is_restart`: Is restart
+* `is_restart`: Flag indicating whether or not this is a restart run
* `logical`: units = flag
## Indices
Values indicating the index of some array or other data structure
diff --git a/Metadata-standard-names.yaml b/Metadata-standard-names.yaml
index 72cff48..8b5152c 100644
--- a/Metadata-standard-names.yaml
+++ b/Metadata-standard-names.yaml
@@ -732,7 +732,7 @@ section:
type: integer
units: index
- name: is_first_timestep
- description: Is first timestep
+ description: Indicates whether the current timestep is the first timestep
type: logical
units: flag
- name: number_of_days_in_current_year
@@ -2221,10 +2221,6 @@ section:
model applications - Parallel (RRTMGP) shortwave k-distribution
type: character
units: none
- - name: flag_for_mpi_root
- description: Flag for MPI root process
- type: logical
- units: flag
- name: iounit_of_log
description: Iounit of log
type: integer
@@ -2233,6 +2229,10 @@ section:
description: Iounit of namelist
type: integer
units: 1
+ - name: is_mpi_root
+ description: Flag for MPI root process
+ type: logical
+ units: flag
- name: log_output_unit
description: Fortran logical unit for output log file
type: integer
@@ -2642,10 +2642,6 @@ section:
toa to surface, 1 indicates index from surface to toa
type: integer
units: 1
- - name: disable_precipitation_radiative_effect
- description: Disable precipitation radiative effect
- type: logical
- units: flag
- name: do_aerosol_physics
description: Do aerosol physics
type: logical
@@ -2730,6 +2726,10 @@ section:
description: Do diagnostics
type: logical
units: flag
+ - name: do_disable_precipitation_radiative_effect
+ description: Do disable precipitation radiative effect
+ type: logical
+ units: flag
- name: do_dominant_precipitation_type_partition
description: Do dominant precipitation type partition
type: logical
@@ -3280,7 +3280,7 @@ section:
type: integer
units: 1
- name: is_restart
- description: Is restart
+ description: Flag indicating whether or not this is a restart run
type: logical
units: flag
- name: Indices
diff --git a/StandardNamesRules.rst b/StandardNamesRules.rst
index 9212b6a..6a1373f 100644
--- a/StandardNamesRules.rst
+++ b/StandardNamesRules.rst
@@ -195,9 +195,29 @@ Terminology
relevant, the net ionization charge should be included as a prefix (in words, because +/- are
not valid standard name characters); e.g. ``number_density_of_plus_1_ionized_he``
-#. For control-oriented variables, if the variable is a Fortran logical,
- use flag_for ``_X``. If it is any other data type, use control_for ``_X``. All flags
- should be Fortran logicals.
+#. For control-oriented variables, there are a few different prefixes that should be used depending on
+ the use case for that specific variable:
+
+ +-------------------+-----------+-----------------------------------------------------------------------------------------------+
+ | **Prefix** | **Type** | **Use case** | **Example** |
+ +===================+===========+=================================+=============================================================+
+ | `is_` | `logical` | A flag indicating some state or | `is_mpi_root` indicates whether or not the code is running |
+ | | | condition is true or false | on the MPI root process |
+ +-------------------+-----------+-------------------------------- +-------------------------------------------------------------+
+ | `do_` | `logical` | A flag whose value directs some | `do_chemical_tracer_diagnostics` indicates to a physics |
+ | | | behavior | scheme that it should compute chemical tracer diagnostics |
+ +-------------------+-----------+---------------------------------+-------------------------------------------------------------+
+ | `identifier_for_` | `integer` | A parameter indicating some | `identifier_for_noah_land_surface_scheme` is an integer |
+ | | | state or condition | identifying the Noah land surface model |
+ +-------------------+-----------+---------------------------------+-------------------------------------------------------------+
+ | `control_for_` | `integer` | A control whose value directs | `control_for_land_surface_scheme` is an integer identifying |
+ | | | some behavior | the land surface scheme type |
+ +-------------------+-----------+---------------------------------+-------------------------------------------------------------+
+ | `index_of_` | `integer` | An index entry for an array | `index_of_ice_vegetation_category` is an index describing |
+ | | | | the location of the ice vegetation category in the array of |
+ | | | | vegetation categories |
+ +-------------------+-----------+---------------------------------+-------------------------------------------------------------+
+
#. **Disallowed terms:** A few terms are disallowed as standard name components for various reasons; mostly due to
ambiguity.
@@ -435,7 +455,9 @@ Prefixes
| upper_bound_of
| unfiltered
| nonnegative
-| flag_for
+| is
+| do
+| identifier_for
| control_for
| number_of
| index_of
@@ -458,7 +480,6 @@ Infixes
^^^^^^^
| directory_for ``_X`` _source_code
-| flag_for_reading ``_X`` _from_input
Suffixes
^^^^^^^^
diff --git a/standard_names.xml b/standard_names.xml
index c3a41db..9fbb94e 100644
--- a/standard_names.xml
+++ b/standard_names.xml
@@ -544,7 +544,7 @@
integer
-
+
logical
@@ -1596,15 +1596,15 @@
character
-
- logical
-
integer
integer
+
+ logical
+
integer
@@ -1901,9 +1901,6 @@
integer
-
- logical
-
logical
@@ -1967,6 +1964,9 @@
logical
+
+ logical
+
logical
@@ -2360,7 +2360,7 @@
integer
-
+
logical