CIME River Runoff Data and Stub XML Files

River runoff component XML files for data, stub, and dead components.

CIMEROOT/src/components/data_comps/drof/cime_config

River runoff data model, drof, XML files and settings.

XML specification for archiving drof output files.

<components version="2.0">
  <comp_archive_spec compname="drof" compclass="rof">
    <rest_file_extension>r</rest_file_extension>
    <rest_history_varname>unset</rest_history_varname>
    <rpointer>
      <rpointer_file>rpointer.rof$NINST_STRING</rpointer_file>
      <rpointer_content>$CASE.drof$NINST_STRING.r.$DATENAME.nc,$CASE.drof$NINST_STRING.rs1.$DATENAME.bin</rpointer_content>
    </rpointer>
  </comp_archive_spec>
</components>

XML variables and component descriptions specific to drof.

<?xml version="1.0"?>

<?xml-stylesheet type="text/xsl" href="entry_id.xsl" ?>

<entry_id version="3.0">
  <!-- modifier_mode allowed values are
       '*' 0 or more modifiers (default)
       '1' exactly 1 modifier
       '?' 0 or 1 modifiers
       '+' 1 or more modifiers

       This file may have rof desc entries.
  -->

  <description modifier_mode="1">
    <desc rof="DROF[%NULL][%NYF][%IAF][%CPLHIST][%JRA][%JRA-1p4-2018]">Data runoff model</desc>
    <desc option="NULL">NULL mode</desc>
    <desc option="NYF" >COREv2 normal year forcing:</desc>
    <desc option="IAF" >COREv2 interannual year forcing:</desc>
    <desc option="CPLHIST">CPLHIST mode:</desc>
    <desc option="JRA">JRA55 interannual forcing</desc>
    <desc option="JRA-1p4-2018">JRA55 interannual forcing, v1.4, through 2018</desc>
  </description>

  <entry id="COMP_ROF">
    <type>char</type>
    <valid_values>drof</valid_values>
    <default_value>drof</default_value>
    <group>case_comp</group>
    <file>env_case.xml</file>
    <desc>Name of rof component</desc>
  </entry>

  <entry id="DROF_MODE">
    <type>char</type>
    <valid_values>CPLHIST,DIATREN_ANN_RX1,DIATREN_IAF_RX1,IAF_JRA,IAF_JRA_1p4_2018,NULL</valid_values>
    <default_value>DIATREN_ANN_RX1</default_value>
    <values match="last">
      <value compset="_DROF%NULL">NULL</value>
      <value compset="_DROF%NYF" >DIATREN_ANN_RX1</value>
      <value compset="_DROF%IAF" >DIATREN_IAF_RX1</value>
      <value compset="_DROF%CPLHIST">CPLHIST</value>
      <value compset="_DROF%JRA" >IAF_JRA</value>
      <value compset="_DROF%JRA-1p4-2018" >IAF_JRA_1p4_2018</value>
      <value compset=".+" grid="r%null">NULL</value> <!-- overwrites above if runoff grid is null -->
    </values>
    <group>run_component_drof</group>
    <file>env_run.xml</file>
    <desc>DROF mode. Values are CPLHIST, *_RX1, and NULL. In *_RX1 mode,
    observational climatological or interannual
    1-degree runoff data is used. In CPLHIST mode, runoff
    data from a previous model run is read in. In NULL mode, the runoff
    data is set to zero. In CPLHIST mode, runoff forcing data from a previous
    model run is output by the coupler and read in by the data rof
    model. In NULL mode, runoff forcing is set to zero and not used. The
    default is DIATREN_ANN_RX1.</desc>
  </entry>

  <entry id="DROF_CPLHIST_DOMAIN_FILE">
    <type>char</type>
    <valid_values></valid_values>
    <default_value>null</default_value>
    <group>run_component_drof</group>
    <file>env_run.xml</file>
    <desc>
      Full pathname for domain file for drof when DROF_MODE is
      CPLHIST.  NOTE: if this is set to 'null' (the default), then
      domain information is read in from the first coupler history
      file in the target stream and it is assumed that the first
      coupler stream file that is pointed to contains the domain
      information for that stream.
    </desc>
  </entry>

  <entry id="DROF_CPLHIST_DIR">
    <type>char</type>
    <valid_values></valid_values>
    <default_value>UNSET</default_value>
    <group>run_component_drof</group>
    <file>env_run.xml</file>
    <desc>directory for coupler history data mode (only used when DROF_MODE is CPLHIST mode)</desc>
  </entry>

  <entry id="DROF_CPLHIST_CASE">
    <type>char</type>
    <valid_values></valid_values>
    <default_value>UNSET</default_value>
    <group>run_component_drof</group>
    <file>env_run.xml</file>
    <desc>case name for coupler history data mode (only used when DROF_MODE is CPLHIST mode)</desc>
  </entry>

  <entry id="DROF_CPLHIST_YR_ALIGN">
    <type>integer</type>
    <valid_values></valid_values>
    <default_value>-999</default_value>
    <group>run_component_drof</group>
    <file>env_run.xml</file>
    <desc>
      Simulation year corresponding to DROF_CPLHIST_YR_START (only used
      when DROF_MODE is CPLHIST). A common usage is to set this to
      RUN_STARTDATE. With this setting, the forcing in the first year of
      the run will be the forcing of year DROF_CPLHIST_YR_START. Another
      use case is to align the calendar of transient forcing with the
      model calendar. For example, setting
      DROF_CPLHIST_YR_ALIGN=DROF_CPLHIST_YR_START will lead to the
      forcing calendar being the same as the model calendar. The forcing
      for a given model year would be the forcing of the same year. This
      would be appropriate in transient runs where the model calendar is
      setup to span the same year range as the forcing data.
    </desc>
  </entry>

  <entry id="DROF_CPLHIST_YR_START">
    <type>integer</type>
    <valid_values></valid_values>
    <default_value>-999</default_value>
    <group>run_component_drof</group>
    <file>env_run.xml</file>
    <desc>starting year to loop data over (only used when DROF_MODE is CPLHIST)</desc>
  </entry>

  <entry id="DROF_CPLHIST_YR_END">
    <type>integer</type>
    <valid_values></valid_values>
    <default_value>-999</default_value>
    <group>run_component_drof</group>
    <file>env_run.xml</file>
    <desc>ending year to loop data over (only used when DROF_MODE is CPLHIST)</desc>
  </entry>

  <help>
    =========================================
    DROF naming conventions
    =========================================
  </help>

</entry_id>

XML variables and component descriptions specific to drof.

<?xml version="1.0"?>

<?xml-stylesheet type="text/xsl" href="entry_id.xsl" ?>

<entry_id version="3.0">
  <!-- modifier_mode allowed values are
       '*' 0 or more modifiers (default)
       '1' exactly 1 modifier
       '?' 0 or 1 modifiers
       '+' 1 or more modifiers

       This file may have rof desc entries.
  -->

  <description modifier_mode="1">
    <desc rof="DROF[%NULL][%NYF][%IAF][%CPLHIST][%JRA][%JRA-1p4-2018]">Data runoff model</desc>
    <desc option="NULL">NULL mode</desc>
    <desc option="NYF" >COREv2 normal year forcing:</desc>
    <desc option="IAF" >COREv2 interannual year forcing:</desc>
    <desc option="CPLHIST">CPLHIST mode:</desc>
    <desc option="JRA">JRA55 interannual forcing</desc>
    <desc option="JRA-1p4-2018">JRA55 interannual forcing, v1.4, through 2018</desc>
  </description>

  <entry id="COMP_ROF">
    <type>char</type>
    <valid_values>drof</valid_values>
    <default_value>drof</default_value>
    <group>case_comp</group>
    <file>env_case.xml</file>
    <desc>Name of rof component</desc>
  </entry>

  <entry id="DROF_MODE">
    <type>char</type>
    <valid_values>CPLHIST,DIATREN_ANN_RX1,DIATREN_IAF_RX1,IAF_JRA,IAF_JRA_1p4_2018,NULL</valid_values>
    <default_value>DIATREN_ANN_RX1</default_value>
    <values match="last">
      <value compset="_DROF%NULL">NULL</value>
      <value compset="_DROF%NYF" >DIATREN_ANN_RX1</value>
      <value compset="_DROF%IAF" >DIATREN_IAF_RX1</value>
      <value compset="_DROF%CPLHIST">CPLHIST</value>
      <value compset="_DROF%JRA" >IAF_JRA</value>
      <value compset="_DROF%JRA-1p4-2018" >IAF_JRA_1p4_2018</value>
      <value compset=".+" grid="r%null">NULL</value> <!-- overwrites above if runoff grid is null -->
    </values>
    <group>run_component_drof</group>
    <file>env_run.xml</file>
    <desc>DROF mode. Values are CPLHIST, *_RX1, and NULL. In *_RX1 mode,
    observational climatological or interannual
    1-degree runoff data is used. In CPLHIST mode, runoff
    data from a previous model run is read in. In NULL mode, the runoff
    data is set to zero. In CPLHIST mode, runoff forcing data from a previous
    model run is output by the coupler and read in by the data rof
    model. In NULL mode, runoff forcing is set to zero and not used. The
    default is DIATREN_ANN_RX1.</desc>
  </entry>

  <entry id="DROF_CPLHIST_DOMAIN_FILE">
    <type>char</type>
    <valid_values></valid_values>
    <default_value>null</default_value>
    <group>run_component_drof</group>
    <file>env_run.xml</file>
    <desc>
      Full pathname for domain file for drof when DROF_MODE is
      CPLHIST.  NOTE: if this is set to 'null' (the default), then
      domain information is read in from the first coupler history
      file in the target stream and it is assumed that the first
      coupler stream file that is pointed to contains the domain
      information for that stream.
    </desc>
  </entry>

  <entry id="DROF_CPLHIST_DIR">
    <type>char</type>
    <valid_values></valid_values>
    <default_value>UNSET</default_value>
    <group>run_component_drof</group>
    <file>env_run.xml</file>
    <desc>directory for coupler history data mode (only used when DROF_MODE is CPLHIST mode)</desc>
  </entry>

  <entry id="DROF_CPLHIST_CASE">
    <type>char</type>
    <valid_values></valid_values>
    <default_value>UNSET</default_value>
    <group>run_component_drof</group>
    <file>env_run.xml</file>
    <desc>case name for coupler history data mode (only used when DROF_MODE is CPLHIST mode)</desc>
  </entry>

  <entry id="DROF_CPLHIST_YR_ALIGN">
    <type>integer</type>
    <valid_values></valid_values>
    <default_value>-999</default_value>
    <group>run_component_drof</group>
    <file>env_run.xml</file>
    <desc>
      Simulation year corresponding to DROF_CPLHIST_YR_START (only used
      when DROF_MODE is CPLHIST). A common usage is to set this to
      RUN_STARTDATE. With this setting, the forcing in the first year of
      the run will be the forcing of year DROF_CPLHIST_YR_START. Another
      use case is to align the calendar of transient forcing with the
      model calendar. For example, setting
      DROF_CPLHIST_YR_ALIGN=DROF_CPLHIST_YR_START will lead to the
      forcing calendar being the same as the model calendar. The forcing
      for a given model year would be the forcing of the same year. This
      would be appropriate in transient runs where the model calendar is
      setup to span the same year range as the forcing data.
    </desc>
  </entry>

  <entry id="DROF_CPLHIST_YR_START">
    <type>integer</type>
    <valid_values></valid_values>
    <default_value>-999</default_value>
    <group>run_component_drof</group>
    <file>env_run.xml</file>
    <desc>starting year to loop data over (only used when DROF_MODE is CPLHIST)</desc>
  </entry>

  <entry id="DROF_CPLHIST_YR_END">
    <type>integer</type>
    <valid_values></valid_values>
    <default_value>-999</default_value>
    <group>run_component_drof</group>
    <file>env_run.xml</file>
    <desc>ending year to loop data over (only used when DROF_MODE is CPLHIST)</desc>
  </entry>

  <help>
    =========================================
    DROF naming conventions
    =========================================
  </help>

</entry_id>

XML namelist definitions for drof.

<?xml version="1.0"?>

<?xml-stylesheet type="text/xsl" href="namelist_definition.xsl"?>

<entry_id version="2.0">

  <!--
      Values to use by default for creation of DOCN model docn namelists.
      The element names are the same as the corresponding namelist
      variables.  Values that depend on the model configuration use
      attributes to express the dependency.  The recognized attributes
      are: grid.attributes from the config_cache.xml file (with keys converted to upper-case).

      strm_year_first is the first year of the stream data that will be used
      strm_year_last  is the last  year of the stream data that will be used
      strm_year_align is the model year that will be aligned with stream data for year_first

      For cplhist forcing - the following substitutions will be made belwo
      Replace any instance of the following substring indicators with the appropriate values:
      %y    => year from the range yearfirst to yearlast
               obtained from values of <strm_year_start> -> <strm_year_end> below
      %ym   => year-month from the range yearfirst to yearlast with all 12 months
               obtained from values of <strm_year_start> -> <strm_year_end> below
      %ymd  => year-month-day from the range yearfirst to yearlast with all 12 months
               obtained from values of <strm_year_start> -> <strm_year_end> below

      Replace any instance of $VARNAME with the xml variable value obtained from any
      of the $CASEROOT/env*xml files

      In drof_in,  streams namelist input has the form
      streams = 'stream1.txt year_align year_first year_last ',
                'stream2.txt year_align year_first year_last ',
                ...
                'streamN.txt year_align year_first year_last '

     Currently the following streams are supported
        rof.cplhist
        rof.diatren_ann_rx1
        rof.diatren_iaf_rx1
  -->

  <!-- ========================================================================================  -->
  <!-- Stream file variables                                                                     -->
  <!-- ========================================================================================  -->

  <entry id="streamslist">
    <type>char(100)</type>
    <category>streams</category>
    <group>streams_file</group>
    <desc>List of streams used for the given drof_mode.</desc>
    <values>
      <value drof_mode="NULL"           >NULL</value>
      <value drof_mode="CPLHIST"        >rof.cplhist</value>
      <value drof_mode="DIATREN_ANN_RX1">rof.diatren_ann_rx1</value>
      <value drof_mode="DIATREN_IAF_RX1">rof.diatren_iaf_rx1</value>
      <value drof_mode="IAF_JRA_1p4_2018">rof.iaf_jra_1p4_2018</value>
      <value drof_mode="IAF_JRA"        >rof.iaf_jra</value>
    </values>
  </entry>

  <entry id="strm_domdir"  skip_default_entry="true">
    <type>char</type>
    <category>streams</category>
    <group>streams_file</group>
    <desc>Stream domain file directory.</desc>
    <values>
      <value stream="rof.diatren_ann_rx1">$DIN_LOC_ROOT/lnd/dlnd7/RX1</value>
      <value stream="rof.diatren_iaf_rx1">$DIN_LOC_ROOT/lnd/dlnd7/RX1</value>
      <value stream="rof.iaf_jra.*">$DIN_LOC_ROOT/lnd/dlnd7/JRA55</value>
      <value stream="rof.cplhist">null</value>
    </values>
  </entry>

  <entry id="strm_domfil" skip_default_entry="true">
    <type>char</type>
    <category>streams</category>
    <group>streams_file</group>
    <desc>Stream domain file path(s).</desc>
    <values>
      <value stream="rof.diatren_ann_rx1">runoff.daitren.annual.090225.nc</value>
      <value stream="rof.diatren_iaf_rx1">runoff.daitren.iaf.20120419.nc</value>
      <value stream="rof.iaf_jra.*">domain.roff.JRA025.170111.nc</value>
      <value stream="rof.cplhist">null</value>
    </values>
  </entry>

  <entry id="strm_domvar"  skip_default_entry="true">
    <type>char</type>
    <category>streams</category>
    <group>streams_file</group>
    <desc>Stream domain variable name(s).</desc>
    <values>
      <value>
        time   time
        xc     lon
        yc     lat
        area   area
        mask   mask
      </value>
      <value stream="rof.diatren_iaf_rx1">
        time   time
        xc     lon
        yc     lat
        arear  area
        mask   mask
      </value>
      <value stream="rof.cplhist">
        time           time
        domrb_lon      lon
        domrb_lat      lat
        domrb_aream    area
        domrb_mask     mask
      </value>
    </values>
  </entry>

  <entry id="strm_datdir"  skip_default_entry="true">
    <type>char</type>
    <category>streams</category>
    <group>streams_file</group>
    <desc>Stream data file directory.</desc>
    <values>
      <value stream="rof.diatren_ann_rx1">$DIN_LOC_ROOT/lnd/dlnd7/RX1</value>
      <value stream="rof.diatren_iaf_rx1">$DIN_LOC_ROOT/lnd/dlnd7/RX1</value>
      <value stream="rof.iaf_jra.*">$DIN_LOC_ROOT/lnd/dlnd7/JRA55</value>
      <value stream="rof.cplhist">$DROF_CPLHIST_DIR</value>
    </values>
  </entry>

  <entry id="strm_datfil"  skip_default_entry="true">
    <type>char</type>
    <category>streams</category>
    <group>streams_file</group>
    <desc>Stream data file path(s).</desc>
    <values>
      <value stream="rof.diatren_ann_rx1">runoff.daitren.annual.090225.nc</value>
      <value stream="rof.diatren_iaf_rx1">runoff.daitren.iaf.20120419.nc</value>
      <value stream="rof.iaf_jra_1p4_2018">
           JRA.v1.4.runoff.1958.190214.nc
           JRA.v1.4.runoff.1959.190214.nc
           JRA.v1.4.runoff.1960.190214.nc
           JRA.v1.4.runoff.1961.190214.nc
           JRA.v1.4.runoff.1962.190214.nc
           JRA.v1.4.runoff.1963.190214.nc
           JRA.v1.4.runoff.1964.190214.nc
           JRA.v1.4.runoff.1965.190214.nc
           JRA.v1.4.runoff.1966.190214.nc
           JRA.v1.4.runoff.1967.190214.nc
           JRA.v1.4.runoff.1968.190214.nc
           JRA.v1.4.runoff.1969.190214.nc
           JRA.v1.4.runoff.1970.190214.nc
           JRA.v1.4.runoff.1971.190214.nc
           JRA.v1.4.runoff.1972.190214.nc
           JRA.v1.4.runoff.1973.190214.nc
           JRA.v1.4.runoff.1974.190214.nc
           JRA.v1.4.runoff.1975.190214.nc
           JRA.v1.4.runoff.1976.190214.nc
           JRA.v1.4.runoff.1977.190214.nc
           JRA.v1.4.runoff.1978.190214.nc
           JRA.v1.4.runoff.1979.190214.nc
           JRA.v1.4.runoff.1980.190214.nc
           JRA.v1.4.runoff.1981.190214.nc
           JRA.v1.4.runoff.1982.190214.nc
           JRA.v1.4.runoff.1983.190214.nc
           JRA.v1.4.runoff.1984.190214.nc
           JRA.v1.4.runoff.1985.190214.nc
           JRA.v1.4.runoff.1986.190214.nc
           JRA.v1.4.runoff.1987.190214.nc
           JRA.v1.4.runoff.1988.190214.nc
           JRA.v1.4.runoff.1989.190214.nc
           JRA.v1.4.runoff.1990.190214.nc
           JRA.v1.4.runoff.1991.190214.nc
           JRA.v1.4.runoff.1992.190214.nc
           JRA.v1.4.runoff.1993.190214.nc
           JRA.v1.4.runoff.1994.190214.nc
           JRA.v1.4.runoff.1995.190214.nc
           JRA.v1.4.runoff.1996.190214.nc
           JRA.v1.4.runoff.1997.190214.nc
           JRA.v1.4.runoff.1998.190214.nc
           JRA.v1.4.runoff.1999.190214.nc
           JRA.v1.4.runoff.2000.190214.nc
           JRA.v1.4.runoff.2001.190214.nc
           JRA.v1.4.runoff.2002.190214.nc
           JRA.v1.4.runoff.2003.190214.nc
           JRA.v1.4.runoff.2004.190214.nc
           JRA.v1.4.runoff.2005.190214.nc
           JRA.v1.4.runoff.2006.190214.nc
           JRA.v1.4.runoff.2007.190214.nc
           JRA.v1.4.runoff.2008.190214.nc
           JRA.v1.4.runoff.2009.190214.nc
           JRA.v1.4.runoff.2010.190214.nc
           JRA.v1.4.runoff.2011.190214.nc
           JRA.v1.4.runoff.2012.190214.nc
           JRA.v1.4.runoff.2013.190214.nc
           JRA.v1.4.runoff.2014.190214.nc
           JRA.v1.4.runoff.2015.190214.nc
           JRA.v1.4.runoff.2016.190214.nc
           JRA.v1.4.runoff.2017.190214.nc
           JRA.v1.4.runoff.2018.190214.nc
      </value>
      <value stream="rof.iaf_jra">
           JRA.v1.1.runoff.1958.170807.nc
           JRA.v1.1.runoff.1959.170807.nc
           JRA.v1.1.runoff.1960.170807.nc
           JRA.v1.1.runoff.1961.170807.nc
           JRA.v1.1.runoff.1962.170807.nc
           JRA.v1.1.runoff.1963.170807.nc
           JRA.v1.1.runoff.1964.170807.nc
           JRA.v1.1.runoff.1965.170807.nc
           JRA.v1.1.runoff.1966.170807.nc
           JRA.v1.1.runoff.1967.170807.nc
           JRA.v1.1.runoff.1968.170807.nc
           JRA.v1.1.runoff.1969.170807.nc
           JRA.v1.1.runoff.1970.170807.nc
           JRA.v1.1.runoff.1971.170807.nc
           JRA.v1.1.runoff.1972.170807.nc
           JRA.v1.1.runoff.1973.170807.nc
           JRA.v1.1.runoff.1974.170807.nc
           JRA.v1.1.runoff.1975.170807.nc
           JRA.v1.1.runoff.1976.170807.nc
           JRA.v1.1.runoff.1977.170807.nc
           JRA.v1.1.runoff.1978.170807.nc
           JRA.v1.1.runoff.1979.170807.nc
           JRA.v1.1.runoff.1980.170807.nc
           JRA.v1.1.runoff.1981.170807.nc
           JRA.v1.1.runoff.1982.170807.nc
           JRA.v1.1.runoff.1983.170807.nc
           JRA.v1.1.runoff.1984.170807.nc
           JRA.v1.1.runoff.1985.170807.nc
           JRA.v1.1.runoff.1986.170807.nc
           JRA.v1.1.runoff.1987.170807.nc
           JRA.v1.1.runoff.1988.170807.nc
           JRA.v1.1.runoff.1989.170807.nc
           JRA.v1.1.runoff.1990.170807.nc
           JRA.v1.1.runoff.1991.170807.nc
           JRA.v1.1.runoff.1992.170807.nc
           JRA.v1.1.runoff.1993.170807.nc
           JRA.v1.1.runoff.1994.170807.nc
           JRA.v1.1.runoff.1995.170807.nc
           JRA.v1.1.runoff.1996.170807.nc
           JRA.v1.1.runoff.1997.170807.nc
           JRA.v1.1.runoff.1998.170807.nc
           JRA.v1.1.runoff.1999.170807.nc
           JRA.v1.1.runoff.2000.170807.nc
           JRA.v1.1.runoff.2001.170807.nc
           JRA.v1.1.runoff.2002.170807.nc
           JRA.v1.1.runoff.2003.170807.nc
           JRA.v1.1.runoff.2004.170807.nc
           JRA.v1.1.runoff.2005.170807.nc
           JRA.v1.1.runoff.2006.170807.nc
           JRA.v1.1.runoff.2007.170807.nc
           JRA.v1.1.runoff.2008.170807.nc
           JRA.v1.1.runoff.2009.170807.nc
           JRA.v1.1.runoff.2010.170807.nc
           JRA.v1.1.runoff.2011.170807.nc
           JRA.v1.1.runoff.2012.170807.nc
           JRA.v1.1.runoff.2013.170807.nc
           JRA.v1.1.runoff.2014.170807.nc
           JRA.v1.1.runoff.2015.170807.nc
           JRA.v1.1.runoff.2016.170807.nc
      </value>
      <value stream="rof.cplhist">$DROF_CPLHIST_CASE.cpl.hr2x.%ym.nc</value>
    </values>
  </entry>

  <entry id="strm_datvar"  skip_default_entry="true">
    <type>char</type>
    <category>streams</category>
    <group>streams_file</group>
    <desc>Stream data variable name(s).</desc>
    <values>
      <value stream="rof.diatren_ann_rx1">
        runoff rofl
      </value>
      <value stream="rof.diatren_iaf_rx1">
        runoff rofl
      </value>
      <value stream="rof.iaf_jra.*">
        rofl  rofl
        rofi  rofi
      </value>
      <value stream="rof.cplhist">
        r2x_Forr_rofl  rofl
        r2x_Forr_rofi  rofi
      </value>
    </values>
  </entry>

  <entry id="strm_offset"  skip_default_entry="true">
    <type>integer</type>
    <category>streams</category>
    <group>streams_file</group>
    <desc>Stream offset.</desc>
    <values>
      <value>0</value>
      <value stream="rof.cplhist">0</value>
    </values>
  </entry>

  <entry id="strm_year_align"   skip_default_entry="true">
    <type>integer</type>
    <category>streams</category>
    <group>streams_file</group>
    <desc>Simulation year to align stream to.</desc>
    <values>
      <value stream="rof.diatren_ann_rx1">1</value>
      <value stream="rof.diatren_iaf_rx1">1</value>
      <value stream="rof.iaf_jra.*">1</value>
      <value stream="rof.cplhist">$DROF_CPLHIST_YR_ALIGN</value>
    </values>
  </entry>

  <entry id="strm_year_start"   skip_default_entry="true">
    <type>integer</type>
    <category>streams</category>
    <group>streams_file</group>
    <desc>First year of stream.</desc>
    <values>
      <value stream="rof.diatren_ann_rx1">1</value>
      <value stream="rof.diatren_iaf_rx1">1948</value>
      <value stream="rof.iaf_jra.*">1958</value>
      <value stream="rof.cplhist">$DROF_CPLHIST_YR_START</value>
    </values>
  </entry>

  <entry id="strm_year_end"   skip_default_entry="true">
    <type>integer</type>
    <category>streams</category>
    <group>streams_file</group>
    <desc>Last year of stream.</desc>
    <values>
      <value stream="rof.diatren_ann_rx1">1</value>
      <value stream="rof.diatren_iaf_rx1">2009</value>
      <value stream="rof.iaf_jra_1p4_2018">2018</value>
      <value stream="rof.iaf_jra">2016</value>
      <value stream="rof.cplhist">$DROF_CPLHIST_YR_END</value>
    </values>
  </entry>

  <!-- ========================================================================================  -->
  <!-- DROF Namelists                                                                            -->
  <!-- ========================================================================================  -->

  <!-- =========================================  -->
  <!--- shr_strmdata_nml       -->
  <!-- =========================================  -->

  <entry id="datamode">
    <type>char</type>
    <category>streams</category>
    <group>shr_strdata_nml</group>
    <valid_values>NULL,COPYALL</valid_values>
    <desc>
      The runoff data is associated with the river model.
      datamode = "NULL"
      NULL is always a valid option and means no data will be generated.
      Turns off the data model as a provider of data to the coupler.  The
      rof_present flag will be set to false and the coupler will assume no
      exchange of data to or from the data model.
      dataMode = "COPYALL"
      Copies all fields directly from the input data streams Any required
      fields not found on an input stream will be set to zero.
    </desc>
    <values>
      <value>COPYALL</value>
      <value drof_mode="NULL">NULL</value>
    </values>
  </entry>

  <entry id="domainfile">
    <type>char</type>
    <category>streams</category>
    <input_pathname>abs</input_pathname>
    <group>shr_strdata_nml</group>
    <desc>
      spatial gridfile associated with the strdata.  grid information will
      be read from this file and that grid will serve as the target grid
      for all input data for this strdata input.
    </desc>
    <values>
      <value>null</value>
    </values>
  </entry>

  <entry id="fillalgo"  per_stream_entry="true">
    <type>char(30)</type>
    <category>streams</category>
    <group>shr_strdata_nml</group>
    <valid_values>copy,bilinear,nn,nnoni,nnonj,spval</valid_values>
    <desc>
      array (up to 30 elements) of fill algorithms associated with the array
      of streams.  valid options are just copy (ie. no fill), special value,
      nearest neighbor, nearest neighbor in "i" direction, or nearest
      neighbor in "j" direction.
      valid values:  'copy','spval','nn','nnoni','nnonj'
    </desc>
    <values>
      <value>nn</value>
    </values>
  </entry>

  <entry id="fillmask"  per_stream_entry="true">
    <type>char(30)</type>
    <category>streams</category>
    <group>shr_strdata_nml</group>
    <valid_values>nomask,srcmask,dstmask,bothmask</valid_values>
    <desc>
      plays no role is fill algorithm at the present time.
      valid values: "nomask,srcmask,dstmask,bothmask"
    </desc>
    <values>
      <value>nomask</value>
    </values>
  </entry>

  <entry id="fillread"  per_stream_entry="true">
    <type>char(30)</type>
    <category>streams</category>
    <group>shr_strdata_nml</group>
    <desc>
      array (up to 30 elements) of filenames associated with the array of
      streams.  specifies the weights file to read in instead of computing the
      weights on the fly for the fill operation.  if this is set, fillalgo
      and fillmask are ignored.
    </desc>
    <values>
      <value>NOT_SET</value>
    </values>
  </entry>

  <entry id="fillwrite"  per_stream_entry="true">
    <type>char(30)</type>
    <category>streams</category>
    <group>shr_strdata_nml</group>
    <desc>
      array (up to 30 elements)  of filenames associated with the array of
      streams.  specifies the weights file to generate after weights are
      computed on the fly for the fill operation.  this allows a user to
      save and reuse a set of weights later.
    </desc>
    <values>
      <value>NOT_SET</value>
    </values>
  </entry>

  <entry id="mapmask"  per_stream_entry="true">
    <type>char(30)</type>
    <category>streams</category>
    <group>shr_strdata_nml</group>
    <valid_values>nomask,srcmask,dstmask,bothmask</valid_values>
    <desc>
      array (up to 30 elements) of masking algorithms for mapping input data
      associated with the array of streams.  valid options are map only from
      valid src points, map only to valid destination points, ignore all
      masks, map only from valid src points to valid destination points.
      valid values: srcmask, dstmask, nomask,bothmask
    </desc>
    <values>
      <value>dstmask</value>
    </values>
  </entry>

  <entry id="mapalgo"  per_stream_entry="true">
    <type>char(30)</type>
    <category>streams</category>
    <group>shr_strdata_nml</group>
    <valid_values>copy,bilinear,nn,nnoni,nnonj,spval</valid_values>
    <desc>
      array (up to 30 elements) of fill algorithms associated with the array
      of streams.  valid options are copy by index, set to special value,
      nearest neighbor, nearest neighbor in "i" direction, nearest neighbor
      in "j" direction, or bilinear.
      valid values: copy,spval,nn,nnoni,nnonj,bilinear
    </desc>
    <values>
      <value>bilinear</value>
    </values>
  </entry>

  <entry id="mapread"  per_stream_entry="true">
    <type>char(30)</type>
    <category>streams</category>
    <group>shr_strdata_nml</group>
    <desc>
      array (up to 30 elements) of filenames associated with the array of
      streams.  specifies the weights file to read instead of computing
      weights on the fly for the mapping (interpolation) operation.  if this
      is set, mapalgo and mapmask are ignored.
    </desc>
    <values>
      <value>NOT_SET</value>
    </values>
  </entry>

  <entry id="mapwrite"  per_stream_entry="true">
    <type>char(30)</type>
    <category>streams</category>
    <group>shr_strdata_nml</group>
    <desc>
      array (up to 30 elements) of filenames associated with the array of
      streams.  specifies the weights file to generate after weights are
      computed on the fly for the mapping (interpolation) operation.  this
      allows a user to save and reuse a set of weights later.
    </desc>
    <values>
      <value>NOT_SET</value>
    </values>
  </entry>

  <entry id="tintalgo"  per_stream_entry="true">
    <type>char(30)</type>
    <category>streams</category>
    <group>shr_strdata_nml</group>
    <valid_values>coszen,nearest,linear,lower,upper</valid_values>
    <desc>
      array (up to 30 elements) of time interpolation options associated with the array of
      streams.
      valid values: lower,upper,nearest,linear,coszen
      lower   = Use lower time-value
      upper   = Use upper time-value
      nearest = Use the nearest time-value
      linear  = Linearly interpolate between the two time-values
      coszen  = Scale according to the cosine of the solar zenith angle (for solar)
    </desc>
    <values>
      <value>linear</value>
      <value stream="rof.diatren_ann_rx1">upper</value>
      <value stream="rof.diatren_iaf_rx1">upper</value>
      <value stream="rof.iaf_jra.*">upper</value>
      <value stream="rof.cplhist">nearest</value>
    </values>
  </entry>

  <entry id="taxmode"  per_stream_entry="true">
    <type>char(30)</type>
    <category>streams</category>
    <group>shr_strdata_nml</group>
    <valid_values>extend,cycle,limit</valid_values>
    <desc>
      array of time axis modes associated with the array of streams for
      handling data outside the specified stream time axis.
      valid options are to cycle the data based on the first, last, and
      align settings associated with the stream dataset, to extend the first
      and last valid value indefinitely, or to limit the interpolated data
      to fall only between the least and greatest valid value of the time array.
      valid values: cycle,extend,limit
      extend = extrapolate before and after the period by using the first or last value.
      cycle  = cycle between the range of data
      limit  = restrict to the period for which the data is valid
    </desc>
    <values>
      <value>cycle</value>
    </values>
  </entry>

  <entry id="readmode" per_stream_entry="true">
    <type>char(30)</type>
    <category>streams</category>
    <group>shr_strdata_nml</group>
    <valid_values>single,full_file</valid_values>
    <desc>
      array (up to 30 elements) of reading mode associated with the array of
      streams.  specifies the mode of reading temporal stream dataset.
      valid options are "single" (read temporal dataset one at a time) or
      "full_file" (read all entires of temporal dataset in a given netcdf file)
      valid values: single,full_file
    </desc>
    <values>
      <value>single</value>
    </values>
  </entry>

  <entry id="dtlimit"  per_stream_entry="true">
    <type>real(30)</type>
    <category>streams</category>
    <group>shr_strdata_nml</group>
    <desc>
      array (up to 30 elements) of delta time ratio limits placed on the
      time interpolation associated with the array of streams.  this real
      value causes the model to stop if the ratio of the running maximum
      delta time divided by the minimum delta time is greater than the
      dtlimit for that stream.  for instance, with daily data, the delta
      time should be exactly one day throughout the dataset and the computed
      maximum divided by minimum delta time should always be 1.0.  for
      monthly data, the delta time should be between 28 and 31 days and the
      maximum ratio should be about 1.1.  the running value of the delta
      time is computed as data is read and any wraparound or cycling is also
      included.  this input helps trap missing data or errors in cycling.
      to turn off trapping, set the value to 1.0e30 or something similar.
    </desc>
    <values>
      <value>3.0</value>
    </values>
  </entry>

  <entry id="vectors">
    <type>char</type>
    <category>streams</category>
    <group>shr_strdata_nml</group>
    <desc>
      list of paired colon delimited field names that should be treated as
      vectors when carrying out spatial interpolation.  unlike other
      character arrays in this namelist, this array is completely decoupled
      from the list of streams.  this is a list of vector pairs that span
      all input streams where different fields of the vector pair could
      appear in different streams.
      for example, vectors = 'u:v','taux:tauy'.
    </desc>
    <values>
      <value>null</value>
    </values>
  </entry>

  <entry id="streams" skip_default_entry="true">
    <type>char(30)</type>
    <category>streams</category>
    <group>shr_strdata_nml</group>
    <desc>
      character array (up to 30 elements) of stream input files.  this
      string is actually parsed by a stream method and so the format is
      specified by the stream module.  this string consists of a
      "stream_input_filename year_align year_first year_last".  the
      stream_input_filename is a stream text input file and the format and
      options are described elsewhere.  year_align, year_first, and
      year_last provide information about the time axis of the file and how
      to relate the input time axis to the model time axis.
    </desc>
    <values>
      <value></value>
    </values>
  </entry>

  <!-- =========================================  -->
  <!--- drof_nml                -->
  <!-- =========================================  -->

  <entry id="decomp">
    <type>char</type>
    <category>drof</category>
    <group>drof_nml</group>
    <valid_values>1d,root</valid_values>
    <desc>
      DROF Decomposition strategy
      1d   = Vector decomposition
      root = run only on the master task
    </desc>
    <values>
      <value>1d</value>
    </values>
  </entry>

  <entry id="force_prognostic_true">
    <type>logical</type>
    <category>drof</category>
    <group>drof_nml</group>
    <desc>If true, prognostic is forced to true.</desc>
    <values>
      <value>.false.</value>
    </values>
  </entry>

  <entry id="restfilm">
    <type>char</type>
    <category>drof</category>
    <group>drof_nml</group>
    <desc>Master restart file name for drof model</desc>
    <values>
      <value>undefined</value>
    </values>
  </entry>

  <entry id="restfils">
    <type>char</type>
    <category>drof</category>
    <group>drof_nml</group>
    <desc>Stream restart file name for drof model, needed for branch simulations</desc>
    <values>
      <value>undefined</value>
    </values>
  </entry>

</entry_id>

CIMEROOT/src/components/stub_comps/srof/cime_config

The river runoff stub model, srof, does not output any files in the RUNDIR nor does it have any namelist settings.

XML variables and component descriptions specific to srof.

<?xml version="1.0"?>

<?xml-stylesheet type="text/xsl" href="entry_id.xsl" ?>

<entry_id>

  <entry id="COMP_ROF">
    <type>char</type>
    <valid_values>srof</valid_values>
    <default_value>srof</default_value>
    <group>case_comp</group>
    <file>env_case.xml</file>
    <desc>Name of river component</desc>
  </entry>

  <description>
    <desc compset="_SROF">Stub river component</desc>
  </description>

  <help>
    =========================================
    SROF naming conventions in compset name
    =========================================
  </help>

</entry_id>

CIMEROOT/src/components/xcpl_comps/xrof/cime_config

The river runoff dead model, xrof, does not output any files in the RUNDIR nor does it have any namelist settings.

XML variables and component descriptions specific to xrof.

<?xml version="1.0"?>

<?xml-stylesheet type="text/xsl" href="entry_id.xsl" ?>

<entry_id version="3.0">
  <description>
    <desc rof="XROF">Dead river component</desc>
  </description>

  <entry id="COMP_ROF">
    <type>char</type>
    <valid_values>xrof</valid_values>
    <default_value>xrof</default_value>
    <group>case_comp</group>
    <file>env_case.xml</file>
    <desc>Name of river component</desc>
  </entry>

  <entry id="XROF_FLOOD_MODE">
    <type>char</type>
    <valid_values>ACTIVE,NULL</valid_values>
    <default_value>NULL</default_value>
    <values>
      <value grid="l%1.9x2.5.+r%r05">ACTIVE</value>
      <value grid="l%0.9x1.25.+r%r05">ACTIVE</value>
    </values>
    <group>build_component_xrof</group>
    <file>env_build.xml</file>
    <desc>mode for xrof flood feature, NULL means xrof flood is turned off</desc>
  </entry>


  <help>
    =========================================
    XROF naming conventions in compset name
    =========================================
  </help>

</entry_id>