SFR - Streamflow-Routing Package

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Expand/collapse expanding elements on page Show/Hide Expanders

Abbreviation in Name file

SFR

Purpose

The Streamflow-Routing package is used to simulate streams in a model.  The flow in a stream is either routed instantaneously to downstream streams or lakes or (in MODFLOW-2005 or MODFLOW=LGR) routed using a kinematic wave equation.  Flow can be routed through lakes defined in the Lake package.  Unsaturated flow beneath streams can be simulated.

Documentation

Prudic, D.E., Konikow, L.F., and Banta, E.R., 2004, A new stream-flow routing (SFR1) package to simulate stream-aquifer interaction with MODFLOW-2000: U.S. Geological Survey Open-File Report 2004-1042, 95 p. PDF version

Niswonger, R.G. and Prudic, D.E., 2005, Documentation of the Streamflow-Routing (SFR2) Package to include unsaturated flow beneath streams--A modification to SFR1: U.S. Geological Survey Techniques and Methods, Book 6, Chap. A13, 47 p.

tma6a13_SFR2revision_history.pdf

readme_SFR.pdf

readme_SFR2.pdf

Markstrom, S.L., Niswonger, R.G., Regan, R.S., Prudic, D.E., and Barlow, P.M., 2008, GSFLOW—Coupled ground-water and surface-water flow model based on the integration of the Precipitation-Runoff Modeling System (PRMS) and the Modular Ground-Water Flow Model (MODFLOW-2005): U.S. Geological Survey Techniques and Methods 6-D1, 240 p.

SFR2_simplified_instructions.pdf

Mehl, S.W. and Hill, M.C., 2010, MODFLOW-LGR -- Modifications to the Streamflow- Routing Package (SFR2) to Route Streamflow through Locally Refined Grids: U.S. Geological Survey Techniques and Methods 6-A34, 15 p

Updated_SFR2_input_instructions_NWT.pdf

LAK_SFR_UZF_updates_MF2005.txt

Updated_SFR2_input_instructions_MF2005.pdf

Schmid, Wolfgang, and Hanson R.T., 2009, The Farm Process Version 2 (FMP2) for MODFLOW-2005 - Modifications and Upgrades to FMP1: U.S. Geological Survey Techniques in Water Resources Investigations, Book 6, Chapter A32, 102p. (https://doi.org/10.3133/tm6A32)

Related Packages

Stream (STR) package

Gage package

Surface-Water Routing (SWR) process

Supported in

MODFLOW-2000

MODFLOW-2005

MODFLOW-LGR

MODFLOW-CFP

MODFLOW-NWT

MODFLOW-OWHM

Common Errors

Stream reaches within segments are listed from downstream to upstream instead of from upstream to downstream.

Stream segments are listed from downstream to upstream instead of from upstream to downstream.

Linkages between streams are not specified.

Linkages between streams are specified incorrectly.

Other Notes

Compared with the Stream (STR) package, the Streamflow-Routing (SFR) provides greater flexibility in how streams are specified but the parameters in it can not be used with the Sensitivity or Parameter-Estimation processes.

See Package Incompatibilities

Although the same segment can be defined in more than one parameter, only one parameter can be used with a particular segment in any one stress period.

The SFR package does not support unsaturated flow when the HUF package is used.

If a stream is defined in an inactive cell, it will be automatically moved to an active cell in the layer below.  See KRCH for more details.

MODFLOW-NWT has a number of changes to the SFR input instructions. The changes are documented in Updated_SFR2_input_instructions_NWT.pdf.

If the Farm process in MODFLOW-OWHM is used, RUNOFF should be set to zero.

Input Instructions

Input to the modified version of the Stream (SFR) Package is read from the file that has file type "SFR" in the MODFLOW name file. Optional variables are shown in brackets. All input variables are read using free formats, unless specifically indicated otherwise. In free format, variables are separated by one or more spaces or by a comma and optionally one or more spaces. Thus in free format, a blank field cannot be used to set a variable value to zero.

hmtoggle_plus1Notes from SFR2_simplified_instructions.pdf

FOR EACH SIMULATION

Data Set 0

[#Text]

See Note 1.

MODFLOW-2005, MODFLOW-NWT,  MODFLOW-OWHM, MODFLOW-LGR Version 2: Data Set 1a

[REACHINPUT] [TRANSROUTE][TABFILES Numtab Maxval] [LOSSFACTOR Factor] [STRHC1KH FACTORKH] [STRHC1KV FACTORKV]

 

hmtoggle_plus1        Incompatibilities in MODFLOW-NWT version 1.1

 

MODFLOW-2005, MODFLOW-NWT, MODFLOW-OWHM, MODFLOW-LGR Version 2: Data Set 1b

[TABFILES NUMTAB MAXVAL]

 

MODFLOW-OWHM: Data Set 1bb-1

[TABFILE NTAB FILEIO TIMEOPTION]

 

MODFLOW-OWHM: Data Set 1bb-2

[TABNAM TABLOCATION]

READ NTAB TIMES IF NTAB>0

 

MODFLOW-OWHM: Data Set 1bb-3

[PrintOption NLNK]

READ IF NTAB>0

 

MODFLOW-OWHM: Data Set 1bb-4

[ISEG TABNAM TSFAC]

READ NLNK TIMES IF NLNK>0

 

Data Set 1c

MODFLOW-2000:

NSTRM NSS NSFRPAR NPARSEG CONST DLEAK ISTCB1  ISTCB2 [ISFROPT] [NSTRAIL] [ISUZN] [NSFRSETS]

MODFLOW-2005, MODFLOW-CFP, MODFLOW-NWT:

NSTRM NSS NSFRPAR NPARSEG CONST DLEAK ISTCB1  ISTCB2 [ISFROPT] [NSTRAIL] [ISUZN] [NSFRSETS] [IRTFLG] [NUMTIM] [WEIGHT] [FLWTOL]

MODFLOW-LGR,

MODFLOW-OWHM:

NSTRM NSS NSFRPAR NPARSEG CONST DLEAK ISTCB1  ISTCB2 [ISFROPT] [NSTRAIL] [ISUZN] [NSFRSETS] [IRTFLG] [NUMTIM] [WEIGHT] [FLWTOL] [Option]

ISFROPT is read only if  NSTRM is less than 0 or REACHINPUT has been specified.

IRTFLG is read only if NSTRM is less than 0 or TRANSROUTE has been specified

NSTRAIL, ISUZN and NSFRSETS are read if NSTRM is less than 0 or REACHINPUT and ISFROPT is greater than 1.

See Notes 2, 3, and 4.

One record for each stream reach

Data Set 2

KRCH IRCH JRCH ISEG IREACH RCHLEN [STRTOP] [SLOPE] [STRTHICK] [STRHC1] [THTS] [THTI] [EPS] [UHC]

STRTOP, SLOPE, STRTHICK, and STRHC1 are read when NSTRM is less than 0 or keyword REACHINPUT is specified and ISFROPT is 1, 2, or 3.

THTS, THTI, and EPS are read when NSTRM is less than 0 or keyword REACHINPUT is specified and ISFROPT is 2 or 3.

UHC is read when NSTRM is less than 0 or keyword REACHINPUT is specified and ISFROPT is 3.

See Notes 5, 6, 7, 8, 9, and 10.

When NSFRPAR = 0, (including when NSTRM is negative or keyword REACHINPUT is specified), skip Items 3 and 4 and enter all stream segment data using Items 5 and 6.

When NSFRPAR > 0, Items 3 and 4 are repeated NSFRPAR times:

Data Set 3

PARNAM PARTYP Parval NLST [INSTANCES  NUMINST]

If the keyword INSTANCES is absent, NUMINST should not be present.

When PARNAM is not time-varying, Part 4a is not read, and Parts 4b through 4g are read sequentially for each of NLST stream segments; and

When PARNAM is time-varying, NUMINST instances are read. For each instance, Part 4a is read, and then Parts 4b through 4g are read sequentially for each of NLST stream segments (see notes 11 and 12):

See Notes 11, 12, 13, 14, 15, 16, 17, 18, and 19

Data Set 4a

[INSTNAM]

See Notes 11 and 12

Data Set 4b

MODFLOW-2000, MODFLOW-2005, MODFLOW-CFP, MODFLOW-NWT:

NSEG ICALC OUTSEG  IUPSEG [IPRIOR] [NSTRPTS] FLOW RUNOFF ETSW  PPTSW [ROUGHCH] [ROUGHBK] [CDPTH] [FDPTH] [AWDTH] [BWDTH]

MODFLOW-LGR, MODFLOW-OWHM:

NSEG ICALC OUTSEG  IUPSEG [IPRIOR] [NSTRPTS] FLOW RUNOFF ETSW  PPTSW [ROUGHCH] [ROUGHBK] [CDPTH] [FDPTH] [AWDTH] [BWDTH] [xyz]

IPRIOR is specified only if IUPSEG > 0

NSTRPTS is specified only if ICALC = 4.

ROUGHCH is only specified if ICALC = 1 or 2.

ROUGHBK is only specified if ICALC = 2.

CDPTH, FDPTH, AWDTH, and BWDTH are only specified if ICALC = 3.

See Notes 13. 14, 15, 17, and 18

Data Set 4c

Hc1fact THICKM1 ELEVUP [WIDTH1] [DEPTH1]

WIDTH1 is only specified if ICALC 1.

DEPTH1 is only specified if ICALC = 0.

Data Set 4d

Hc2fact THICKM2 ELEVDN [WIDTH2] [DEPTH2]

WIDTH2 is only specified if ICALC 1.

DEPTH2 is only specified if ICALC = 0.

If ICALC = 2

Data Set 4e

XCPT1 XCPT2 ... XCPT8

ZCPT1 ZCPT2 ... ZCPT8

See Note 16

If ICALC = 4

Data Set 4f

FLOWTAB(1) FLOWTAB(2) … FLOWTAB(NSTRPTS)

DPTHTAB(1) DPTHTAB(2) … DPTHTAB(NSTRPTS)

WDTHTAB(1) WDTHTAB(2) … WDTHTAB(NSTRPTS)

If keyword TABFILES has been specified, repeat Item 4g NUMTAB times for the first stress period only:

MODFLOW-2005, MODFLOW-NWT, MODFLOW-LGR Version 2: Data Set 4g

SEGNUM NUMVAL IUNIT

Note 11: The external files that contain the specified inflows are referred to as tabular flow files. Each tabular file consists of two columns of input that are read using free format: TIME and INFLOW. Time is the point in the simulation when the inflow is specified for the segment; INFLOW is the specified flow, in units of length cubed per time. The units for TIME and INFLOW should be consistent with those specified for variables ITMUNI and LENUNI in the MODFLOW Discretization File. Times listed in the tabular flow file do not need to correspond to the beginning of MODFLOW time steps. If the beginning of the MODFLOW time steps fall between times listed in the tabular flow file, then the specified inflow is calculated using a time-weighted average of specified flows within the MODFLOW time step. Times can be listed in the tabular flow file either more frequently or less frequently than the MODFLOW time steps.

If Groundwater Transport (GWT) Process is active (Ftype “GWT” exists), then read Part 4h NSOL times (where NSOL is the number of solutes being simulated, see note 17):

Data Set 4h

[CONCQ(NSOL)] CONCRUN(NSOL) CONCPPT(NSOL)

CONCQ is specified only for stream segments where IUPSEG = 0.

See Note 19

FOR EACH STRESS PERIOD

Data Set 5

ITMP IRDFLG IPTFLG [NP]

NP and Item 7 below are not read when NSFRPAR = 0.

See Note 20

If ITMP > 0

See Notes 21, 22, 23, and 24.

Data Set 6a

MODFLOW-2000, MODFLOW-2005, MODFLOW-CFP, MODFLOW-NWT:

NSEG ICALC OUTSEG IUPSEG [IPRIOR] [NSTRPTS] FLOW RUNOFF ETSW PPTSW [ROUGHCH] [ROUGHBK] [CDPTH] [FDPTH] [AWDTH] [BWDTH]

MODFLOW-LGR, MODFLOW-OWHM:

NSEG ICALC OUTSEG IUPSEG [IPRIOR] [NSTRPTS] FLOW RUNOFF ETSW PPTSW [ROUGHCH] [ROUGHBK] [CDPTH] [FDPTH] [AWDTH] [BWDTH] [xyz]

IPRIOR is specified only if IUPSEG > 0

NSTRPTS is specified only if ICALC = 4.

ROUGHCH is only specified if ICALC = 1 or 2.

ROUGHBK is only specified if ICALC = 2.

CDPTH, FDPTH, AWDTH, and BWDTH are only specified if ICALC = 3.

Data Set 6b

[HCOND1] [THICKM1] [ELEVUP] [WIDTH1] [DEPTH1] [THTS1] [THTI1] [EPS1] [UHC1]

HCOND1 is read for each stress period when NSTRM is positive and the keyword REACHINPUT is not specified or when ISFROPT is 4 or 5.

THICKM1, ELEVUP, WIDTH1, and DEPTH1 are read for each stress period when NSTRM is positive and the keyword REACHINPUT is not specified.

THICKM1 and ELEVUP are read only for the first stress period when ICALC is 1 or 2 and ISFROPT is 4 or 5.

WIDTH1 is read for all stress periods when ICALC 1 and ISFROPT is 1 but is only read for the first stress period when ISFROPT is greater than 1. WIDTH1 and DEPTH1 are read for all stress periods when ICALC is 0 and are not dependent on the value of ISFROPT.

THTS1, THTI1, EPS1 and UHC1 are read only for the first stress period when ICALC is 1 or 2 and ISFROPT is 4 or 5.

Data Set 6c

[HCOND2] [THICKM2] [ELEVDN] [WIDTH2] [DEPTH2] [THTS2] [THTI2] [EPS2] [UHC2]

HCOND2 is read for each stress period when NSTRM is positive and the keyword REACHINPUT is not specified or when ISFROPT is 4 or 5.

THICKM2, ELEVDN, WIDTH2, and DEPTH2 are read for each stress period when NSTRM is positive and the keyword REACHINPUT is not specified.

THICKM2 and ELEVDN are read only for the first stress period when ICALC is 1 or 2 and ISFROPT is 4 or 5.

WIDTH2 is read for all stress periods when ICALC 1 and ISFROPT is 1 but is only read for the first stress period when ISFROPT is greater than 1. WIDTH2 and DEPTH2 are read for all stress periods when ICALC is 0 and are not dependent on the value of ISFROPT.

THTS2, THTI2, EPS2 and UHC2 are read only for the first stress period when ICALC is 1 or 2 and ISFROPT is 4 or 5.

If ICALC = 2 and (this is the first stress period OR NSTRM > 0 and the keyword REACHINPUT is not specified OR ISFROPT 1)

Data Set 6d

XCPT1 XCPT2 ... XCPT8

ZCPT1 ZCPT2 ... ZCPT8

If ICALC = 4

Data Set 6e

FLOWTAB(1) FLOWTAB(2) ... FLOWTAB(NSTRPTS)

DPTHTAB(1) DPTHTAB(2) ... DPTHTAB(NSTRPTS)

WDTHTAB(1) WDTHTAB(2) ... WDTHTAB(NSTRPTS)

If Groundwater Transport (GWT) Process is active (Ftype “GWT” exists), then read Part 6g NSOL times (where NSOL is the number of solutes being simulated):

Data Set 6g

[CONCQ(NSOL)] CONCRUN(NSOL) CONCPPT(NSOL)

CONCQ is specified only for stream segments where IUPSEG = 0.

See Note 23

If NSFRPAR > 0 and NP > 0, then

Data Set 7

Pname [Iname]

If TABFILES is specified, then the following variables must be specified for the first stress period only after the segment information has been specified (that is, new item 8). One line of entry is needed for each stream segment for which a time series of flows will be specified (that is, repeat the following line NUMTAB times):

MODFLOW-2005, MODFLOW-NWT, MODFLOW-LGR Version 2: Data Set 8

SEGNUM NUMVAL IUNIT

Note 11: The external files that contain the specified inflows are referred to as tabular flow files. Each tabular file consists of two columns of input that are read using free format: TIME and INFLOW. Time is the point in the simulation when the inflow is specified for the segment; INFLOW is the specified flow, in units of length cubed per time. The units for TIME and INFLOW should be consistent with those specified for variables ITMUNI and LENUNI in the MODFLOW Discretization File. Times listed in the tabular flow file do not need to correspond to the beginning of MODFLOW time steps. If the beginning of the MODFLOW time steps fall between times listed in the tabular flow file, then the specified inflow is calculated using a time-weighted average of specified flows within the MODFLOW time step. Times can be listed in the tabular flow file either more frequently or less frequently than the MODFLOW time steps.