DSM2 Input
and Output
|

|
Fixed Input
Fixed input is that data and information which does not vary
with model time: such things as run start and stop dates, channel
geometry, reservoir and gate information, runtime parameters,
output locations, and so on. Fixed input is divided into sections.
Sections can be in a single file, and sections may be duplicated,
with new information overwriting previous information. This allows
one to create a base set of files, overwriting only that information
which changes for a particular run.
Each section starts with a section keyword. For most sections,
the second line will be the field keywords, which tell the input
system what data appears in which fields. Then the data itself
follows, and finally an END keyword, which closes the section.
Keywords and variable names be upper or lower case. For most
sections, one field keyword is required (e.g. channel number),
with the rest optional. This means if one is using a base file
with a subsequent file to overlay some data changed from the
base case, only the changed fields need to be listed.
Blank lines and comments may appear anywhere in any fixed
input file; comments start with the pound (#) character and continue
to the end of the line. Environment variables are denoted with
a dollar sign ($), and may optionally be surrounded with parentheses
or curly braces, for example: $STUDY $(STUDY) ${STUDY}. Environment
variables are replaced with their value, then processed in the
input system for on-the-fly input file customization.
Individual Files
Sections are described below with examples given. Full input
files are also referenced. Required sections are marked with
an asterisk (*); required field keywords are marked with an asterisk
(*).
Sections Common to All Modes
Delta Configuration
- Channels *
Channel Numbering *
Reservoirs
-
I/O
- Include Input Files
Input/Output Filenames
Time-Varying Input *
Time-Varying Output
Translations
Change Sign, Specify Type of Time-Varying Data
-
Miscellaneous
- Scalars*
Titles
-
Sections for Hydro
Delta Configuration
- Rectangular Cross Sections *
Irregular Cross Sections *
Junctions *
Gates
Internal Flow Transfers
-
Sections for Qual
I/O
- Hydro Binary Tide Files for Qual and PTM
-
Miscellaneous
- Non-Conservative Rate Coefficients
-
Sections for PTM
I/O
- Flux
Particle Insertion
Hydro Binary Tide Files for Qual and PTM
Fixed Input Description
The following describes the use of various section keywords
related to Fixed Input and includes examples of their use.
Channels
Section keyword: CHANNELS
Field keywords: CHAN* LENGTH MANNING DISP DOWNNODE UPNODE
XSECT
Required: yes
Overwrites: yes
By: CHAN
8
9
10
11
12
13
14
15
169
170
171
16
17
# etc.
END
Reservoirs
Section keyword: RESERVOIRS
Field keywords: NAME* AREA STAGE BOTELV NODE COEFF2RES COEFF2CHANMAXQ2RES
Required: no
Overwrites: yes
By: NAME
Description: Describes the reservoirs to be used in the run.
NAME - name of reservoir
AREA - surface area, million square feet
STAGE - initial stage in feet, same datum as BOTELV in XSECTS
section
BOTELV - bottom elevation in feet, same datum as BOTELV in XSECTS
section
(Note: The following three keywords may be repeated for as
many nodes the reservoir is connected to.)
NODE - node number the reservoir is connected to
COEFF2RES - flow coefficient from channel to reservoir
COEFF2CHAN - flow coefficient to channel from reservoir
MAXQ2RES - maximum allowed flow to reservoir
- Example:
| NAME |
AREA |
STAGE |
BOTELV |
NODE |
COEFF2RES |
COEFF2CHAN |
NODE |
COEFF2RES |
COEFF2CHAN |
| CLFCT |
91.86800 |
5.02 |
-10.1 |
72 |
1200. |
0. |
|
|
|
| 2 |
42.29960 |
5.02 |
-14.1 |
127 |
2000. |
2000. |
129 |
2000. |
2000. |
| FRANKS |
141.17864 |
5.02 |
-10.1 |
219 |
2000. |
2000. |
225 |
2000. |
2000. |
END
8
9
10
11
12
13
14
15
169
170
171
16
17
# etc.
END
# Clifton Court inflow restriction
RESERVOIRS
NAME NODE MAXQ2RES
CLFCT 72 15000.
END
Include Input Files
Section keyword: INP_FILES
Field keywords: none
Required: no
Description: Each line in the Include Input Files section
is a filename (either full pathname or relative to the run directory)
which directs the input system to read in that file and process
it as part of the fixed input system. This allows different sections
to be in different files for convenience and clarity. Also, for
many sections, the same section can be read in multiple times,
subsequent values overwriting previous values.
- Example:
- INP_FILES
# files that would tend to change for each run
runtime.inp # runtime control
scalar.inp # other scalar
data, constants
- # files that would not be changed often
../dsm2-input-files/junctions.inp # junction spec
../dsm2-input-files/reservoirs.inp # reservoir info
END
Input/Output Filenames
Section keyword: IO_FILES
Field keywords: MODEL* TYPE* IO* INTERVAL FILENAME*
Required: no
Overwrites: yes
By: MODEL+TYPE+IO
Description: This section specifies the filenames of input/output
files, and if filenames are given for restart and binary input
or output turns on processing for those files (general echo output
is always on).
MODEL - input/output for which model
TYPE - NONE, RESTART (ASCII restart file) or BINARY (binary state
file)
IO - whether IN (input, to be read) or OUT (output, to be written)
INTERVAL - NONE, or time interval to write (15 min, 1 hour, etc.)
FILENAME - filename to read or write
- Example:
- IO_FILES
MODEL TYPE IO INTERVAL FILENAME
# general echo output
output none none none models/io/hydro.out
# restart output, 1 hour interval
hydro restart out 1hour models/io/hydro-rst.out
# restart input
hydro restart in none models/io/hydro-rst.inp
# tidefile output, 15 minute interval
hydro binary out 15min models/io/hydro-unf.out
END
Time-Varying Input
Section keyword: INPUTPATHS
Field keywords: NODE* NAME* MEAS_TYPE* INTERVAL*
A_PART B_PART C_PART* E_PART* F_PART
SDATE STIME ID
PRIORITY FILLIN FILENAME VALUE
Required: yes
Overwrites: no
Description: Provides information to locate time-varying data
(flows, stages, gate operations, water quality, etc.) in DSS
during the run. All time-varying input for Hydro and Qual must
come from DSS files. Time-varying input is given by node number,
or a name which translates to a node number.
NODE - node number
NAME - location name, must translate to node number. Used for
DSS B part.
MEAS_TYPE - type of data: flow, stage, gate, ec, tds, etc. Used
for DSS C part.
INTERVAL - time interval: 15MIN, 1HOUR, 1DAY, 1MON, IR-DECADE.
Used for DSS E part.
A_PART, B_PART, C_PART, E_PART, F_PART - DSS A, B, C, E, and
F parts. Use instead of MEAS_TYPE, INTERVAL, and ID.
SDATE - optional start date, if different from model run start
date
STIME - optional start time, if different from model run start
time
(Note: If used, the data will start at the given date, regardless
of the model start time. Use "GENERIC" to indicate
the data starts at the standard generic time (01JAN3001 0000).
Use "SYNC" to indicate that the data time should be
synchronized to the model time based on the interval or e part.
For instance, for a data interval of 1MON, the system will attempt
to always use January data for a January model time, etc. Synchronized
data must have a generic start date, and must not contain missing
data.)
ID - identification, study name, etc. Used for DSS F part.
PRIORITY - optional priority of this path (integer between 0
and N). If a higher priority (lower number) path's data is missing
or bad, then the next lower priority path at the same location
will be used to replace it. Paths are assumed to be at the same
location if they are at the same object (node, channel, or reservoir).
This allows for filled-in data to automatically be used from
a separate pathname, without having to create a single path for
a location. A priority of 0 means ignore the priority system,
always use the path.
FILLIN - use LAST data value, or INTERPolate between values,
or use either last or interpolation based on whether the DATA
is averaged or instantaneous.
FILENAME - DSS filename to find data
VALUE - numeric value to use as constant input value for entire
run
- Example:
- INPUTPATHS
# input paths that have alternate start dates, and placename
NAME MEAS_TYPE INTERVAL SDATE ID FILLIN
FILENAME
SAC flow ir-decade 31may1994 test1 INTERP
/input-files/input.dss
SJR flow 1hour generic test1 DATA
/input-files/input.dss
END
- INPUTPATHS
# input path at a node, has first priority
NODE MEAS_TYPE INTERVAL ID FILLIN PRIORITY FILENAME
3 EC 1day Study1 LAST 1 input.dss
END
INPUTPATHS
# input path at a node, with constant value; use if main path's
# data is missing
- NODE MEAS_TYPE INTERVAL ID FILLIN PRIORITY VALUE
3 EC 1mon Study1 LAST 2 200.0
END
Time-Varying Output
Section keyword: OUTPUTPATHS
Field keywords: CHAN* DIST* NODE* TYPE* INTERVAL* PERIOD*
MODIFIER
A_PART B_PART C_PART E_PART F_PART
FILENAME* FROM_NAME FROM_TYPE FROM_NODE
Required: no
Overwrites: no
Description: Time-varying text and DSS output is specified
in this section.
(Note: Provide either CHAN and DIST, or NODE, or NAME; either
TYPE, or C_PART; either INTERVAL, or E_PART.)
CHAN - channel number
DIST - distance downstream along channel; LENGTH means to use
channel length
NODE - node number
(Note: cannot use node number for Hydro output (stage, velocity,
or flow); only Qual output. Qual output at a node will always
be the mixed concentration at the node.)
NAME - location name, translation provided to translate to
channel or node number. Used for DSS B part.
TYPE - type of data (stage, flow, etc.) Used for DSS C part.
INTERVAL - time interval (15MIN, 1HOUR, 1DAY, etc.) Used for
DSS E part.
PERIOD - INST (instantaneous) or AVE (average over interval)
MODIFIER - study name, etc. If this is the string 'runtime',
a model run date-time string will be used; this allows different
runs to automatically be labeled differently.If 'none', no string
will be used. If this field is not used, and the environment
variable DSM2MODIFIER is set, that will be used instead.
A_PART, B_PART, C_PART, E_PART, F_PART - DSS A, B, C, E, and
F parts. Use instead of TYPE, INTERVAL, and MODIFIER.
FILENAME - file to write to, if it ends in .DSS, use a DSS file,otherwise
the output file will be a text file.
The following three fields are used only by Qual, to track
conservative constituent input sources from location names, accounting
types, and node numbers.
FROM_NAME - track conservative constituents from a location
name.
FROM_TYPE - track conservative constituents from an accounting
type.
FROM_NODE - track conservative constituents from a node number.
- Example:
- OUTPUTPATHS
CHAN DIST TYPE INTERVAL PERIOD MODIFIER FILENAME
1 0 stage 15min inst mrg_0718-rst out.dss
82 0 stage 15min inst mrg_0718-rst out.dss
83 LENGTH stage 15min inst mrg_0718-rst out.txt
END
- # for Qual only
OUTPUTPATHS
NAME FROM_NAME TYPE INTERVAL PERIOD FILENAME
union mtz ec 1day ave qual.txt
union vernalis ec 1day ave qual.txt
END
- OUTPUTPATHS
NAME FROM_TYPE TYPE INTERVAL PERIOD FILENAME
union rim ec 1day ave qual.txt
ec5468 drain ec 1day ave qual.txt
union drain ec 1day ave qual.txt
END
Examples of Input Section
Translations
Section keyword: TRANSLATION
Field keywords: NAME* CHAN* DIST* NODE* RESERVOIR*
Required: no
Overwrites: yes;
By: NAME
Description: This section translates between place names and
node or channel-distance. It allows the use of place names in
input and output sections.
(Note: provide either CHAN and DIST, or NODE, or RESERVOIR.)
NAME - place name (location)
CHAN - DSM2 channel number
DIST - distance downstream along channel; LENGTH means to use
channel length
NODE - node number
RESERVOIR - reservoir name
- Example:
- TRANSLATION
NAME CHAN DIST
cvp 216 0
dxc 365 0
mtz 441 LENGTH
sac 410 0
END
- TRANSLATION
# translations to reservoir name
NAME RESERVOIR
swp clfct
bbid clfct
END
Types
Section keyword: TYPE
Field keywords: STRING PART MATCH SIGN ACCOUNT VALUE_IN VALUE_OUT
Required: no
Overwrites: no
Description: This section assigns accounting types to matching
pathnames, for later use in Qual and PTM; changes the sign of
specified time-series input values; and can change the incoming
value itself. DSM2-Hydro requires that sinks (flows out of nodes
and reservoirs) be negative and that sources be positive. Often
sinks will be stored in a DSS file as a positive number (e.g.
pumping values); the SIGN field will change the sign internally
in DSM2 without changing the database. The ACCOUNT field can
be used to assign a type to matching pathnames which can later
be used by Qual and PTM for accounting purposes in the output.
The VALUE_IN and VALUE_OUT fields are used to change incoming
values, usually for gate codes or perhaps bogus values in the
DSS input file.
STRING - String in pathname or label name to match.
PART - Part of pathname or label to match:
a=A part; b=name or B part; c=measurement type or C part;
e=interval or E part; f=modifier or F part; l=name label;
p=entire pathname.
MATCH - An exact match, or a substring.
SIGN - Make the matching pathnames a negative or positive value
(it does not invert the value).
ACCOUNT - Assign an accounting code to the match.
VALUE_IN - Incoming value to check.
VALUE_OUT - If string and incoming value match, assign VALUE_OUT
to the value used. Codes are allowed (GATE_OPEN, GATE_CLOSE,
and GATE_FREE), as well as any numeric value.
- Example:
- TYPE
STRING PART MATCH SIGN
CCC l exact - # Contra Costa Canal
SWP B exact - # Banks pumping
DICU-IRR F sub - # Irrigation pumping
END
- TYPE
STRING PART MATCH ACCOUNT
CCC B exact DIV
SWP B exact EXPORT
SAC B exact RIM
DICU-SEEP F sub SEEP
DICU-IRR F sub DIV
DICU-DRN F sub DRAIN
END
- TYPE
STRING PART MATCH VALUE_IN VALUE_OUT
dxc b exact 1.0 gate_open
END
Scalars
Section keyword: SCALAR
Field keywords: none
Required: yes
Overwrites: yes;
By: scalar name
Description: This section is used to input the values of single
variables (scalars) to DSM2. Each line in the scalars section
consists of two fields: the variable name, and the value (in
that order).
(Note: The flush_output interval should be kept at one day
or greater; less than one day will result in long times to write
to DSS at the end of a run.)
- Example:
- SCALAR
run_start_date 01jun1994
run_start_time 0000
#run_start_date restart # use restart file time to start the
run
#run_start_date tidefile # use tidefile time to start run
#run_end_date 31aug1994 # if used, comment out run_length
#run_end_time 1500
run_length 91DAY_15HOUR # if used, comment out run end
date/time
- flush_output 5day # interval to flush output;
# better if >= 1day
display_intvl 1hour # how often to display model time progress
checkdata false # check input data w/o simulation
- cont_missing true # continue on missing data (uses
# previous value)
cont_unchecked true # continue on unchecked data
cont_question true # continue on questionable data
# (use data value)
cont_bad true # continue on bad data
- warn_unchecked false # warn about unchecked data
warn_question false # warn about questionable data
warn_missing t # warn about missing data
- printlevel 1 # amount of printing, 0 to 9,
# increasing with number.
temp_dir d:\temp # directory to use for scratch
# files
- # following all Hydro variables
hydro_time_step 5min # time step length
deltax 5000 # spatial discretization, feet
- repeating_tide f # t = repeating tide run
max_tides 15 # maximum number of tide cycles
# to repeat
tide_length 25hour # tide length
toler_stage 0.0010 # tolerance for error in sum of
# repeated stages
toler_flow 0.0020 # tolerance for error in indiv of
# repeated flows
- terms dyn # Terms: dynamic, diffusion,
# or kinematic
vardensity f # f = constant density,
# t = variable density.
varsinuosity f # f = constant sinuosity,
# t = variable sinuosity.
- gravity 32.02 # acceleration due to gravity.
theta 0.6 # time-weighting factor.
maxiter 9 # maximum number of iterations
# per time step.
luinc 2 # interval for complete forward
# eliminations.
toleranceq 0.5 # tolerance for closure on
# discharge.
tolerancez 0.005 # tolerance for closure on
# water-surface elevation.
- # following all Qual variables
- Qual_time_step 15min # Qual time step
Dispersion t # true Activate dispersion
Init_Conc 100.0 # initial concentration value
tide_length 25hour # tide length
END
Titles
Section keyword: TITLES
Field keywords: none
Required: no
Overwrites: no
Description: Each line in the Title section is used as a title
or header for later printouts. Typically the user would enter
a description of the run in this section.
- Example:
- TITLES
Test run with full Sacramento-San Joaquin Delta network.
Rectangular Cross Sections
Section keyword: XSECTS
Field keywords: XSECT* WIDTH BOTELV INIT-STAGE INIT-FLOW
Required: yes
Overwrites: yes
By: XSECT
Description: The cross sections given in the CHANNELS section
are listed here. Only rectangular cross sections are specified
in this section; irregular cross-sections are given in Irregular
Cross-Sections. Initial stages and flows at the cross section
are given; these can be overwritten with a restart file.
XSECT - cross section number
WIDTH - width in feet of rectangular section
BOTELV - bottom elevation of rectangular section, usually w.r.t.
NGVD
INIT-STAGE - the initial stage in feet; same datum as BOTELV
INIT-FLOW - the initial flow, cubic feet per second
- Example:
- XSECTS
XSECT WIDTH BOTELV INIT-STAGE INIT-FLOW
1 192.0 -5.10 5.25 0.01
2 192.0 -5.10 5.25 0.01
END
Irregular Cross Sections
Section keyword: IRREG_GEOM
Field keywords: CHAN* DIST* FILENAME*
Required: yes
Overwrites: yes;
By: CHAN DIST
Description: The irregular cross sections, if any, are listed
here. Only irregular cross sections are specified in this section;
rectangular cross-sections are given in Rectangular Cross-Sections.
CHAN - DSM2 channel number.
DIST - distance downstream from upstream end, normalized between
zero and one. The actual distance will be calculated internally,
multiplying the normalized distance here with the channel length
in the CHANNELS section.
FILENAME - the file containing cross-sectional area, wetted perimeter,
top width, etc. in table form (example format). This file is
produced by the Cross Section Display Program (CSDP).
- Example:
- IRREG_GEOM
CHAN DIST FILENAME
6 0.62093 irregular_xsects/6_0.62093.txt
7 0.25863 irregular_xsects/7_0.25863.txt
7 0.86019 irregular_xsects/7_0.86019.txt
END
Junctions
Section keyword: JUNCTIONS
Field keywords: NODE* BOUNDARY*
Required: yes
Overwrites: Yes
By: NODE
Description: Any junction that has a stage boundary (the stage
is specified at the junction) must be listed here. Usually only
one junction will have a stage boundary. Flow boundary junctions
need not be listed.
- Example:
- JUNCTIONS
NODE BOUNDARY
361 STAGE
END
Gates
Section keyword: GATES
Field keywords: NAME* OPER NODE CHAN LOC NGATES WIDTHUP WIDTHDOWN
CRESTELEV NPIPES PIPERAD PIPEELEV CFWEIRUP CFWEIRDOWN CFPIPEUP
CFPIPEDOWN WIDTHFREE ELEVFREE
Required: no
Overwrites: yes
By: NAME
Description: Describes the gates to be used in the run. Weirs
and pipes (culverts) can be used in the same gate. Multiple gates
not allowed at the same location. A gate can have multiple gates
and pipes. The number of gates open at any time can be controlled
during the run from DSS values.
NAME - name of gate.
OPER - type of operation:
TIME - get open/close timing from DSS, see note below.
CALC - calculate open/close timing from operational criteria
(stage difference, etc).
OPEN - always opened: use the flow coefficients given, all gates
open.
CLOSE - always closed: set the flow coefficients to zero.
IGNORE - ignore gate; same as commenting out line.
FREE - gate installed but free-flow (no obstruction); produces
similar but not identical results as
IGNORE
NODE - node number, if reservoir gate.
CHAN - DSM2 channel number the gate is in.
LOC - UP or DOWN for upstream or downstream end of channel.
NGATES - number of gate openings for weir-type gate.
WIDTHUP - width of gate, upstream direction.
WIDTHDOWN - width of gate, downstream direction.
CRESTELEV - crest elevation in feet, same datum as channels.
NPIPES - number of pipes (culverts).
PIPERAD - pipe radius, feet.
PIPEELEV - pipe invert elevation in feet, same datum as channels.
CFWEIRUP - flow coefficient for weirs, upstream direction.
CFWEIRDOWN - flow coefficient for weirs, downstream direction.
CFPIPEUP - flow coefficient for pipes, upstream direction.
CFPIPEDOWN - flow coefficient for pipes, downstream direction.
WIDTHFREE - width to use for free-flow (gate installed but not
an obstruction)
ELEVFREE - crest elevation to use for free-flow (gate installed
but not an obstruction)
(Note: The number of gate (weir-type) openings is specified
in NGATES and defaults to one. The number of gates open at any
time can be read from DSS if the OPER value for a gate is TIME.
Thus, for instance, for the Delta Cross Channel, NGATES should
be 2, and possible values from DSS should be 0 (all gates closed;
no low), 1 (one gate open, one gate closed), or 2 (both gates
open). In addition, a value of 10 means to activate the 'free-flow'
regime, which leaves the gate installed but with no flow impediment.
Tests show this produces a very similar flow to leaving the gate
out entirely. Consequently, gates can be installed and uninstalled
during a single model run.)
- Example:
- GATES
# gates on reservoirs--the coeffs are given in the reservoir
# section
NAME OPER NODE
clfct time 72
END
- # gates that are weirs
GATES
NAME OPER CHAN LOC WIDTHDOWN WIDTHUP CRESTELEV CFWEIRDOWN CFWEIRUP
dxc open 365 up 120.0 120.0 -13.6 0.90 0.90 #DXC
gl_cn ignore 213 down 359.0 359.0 -10.0 0.20 0.20
END
- # gates that are pipes
GATES
NAME OPER CHAN LOC NPIPES PIPERAD PIPEELEV CFPIPEDOWN CFPIPEUP
old_r time 80 up 9 2.00 -0.10 0.00 0.60
END
- # both weir and pipe
GATES
NAME OPER CHAN LOC WIDTHDOWN WIDTHUP CRESTELEV CFWEIRDOWN
CFWEIRUP NPIPES PIPERAD PIPEELEV CFPIPEDOWN CFPIPEUP
mid_r ignore 134 up 140.00 140.00 -3.00 0.8
0.8 6 2.00 -4.00 0.00 0.60
# Above is just one long line of input
END
- # multiple gate openings at a gate structure
GATES
NAME NGATES
dxc 2
END
- # Widths and crest elevations for free flow
GATES
NAME WIDTHFREE ELEVFREE
gl_cn 500.0 -20.0
orhrb 150.0 -10.0
END
Internal Flow Transfer
Section keyword: OBJ2OBJ
Field keywords: FROM_TYPE* FROM_NAME* TO_TYPE* TO_NAME*
INPUT_LABEL FLOW
COEFF_POS COEFF_NEG ACCOUNT NAME
Required: no Overwrites: no
Description: Allows for internal flow transfer between object
(nodes and reservoirs).
(Note: Use either INPUT_LABEL, or FLOW.)
FROM_TYPE - from what type of object (currently "reservoir"
or "node").
FROM_NAME - "from" object name or number.
TO_TYPE - to what type of object (currently "reservoir"
or "node").
TO_NAME - "to" object name or number.
INPUT_LABEL - the label (name) used for an input path. The
value of the input path at each time step will be used for the
flow transfer value.
FLOW - a constant value to use for the flow value.
COEFF_POS - for stage-driven flow between two reservoirs: the
flow coefficient in the positive (FROM -> TO) direction.
COEFF_NEG - for stage-driven flow between two reservoirs: the
flow coefficient in the negative (TO -> FROM) direction.
ACCOUNT - accounting label to give this transfer.
NAME - name to give this transfer.
- Example:
- # CALFED Isolated Facility using object-to-object flows
OBJ2OBJ
FROM_TYPE FROM_NAME TO_TYPE TO_NAME INPUT_LABEL NAME
node IF_in reservoir clfct IF_flow if
END
Tides
Section keyword: TIDEFILE
Field keywords: START_DATE* START_TIME END_DATE* END_TIME
FILENAME*
Required: yes (for Qual and PTM)
Overwrites: no
Description: This section lets Qual and PTM know what order
to use the binary output files from Hydro which contain channel
flows and stages, reservoir flows, and external flows. Each time-averaged
set of flows, along with its timestamp, is called a 'tide block';
a single tidefile will typically contain several of these tideblocks,
along with some preliminary header information. If the tidefile
was generated by a repeating tide, then the tideblocks will usually
be 15 minutes or 1 hour in length, and the collection of tideblocks
in a single tidefile will span exactly one tidal day (the length
of a tidal day is specified in the SCALAR section, keyword TIDE_LENGTH.
START_DATE - starting date of tidefile. Use a date spec if
desired (e.g. 05JAN1987), or use 'generic' to ignore the tidefile
time stamp and simply start with the model run. Use 'runtime'
or leave empty to try to find the model start runtime in the
tidefile. Use 'last' or 'previous' to start right after the previous
tidefile ends (not allowed on first tidefile).
START_TIME - starting time of tidefile. If 'generic' or 'last'
was given for START_DATE, this can be 'none', or leave out the
field, otherwise use a time spec (e.g. 1700).
END_DATE - ending date of tidefile. Use either a date spec, or
a time length (e.g. 3day_5hour), or 'length' to mean use the
entire length of the tidefile. If the tidefile is repeating (if
it was generated by a repeating tide run in Hydro), and 'length'
is given, then the tidefile will be recycled an integer number
of times.
END_TIME - ending time of tidefile; use a time spec or 'none',
or leave out the field.
- Example:
- TIDEFILE
START_DATE END_DATE FILENAME
generic 6day ../output-files/hydro-unf-rpt-1h.out
last length ../output-files/hydro-unf-rpt-15m.out
END
Non-Conservative Constituents RateCoefficients
Section keyword: RATE_COEFFS
Field keywords: CHANNEL* RESERVOIR* TYPE* CONSTITUENT* VALUE*
Required: no
Overwrites: yes
By: channel number and reservoir name
Description: Reaction coefficients for non-conservative constituents
in channels and reservoirs are specified in this section.
(Note: CHANNEL and/or RESERVOIR are required.)
CHANNEL - channel number(s); may use grouping, for instance:
1-5,7,11-20.
RESERVOIR - reservoir name(s); may use comma-separated list
TYPE - type of coefficient. Allowed values are DECAY, SETTLE,
BENTHIC, ALG_GROW, ALG_RESP.
CONSTITUENT - non-conservative constituent name. Allowed values
are ALGAE, BOD, DO, NH3, NO2, NO3, ORGANIC_N,
ORGANIC_P, PO4, TEMP
VALUE - the rate coefficient value
- Example:
- rate_coeffs
channel reservoir type constituent value
1-55,60,61 CLFCT,2,3 decay BOD 1.1
1-55,60,61 CLFCT,2,3 settle BOD 0.24
1-55,60,61 CLFCT,2,3 benthic DO 200.
1-55,60,61 CLFCT,2,3 decay ORGANIC_N 0.1
END
Flux Output
Section keyword: PARTICLE_FLUX
Field keywords: FROM_WB* TO_WB* INTERVAL* PERIOD* MODIFIER
FILENAME*
Required: no
Overwrites: no
Description: PTM Flux text and DSS output is specified in
this section.
FROM_WB - a list of waterbody types and IDs. The waterbody
types are separated by whitespace (space or tab); the IDs follow
each waterbody type separated by commas. This tells the PTM to
track particles passing from the specified waterbody types/IDs.
IDs are either numbers (for channels and nodes), or names (for
reservoirs and flow types), or accounting labels. If no waterbodies
are given, then all particles passing to the TO_WB waterbodies
are counted. 'All' for an ID means to count all waterbodies of
that kind (e.g. all external flows). A waterbody ID preceeded
with a minus sign "-" means to remove that from the
list.
TO_WB - same as FROM_WB, except this tells the PTM to track particles
going to the waterbodies.
(Note: Separate the above two fields of data with the pipe
"|" character.)
INTERVAL - time interval (15MIN, 1HOUR, 1DAY, etc.)
B_PART - DSS B part for flux.
MODIFIER - study name, etc. If this is the string 'runtime',
a model run date-time string will be used; this allows different
runs to automatically be labeled differently. If 'none', no string
will be used. If this field is not used, and the environment
variable DSM2MODIFIER is set, that will be used instead.
FILENAME - file to write to, if it ends in .DSS, use DSS file,
otherwise text file.
- Example:
- PARTICLE_FLUX
FROM_WB TO_WB INTERVAL FILENAME b_part
chan,436,53 | chan,442,437 | 1day flux.txt past_Chipps
chan, 441 | stage, mtz | 1day flux.txt past_MTZ
res,clfct | qext,swp | 1day flux.txt past_SWP
chan,83,217,82 | res, clfct | 1day flux.txt past_72
chan, 216 | qext,cvp | 1day flux.txt past_CVP
| qext,div,-cvp,-nb,-ccc | 1day flux.txt Ag_Diversions
| qext,div | 1day flux.txt All_Diversions
END
Particle Insertion Input
Section keyword: PARTINP
Field keywords: NODE* NPARTS* SDATE* STIME EDATE* ETIME SLENGTH
LENGTH
Required: yes
Overwrites: no
Description: Specifies to the PTM when and where to insert
particles into the system.
(Note: Provide either SDATE and STIME, or SLENGTH; and either
EDATE and ETIME, or LENGTH.)
NODE - node number to insert particles at.
NPARTS - number of particles to insert each time step.
SDATE,STIME - when to start inserting particles; 'runtime' indicates
to start at model runtime (same as SLENGTH==0).
EDATE,ETIME - when to stop inserting particles.
SLENGTH - how long after start of run to start inserting particles.
LENGTH - how long an interval to insert particles (e.g. 1DAY
or 23HOUR)
- Example:
- PARTINP
NODE NPARTS SDATE STIME EDATE ETIME
330 100 29dec1992 0100 29dec1992 0200
330 100 runtime none 29dec1992 0200
END
- PARTINP
NODE NPARTS SLENGTH LENGTH
361 100 1hour 5day_3hour
END
Time-Varying Input and Output
Time-varying input and output are data such as boundary stage
,external and internal flows, gate positions, and water quality
concentrations. For this information, we use the Hydrologic Engineering
Center Data Storage System (HECDSS) database written by the U.S.
Army Corps of Engineers for hydrologic data.
HECDSS
HECDSS was chosen for the time-varying database system because
compared to relational databases it is fast and does not consume
excessive storage or computing resources; it is available for
a wide variety of computers (PCs, Unix, and mainframes); and
may be used interactively and as subroutine calls from Fortran.
With HECDSS the timing of events are known precisely during the
model run, and can be displayed clearly in the input and the
output, reducing ambiguity.
Regular and Irregular Time-Varying
Data
HECDSS supports two types of time-varying data: irregular
and regular intervals. Irregular time-series data does not occur
at regularly spaced intervals. For each event, the DSS file stores
the date and time, and the data value. Regular time-series data
occurs at timed intervals, for example, every hour or every day.
Regularly spaced data can be stored more compactly, because the
starting date and time, and the interval, are stored only once.
Each event stores only the data value.
Note that regular time-series data can be stored as irregular,
but irregular data cannot be stored as regular. Thus, one could
store all data as irregular, but this would be inefficient for
file size and retrieval time.
DSS Pathnames
DSS stores data by using pathnames. A DSS pathname is composed
of the six
following parts: 1) general grouping name; 2) location; 3) parameter
(flow, stage, etc.); 4) block start date; 5) time interval or
block length; 6) descriptor
A typical pathname now used by DSM2:
/DELTA/BANKSPP/FLOW/01JAN1997/1HOUR/OBS-DWR-OM/
IEP equivalent:
/HIST+CHAN/CLFCT000/FLOW-EXPORT/01JAN1997/1HOUR/DWR-OM-DFD/
Converting from ASCII to DSS
Before a model run, the user prepares ASCII files containing
the time-varying data values, then runs preprocessors on the
ASCII files to convert the data into DSS files. The preprocessors
are included in the DSS package available from HEC: they are
dssits and dssts, as well as dssts2, developed from dssts by
DWR. The ASCII input files are different for each preprocessor.
Use dssits for irregular-time data. Dssts should be used for
regular interval data that have no time gaps in the list. Dssts2
should be used for regular interval data that have gaps in the
list.
dssits Input File Explanation
/tmp/input.dss name of DSS file to receive data
/DELTA/DXC/GATE/01JUN1994/IR-DECADE// DSS pathname for this data
stream
POS data units (here, gate position)
INST-VAL instantaneous value or period average
31May1994 2400 1 date, time, value for each event
01Jun1994 1200 0
02Jun1994 0500 1
END end of this data stream
/DELTA/CLFCT/GATE/01JUN1994/IR-DECADE// pathname for new data
stream
POS
INST-VAL
31May1994 2400 1
END
FINISH end of file
dssts Input File Explanation
/tmp/input.dss name of DSS file to receive data
/DELTA/MTZ/STAGE/01JUN1994/1HOUR// DSS pathname for this data
stream
FEET data units (here, feet of stage)
PER-AVER instantaneous value or period average
01JUN1994 0000 date and time of first value
-0.08 values for events at each interval
-0.52
M missing data must be explicitly marked
-0.26
0.76
0.54
END end of this data stream
/DELTA/SWP/FLOW/01JUN1994/1HOUR// pathname for new data stream
CFS
PER-AVER
01JUN1994 0000
381
400
500
END
FINISH end of file
dssts2 Input File Explanation
/tmp/input.dss name of DSS file to receive data
/DELTA/MTZ/STAGE/01JUN1994/1HOUR// DSS pathname for this data
stream
FEET data units (here, feet of stage)
PER-AVER instantaneous value or period average
01JUN1994 0000 -0.08 date, time, value for events at each interval
01JUN1994 0100 -0.52
01JUN1994 0200 M missing data can be explicitly marked
01JUN1994 0300 -0.26
01JUN1994 0600 0.76 note time gap in input stream
01JUN1994 0700 0.54
END end of this data stream
FINISH end of file
Running the Utilities
All three utilities are run from a command line prompt in
this manner:
<utility> IN=<input filename> OUT=<output log
filename>, for instance, dssts IN=test.dat OUT=test.log
In unix, instead of IN and OUT, you can use redirection: dssts
< test.dat > test.log
Be sure to check the log files for any error messages pertaining
to the conversion. The utilities will check for dates and times
that are out of sequence, invalid characters in the value
fields, etc.
For more information on DSS, consult the following URL:
http://www.wrchec.usace.army.mil/publications/pubs_distrib/hecdss.html
Input Specification Section
Time-varying input to Hydro and Qual is specified in the INPUTPATHS
section of the fixed input. This section has the following components:
Section keyword: INPUTPATHS
Field keywords: NODE NAME MEAS_TYPE INTERVAL
A_PART B_PART C_PART E_PART F_PART
SDATE STIME ID
PRIORITY FILLIN FILENAME VALUE
(Note: Provide either NODE, or NAME; either MEAS_TYPE or C_PART;
either INTERVAL or E_PART; and either FILENAME or VALUE.)
Section required: yes
Overwrite: no
Description: Provides information to locate and access time-varying
input data (flows, stages, gate operations, water quality, etc.)
from DSS during the run. All time-varying input for Hydro and
Qual must come from DSS files. Time-varying input is applied
to a node number, or a name which translates to a node number.
Field Keyword Description
NODE - node number.
NAME - location name, must translate to node number. Used for
DSS B part.
MEAS_TYPE - type of data: flow, stage, gate, ec, tds, etc. Used
for DSS C part.
INTERVAL - time interval: 15MIN, 1HOUR, 1DAY, 1MONTH,
IR-DECADE. Used for DSS E part.
ID - identification, study name, etc. Used for DSS F part.
A_PART, B_PART, C_PART, E_PART, F_PART - DSS A, B, C, E, and
F parts. (Use instead of MEAS_TYPE, INTERVAL, and ID.)
SDATE - optional start date, if different from model run start
date.
STIME - optional start time, if different from model run start
time.
(Note: If used, the data will start at the given date, regardless
of the model start time. Use "GENERIC" to indicate
the data starts at the standard generic time (01JAN3001 0000).
Use "SYNC" to indicate that the data time should be
synchronized to the model time based on the interval or E part.
For instance, for a data interval of 1MON, the system will attempt
to always use January data for a January model time, etc. Synchronized
data must have a generic start date, and must not contain missing
data.)
PRIORITY - optional priority of this path (integer between
0 and N). This allows for alternate or filled-in data to automatically
be used from separate pathnames, without having to create a path
for a location. If a higher priority (lower number) path's data
is missing or bad, then the next lower priority path at the same
location will be used to replace it. Paths are assumed to be
at the same location if they are at the same object (node, channel,
or reservoir). A priority of 0 means ignore the priority system,
always use the path.
FILLIN - use LAST data value, or INTERPolate between values,
or use either last or interpolation based on whether the DATA
is averaged or instantaneous.
FILENAME - DSS filename to find data.
VALUE - numeric value to use as constant input value for entire
run.
- Examples:
- INPUTPATHS
# input paths that have alternate start dates, and placename.
- NAME MEAS_TYPE INTERVAL SDATE ID FILLIN FILENAME
SAC flow ir-decade 31may1994 test1 INTERP /inputfiles/input.dss
SJR flow 1hour generic test1 DATA /input-files/input.dss
END
- INPUTPATHS
# input path at a node, has first priority.
NODE MEAS_TYPE INTERVAL ID FILLIN PRIORITY FILENAME
3 EC 1day Study1 LAST 1 /input-files/input.dss
END
- INPUTPATHS
# input path at a node, with constant value; use if main path's
data is missing.
NODE MEAS_TYPE INTERVAL ID FILLIN PRIORITY VALUE
3 EC 1mon Study1 LAST 2 200.0
END
Output Specification Section
Time-varying output from Hydro and Qual is specified in the
OUTPUTPATHS section of the fixed input. This section has the
following components:
Section keyword: OUTPUTPATHS
Field keywords: CHAN DIST NODE TYPE INTERVAL PERIOD MODIFIER
A_PART B_PART C_PART E_PART F_PART
FILENAME FROM_NAME FROM_TYPE FROM_NODE
Section required: no
Overwrite: no
Description: Time-varying text and DSS output is specified
in this section.
(Note: provide either CHAN and DIST, or NODE, or NAME; either
TYPE, or C_PART; either INTERVAL, or E_PART.)
Field Keyword Description
CHAN - channel number.
DIST - distance downstream along channel; LENGTH means to use
the channel length.
NODE - node number.
(Note: cannot use node number for Hydro output (stage, velocity,
or flow); only Qual output. Qual output at a node will always
be the mixed concentration at the node.)
NAME - location name, translation provided in TRANSLATION
section to translate to channel or node number. Used for DSS
B part.
TYPE - type of data (stage, flow, etc.) Used for DSS C part.
INTERVAL - time interval (15MIN, 1HOUR, 1DAY, etc.) Used for
DSS E part.
PERIOD - INST (instantaneous) or AVE (average over interval).
MODIFIER - study name, etc. If this is the string 'runtime',
a model run date-time string will be used; this allows different
runs to automatically be labeled differently. If 'none', no string
will be used. If this field is not used, and the environment
variable DSM2MODIFIER is set, that will be used instead.
A_PART, B_PART, C_PART, E_PART, F_PART - DSS A, B, C, E, and
F parts. (Use instead of TYPE, INTERVAL, and MODIFIER.)
FILENAME - file to write to, if it ends in DSS, use a DSS file,
otherwise the output file will be a text file.
- Example:
- OUTPUTPATHS
CHAN DIST TYPE INTERVAL PERIOD MODIFIER FILENAME
1 0 stage 15min inst mrg_0718-rst out.dss
82 0 stage 15min inst mrg_0718-rst out.dss
83 LENGTH flow 1hour ave mrg_0718-rst out.txt
END
Input Sign and Value, Output Account
Name Section
Hydro requires that sinks (flows out of nodes and reservoirs)
be negative, and that sources be positive. Often sinks will be
stored in a DSS file as a positive number (e.g. pumping values);
this section is used to change the sign internally in DSM2 without
changing the database.
Also, incoming values can be changed to other values; this
is typically used to ensure proper gate code values, or perhaps
fix the occasional psuedo value in a DSS file that one cannot
edit.
This section is also used to assign an accounting type to
matching pathnames which can be used by Qual and PTM for accounting
purposes in the output.
This section has the following components:
Section keyword: TYPE
Field keywords: STRING PART MATCH SIGN ACCOUNT VALUE_IN VALUE_OUT
Section required: no
Overwrite: no
Description: This section changes the sign of specified time-series
input values, and assigns accounting types to matching pathnames,
for later use in Qual and PTM. Hydro requires that sinks (flows
out of nodes and reservoirs) be negative, and that sources be
positive. Often sinks will be stored in a DSS file as a positive
number (e.g. pumping values); the SIGN field will change the
sign internally in Hydro without changing the database. The ACCOUNT
field can be used to assign a type to matching pathnames which
can later be used by Qual and PTM for accounting purposes in
the output.
Field Keyword Description
STRING - string in pathname or label name to match.
PART - part of pathname or label to match (a=A part; b=name or
B part;c=measurement type or C part; e=interval or E part; f=modifier
or F part; l=name label; p=entire pathname).
MATCH - an exact match, or just a substring.
SIGN - make the matching pathnames a negative or positive value
(it does not invert the value).
ACCOUNT - assign an accounting code to the match.
VALUE_IN - incoming value to check.
VALUE_OUT - if string and incoming value match, assign the VALUE_OUT
value.
- Example:
- TYPE
STRING PART MATCH SIGN
CCC L exact - # Contra Costa Canal
SWP B exact - # Banks pumping
DICU-IRR F sub - # Irrigation pumping
END
-
In the above example, Contra Costa, Banks, and agricultural
diversion pumping are assigned a negative value (regardless of
their sign in the DSS file) to ensure that they will be treated
as sinks in Hydro.
- Example
- TYPE
STRING PART MATCH ACCOUNT
CCC B exact DIV
SWP B exact EXPORT
SAC B exact RIM
DICU-SEEP F sub SEEP
DICU-IRR F sub DIV
DICU-DRN F sub DRAIN
END
In the above example, Contra Costa Canal pumping is assigned
an accounting type of DIV (diversion), Banks pumping is assigned
EXPORT, all agricultural seepages are assigned SEEP, and so on.
These accounting labels are written into the tidefile produced
by Hydro and subsequently read by Qual and PTM.
- Example
- TYPE
STRING PART MATCH VALUE_IN VALUE_OUT
dxc b exact 1.0 gate_open
END
In the above example, if dxc is found with a gate value of
1.0 from the DSS file, it will be changed to the GATE_OPEN value.
Allowable codes are GATE_OPEN, GATE_CLOSE, and GATE_FREE. Any
numeric value is also allowed.
Running the DSM2 Modules
On Unix or NT, simply type the executable name from a shell
command line:
% hydro
% qual
% ptm
Command line arguments and environment variables may be used
to specify the starting input file for each run.
If an argument is given on the command line, for example ""%
qual qual.inp" then that is used as the first input file.
If no file name is given on the command line, the environment
variable DSM2INPUT can be used to specify the first input file
to read. The environment variables HYDROINPUT or QUALINPUT override
DSM2INPUT. If no environment variable or command line argument
is used, the default filename is dsm2.inp.
Examining DSM2 Output
Hydro, Qual, and PTM can produce output in either text files
or DSS files. Additionally, Hydro produces tidefiles to convey
hydrodynamic information to Qual and PTM, and both Hydro and
Qual produce restart files so a run can be interrupted and restarted
later. PTM can produce special files intended for graphical display
of the data. None of these special purpose files will be discussed
here. Only text and DSS files, produced in the OUTPUTPATHS section,
are considered.
Text output files consist of blocks of data, one block for
each output path requested. Each block is composed of 3 lines
of DSS-style headers, followed by lines of data values. Each
data value line has the date, time, and value of the output.
For example:
/DELTA/134_3800/STAGE//15MIN/CMP-5D-1H/ DSS pathname
INST-VAL Instantaneous value or period average
FEET Data value units
31DEC1992 2400 1.36 Date, time, and value: initial value of run
01JAN1993 0015 1.56 Computed values from run follow
01JAN1993 0030 1.75
01JAN1993 0045 1.97
01JAN1993 0100 2.20
/DELTA/133_1100/STAGE//15MIN/CMP-5D-1H/ New output block
INST-VAL
FEET
31DEC1992 2400 1.14
01JAN1993 0015 1.35
01JAN1993 0030 1.59
01JAN1993 0045 1.82
01JAN1993 0100 2.06
Text files can be examined with any text editor, or with some
editing can be loaded into spreadsheets for more processing.
Text files have a simple format so that the user can process
the data further for their own purposes. The intent of DSM2 is
to calculate results and output those results in a basic format
for other utilities and programs to process. We will not be adding
post-processing routines to DSM2 itself.
DSM2 can also output results into DSS files. DSS files are
written in Fortran binary format and cannot be examined directly.
Instead, the data must by downloaded from the DSS file into text
(ASCII) files, or utilities which work directly with DSS files
should be used. For instance, the HEC program DSSUTL can be used
to view data in DSS files, print the data to files, delete or
rename pathnames, and so on.
HEC also has a program called DSPLAY to produce line plots
of DSS data. The Delta Modeling Section is developing a data
viewer (VISTA-VISualization Tool and Analyzer) to plot data in
DSS files in a variety of plotting styles.
The advantage of using DSS files, instead of text files, are
that the data is stored more compactly, and for large amounts
of data it is easier to use a data manager utility to select
pathnames, time frames, etc., rather than trying to manipulate
huge text files. IV.B. Multiple Conservative Constituent Source
Output
Multiple Conservative Constituent Source
Output
Conservative constituent concentrations from multiple sources
can be calculated and output in a single Qual run. The setup
for this is in two parts: first, specifying any accounting names
desired in the Hydro run, and second, specifying the output from
Qual. Conservative constituents can be specified by three source
types: named source, node source, and accounting type source.
A name source must translate to a node number. Neither name sources
or node sources require an accounting name specification in Hydro.
However, output by accounting name does require that an accounting
name be given in the Hydro run.
To specify an accounting name for Hydro, the TYPE section
is used. TYPE can be used to change the sign of flows or specify
accounting names. Here, only accounting name usage is reviewed.
For example:
TYPE
STRING PART MATCH ACCOUNT
CCC B exact DIV
SWP B exact EXPORT
SAC B exact RIM
VERNALIS L exact RIM
DICU-SEEP F sub SEEP
DICU-IRR F sub DIV
DICU-DRN F sub DRAIN
END
The STRING field is the character string to search for in
the input paths. The PART field can be one of several letter
codes: a=A part; b=name or B part; c=measurement type or C part;
e=interval or E part; f=modifier or F part; l=name label; p=entire
pathname. MATCH can be either exact string match, or just a substring.
ACCOUNT will assign any accounting label string desired by the
user to those input paths matching the string.
In the example, Contra Costa Canal pumping is assigned an
accounting type of DIV (diversion), Banks pumping is assigned
EXPORT, all agricultural seepages are assigned SEEP, and so on.
These accounting labels are written into the tidefile produced
by Hydro and read by Qual and PTM.
In Qual, the standard output concentration specification is
asfollows. First, the input concentrations are shown:
# Time-varying EC input for Qual
INPUTPATHS
NAME MEAS_TYPE INTERVAL ID FILLIN FILENAME
MTZ EC 1hour obs-dwr-eso interp input.dss
SAC EC 1day obs-usbr data input.dss
VERNALIS EC 1day obs-usbr last input.dss
END
INPUTPATHS
NAME MEAS_TYPE INTERVAL ID FILLIN VALUE
CSMR EC 1day xx last 130.
MOKE EC 1day xx last 130.
END
INPUTPATHS
NODE MEAS_TYPE INTERVAL ID FILLIN SDATE FILENAME
1 EC 1MON DICU-DRN-HIST LAST GENERIC divdrn_qual.dss
3 EC 1MON DICU-DRN-HIST LAST GENERIC divdrn_qual.dss
5 EC 1MON DICU-DRN-HIST LAST GENERIC divdrn_qual.dss
etc.
END
Next, a basic output specification:
OUTPUTPATHS
NAME TYPE INTERVAL PERIOD FILENAME
union ec 1day ave qual.txt
END
This tells Qual to output one pathname at the Union Island
station (translated elsewhere to channel 125, 2,700 feet downstream).
Since no source qualification is used, the concentration output
will be from all sources, by default. However, by adding one
of three field keywords, this can be qualified by source:
OUTPUTPATHS
NAME FROM_NAME TYPE INTERVAL PERIOD FILENAME
union mtz ec 1day ave qual.txt
union vernalis ec 1day ave qual.txt
END
OUTPUTPATHS
NAME FROM_NODE TYPE INTERVAL PERIOD FILENAME
union 1 ec 1day ave qual.txt
union 330 ec 1day ave qual.txt
END
OUTPUTPATHS
NAME FROM_TYPE TYPE INTERVAL PERIOD FILENAME
union drain ec 1day ave qual.txt
END
In these examples, output at the same UNION location is requested.
In the first pair of outputs, EC from Martinez and Vernalis,
and from no other sources, is requested. In the second pair,
EC from nodes 1 and 330 only is requested. Since Vernalis translates
to node 1, those two outputs should be identical. In the last
example, EC from flows with the accounting label DRAIN is requested.
This would be all 258 agricultural drainage sources, as given
in the input-ag.inp file.
Not yet available is a method for conveniently combining different
sources in a single output path. This capability could be added
if the need arises.
DSM2 on the Internet
The main URL for DSM2 is: http://wwwdelmod.water.ca.gov/
DSM2 files (source code, executables, auxiliary programs,
example input, and so on) are stored in several different places.
The following URL points to a collection of URLs to allow easy
downloading of individual components:
http://wwwdelmod.water.ca.gov/docs/dsm2/dsm2.html#URL
Collection
An e-mail discussion list is available. To join, send e-mail
to majordomo@osp.water.ca.gov,
and in the text area (not the subject),type in ""subscribe
dsm2".
Planning Studies
Planning studies usually use the 19-year mean tide repeatedly
and monthly averaged input values, involve several variations
of the same theme, and are run during several years.
Hints for Organizing Runs
Have a shell or program loop over each year and period, setting
environment variables and creating temporary files, which are
then read by the input system.
To read a temporary file, use the INP_FILES section.
To access environment variables in the input, use dollar sign
notation:
# rim flows from DWRSIM run
INPUTPATHS
name a_part b_part c_part e_part f_part fillin filename
sac $DWRSIMSTUDY 137 FLOW-DOWNSTREAM 1MON OUTPUT last $DWRSIMFILE
sjr $DWRSIMSTUDY 682 FLOW-DOWNSTREAM 1MON OUTPUT last $DWRSIMFILE
yolo $DWRSIMSTUDY 55 FLOW-LOCAL_INFLOW 1MON OUTPUT last $DWRSIMFILE
ccc $DWRSIMSTUDY 528 DIVERSION-ACTUAL 1MON OUTPUT last $DWRSIMFILE
nb $DWRSIMSTUDY 55 DIVERSION-ACTUAL 1MON OUTPUT last $DWRSIMFILE
END
Organize input data by common factors:
- input common to all studies and times, e.g. scalar constants,
reservoir and gate names
input common to a particular study, e.g. channel configuration,
pumping amounts
Goto: 1998 Annual
Report
Goto: Annual Reports
|