Press Alt + R to read the document text or Alt + P to download or print.
This document contains no pages.
HomeMy WebLinkAbout03_TRBM_Appendix_A_-_Model_Static_Input_Data_and_Run_Code
APPENDIX A –
Model Static Input Data and Run Code
[from basecase run called “SimBase” using current conditions]
Static data tables included are:
All Model Nodes
All Model Arcs
Reservoirs Nodes
Reservoir Rules
Reservoir SAE Data
Demand Patterns
Wastewater Return Patterns
Arc Minimum Flows
County Irrigation Data
Crop Irrigation Coefficients
OCL files included are:
main.ocl
udef_list.ocl
agric_calculation.ocl
agric_allocation.ocl
set_inflows.ocl
return_flows.ocl
routing.ocl
Rocky_Mt_Ops.ocl
drought_plans.ocl
Model Nodes
Node
Number Type Inflow Name
010 Junction OCL Tar River Gage
012 Demand None Tarr Ag
015 Junction None Oxford WWTP
025 Reservoir None Tar R. Routing
030 Junction OCL Kerr Lake RWS Transfer
050 Junction OCL Louisburg Gage
052 Demand None Loui Ag
060 Reservoir OCL New City Pond
066 Reservoir OCL Old City Pond
070 Junction OCL Cedar Creek gage
072 Junction None Franklinton Jnc.
074 Demand None Franklinton
075 Junction None Franklin Co. Jnc.
076 Demand None Franklin Co. Demand
077 Junction None Franklin Co WWTP
082 Demand None Cedr Ag
084 Junction None Louisburg Jnc.
086 Demand None Louisburg
090 Junction None Taylor Ck. Jnc.
093 Junction Pattern Bunn WWTP
095 Reservoir None Louisburg>Reservoir Routing
097 Junction Pattern Spring Hope WWTP
100 Junction None Node100
110 Junction None Ag Offtake
115 Junction OCL Wilson Emer. Transfer
120 Reservoir OCL Tar River Reservoir
122 Demand None Resv Ag
130 Junction None Lemon's Ferry Gage
135 Junction None Sunset Ave. WTP
140 Reservoir OCL Quarry
146 Demand None Rocky Mt. Demand
147 Junction Pattern Hospira WW
149 Junction Pattern EdgeGen WW
150 Junction None NC 97 (WWTP)
155 Reservoir None Reservoir>Tarboro Routing
190 Junction OCL Little Fishing Creek
200 Junction OCL Fishing Ck. Enfield Gage
202 Demand None Fish Ag
203 Junction None Warrenton WWTP
Node
Number Type Inflow Name
205 Junction None Littleton WWTP
210 Junction OCL Halifax Transfer
220 Junction None Enfield WD
226 Demand None Enfield Demand
230 Junction None Node230
240 Junction OCL Swift Creek
242 Demand None Swif Ag
243 Junction None Scotland Neck WWTP
250 Junction None Fishing Ck. Jnc.
296 Demand None Tarboro
300 Junction OCL Tarboro Gage
302 Demand None Tarb Ag
325 Junction Pattern Pinetops WWTP
327 Junction Pattern Macclesfield WWTP
330 Junction None Town Ck. Jnc.
335 Reservoir None Tarboro>Greenville Routing
380 Junction OCL Conetoe Creek gage
382 Demand None Cone Ag
390 Junction OCL GUC WD
391 Junction None GUC Total WD
392 Demand None GUC Demand
394 Demand None Farmville IBT
396 Demand None Greene Co. IBT
398 Demand None Winterville IBT
400 Junction OCL Greenville Gage
402 Demand None Gree Ag
999 Junction None Outflow
Model Arcs
U/S Number D/S Number Name Min Flow Max Flow
010 012 Tarr Ag None None
010 025 Tar R. Gage Flow None None
015 010 Oxford WW None None
025 050 Tar. R. Routed Flow None None
030 015 Kerr>Oxford Transfer None None
030 075 Kerr to Frank Co. None None
030 203 Kerr>Warrenton Transfer None None
050 052 Loui Ag None None
050 084 Total Louis. WD None None
050 090 Louisburg Gage Flow None None
060 070 60>70 None None
060 072 Cedar Ck. WD None None
066 070 66>70 None None
066 072 Taylor Ck. WD None None
070 082 Cedr Ag None None
070 090 70>90 None None
072 074 Franklinton WD None None
072 075 Franklinton>Franklin Co. None None
074 077 Franklinton WW None None
075 076 Franklin Co. WD None None
076 077 Franklin Co. WW None None
077 090 Franklin Co. Total WW None None
084 075 Louisburg>Franklin Co. None None
084 086 Louisburg WD None None
086 090 Louisburg WW None None
090 095 90>95 None None
093 100 Bunn WW None None
095 100 Louisburg Routed Flow None None
097 100 Spring Hope WW None None
100 110 100>110 None None
110 120 110>120 None None
110 122 Resv Ag WD None None
115 146 Wilson Emer. Trans. None Pattern
120 130 Tar. Res. Release OCL None
120 146 Tar Res. WD None Pattern
130 135 130>135 None None
135 146 Sunset Ave. WD None Pattern
135 150 135>150 None None
U/S Number D/S Number Name Min Flow Max Flow
140 135 Quarry Release None None
146 150 Rocky Mt. WW None None
146 296 RM<>Tarboro Transfer None Pattern
147 150 Hospira WW None None
149 150 EdgeGen WW None None
150 155 150>200 None None
155 250 Res. Routed Flow None None
190 200 Lfsh>Fsh None None
200 202 Fish Ag None None
200 220 Enfield Gage Flow None None
203 200 Warrenton WW None None
205 200 Littleton WW None None
210 205 Halifax>Littleton Transfe None None
210 243 Halifax>ScotNeck Trans. None None
220 226 Enfield WD None None
220 230 220>230 None None
226 230 Enfield WW None None
230 250 230>250 None None
240 242 Swif Ag None None
240 250 Swift Creek None None
243 250 Scotland Neck WW None None
250 296 Tarboro WD None None
250 300 250>300 None None
296 330 Tarboro WW None None
300 302 Tarb Ag None None
300 330 300>330 None None
325 330 Pinetops WW None None
327 330 Macclesfield WW None None
330 335 330>335 None None
335 390 Tarboro Routed Flow None None
380 382 Cone Ag None None
380 390 380>390 None None
390 391 GUC WD None None
390 400 390>400 None None
390 402 Gree Ag None None
391 392 GUC Demand None None
391 394 Farmville IBT None None
391 396 Greene Co IBT None None
391 398 Winterville IBT None None
U/S Number D/S Number Name Min Flow Max Flow
392 999 GUC WW Return None None
400 999 400>999 None None
Reservoir Nodes
Node
Number Name
Dead
Storage
Dead Stor
Units
Lower
Rule
Upper
Rule
Max
Storage
Max Stor
Units
025 Tar R. Routing 0.0 AF None None 999.0 KAF
060 New City Pond 347.3 FT Pattern Pattern 354.0 FT
066 Old City Pond 294.3 FT None None 300.0 FT
095 Louisburg>Reservoir Routing 0.0 AF None None 999.0 KAF
120 Tar River Reservoir 100.0 feet Pattern Pattern 130.0 feet
140 Quarry 0.0 AF None None 2240.0 AF
155 Reservoir>Tarboro Routing 0.0 AF None None 999.0 KAF
335 Tarboro>Greenville Routing 0.0 AF None None 999.0 KAF
Reservoir Rules
Node
Number Name Units Month Day Upper Rule Lower Rule
060 New City Pond FT 1 1 354.00 347.34
060 New City Pond FT 12 31 354.00 347.34
120 Tar River Reservoir FT 1 1 125.00 110.00
120 Tar River Reservoir FT 12 31 125.00 110.00
Reservoir SAE Data
Node
Number Name Elevation
Elevation
Units Storage
Storage
Units Area Area Units
120 Tar River Reservoir 100 feet 28 af 11 acre
120 Tar River Reservoir 105 feet 279 af 89 acre
120 Tar River Reservoir 110 feet 984 af 193 acre
120 Tar River Reservoir 115 feet 2431 af 386 acre
120 Tar River Reservoir 120 feet 5269 af 749 acre
120 Tar River Reservoir 125 feet 10151 af 1203 acre
120 Tar River Reservoir 130 feet 22930 af 2400 acre
140 Quarry -89 feet 0 af 0 acre
140 Quarry 3 feet 657 af 7.6 acre
140 Quarry 88 feet 2240 af 17 acre
060 New City Pond 347.34 FT 0 MG 0 acre
060 New City Pond 349.03 FT 6.8 MG 4.7 acre
060 New City Pond 350.29 FT 11.4 MG 7.9 acre
060 New City Pond 351.07 FT 14.8 MG 10.3 acre
060 New City Pond 351.52 FT 17.1 MG 11.9 acre
060 New City Pond 354 FT 22.8 MG 15.8 acre
066 Old City Pond 294.34 FT 0 MG 0 acre
066 Old City Pond 296.03 FT 3 MG 2.1 acre
066 Old City Pond 297.29 FT 5 MG 3.5 acre
066 Old City Pond 298.07 FT 6.5 MG 4.5 acre
066 Old City Pond 298.52 FT 7.5 MG 5.2 acre
066 Old City Pond 300 FT 10 MG 6.9 acre
Demand Patterns
Node
Number Name Units Factor Month Day Demand
074 Franklinton MGD 0.318 1 1 0.952
074 Franklinton MGD 0.318 1 31 0.952
074 Franklinton MGD 0.318 2 1 0.909
074 Franklinton MGD 0.318 2 29 0.909
074 Franklinton MGD 0.318 3 1 0.874
074 Franklinton MGD 0.318 3 31 0.874
074 Franklinton MGD 0.318 4 1 0.990
074 Franklinton MGD 0.318 4 30 0.990
074 Franklinton MGD 0.318 5 1 0.986
074 Franklinton MGD 0.318 5 31 0.986
074 Franklinton MGD 0.318 6 1 1.086
074 Franklinton MGD 0.318 6 30 1.086
074 Franklinton MGD 0.318 7 1 1.140
074 Franklinton MGD 0.318 7 31 1.140
074 Franklinton MGD 0.318 8 1 1.139
074 Franklinton MGD 0.318 8 31 1.139
074 Franklinton MGD 0.318 9 1 1.155
074 Franklinton MGD 0.318 9 30 1.155
074 Franklinton MGD 0.318 10 1 0.986
074 Franklinton MGD 0.318 10 31 0.986
074 Franklinton MGD 0.318 11 1 0.924
074 Franklinton MGD 0.318 11 30 0.924
074 Franklinton MGD 0.318 12 1 0.860
074 Franklinton MGD 0.318 12 31 0.860
076 Franklin Co. Demand MGD 2.44 1 1 0.940
076 Franklin Co. Demand MGD 2.44 1 31 0.940
076 Franklin Co. Demand MGD 2.44 2 1 0.868
076 Franklin Co. Demand MGD 2.44 2 29 0.868
076 Franklin Co. Demand MGD 2.44 3 1 0.822
076 Franklin Co. Demand MGD 2.44 3 31 0.822
076 Franklin Co. Demand MGD 2.44 4 1 0.944
076 Franklin Co. Demand MGD 2.44 4 30 0.944
076 Franklin Co. Demand MGD 2.44 5 1 1.123
076 Franklin Co. Demand MGD 2.44 5 31 1.123
076 Franklin Co. Demand MGD 2.44 6 1 1.136
076 Franklin Co. Demand MGD 2.44 6 30 1.136
076 Franklin Co. Demand MGD 2.44 7 1 1.090
076 Franklin Co. Demand MGD 2.44 7 31 1.090
076 Franklin Co. Demand MGD 2.44 8 1 1.144
076 Franklin Co. Demand MGD 2.44 8 31 1.144
076 Franklin Co. Demand MGD 2.44 9 1 1.083
076 Franklin Co. Demand MGD 2.44 9 30 1.083
076 Franklin Co. Demand MGD 2.44 10 1 1.023
076 Franklin Co. Demand MGD 2.44 10 31 1.023
076 Franklin Co. Demand MGD 2.44 11 1 0.947
076 Franklin Co. Demand MGD 2.44 11 30 0.947
076 Franklin Co. Demand MGD 2.44 12 1 0.881
076 Franklin Co. Demand MGD 2.44 12 31 0.881
086 Louisburg MGD 0.555 1 1 0.937
086 Louisburg MGD 0.555 1 31 0.937
086 Louisburg MGD 0.555 2 1 0.964
086 Louisburg MGD 0.555 2 29 0.964
086 Louisburg MGD 0.555 3 1 0.991
086 Louisburg MGD 0.555 3 31 0.991
Node
Number Name Units Factor Month Day Demand
086 Louisburg MGD 0.555 4 1 1.011
086 Louisburg MGD 0.555 4 30 1.011
086 Louisburg MGD 0.555 5 1 0.996
086 Louisburg MGD 0.555 5 31 0.996
086 Louisburg MGD 0.555 6 1 1.046
086 Louisburg MGD 0.555 6 30 1.046
086 Louisburg MGD 0.555 7 1 1.072
086 Louisburg MGD 0.555 7 31 1.072
086 Louisburg MGD 0.555 8 1 1.111
086 Louisburg MGD 0.555 8 31 1.111
086 Louisburg MGD 0.555 9 1 1.088
086 Louisburg MGD 0.555 9 30 1.088
086 Louisburg MGD 0.555 10 1 0.977
086 Louisburg MGD 0.555 10 31 0.977
086 Louisburg MGD 0.555 11 1 0.929
086 Louisburg MGD 0.555 11 30 0.929
086 Louisburg MGD 0.555 12 1 0.880
086 Louisburg MGD 0.555 12 31 0.880
146 Rocky Mt. Demand MGD 10 1 1 0.936
146 Rocky Mt. Demand MGD 10 1 31 0.936
146 Rocky Mt. Demand MGD 10 2 1 0.932
146 Rocky Mt. Demand MGD 10 2 29 0.932
146 Rocky Mt. Demand MGD 10 3 1 0.918
146 Rocky Mt. Demand MGD 10 3 31 0.918
146 Rocky Mt. Demand MGD 10 4 1 0.949
146 Rocky Mt. Demand MGD 10 4 30 0.949
146 Rocky Mt. Demand MGD 10 5 1 1.027
146 Rocky Mt. Demand MGD 10 5 31 1.027
146 Rocky Mt. Demand MGD 10 6 1 1.136
146 Rocky Mt. Demand MGD 10 6 30 1.136
146 Rocky Mt. Demand MGD 10 7 1 1.135
146 Rocky Mt. Demand MGD 10 7 31 1.135
146 Rocky Mt. Demand MGD 10 8 1 1.114
146 Rocky Mt. Demand MGD 10 8 31 1.114
146 Rocky Mt. Demand MGD 10 9 1 1.017
146 Rocky Mt. Demand MGD 10 9 30 1.017
146 Rocky Mt. Demand MGD 10 10 1 0.998
146 Rocky Mt. Demand MGD 10 10 31 0.998
146 Rocky Mt. Demand MGD 10 11 1 0.953
146 Rocky Mt. Demand MGD 10 11 30 0.953
146 Rocky Mt. Demand MGD 10 12 1 0.887
146 Rocky Mt. Demand MGD 10 12 31 0.887
226 Enfield Demand MGD 0.519 1 1 1.014
226 Enfield Demand MGD 0.519 1 31 1.014
226 Enfield Demand MGD 0.519 2 1 1.008
226 Enfield Demand MGD 0.519 2 29 1.008
226 Enfield Demand MGD 0.519 3 1 0.920
226 Enfield Demand MGD 0.519 3 31 0.920
226 Enfield Demand MGD 0.519 4 1 0.937
226 Enfield Demand MGD 0.519 4 30 0.937
226 Enfield Demand MGD 0.519 5 1 0.985
226 Enfield Demand MGD 0.519 5 31 0.985
226 Enfield Demand MGD 0.519 6 1 1.033
226 Enfield Demand MGD 0.519 6 30 1.033
226 Enfield Demand MGD 0.519 7 1 1.051
226 Enfield Demand MGD 0.519 7 31 1.051
Node
Number Name Units Factor Month Day Demand
226 Enfield Demand MGD 0.519 8 1 1.060
226 Enfield Demand MGD 0.519 8 31 1.060
226 Enfield Demand MGD 0.519 9 1 1.033
226 Enfield Demand MGD 0.519 9 30 1.033
226 Enfield Demand MGD 0.519 10 1 1.018
226 Enfield Demand MGD 0.519 10 31 1.018
226 Enfield Demand MGD 0.519 11 1 0.971
226 Enfield Demand MGD 0.519 11 30 0.971
226 Enfield Demand MGD 0.519 12 1 0.971
226 Enfield Demand MGD 0.519 12 31 0.971
296 Tarboro MGD 2.797 1 1 0.911
296 Tarboro MGD 2.797 1 31 0.911
296 Tarboro MGD 2.797 2 1 0.899
296 Tarboro MGD 2.797 2 29 0.899
296 Tarboro MGD 2.797 3 1 0.901
296 Tarboro MGD 2.797 3 31 0.901
296 Tarboro MGD 2.797 4 1 0.965
296 Tarboro MGD 2.797 4 30 0.965
296 Tarboro MGD 2.797 5 1 1.094
296 Tarboro MGD 2.797 5 31 1.094
296 Tarboro MGD 2.797 6 1 1.166
296 Tarboro MGD 2.797 6 30 1.166
296 Tarboro MGD 2.797 7 1 1.072
296 Tarboro MGD 2.797 7 31 1.072
296 Tarboro MGD 2.797 8 1 1.073
296 Tarboro MGD 2.797 8 31 1.073
296 Tarboro MGD 2.797 9 1 1.001
296 Tarboro MGD 2.797 9 30 1.001
296 Tarboro MGD 2.797 10 1 0.995
296 Tarboro MGD 2.797 10 31 0.995
296 Tarboro MGD 2.797 11 1 0.949
296 Tarboro MGD 2.797 11 30 0.949
296 Tarboro MGD 2.797 12 1 0.973
296 Tarboro MGD 2.797 12 31 0.973
392 GUC Demand MGD 13.699 1 1 0.915
392 GUC Demand MGD 13.699 1 31 0.915
392 GUC Demand MGD 13.699 2 1 0.922
392 GUC Demand MGD 13.699 2 29 0.922
392 GUC Demand MGD 13.699 3 1 0.909
392 GUC Demand MGD 13.699 3 31 0.909
392 GUC Demand MGD 13.699 4 1 1.000
392 GUC Demand MGD 13.699 4 30 1.000
392 GUC Demand MGD 13.699 5 1 1.035
392 GUC Demand MGD 13.699 5 31 1.035
392 GUC Demand MGD 13.699 6 1 1.083
392 GUC Demand MGD 13.699 6 30 1.083
392 GUC Demand MGD 13.699 7 1 1.086
392 GUC Demand MGD 13.699 7 31 1.086
392 GUC Demand MGD 13.699 8 1 1.114
392 GUC Demand MGD 13.699 8 31 1.114
392 GUC Demand MGD 13.699 9 1 1.060
392 GUC Demand MGD 13.699 9 30 1.060
392 GUC Demand MGD 13.699 10 1 1.019
392 GUC Demand MGD 13.699 10 31 1.019
392 GUC Demand MGD 13.699 11 1 0.954
392 GUC Demand MGD 13.699 11 30 0.954
Node
Number Name Units Factor Month Day Demand
392 GUC Demand MGD 13.699 12 1 0.903
392 GUC Demand MGD 13.699 12 31 0.903
394 Farmville IBT MGD 0.64 1 1 1.000
394 Farmville IBT MGD 0.64 12 31 1.000
396 Greene Co. IBT MGD 0.367 1 1 1.000
396 Greene Co. IBT MGD 0.367 12 31 1.000
398 Winterville IBT MGD 1.252 1 1 1.000
398 Winterville IBT MGD 1.252 12 31 1.000
Wastewater Return Patterns (as fraction of demand)
Name Month Factor Name Month Factor
Enfield_Return 1 1.405 Oxford_Return 1 1.029
Enfield_Return 2 1.476 Oxford_Return 2 1.165
Enfield_Return 3 1.637 Oxford_Return 3 1.211
Enfield_Return 4 1.571 Oxford_Return 4 1.117
Enfield_Return 5 1.321 Oxford_Return 5 0.958
Enfield_Return 6 1.382 Oxford_Return 6 0.916
Enfield_Return 7 1.097 Oxford_Return 7 0.919
Enfield_Return 8 1.144 Oxford_Return 8 0.945
Enfield_Return 9 1.212 Oxford_Return 9 0.904
Enfield_Return 10 0.987 Oxford_Return 10 0.883
Enfield_Return 11 1.213 Oxford_Return 11 0.903
Enfield_Return 12 1.331 Oxford_Return 12 1.051
Frank_Return 1 0.274 RM_Return 1 1.094
Frank_Return 2 0.254 RM_Return 2 1.174
Frank_Return 3 0.277 RM_Return 3 1.248
Frank_Return 4 0.218 RM_Return 4 1.169
Frank_Return 5 0.18 RM_Return 5 0.915
Frank_Return 6 0.181 RM_Return 6 0.808
Frank_Return 7 0.173 RM_Return 7 0.774
Frank_Return 8 0.191 RM_Return 8 0.804
Frank_Return 9 0.213 RM_Return 9 0.968
Frank_Return 10 0.244 RM_Return 10 0.827
Frank_Return 11 0.233 RM_Return 11 0.956
Frank_Return 12 0.278 RM_Return 12 1.103
GUC_Return 1 0.857 ScotlandNeck_Return 1 0.99
GUC_Return 2 0.909 ScotlandNeck_Return 2 1.112
GUC_Return 3 0.925 ScotlandNeck_Return 3 1.187
GUC_Return 4 0.841 ScotlandNeck_Return 4 1.156
GUC_Return 5 0.703 ScotlandNeck_Return 5 0.973
GUC_Return 6 0.656 ScotlandNeck_Return 6 0.989
GUC_Return 7 0.674 ScotlandNeck_Return 7 0.875
GUC_Return 8 0.733 ScotlandNeck_Return 8 0.95
GUC_Return 9 0.784 ScotlandNeck_Return 9 0.914
GUC_Return 10 0.773 ScotlandNeck_Return 10 0.829
GUC_Return 11 0.808 ScotlandNeck_Return 11 0.925
GUC_Return 12 0.847 ScotlandNeck_Return 12 1.1
Littleton_Return 1 1.075 Tarboro_Return 1 0.984
Littleton_Return 2 1.222 Tarboro_Return 2 1.011
Name Month Factor Name Month Factor
Littleton_Return 3 1.263 Tarboro_Return 3 1.044
Littleton_Return 4 1.349 Tarboro_Return 4 0.895
Littleton_Return 5 0.974 Tarboro_Return 5 0.746
Littleton_Return 6 0.921 Tarboro_Return 6 0.711
Littleton_Return 7 0.778 Tarboro_Return 7 0.687
Littleton_Return 8 0.75 Tarboro_Return 8 0.729
Littleton_Return 9 0.751 Tarboro_Return 9 0.808
Littleton_Return 10 0.807 Tarboro_Return 10 0.735
Littleton_Return 11 1.004 Tarboro_Return 11 0.873
Littleton_Return 12 1.107 Tarboro_Return 12 0.883
Loui_Return 1 0.942 Warrenton_Return 1 1.015
Loui_Return 2 0.953 Warrenton_Return 2 0.991
Loui_Return 3 1.049 Warrenton_Return 3 1.082
Loui_Return 4 0.983 Warrenton_Return 4 1.007
Loui_Return 5 0.841 Warrenton_Return 5 0.925
Loui_Return 6 0.818 Warrenton_Return 6 0.875
Loui_Return 7 0.744 Warrenton_Return 7 0.901
Loui_Return 8 0.75 Warrenton_Return 8 0.957
Loui_Return 9 0.799 Warrenton_Return 9 1.009
Loui_Return 10 0.828 Warrenton_Return 10 1.008
Loui_Return 11 0.938 Warrenton_Return 11 1.094
Loui_Return 12 0.999 Warrenton_Return 12 1.136
Arc Minimum Flows
Name U/S Node D/S Node Units Month Day Min Flow
MinReleaseTarRes 120 130 CFS 1 1 80
MinReleaseTarRes 120 130 CFS 12 31 80
MinReleaseTarResSeasonal 120 130 CFS 1 1 80
MinReleaseTarResSeasonal 120 130 CFS 5 31 80
MinReleaseTarResSeasonal 120 130 CFS 6 1 70
MinReleaseTarResSeasonal 120 130 CFS 10 31 70
MinReleaseTarResSeasonal 120 130 CFS 11 1 80
MinReleaseTarResSeasonal 120 130 CFS 12 31 80
County Irrigation Data
Crop Units Edge Frank Gran Hali Mart Nash Pers Pitt Vance Warr Wils
IrrTobacco ac. 184.7 1065.89 181.97 129.02 0 696.18 55.91 4.98 116.36 113.82 28.44
Turf ac. 150 0 0 36.24 0 517 0 0 0 0 0
Golf ac. 200 0 0 0 0 406.3 0 167.44 0 10 0
ContNurs ac. 10 0 6.97 0 0 4.79 0 1.25 12 15 0
FieldNurs ac. 110 0 9.96 0 0 17.43 0 28.48 18 60 0
IrrCotton ac. 36.94 0 0 3.87 0 5.26 0 0 0 0 0
IrrEarlySoy ac. 0 63.17 0 224.05 0 0.6 0 0 0 0 0
IrrLateSoy ac. 0 117.32 0 224.05 0 0.6 0 0 0 0 0
IrrCorn ac. 293.27 127.65 3.41 363 0 80.8 0 0.21 0 0 0
IrrVeg ac. 170.5 51.66 59.2 122.67 0 340.96 0 3.68 0.45 52.87 18.07
IrrPas&Hay ac. 159.94 0 0 7.68 0 0 0 0 0 0 45.39
IrrPeanut ac. 125.69 0 0 0 0 8.8 0 5.13 0 0 0
IrrBlueberry ac. 0 0 0 0 0 0 0 0 0 0 0
IrrStrawberry ac. 4 0 0 0 0 0 0 0 0 5 5
IrrFruit ac. 14 0 0 0 0 1.6 0 0 0 0 0
Beef Cattle # 1834 1573 0 978.48 0 225 300 180.32 414 2088 80
Dairy Cows # 0 0 0 198.96 0 7.22 0 0 41.4 252 50
Horses # 0 349.2 61.51 156.01 0 0 10.78 2.29 0 150 49.7
Pigs # 0 4725 0 43488 0 0 0 0 0.6 0 0
Chickens # 0 19714.6 0 11174 0 0 0 0 34.5 0 0
Turkeys # 0 10.56 0 0 0 0 0 0 1.6 0 0
Other Animals # 325 1902 0 391.94 0 0 0 3.42 49.07 145 54.9
Crop Irrigation Coefficients
Name Month Day Value Name Month Day Value
IrrCoef_Beef 1 1 12 IrrCoef_OtherAnimal 1 1 2
IrrCoef_Beef 12 31 12 IrrCoef_OtherAnimal 12 31 2
IrrCoef_Blueberry 1 1 0 IrrCoef_PastHay 1 1 0
IrrCoef_Blueberry 2 28 0 IrrCoef_PastHay 4 30 0
IrrCoef_Blueberry 3 1 1 IrrCoef_PastHay 5 1 0.142857
IrrCoef_Blueberry 4 14 1 IrrCoef_PastHay 9 30 0.142857
IrrCoef_Blueberry 4 15 0.178571 IrrCoef_PastHay 10 1 0
IrrCoef_Blueberry 9 30 0.178571 IrrCoef_PastHay 12 31 0
IrrCoef_Blueberry 10 1 0 IrrCoef_Peanut 1 1 0
IrrCoef_Blueberry 12 31 0 IrrCoef_Peanut 5 7 0
IrrCoef_Chicken 1 1 9 IrrCoef_Peanut 5 8 0.00014
IrrCoef_Chicken 12 31 9 IrrCoef_Peanut 5 9 0.00028
IrrCoef_ContNurs 1 1 0.2 IrrCoef_Peanut 5 10 0.00042
IrrCoef_ContNurs 3 31 0.2 IrrCoef_Peanut 5 11 0.00056
IrrCoef_ContNurs 4 1 0.5 IrrCoef_Peanut 5 12 0.0007
IrrCoef_ContNurs 5 31 0.5 IrrCoef_Peanut 5 13 0.00084
IrrCoef_ContNurs 6 1 0.75 IrrCoef_Peanut 5 14 0.00098
IrrCoef_ContNurs 8 31 0.75 IrrCoef_Peanut 5 15 0.00112
IrrCoef_ContNurs 9 1 0.5 IrrCoef_Peanut 5 16 0.00126
IrrCoef_ContNurs 10 31 0.5 IrrCoef_Peanut 5 17 0.0014
IrrCoef_ContNurs 11 1 0.2 IrrCoef_Peanut 5 18 0.0028
IrrCoef_ContNurs 12 31 0.2 IrrCoef_Peanut 5 19 0.0042
IrrCoef_Corn 1 1 0 IrrCoef_Peanut 5 20 0.0056
IrrCoef_Corn 4 23 0 IrrCoef_Peanut 5 21 0.007
IrrCoef_Corn 5 4 0.02 IrrCoef_Peanut 5 22 0.0084
IrrCoef_Corn 5 14 0.039 IrrCoef_Peanut 5 23 0.0098
IrrCoef_Corn 5 23 0.0543 IrrCoef_Peanut 5 24 0.0112
IrrCoef_Corn 5 24 0.056 IrrCoef_Peanut 5 25 0.0126
IrrCoef_Corn 6 2 0.0722 IrrCoef_Peanut 5 26 0.014
IrrCoef_Corn 6 3 0.074 IrrCoef_Peanut 5 27 0.0158
IrrCoef_Corn 6 12 0.0974 IrrCoef_Peanut 5 28 0.0176
IrrCoef_Corn 6 13 0.1 IrrCoef_Peanut 5 29 0.0194
IrrCoef_Corn 6 18 0.115 IrrCoef_Peanut 5 30 0.0212
IrrCoef_Corn 6 23 0.1425 IrrCoef_Peanut 5 31 0.023
IrrCoef_Corn 7 2 0.21675 IrrCoef_Peanut 6 1 0.0248
IrrCoef_Corn 7 3 0.225 IrrCoef_Peanut 6 2 0.0266
IrrCoef_Corn 7 4 0.229 IrrCoef_Peanut 6 3 0.0284
IrrCoef_Corn 7 5 0.233 IrrCoef_Peanut 6 4 0.0302
IrrCoef_Corn 7 6 0.237 IrrCoef_Peanut 6 5 0.032
IrrCoef_Corn 7 7 0.241 IrrCoef_Peanut 6 6 0.0338
IrrCoef_Corn 7 8 0.245 IrrCoef_Peanut 6 7 0.0356
IrrCoef_Corn 7 9 0.247 IrrCoef_Peanut 6 8 0.0374
IrrCoef_Corn 7 10 0.249 IrrCoef_Peanut 6 9 0.0392
IrrCoef_Corn 7 11 0.251 IrrCoef_Peanut 6 10 0.041
IrrCoef_Corn 7 12 0.253 IrrCoef_Peanut 6 11 0.0428
IrrCoef_Corn 7 13 0.255 IrrCoef_Peanut 6 12 0.0446
IrrCoef_Corn 7 17 0.261 IrrCoef_Peanut 6 13 0.0464
IrrCoef_Corn 7 18 0.2625 IrrCoef_Peanut 6 14 0.0482
IrrCoef_Corn 7 22 0.2565 IrrCoef_Peanut 6 15 0.05
IrrCoef_Corn 7 23 0.255 IrrCoef_Peanut 6 16 0.0526
IrrCoef_Corn 8 1 0.23925 IrrCoef_Peanut 6 17 0.0552
IrrCoef_Corn 8 2 0.2375 IrrCoef_Peanut 6 18 0.0578
IrrCoef_Corn 8 11 0.206 IrrCoef_Peanut 6 19 0.0604
IrrCoef_Corn 8 12 0.2025 IrrCoef_Peanut 6 20 0.063
IrrCoef_Corn 8 21 0.1665 IrrCoef_Peanut 6 21 0.0656
IrrCoef_Corn 8 22 0.1625 IrrCoef_Peanut 6 22 0.0682
IrrCoef_Corn 8 31 0.12875 IrrCoef_Peanut 6 23 0.0708
IrrCoef_Corn 9 1 0.125 IrrCoef_Peanut 6 24 0.0734
Name Month Day Value Name Month Day Value
IrrCoef_Corn 9 10 0.0935 IrrCoef_Peanut 6 25 0.076
IrrCoef_Corn 9 11 0.09 IrrCoef_Peanut 6 26 0.07915
IrrCoef_Corn 9 20 0.072 IrrCoef_Peanut 6 27 0.0823
IrrCoef_Corn 9 21 0.07 IrrCoef_Peanut 6 28 0.08545
IrrCoef_Corn 9 30 0.061 IrrCoef_Peanut 6 29 0.0886
IrrCoef_Corn 10 1 0.06 IrrCoef_Peanut 6 30 0.09175
IrrCoef_Corn 10 12 0.050833 IrrCoef_Peanut 7 1 0.0949
IrrCoef_Corn 10 13 0.05 IrrCoef_Peanut 7 2 0.09805
IrrCoef_Corn 10 14 0 IrrCoef_Peanut 7 3 0.1012
IrrCoef_Corn 12 31 0 IrrCoef_Peanut 7 4 0.10435
IrrCoef_Cotton 1 1 0 IrrCoef_Peanut 7 5 0.1075
IrrCoef_Cotton 5 7 0 IrrCoef_Peanut 7 6 0.113
IrrCoef_Cotton 5 8 0.001 IrrCoef_Peanut 7 7 0.1185
IrrCoef_Cotton 5 9 0.002 IrrCoef_Peanut 7 8 0.124
IrrCoef_Cotton 5 30 0.0288 IrrCoef_Peanut 7 9 0.1295
IrrCoef_Cotton 5 31 0.0304 IrrCoef_Peanut 7 10 0.135
IrrCoef_Cotton 6 1 0.032 IrrCoef_Peanut 7 11 0.1405
IrrCoef_Cotton 6 2 0.0336 IrrCoef_Peanut 7 12 0.146
IrrCoef_Cotton 6 3 0.0352 IrrCoef_Peanut 7 13 0.1515
IrrCoef_Cotton 6 4 0.0368 IrrCoef_Peanut 7 14 0.157
IrrCoef_Cotton 6 5 0.0384 IrrCoef_Peanut 7 15 0.1625
IrrCoef_Cotton 6 6 0.04 IrrCoef_Peanut 7 16 0.168
IrrCoef_Cotton 6 7 0.0417 IrrCoef_Peanut 7 17 0.1735
IrrCoef_Cotton 6 8 0.0434 IrrCoef_Peanut 7 18 0.179
IrrCoef_Cotton 6 9 0.0451 IrrCoef_Peanut 7 19 0.1845
IrrCoef_Cotton 6 10 0.0468 IrrCoef_Peanut 7 20 0.19
IrrCoef_Cotton 6 11 0.0485 IrrCoef_Peanut 7 21 0.1955
IrrCoef_Cotton 6 12 0.0502 IrrCoef_Peanut 7 22 0.201
IrrCoef_Cotton 6 13 0.0519 IrrCoef_Peanut 7 23 0.2065
IrrCoef_Cotton 6 14 0.0536 IrrCoef_Peanut 7 24 0.212
IrrCoef_Cotton 6 15 0.0553 IrrCoef_Peanut 7 25 0.2175
IrrCoef_Cotton 6 16 0.057 IrrCoef_Peanut 7 26 0.22
IrrCoef_Cotton 6 17 0.0587 IrrCoef_Peanut 7 27 0.2225
IrrCoef_Cotton 6 18 0.0604 IrrCoef_Peanut 7 28 0.225
IrrCoef_Cotton 6 19 0.0621 IrrCoef_Peanut 7 29 0.2275
IrrCoef_Cotton 6 20 0.0638 IrrCoef_Peanut 7 30 0.23
IrrCoef_Cotton 6 21 0.0655 IrrCoef_Peanut 7 31 0.2325
IrrCoef_Cotton 6 22 0.0672 IrrCoef_Peanut 8 1 0.235
IrrCoef_Cotton 6 23 0.0689 IrrCoef_Peanut 8 2 0.2375
IrrCoef_Cotton 6 24 0.0706 IrrCoef_Peanut 8 3 0.24
IrrCoef_Cotton 6 25 0.0723 IrrCoef_Peanut 8 4 0.2425
IrrCoef_Cotton 6 26 0.074 IrrCoef_Peanut 8 5 0.243
IrrCoef_Cotton 6 27 0.0764 IrrCoef_Peanut 8 6 0.2435
IrrCoef_Cotton 6 28 0.0788 IrrCoef_Peanut 8 7 0.244
IrrCoef_Cotton 6 29 0.0812 IrrCoef_Peanut 8 8 0.2445
IrrCoef_Cotton 6 30 0.0836 IrrCoef_Peanut 8 9 0.245
IrrCoef_Cotton 7 1 0.086 IrrCoef_Peanut 8 10 0.2455
IrrCoef_Cotton 7 2 0.0884 IrrCoef_Peanut 8 11 0.246
IrrCoef_Cotton 7 3 0.0908 IrrCoef_Peanut 8 12 0.2465
IrrCoef_Cotton 7 4 0.0932 IrrCoef_Peanut 8 13 0.247
IrrCoef_Cotton 7 5 0.0956 IrrCoef_Peanut 8 14 0.2475
IrrCoef_Cotton 7 6 0.098 IrrCoef_Peanut 8 15 0.247
IrrCoef_Cotton 7 7 0.1009 IrrCoef_Peanut 8 16 0.2465
IrrCoef_Cotton 7 8 0.1038 IrrCoef_Peanut 8 17 0.246
IrrCoef_Cotton 7 9 0.1067 IrrCoef_Peanut 8 18 0.2455
IrrCoef_Cotton 7 10 0.1096 IrrCoef_Peanut 8 19 0.245
IrrCoef_Cotton 7 11 0.1125 IrrCoef_Peanut 8 20 0.2445
IrrCoef_Cotton 7 12 0.1175 IrrCoef_Peanut 8 21 0.244
IrrCoef_Cotton 7 13 0.1225 IrrCoef_Peanut 8 22 0.2435
IrrCoef_Cotton 7 14 0.1275 IrrCoef_Peanut 8 23 0.243
Name Month Day Value Name Month Day Value
IrrCoef_Cotton 7 15 0.1325 IrrCoef_Peanut 8 24 0.2425
IrrCoef_Cotton 7 16 0.1375 IrrCoef_Peanut 8 25 0.24075
IrrCoef_Cotton 7 17 0.145 IrrCoef_Peanut 8 26 0.239
IrrCoef_Cotton 7 18 0.1525 IrrCoef_Peanut 8 27 0.23725
IrrCoef_Cotton 7 19 0.16 IrrCoef_Peanut 8 28 0.2355
IrrCoef_Cotton 7 20 0.1675 IrrCoef_Peanut 8 29 0.23375
IrrCoef_Cotton 7 21 0.175 IrrCoef_Peanut 8 30 0.232
IrrCoef_Cotton 7 22 0.1825 IrrCoef_Peanut 8 31 0.23025
IrrCoef_Cotton 7 23 0.19 IrrCoef_Peanut 9 1 0.2285
IrrCoef_Cotton 7 24 0.1975 IrrCoef_Peanut 9 2 0.22675
IrrCoef_Cotton 7 25 0.205 IrrCoef_Peanut 9 3 0.225
IrrCoef_Cotton 7 26 0.2125 IrrCoef_Peanut 9 4 0.22275
IrrCoef_Cotton 7 27 0.2175 IrrCoef_Peanut 9 5 0.2205
IrrCoef_Cotton 7 28 0.2225 IrrCoef_Peanut 9 6 0.21825
IrrCoef_Cotton 7 29 0.2275 IrrCoef_Peanut 9 7 0.216
IrrCoef_Cotton 7 30 0.2325 IrrCoef_Peanut 9 8 0.21375
IrrCoef_Cotton 7 31 0.2375 IrrCoef_Peanut 9 9 0.2115
IrrCoef_Cotton 8 1 0.24 IrrCoef_Peanut 9 10 0.20925
IrrCoef_Cotton 8 2 0.2425 IrrCoef_Peanut 9 11 0.207
IrrCoef_Cotton 8 3 0.245 IrrCoef_Peanut 9 12 0.20475
IrrCoef_Cotton 8 4 0.2475 IrrCoef_Peanut 9 13 0.2025
IrrCoef_Cotton 8 5 0.25 IrrCoef_Peanut 9 14 0.19975
IrrCoef_Cotton 8 6 0.25 IrrCoef_Peanut 9 15 0.197
IrrCoef_Cotton 8 7 0.25 IrrCoef_Peanut 9 16 0.19425
IrrCoef_Cotton 8 8 0.25 IrrCoef_Peanut 9 17 0.1915
IrrCoef_Cotton 8 9 0.25 IrrCoef_Peanut 9 18 0.18875
IrrCoef_Cotton 8 10 0.25 IrrCoef_Peanut 9 19 0.186
IrrCoef_Cotton 8 11 0.25 IrrCoef_Peanut 9 20 0.18325
IrrCoef_Cotton 8 12 0.25 IrrCoef_Peanut 9 21 0.1805
IrrCoef_Cotton 8 13 0.25 IrrCoef_Peanut 9 22 0.17775
IrrCoef_Cotton 8 14 0.25 IrrCoef_Peanut 9 23 0.175
IrrCoef_Cotton 8 15 0.25 IrrCoef_Peanut 9 24 0.1725
IrrCoef_Cotton 8 16 0.2485 IrrCoef_Peanut 9 25 0.17
IrrCoef_Cotton 8 17 0.247 IrrCoef_Peanut 9 26 0.1675
IrrCoef_Cotton 8 18 0.2455 IrrCoef_Peanut 9 27 0.165
IrrCoef_Cotton 8 19 0.244 IrrCoef_Peanut 9 28 0.1625
IrrCoef_Cotton 8 20 0.2425 IrrCoef_Peanut 9 29 0.16
IrrCoef_Cotton 8 21 0.241 IrrCoef_Peanut 9 30 0.1575
IrrCoef_Cotton 8 22 0.2395 IrrCoef_Peanut 10 1 0.155
IrrCoef_Cotton 8 23 0.238 IrrCoef_Peanut 10 2 0.1525
IrrCoef_Cotton 8 24 0.2365 IrrCoef_Peanut 10 3 0.15
IrrCoef_Cotton 8 25 0.235 IrrCoef_Peanut 10 4 0.14775
IrrCoef_Cotton 8 26 0.232 IrrCoef_Peanut 10 5 0.1455
IrrCoef_Cotton 8 27 0.229 IrrCoef_Peanut 10 6 0.14325
IrrCoef_Cotton 8 28 0.226 IrrCoef_Peanut 10 7 0.141
IrrCoef_Cotton 8 29 0.223 IrrCoef_Peanut 10 8 0.13875
IrrCoef_Cotton 8 30 0.22 IrrCoef_Peanut 10 9 0.1365
IrrCoef_Cotton 8 31 0.217 IrrCoef_Peanut 10 10 0.13425
IrrCoef_Cotton 9 1 0.214 IrrCoef_Peanut 10 11 0.132
IrrCoef_Cotton 9 2 0.211 IrrCoef_Peanut 10 12 0.12975
IrrCoef_Cotton 9 3 0.208 IrrCoef_Peanut 10 13 0.1275
IrrCoef_Cotton 9 4 0.205 IrrCoef_Peanut 10 14 0.126
IrrCoef_Cotton 9 5 0.202 IrrCoef_Peanut 10 15 0.1245
IrrCoef_Cotton 9 6 0.199 IrrCoef_Peanut 10 16 0.123
IrrCoef_Cotton 9 7 0.196 IrrCoef_Peanut 10 17 0.1215
IrrCoef_Cotton 9 8 0.193 IrrCoef_Peanut 10 18 0.12
IrrCoef_Cotton 9 9 0.19 IrrCoef_Peanut 10 19 0.1185
IrrCoef_Cotton 9 10 0.187 IrrCoef_Peanut 10 20 0.117
IrrCoef_Cotton 9 11 0.184 IrrCoef_Peanut 10 21 0.1155
IrrCoef_Cotton 9 12 0.181 IrrCoef_Peanut 10 22 0.114
Name Month Day Value Name Month Day Value
IrrCoef_Cotton 9 13 0.178 IrrCoef_Peanut 10 23 0.1125
IrrCoef_Cotton 9 14 0.175 IrrCoef_Peanut 10 24 0.110417
IrrCoef_Cotton 9 15 0.1725 IrrCoef_Peanut 10 25 0.108333
IrrCoef_Cotton 9 16 0.17 IrrCoef_Peanut 10 26 0.10625
IrrCoef_Cotton 9 17 0.1675 IrrCoef_Peanut 10 27 0.104167
IrrCoef_Cotton 9 18 0.165 IrrCoef_Peanut 10 28 0.102083
IrrCoef_Cotton 9 19 0.1625 IrrCoef_Peanut 10 29 0.1
IrrCoef_Cotton 9 20 0.16 IrrCoef_Peanut 10 30 0
IrrCoef_Cotton 9 21 0.1575 IrrCoef_Peanut 12 31 0
IrrCoef_Cotton 9 22 0.155 IrrCoef_Pig 1 1 4
IrrCoef_Cotton 9 23 0.1525 IrrCoef_Pig 12 31 4
IrrCoef_Cotton 9 24 0.15 IrrCoef_Strawberry 1 1 0
IrrCoef_Cotton 9 25 0.1475 IrrCoef_Strawberry 2 28 0
IrrCoef_Cotton 9 26 0.145 IrrCoef_Strawberry 3 1 1
IrrCoef_Cotton 9 27 0.1425 IrrCoef_Strawberry 3 31 1
IrrCoef_Cotton 9 28 0.14 IrrCoef_Strawberry 4 1 0.178571
IrrCoef_Cotton 9 29 0.1375 IrrCoef_Strawberry 5 31 0.178571
IrrCoef_Cotton 9 30 0.135 IrrCoef_Strawberry 6 1 0
IrrCoef_Cotton 10 1 0.1325 IrrCoef_Strawberry 9 14 0
IrrCoef_Cotton 10 2 0.13 IrrCoef_Strawberry 9 15 0.178571
IrrCoef_Cotton 10 3 0.1275 IrrCoef_Strawberry 9 30 0.178571
IrrCoef_Cotton 10 4 0.125 IrrCoef_Strawberry 10 1 1
IrrCoef_Cotton 10 5 0.12275 IrrCoef_Strawberry 11 15 1
IrrCoef_Cotton 10 6 0.1205 IrrCoef_Strawberry 11 16 0
IrrCoef_Cotton 10 7 0.11825 IrrCoef_Strawberry 12 31 0
IrrCoef_Cotton 10 8 0.116 IrrCoef_Tobacco 1 1 0
IrrCoef_Cotton 10 9 0.11375 IrrCoef_Tobacco 5 20 0
IrrCoef_Cotton 10 10 0.1115 IrrCoef_Tobacco 5 21 0.06
IrrCoef_Cotton 10 11 0.10925 IrrCoef_Tobacco 6 10 0.06
IrrCoef_Cotton 10 12 0.107 IrrCoef_Tobacco 6 11 0.062
IrrCoef_Cotton 10 13 0.10475 IrrCoef_Tobacco 6 12 0.064
IrrCoef_Cotton 10 14 0.1025 IrrCoef_Tobacco 6 22 0.083333
IrrCoef_Cotton 10 15 0 IrrCoef_Tobacco 6 23 0.086667
IrrCoef_Cotton 12 31 0 IrrCoef_Tobacco 6 24 0.09
IrrCoef_Cotton 5 10 0.003 IrrCoef_Tobacco 6 25 0.0933
IrrCoef_Cotton 5 11 0.004 IrrCoef_Tobacco 6 26 0.0967
IrrCoef_Cotton 5 12 0.005 IrrCoef_Tobacco 6 27 0.1
IrrCoef_Cotton 5 13 0.006 IrrCoef_Tobacco 6 28 0.10625
IrrCoef_Cotton 5 14 0.007 IrrCoef_Tobacco 6 29 0.1125
IrrCoef_Cotton 5 15 0.008 IrrCoef_Tobacco 6 30 0.11875
IrrCoef_Cotton 5 16 0.009 IrrCoef_Tobacco 7 1 0.125
IrrCoef_Cotton 5 17 0.01 IrrCoef_Tobacco 7 2 0.133333
IrrCoef_Cotton 5 18 0.0114 IrrCoef_Tobacco 7 3 0.141667
IrrCoef_Cotton 5 19 0.0128 IrrCoef_Tobacco 7 4 0.15
IrrCoef_Cotton 5 20 0.0142 IrrCoef_Tobacco 7 5 0.155625
IrrCoef_Cotton 5 21 0.0156 IrrCoef_Tobacco 7 6 0.16125
IrrCoef_Cotton 5 22 0.017 IrrCoef_Tobacco 7 7 0.166875
IrrCoef_Cotton 5 23 0.0184 IrrCoef_Tobacco 7 8 0.1725
IrrCoef_Cotton 5 24 0.0198 IrrCoef_Tobacco 7 9 0.18
IrrCoef_Cotton 5 25 0.0212 IrrCoef_Tobacco 7 10 0.1875
IrrCoef_Cotton 5 26 0.0226 IrrCoef_Tobacco 7 11 0.195
IrrCoef_Cotton 5 27 0.024 IrrCoef_Tobacco 7 12 0.200625
IrrCoef_Cotton 5 28 0.0256 IrrCoef_Tobacco 7 13 0.20625
IrrCoef_Cotton 5 29 0.0272 IrrCoef_Tobacco 7 14 0.211875
IrrCoef_Dairy 1 1 40 IrrCoef_Tobacco 7 15 0.2175
IrrCoef_Dairy 12 31 40 IrrCoef_Tobacco 7 18 0.2325
IrrCoef_EarlySoy 1 1 0 IrrCoef_Tobacco 7 23 0.24
IrrCoef_EarlySoy 5 20 0 IrrCoef_Tobacco 7 24 0.241667
IrrCoef_EarlySoy 5 21 0.001 IrrCoef_Tobacco 7 25 0.243333
IrrCoef_EarlySoy 5 30 0.01 IrrCoef_Tobacco 7 26 0.245
Name Month Day Value Name Month Day Value
IrrCoef_EarlySoy 5 31 0.012 IrrCoef_Tobacco 7 30 0.24
IrrCoef_EarlySoy 6 19 0.05 IrrCoef_Tobacco 7 31 0.235
IrrCoef_EarlySoy 6 29 0.075 IrrCoef_Tobacco 8 1 0.23
IrrCoef_EarlySoy 7 9 0.11 IrrCoef_Tobacco 8 2 0.225
IrrCoef_EarlySoy 7 19 0.16 IrrCoef_Tobacco 8 3 0.219375
IrrCoef_EarlySoy 7 29 0.2025 IrrCoef_Tobacco 8 4 0.21375
IrrCoef_EarlySoy 8 8 0.2375 IrrCoef_Tobacco 8 5 0.208125
IrrCoef_EarlySoy 8 18 0.2525 IrrCoef_Tobacco 8 6 0.2025
IrrCoef_EarlySoy 8 28 0.2475 IrrCoef_Tobacco 8 7 0.193333
IrrCoef_EarlySoy 9 7 0.21 IrrCoef_Tobacco 8 8 0.184167
IrrCoef_EarlySoy 9 27 0.09 IrrCoef_Tobacco 8 9 0.175
IrrCoef_EarlySoy 10 7 0.059 IrrCoef_Tobacco 8 10 0.17
IrrCoef_EarlySoy 10 17 0.034 IrrCoef_Tobacco 8 11 0.165
IrrCoef_EarlySoy 10 27 0.019 IrrCoef_Tobacco 8 12 0.16
IrrCoef_EarlySoy 10 28 0 IrrCoef_Tobacco 8 13 0.155
IrrCoef_EarlySoy 12 31 0 IrrCoef_Tobacco 8 14 0.1475
IrrCoef_FieldNurs 1 1 0 IrrCoef_Tobacco 8 18 0.125
IrrCoef_FieldNurs 4 30 0 IrrCoef_Tobacco 8 19 0.12125
IrrCoef_FieldNurs 5 1 0.178571 IrrCoef_Tobacco 8 20 0.1175
IrrCoef_FieldNurs 10 31 0.178571 IrrCoef_Tobacco 8 21 0.113333
IrrCoef_FieldNurs 11 1 0 IrrCoef_Tobacco 8 22 0.109167
IrrCoef_FieldNurs 12 31 0 IrrCoef_Tobacco 8 23 0.105
IrrCoef_Fruit 1 1 0 IrrCoef_Tobacco 8 24 0.10125
IrrCoef_Fruit 2 28 0 IrrCoef_Tobacco 8 25 0.0975
IrrCoef_Fruit 3 1 1.214286 IrrCoef_Tobacco 8 26 0.09375
IrrCoef_Fruit 4 15 1.214286 IrrCoef_Tobacco 8 27 0.09
IrrCoef_Fruit 4 16 0.178571 IrrCoef_Tobacco 8 28 0.089
IrrCoef_Fruit 8 31 0.178571 IrrCoef_Tobacco 8 29 0.088
IrrCoef_Fruit 9 1 0 IrrCoef_Tobacco 9 6 0.08
IrrCoef_Fruit 12 31 0 IrrCoef_Tobacco 9 7 0
IrrCoef_Golf 1 1 0.0145 IrrCoef_Tobacco 12 31 0
IrrCoef_Golf 3 31 0.0145 IrrCoef_Turf 1 1 0
IrrCoef_Golf 4 1 0.081429 IrrCoef_Turf 4 14 0
IrrCoef_Golf 10 31 0.081429 IrrCoef_Turf 4 15 0.178571
IrrCoef_Golf 11 1 0.0145 IrrCoef_Turf 10 15 0.178571
IrrCoef_Golf 12 31 0.0145 IrrCoef_Turf 10 16 0
IrrCoef_Horse 1 1 12 IrrCoef_Turf 12 31 0
IrrCoef_Horse 12 31 12 IrrCoef_Turkey 1 1 9
IrrCoef_LateSoy 1 1 0 IrrCoef_Turkey 12 31 9
IrrCoef_LateSoy 6 20 0 IrrCoef_Veg 1 1 0
IrrCoef_LateSoy 6 21 0.001 IrrCoef_Veg 3 31 0
IrrCoef_LateSoy 6 30 0.01 IrrCoef_Veg 4 1 0.178571
IrrCoef_LateSoy 7 1 0.012 IrrCoef_Veg 8 15 0.178571
IrrCoef_LateSoy 7 20 0.05 IrrCoef_Veg 8 16 0.142857
IrrCoef_LateSoy 7 30 0.075 IrrCoef_Veg 10 31 0.142857
IrrCoef_LateSoy 8 9 0.11 IrrCoef_Veg 11 1 0
IrrCoef_LateSoy 8 19 0.16 IrrCoef_Veg 12 31 0
IrrCoef_LateSoy 8 29 0.2025
IrrCoef_LateSoy 9 8 0.2375
IrrCoef_LateSoy 9 18 0.2525
IrrCoef_LateSoy 9 28 0.2475
IrrCoef_LateSoy 10 8 0.21
IrrCoef_LateSoy 10 28 0.09
IrrCoef_LateSoy 11 7 0.059
IrrCoef_LateSoy 11 17 0.034
IrrCoef_LateSoy 11 27 0.019
IrrCoef_LateSoy 11 28 0
IrrCoef_LateSoy 12 31 0
main.ocl
:INCLUDE: OCL\constants.ocl
:INCLUDE: OCL\Forecast-Trigger_Parms.ocl
:INCLUDE: ocl\Forecast_Horizon_Days.ocl
:Static: statdata.mdb
:Time: [HomeDir]\basedata\basedata.dss
:if: {[UseForecast]=1}
:if: {[ForecastData]=cond}
:Time: [HomeDir]\basedata\forecasts_cond.dss
:else:
:Time: [HomeDir]\basedata\forecasts_non_cond.dss
:endif:
:endif:
:MODULE: DLL AgricDem = modules\AgricDem.DLL
:Include: ocl\udef_list.ocl
:Commands:
:Include: ocl\Agric_calculation.ocl
:Include: ocl\Agric_allocation.ocl
:Include: ocl\inflows.ocl
:Include: ocl\routing.ocl
:Include: ocl\return_flows.ocl
:Include: ocl\Rocky_Mt_Ops.ocl
:Include: ocl\drought_plans.ocl
:End:
Udef_list.ocl
:Udef:
// For Rocky Mt. operations */
// For:Next loop to declare udefs for RM Ops
:FOR: { [level_num] = { 1, 2, 3 } }
Udef : _ProjInflow[level_num]
Udef : _ProjDemand[level_num]
Udef : _ProjMinFlow[level_num]
Udef : _ProjEvap[level_num]
Udef : _ProjStorage[level_num]
Udef : _ProjElev[level_num]
Udef : _Consvn_[level_num]_Demand
Udef : _Trigger_[level_num]_On init {0}
Udef : _Stage_[level_num]_counter init {0}
Udef : _Ph_[level_num]_event_counter init {0}
:NEXT:
Udef : _RM_Trigger_Level
// For agricultural demand calculations and allocations
:FOR: { [county] = { 01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11 } }
Udef : dem[county]
:NEXT:
// For inflow filtering
:For:
{ [node] = {010, 050, 060, 066, 070, 120, 200, 240, 300, 380, 390, 400}
}
Udef : _TempInf[node]
Udef : _InfDeficit[node] init{0}
:Next:
// Louisburg height
Udef : _Louis_Ht
// Franklinton Usable Storage
Udef : _Frank_Usable_Stor init {69.96}
Udef : _Frank_Usable_Stor_Pct init {100}
// For:Next loop to declare drought plan udefs for other utilities
:FOR: { [Util] = { Loui, Frank, Tarb, Enf, GUC } }
:FOR: { [level_num] = { 1, 2, 3, 4, 5 } }
Udef : _[Util]_Consvn_[level_num]_Demand
Udef : _[Util]_Trigger_[level_num]_On init {0}
Udef : _[Util]_Stage_[level_num]_counter init {0}
Udef : _[Util]_Ph_[level_num]_event_counter init {0}
:NEXT:
:NEXT:
Udef : _CumTarRivNatInf init {0}
Udef : _CumLouisNatInf init {0}
Udef : _CumResNatInf init {0}
Udef : _CumTarboroNatInf init {0}
Udef : _CumGreenNatInf init {0}
Udef : _CumBasinNatInf init {0}
// For use in output tables
:substitute: [InflowNd] = "010, 050, 060, 066, 070, 120, 200, 240, 300, 380, 390, 400"
:substitute: [level_num] = "1, 2, 3, 4" // for drought trigger and level determination
// For municipal and industrial demand throughout the basin
:substitute: [DemandNd] = "074, 076, 086, 146, 226, 296, 392, 394, 396, 398"
// For Ag demand throughout the basin
:substitute: [AgricNd] = "012, 052, 082, 122, 202, 242, 302, 382, 402"
// For WW returns linked to demands throughout the basin
:substitute: [LinkedWWRetArc] = "015.010, 074.077, 076.077, 077.090, 086.090, 146.150,
226.230, 296.330, 392.999"
// For independent WW returns in the basin (or WW transfers into the basin)
:substitute: [IndepWWRetNd] = "030, 093, 097, 147, 149, 210, 325, 327"
Agric_Calculation.ocl
/* Note the precip data is contained in the basedata file and is based on the record for Tar River
Reservoir (using the Nashville station).
This should be fairly representative of the basin as it is in the middle. */
// Read in the counties, which are labeled in the Edit Agricultural Data dialog box in the GUI.
:For:
{ [cty] = {01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11}
}
RUN_MODULE: AgricDem
{
Input: { [cty], // County number
timesers(Tar/precip), // Precip in inches
pattern(IrrCoef_Tobacco), // Water Use Coefficients for Tobacco, etc.
pattern(IrrCoef_Turf),
pattern(IrrCoef_Golf),
pattern(IrrCoef_ContNurs),
pattern(IrrCoef_FieldNurs),
pattern(IrrCoef_Cotton),
pattern(IrrCoef_EarlySoy),
pattern(IrrCoef_LateSoy),
pattern(IrrCoef_Corn),
pattern(IrrCoef_Veg),
pattern(IrrCoef_PastHay),
pattern(IrrCoef_Peanut),
pattern(IrrCoef_Blueberry),
pattern(IrrCoef_Strawberry),
pattern(IrrCoef_Fruit),
pattern(IrrCoef_Beef),
pattern(IrrCoef_Dairy),
pattern(IrrCoef_Horse),
pattern(IrrCoef_Pig),
pattern(IrrCoef_Chicken),
pattern(IrrCoef_Turkey),
pattern(IrrCoef_OtherAnimal)
}
Output: { dem[cty] }
}
:Next:
/* The results are in mgd. Now convert these to acre feet for use in the
agric_allocation.ocl file */
Set : dem01 { value : convert_units {dem01, mgd, af } }
Set : dem02 { value : convert_units {dem02, mgd, af } }
Set : dem03 { value : convert_units {dem03, mgd, af } }
Set : dem04 { value : convert_units {dem04, mgd, af } }
Set : dem05 { value : convert_units {dem05, mgd, af } }
Set : dem06 { value : convert_units {dem06, mgd, af } }
Set : dem07 { value : convert_units {dem07, mgd, af } }
Set : dem08 { value : convert_units {dem08, mgd, af } }
Set : dem09 { value : convert_units {dem09, mgd, af } }
Set : dem10 { value : convert_units {dem10, mgd, af } }
Set : dem11 { value : convert_units {dem11, mgd, af } }
Agric_allocation.ocl
/* This file allocates the agricultural water demands by the assumed distribution of
demand within each reach of interest */
/* The county demand is represented by "dem__" that varies by number. These
numbers are established in the agricultural input dialog box, with 01 set for Edgecombe, 02 for
Franklin, and so on. (Also see agric_calculation.ocl file and agricultural dialog box) */
Set Demand_Tarr_Ag : demand012 { value : 1.000 * dem07 + 0.586 * dem03 }
Set Demand_Loui_Ag : demand052 { value : 0.414 * dem03 + 0.633 * dem09 + 0.213 *
dem02 }
Set Demand_Cedr_Ag : demand082 { value : 0.113 * dem02 }
Set Demand_Resv_Ag : demand122 { value : 0.137 * dem06 + 0.349 * dem02 }
Set Demand_Swif_Ag : demand242 { value : 0.078 * dem06 + 0.026 * dem10 + 0.276 *
dem09
+ 0.211 * dem02 }
Set Demand_Fish_Ag : demand202 { value : 0.092 * dem09 + 0.974 * dem10 + 0.070 *
dem02
+ 0.387 * dem04 + 0.113 * dem06 }
Set Demand_Tarb_Ag : demand302 { value : 0.651 * dem06 + 0.493 * dem01 + 0.043 *
dem02
+ 0.613 * dem04 }
Set Demand_Cone_Ag : demand382 { value : 0.097 * dem01 + 0.889 * dem05 + 0.087 *
dem08 }
Set Demand_Gree_Ag : demand402 { value : 0.410 * dem01 + 0.913 * dem08 + 0.448 *
dem11
+ 0.021 * dem06 }
inflows.ocl
/* Sets the inflows for nodes that need to be filtered. The finalized inflows
(through September 2009) were already filtered. However, the provisional inflows
from the update record routine can be negative due to time of travel or
imperfect impairment estimations, and therefore are filtered here to prevent
model infeasibility or unrealistic reservoir releases and/or demand shortages.
*/
:For:
{ [node] = {010, 050, 060, 066, 070, 120, 200, 240, 300, 380, 390, 400}
}
Set : _TempInf[node] { Value : timesers([node]/inflow) }
Set : inflow[node] { Value : max{0, _TempInf[node] - _InfDeficit[node](-1) } }
Set : _InfDeficit[node] { Value : max{0, _InfDeficit[node](-1) - _TempInf[node] } }
:Next:
// Also set the inflows for transfer locations
Set : inflow030 { value : 0 } // Kerr Lake RWS
Set : inflow115 { value : 0 } // Wilson (emergency)
Set : inflow210 { value : 0 } // Halifax
// To ensure quarry refills by May 1 (see RockyMt_Ops.ocl), provide the adequate inflow
Set : inflow140
{ condition : month = 4 and day = 30
value : max_stor140 - storage140
condition : default
value : 0
}
/* Let's calculate natural inflow to the gage locations. The totals should match the unimpaired
gage flows (filtered) on a monthly basis.
Start with the Tar River gage */
Set : _CumTarRivNatInf { Value : inflow010 }
/* Louisburg */
Set : _CumLouisNatInf { Value : _CumTarRivNatInf + inflow050 }
// Reservoir inflow
:For:
{ [node] = {010, 050, 060, 066, 070, 120}
}
Set : _CumResNatInf { Value : _CumResNatInf + inflow[node] }
:Next:
// Tarboro inflow
:For:
{ [node] = {010, 050, 060, 066, 070, 120, 200, 240, 300}
}
Set : _CumTarboroNatInf { Value : _CumTarboroNatInf + inflow[node] }
:Next:
// Greenville inflow
Set : _CumGreenNatInf { Value : _CumTarboroNatInf + inflow380 + inflow390 + inflow400 }
// Total unimpaired inflow in the basin
:For:
{ [node] = {010, 050, 060, 066, 070, 120, 200, 240, 300, 380, 390, 400}
}
Set : _CumBasinNatInf { Value : _CumBasinNatInf + inflow[node] }
:Next:
return_flows.ocl
// Compute returns coming from transfers.
// Kerr Transfer - 'inflow' is Oxford & Warrenton return patterns * ann. avg. ret
// + transfer amount to Franklin County demand
Set: inflow030 { value:
convert_units { 1.683, mgd, af} * lookup {Oxford_Return, month}
+ convert_units { 0.488, mgd, af} * lookup {Warrenton_Return, month}
+ 0.79 * demand076 // get 79% of demand from Kerr;
// remaining 13% from Franklinton & 8% from Louisburg - estimated from
LWSPs
}
// Also set the transfers to Franklin Co.
Target Kerr_FrankCo : dflow030.075
{ condition : default
priority : 1
penalty+ : 10
penalty- : 10
value : demand076 * 0.79 // 72% of demand
}
Target Frank_FrankCo : dflow072.075
{ condition : default
priority : 1
penalty+ : 10
penalty- : 10
value : demand076 * 0.13 // 13% of demand
}
Target Loui_FrankCo : dflow084.075
{ condition : default
priority : 1
penalty+ : 10
penalty- : 10
value : demand076 * 0.08 // 8% of demand
}
// Oxford
Constraint : {dFlow015.010 = convert_units { 1.683, mgd, af} * lookup {Oxford_Return, month}
}
// Warrenton
Constraint : {dFlow203.200 = convert_units { 0.488, mgd, af} * lookup {Warrenton_Return,
month} }
// Halifax Transfer - 'inflow' is Littleton & Scotland Neck return patterns * ann. avg. ret
Set: inflow210 { value:
convert_units { 0.073, mgd, af} * lookup {Littleton_Return, month}
+ convert_units { 1.033, mgd, af} * lookup {ScotlandNeck_Return, month}
}
// Littleton
Constraint : {dFlow205.200 = convert_units { 0.073, mgd, af} * lookup {Littleton_Return,
month} }
// Scotland Neck
Constraint : {dFlow243.250 = convert_units { 1.033, mgd, af} * lookup {ScotlandNeck_Return,
month} }
// Compute returns associated w/ demands using lookup tables
// Franklinton / Franklin county
Constraint : {dFlow077.090 = lookup {Frank_Return, month} * (ddelivery074 + ddelivery076)}
// Louisburg
Constraint : {dFlow086.090 = lookup {Loui_Return, month} * ddelivery086}
// Rocky Mt.
Constraint : {dFlow146.150 = lookup {RM_Return, month} * ddelivery146}
// Enfield
Constraint : {dFlow226.230 = lookup {Enfield_Return, month} * ddelivery226}
// Tarboro
Constraint : {dFlow296.330 = lookup {Tarboro_Return, month} * ddelivery296}
// Greenville
Constraint : {dFlow392.999 = lookup {GUC_Return, month} * ddelivery392}
//Remaining independent return flows are input using inflow patterns.
routing.ocl
/* File is ROUTING.OCL, which has the coding to handle the Tar R. -> Louisburg,
Louisburg -> Reservoir, Reservoir -> Tarboro, and Tarboro -> Greenville routing,
daily time step only. */
/* 1-day lag for each reach.
Nodes 025, 095, 155, and 335 are reservoirs used for channel storage.
The flow into these three nodes is unrouted; the release from them is routed.
The storage in the nodes makes up the difference.
Use high weights to ensure routing is computed before withdrawals, etc.
Note that for the first day of the simulation the routed flows need to be
estimated; the current values set the routed flows equal sum of the natural inflows
for that day when the simulation is started on 01/01/1929; they may need to be
adjusted if the run is started on a different date. */
Target TarrRout : dflow025.050
{ Condition : abs_period <= 1
priority : 1
penalty+ : 10000
penalty- : 10000
value : convert_units { 42.84, cfs, af }
Condition : default
priority : 1
penalty+ : 10000
penalty- : 10000
value : flow010.025(-1)
}
Target LouiRout : dflow095.100
{ Condition : abs_period <= 1
priority : 1
penalty+ : 10000
penalty- : 10000
value : convert_units { 137.25, cfs, af }
Condition : default
priority : 1
penalty+ : 10000
penalty- : 10000
value : flow090.095(-1)
}
Target ResvRout : dflow155.250
{ Condition : abs_period <= 1
priority : 1
penalty+ : 10000
penalty- : 10000
value : convert_units { 298.92, cfs, af }
Condition : default
priority : 1
penalty+ : 10000
penalty- : 10000
value : flow150.155(-1)
}
Target TarbRout : dflow335.390
{ Condition : abs_period <= 1
priority : 1
penalty+ : 10000
penalty- : 10000
value : convert_units { 1317.22, cfs, af }
Condition : default
priority : 1
penalty+ : 10000
penalty- : 10000
value : flow330.335(-1)
}
Rocky_Mt_Ops.ocl
/* File is ROCKY_MT_OPS.OCL, which has the coding to handle the probability-based
operations for Rocky Mount, whose supply consists of the reservoir and quarries. */
/* For simplicity, the City said to assume that withdrawals from the reservoir will be made to
meet the city demand. However, when the reservoir drops
below full, the production will shift to the Sunset Ave plant downstream.
The city's quarry refills from a tributary of the Tar River, and it can be safely assumed that it is
full by April of each year. The quarry is connected hydraulically
to a smaller quarry that the city does not own. [This storage is not included in the quarry SAE
in this model.] The city says that for each unit of storage
drawn down in its quarry, half of the available storage in the other quarry is lost to the city's
quarry???? For this model, there is no additional quarry to reflect
this.
*/
// Shift WTP production away from reservoir (over to Sunset Ave. plant) when reservoir drops
below full (set 124.9 to reduce fluctuation)
Target : dflow120.146
{ condition : elevation120 < 124.9
priority : 1
penalty+ : 500
penalty- : 0
value : 0
condition : default
priority : 1
penalty+ : 0
penalty- : 500
value : demand146
}
// It is assumed the quarry is full at the start of every drought season.
Target : dstorage140
{ condition : month = 5 and day = 1
priority : 1
penalty+ : 0
penalty- : 5000
value : max_stor140
condition : default
priority : 1
penalty+ : 0
penalty- : 0
value : 0
}
// The City has a voluntary reduction in minimum release from 80 to 70 cfs (with no associated
demand reduction) from June 1 to Oct 31 every year, independent
// of any forecast-based triggers below. They call this phase Voluntary 1. See the end of this file
when setting the min release.
/* Now for determining when the triggers go into effect.
I've reversed the order of the triggers, so 1, 2, and 3 are the current triggers in the plan (which
lead to voluntary2, man1, and man2). */
/* This section computes the projected demand, min flow, and net evap for each of
the three forecast horizons. The forecast horizon # is the forecast used to
help establish when level # (same number) restrictions are imposed. */
:If: {[Drought_Plans_On] = 1} // First check if drought plans are being used (basinwide)
/* If forecasts are used, set the switch here */
:If: {[UseForecast] = 1}
/* The inflow to the reservoir will be the total inflow, not the gain, so identify the record with
something different than the
node number of 120. Use 997. We could generate forecasts for each inflow node, then sum
them. The problem with this is the individual node
forecast will be affected by scaling to the supernode (or the sum of all the nodal inflows in the
basin), which may not be accurate. We eliminate
the issue of scaling by running a forecast only on the total inflow to the reservoir. This is the
only location for which we are interested in generating
a forecast.
*/
// Trigger 1 horizon.
Set : _ProjInflow1
{ condition : weekday{year, month, day} <= 1
value : 7 * timesers(997/[ForcCode_1])
condition : default
value : _ProjInflow1(-1)
}
Set : _ProjDemand1
{ condition : weekday{year, month, day} <= 1
value : accumulate { demand146 , 0 , +[Forecast_1_Horizon_Days] }
condition : default
value : _ProjDemand1(-1)
}
Set : _ProjMinFlow1
{ condition : weekday{year, month, day} <= 1
value : accumulate { pattern(MinReleaseTarResSeasonal) , 0 ,
+[Forecast_1_Horizon_Days]}
condition : default
value : _ProjMinFlow1(-1)
}
Set : _ProjEvap1
{ condition : weekday{year, month, day} <= 1
value : stor_to_area { 120 , storage120 } * 7 * timesers(120/Evap_[ForcCode_1]) / 12
condition : default
value : _ProjEvap1(-1)
}
// Trigger 2 horizon
Set : _ProjInflow2
{ condition : weekday{year, month, day} <= 1
value : 7 * timesers(997/[ForcCode_2])
condition : default
value : _ProjInflow2(-1)
}
Set : _ProjDemand2
{ condition : weekday{year, month, day} <= 1
value : accumulate { demand146 , 0 , +[Forecast_2_Horizon_Days] } * ( 1 -
[Dem_1_Red_Factor]/100 )
condition : default
value : _ProjDemand2(-1)
}
Set : _ProjMinFlow2
{ condition : weekday{year, month, day} <= 1
value : accumulate { pattern(MinReleaseTarRes) , 0 , +[Forecast_2_Horizon_Days]} * ( 1 -
[Min_Rel_1_Red_Factor]/100 )
condition : default
value : _ProjMinFlow2(-1)
}
Set : _ProjEvap2
{ condition : weekday{year, month, day} <= 1
value : stor_to_area { 120 , storage120 } * 7 * timesers(120/Evap_[ForcCode_2]) / 12
condition : default
value : _ProjEvap2(-1)
}
// Trigger 3 horizon
Set : _ProjInflow3
{ condition : weekday{year, month, day} <= 1
value : 7 * timesers(997/[ForcCode_3])
condition : default
value : _ProjInflow3(-1)
}
Set : _ProjDemand3
{ condition : weekday{year, month, day} <= 1
value : accumulate { demand146 , 0 , +[Forecast_3_Horizon_Days] } * ( 1 -
[Dem_2_Red_Factor]/100 )
condition : default
value : _ProjDemand3(-1)
}
Set : _ProjMinFlow3
{ condition : weekday{year, month, day} <= 1
value : accumulate { pattern(MinReleaseTarRes) , 0 , +[Forecast_3_Horizon_Days]} * ( 1 -
[Min_Rel_2_Red_Factor]/100 )
condition : default
value : _ProjMinFlow3(-1)
}
Set : _ProjEvap3
{ condition : weekday{year, month, day} <= 1
value : stor_to_area { 120 , storage120 } * 7 * timesers(120/Evap_[ForcCode_3]) / 12
condition : default
value : _ProjEvap3(-1)
}
// Compute projected storage and stage for each trigger. Projected storage will not exceed the
upper rule, or 125 feet.
:For:
{ [trig] = {1, 2, 3}
}
Set : _ProjStorage[trig]
{ Condition : weekday{year, month, day} <= 1
Value : min{storage120 + _ProjInflow[trig] - _ProjDemand[trig] - _ProjEvap[trig] -
_ProjMinFlow[trig] , upper_rule120}
Condition : default
Value : _ProjStorage[trig](-1)
}
Set : _ProjElev[trig]
{ Condition : weekday{year, month, day} <= 1
Value : stor_to_elev{ 120, _ProjStorage[trig]}
Condition : default
Value : _ProjElev[trig](-1)
}
:Next:
/* This section evaluates whether any of the three triggers were on during the
last time step. If so, it checks to see whether the reservoir has re-filled
to the release elevation (defined in constants table), in which case the triggers are released.
If the trigger was not on in the last timestep, it compares the projected stage with
the threshold to determine whether it should be turned on.
Note the projected stage is calculated only at beginning of week, so determination of triggers
is kept to the beginning of the week. That provides some delay in enactment of triggers and
duplicates
to some extent the waiting period requirement below.
*/
// Enact only if trigger elevation is met and put in some waiting period as shown below.
// Triggers 2 and 3 can only turn on in sequence after trigger 1 has turned on.
// These triggers turn off if the pond has refilled to the user-defined release elevation of 124 feet.
Set : _Trigger_3_On
{ Condition : _Trigger_3_On(-1) = 1
{ Condition : elevation120 >= [ReleaseElev]
Value : 0
Condition : default
Value : _Trigger_3_On(-1)
}
Condition : _Stage_2_Counter(-1) >= 14 // Require a 7 day waiting period before going into
phase 3
{ Condition : weekday{year, month, day} <= 1
{ Condition : _ProjElev3 <= [Trigger_3_Elevation]
Value : 1
}
Condition : default
Value : _Trigger_3_On(-1)
}
Condition : default
Value : _Trigger_3_On(-1)
}
Set : _Trigger_2_On
{ Condition : _Trigger_2_On(-1) = 1
{ Condition : elevation120 >= [ReleaseElev]
Value : 0
Condition : default
Value : _Trigger_2_On(-1)
}
Condition : _Stage_1_Counter(-1) >= 14 // Require a 14 day waiting period before going into
phase 2
{ Condition : weekday{year, month, day} <= 1
{ Condition : _ProjElev2 <= [Trigger_2_Elevation]
Value : 1
}
Condition : default
Value : _Trigger_2_On(-1)
}
Condition : default
Value : _Trigger_2_On(-1)
}
Set : _Trigger_1_On
{ Condition : _Trigger_1_On(-1) = 1
{ Condition : elevation120 >= [ReleaseElev]
Value : 0
Condition : default
Value : _Trigger_1_On(-1)
}
// Assume no waiting period since trigger 1 only leads to voluntary (keep in mind there may be
a week's delay because the
// the condition is only checked on weekday 1), which has no demand reduction hardship. To
make it more realistic, keep existing plan requirement
// that trigger 1 won't be imposed until below 124.
Condition : weekday{year, month, day} <= 1
{ Condition : _ProjElev1 <= [Trigger_1_Elevation] and elevation120 < 124
Value : 1
Condition : default
Value : _Trigger_1_On(-1)
}
Condition : default
Value : _Trigger_1_On(-1)
}
/* This section sets/resets the counters used to maintain the proper spacing of conservation stages
*/
:For:
{ [trig] = {1, 2, 3}
}
Set : _Stage_[trig]_Counter
{ Condition : _Stage_[trig]_Counter(-1) > 0 and _Trigger_[trig]_On = 0
Value : 0
Condition : _Trigger_[trig]_On = 1
Value : _Stage_[trig]_Counter(-1) + 1
Condition : default
Value : _Stage_[trig]_Counter(-1)
}
/* Count all trigger events lasting at least 7 days */
Set : _Ph_[trig]_event_counter
{ Condition : _Stage_[trig]_Counter = 7 and _Stage_[trig]_Counter(-1) = 6
Value : _Ph_[trig]_event_counter(-1) + 1
Condition : default
Value : _Ph_[trig]_event_counter(-1)
}
// Set conservation demand and delivery constraints for each trigger level in effect
Set : _Consvn_[trig]_Demand
{ Condition : _Trigger_[trig]_On = 1
Value : Demand146 * ( 1 - [Dem_[trig]_Red_Factor] / 100 )
Condition : default
Value : Demand146
}
Constraint Demand_Limit_Consvn_[trig] :
{ Condition : _Trigger_[trig]_On = 1
Expression : dflow120.146 + dflow135.146 <= _Consvn_[trig]_Demand }
:Next:
// Set the minimum release. Adjust this for the Voluntary 1 policy in which the minimum release
is reduced from 80 to 70 cfs from June 1 to Oct 31.
Set MinRelease_fromRes : min_flow120.130
{ condition : _Trigger_3_On = 1
value : ( 1 - [Min_Rel_3_Red_Factor] / 100 ) * pattern(MinReleaseTarRes)
condition : _Trigger_2_On = 1
value : ( 1 - [Min_Rel_2_Red_Factor] / 100 ) * pattern(MinReleaseTarRes)
condition : _Trigger_1_On = 1
value : ( 1 - [Min_Rel_1_Red_Factor] / 100 ) * pattern(MinReleaseTarRes)
condition : default
value : pattern(MinReleaseTarResSeasonal)
}
// Set the trigger level for displaying purposes
Set : _RM_Trigger_Level
{ condition : _Trigger_3_On = 1
value : 3
condition : _Trigger_2_On = 1
value : 2
condition : _Trigger_1_On = 1
value : 1
condition : default
value : 0
}
// Set maximum withdrawal from quarry to 10 cfs as defined in constants table. Set as a target to
avoid infeasibility since
// quarry may be spilling.
Target : dflow140.135
{ // Pump 10 cfs from quarry into stream (which then flows into Tar downstream of Lemon's
Ferry gage but upstream of Sunset plant) whenever
// triggers 2, 3 are on
condition : _Trigger_2_On = 1 or _Trigger_3_On = 1
priority : 1
penalty+ : 1000
penalty- : 1000
value : convert_units { [FromQuarryPumpRate] , cfs , af }
// Otherwise, only allow for spill
condition : default
priority : 1
penalty+ : 2000
penalty- : 0
value : 0
}
/* If forecasts are not used, just release the minimum from the reservoir */
:else:
Set MinRelease_fromRes : min_flow120.130 { value : pattern(MinReleaseTarRes) }
:endif:
:else: // If drought plans basinwide are not being used
Set MinRelease_fromRes : min_flow120.130 { value : pattern(MinReleaseTarRes) }
:endif:
Drought_plans.ocl
/* File is drought_plans.ocl. Computes trigger levels and demand reductions. */
:If: {[Drought_Plans_On] = 1} // First check if drought plan variable is on
/* LOUISBURG */
/* First convert flow at gage to stage since plan is based on gage ht.
Gage ht is stage + datum (175.75 ft) */
Set : _Louis_Ht
{ Condition : abs_period <= 1
Value : 6.54 + 175.75 // Estimate for day 1 (assuming starting 1/1/1930)
Condition : default
Value : lookup { LouisStage, flow050.090 } + 175.75
}
/* Gage heights returned from this seem low compared to their triggers (often below the trigger);
need some way of converting height at gage to height at their intake. Comment out in the
meantime
Set : _Loui_Trigger_5_On
{ Condition : _Loui_Trigger_5_On(-1) = 1
{ Condition : _Louis_Ht > 179
Value : 0
Condition : default
Value : _Loui_Trigger_5_On(-1)
}
Condition : _Loui_Stage_4_Counter(-1) >= 14 // Require a 14 day waiting period before
going into phase 5
{ Condition : weekday{year, month, day} <= 1
{ Condition : _Louis_Ht <= 179
Value : 1
}
Condition : default
Value : _Loui_Trigger_5_On(-1)
}
Condition : default
Value : _Loui_Trigger_5_On(-1)
}
Set : _Loui_Trigger_4_On
{ Condition : _Loui_Trigger_4_On(-1) = 1
{ Condition : _Louis_Ht > 180
Value : 0
Condition : default
Value : _Loui_Trigger_4_On(-1)
}
Condition : _Loui_Stage_3_Counter(-1) >= 14 // Require a 14 day waiting period before
going into phase 4
{ Condition : weekday{year, month, day} <= 1
{ Condition : _Louis_Ht <= 180
Value : 1
}
Condition : default
Value : _Loui_Trigger_4_On(-1)
}
Condition : default
Value : _Loui_Trigger_4_On(-1)
}
Set : _Loui_Trigger_3_On
{ Condition : _Loui_Trigger_3_On(-1) = 1
{ Condition : _Louis_Ht > 181
Value : 0
Condition : default
Value : _Loui_Trigger_3_On(-1)
}
Condition : _Loui_Stage_2_Counter(-1) >= 14 // Require a 14 day waiting period before
going into phase 3
{ Condition : weekday{year, month, day} <= 1
{ Condition : _Louis_Ht <= 181
Value : 1
}
Condition : default
Value : _Loui_Trigger_3_On(-1)
}
Condition : default
Value : _Loui_Trigger_3_On(-1)
}
Set : _Loui_Trigger_2_On
{ Condition : _Loui_Trigger_2_On(-1) = 1
{ Condition : _Louis_Ht > 182
Value : 0
Condition : default
Value : _Loui_Trigger_2_On(-1)
}
Condition : _Loui_Stage_1_Counter(-1) >= 14 // Require a 14 day waiting period before
going into phase 2
{ Condition : weekday{year, month, day} <= 1
{ Condition : _Louis_Ht <= 182
Value : 1
}
Condition : default
Value : _Loui_Trigger_2_On(-1)
}
Condition : default
Value : _Loui_Trigger_2_On(-1)
}
Set : _Loui_Trigger_1_On
{ Condition : _Loui_Trigger_1_On(-1) = 1
{ Condition : _Louis_Ht > 183
Value : 0
Condition : default
Value : _Loui_Trigger_1_On(-1)
}
// Assume no waiting period since Loui_Trigger 1 only drought alert
Condition : weekday{year, month, day} <= 1
{ Condition : _Louis_Ht <= 183
Value : 1
Condition : default
Value : _Loui_Trigger_1_On(-1)
}
Condition : default
Value : _Loui_Trigger_1_On(-1)
}
*/
/* FRANKLINTON */
Set : _Frank_Usable_Stor { Value : max { upper_rule060 - lower_rule060, storage060 -
lower_rule060 } }
Set : _Frank_Usable_Stor_Pct { Value : 100 * _Frank_Usable_Stor / (upper_rule060 -
lower_rule060) }
Set : _Frank_Trigger_5_On
{ Condition : _Frank_Trigger_5_On(-1) = 1
{ Condition : _Frank_Usable_Stor_Pct >= 100
Value : 0
Condition : default
Value : _Frank_Trigger_5_On(-1)
}
Condition : _Frank_Stage_4_Counter(-1) >= 14 // Require a 14 day waiting period before
going into phase 5
{ Condition : weekday{year, month, day} <= 1
{ Condition : _Frank_Usable_Stor_Pct <= 0
Value : 1
}
Condition : default
Value : _Frank_Trigger_5_On(-1)
}
Condition : default
Value : _Frank_Trigger_5_On(-1)
}
Set : _Frank_Trigger_4_On
{ Condition : _Frank_Trigger_4_On(-1) = 1
{ Condition : _Frank_Usable_Stor_Pct >= 100
Value : 0
Condition : default
Value : _Frank_Trigger_4_On(-1)
}
Condition : _Frank_Stage_3_Counter(-1) >= 14 // Require a 14 day waiting period before
going into phase 4
{ Condition : weekday{year, month, day} <= 1
{ Condition : _Frank_Usable_Stor_Pct < 30
Value : 1
}
Condition : default
Value : _Frank_Trigger_4_On(-1)
}
Condition : default
Value : _Frank_Trigger_4_On(-1)
}
Set : _Frank_Trigger_3_On
{ Condition : _Frank_Trigger_3_On(-1) = 1
{ Condition : _Frank_Usable_Stor_Pct >= 100
Value : 0
Condition : default
Value : _Frank_Trigger_3_On(-1)
}
Condition : _Frank_Stage_2_Counter(-1) >= 14 // Require a 14 day waiting period before
going into phase 3
{ Condition : weekday{year, month, day} <= 1
{ Condition : _Frank_Usable_Stor_Pct < 50
Value : 1
}
Condition : default
Value : _Frank_Trigger_3_On(-1)
}
Condition : default
Value : _Frank_Trigger_3_On(-1)
}
Set : _Frank_Trigger_2_On
{ Condition : _Frank_Trigger_2_On(-1) = 1
{ Condition : _Frank_Usable_Stor_Pct >= 100
Value : 0
Condition : default
Value : _Frank_Trigger_2_On(-1)
}
Condition : _Frank_Stage_1_Counter(-1) >= 14 // Require a 14 day waiting period before
going into phase 2
{ Condition : weekday{year, month, day} <= 1
{ Condition : _Frank_Usable_Stor_Pct < 65
Value : 1
}
Condition : default
Value : _Frank_Trigger_2_On(-1)
}
Condition : default
Value : _Frank_Trigger_2_On(-1)
}
Set : _Frank_Trigger_1_On
{ Condition : _Frank_Trigger_1_On(-1) = 1
{ Condition : _Frank_Usable_Stor_Pct >= 100
Value : 0
Condition : default
Value : _Frank_Trigger_1_On(-1)
}
// Assume no waiting period since Frank_Trigger 1 only drought alert
Condition : weekday{year, month, day} <= 1
{ Condition : _Frank_Usable_Stor_Pct < 75
Value : 1
Condition : default
Value : _Frank_Trigger_1_On(-1)
}
Condition : default
Value : _Frank_Trigger_1_On(-1)
}
/* Enfield */
Set : _Enf_Trigger_5_On { Value : 0 } // No phase 5 for Enfield
Set : _Enf_Trigger_4_On { Value : 0 } // No phase 4 for Enfield
Set : _Enf_Trigger_3_On
{ Condition : _Enf_Trigger_3_On(-1) = 1
{ Condition : flow200.220 > 0.2 * convert_units { lookup { Fish_Norm_Flow, month }, cfs,
af }
Value : 0
Condition : default
Value : _Enf_Trigger_3_On(-1)
}
Condition : _Enf_Stage_2_Counter(-1) >= 14 // Require a 14 day waiting period before going
into phase 3
{ Condition : weekday{year, month, day} <= 1
{ Condition : flow200.220 <= 0.2 * convert_units { lookup {Fish_Norm_Flow, month},
cfs, af }
Value : 1
}
Condition : default
Value : _Enf_Trigger_3_On(-1)
}
Condition : default
Value : _Enf_Trigger_3_On(-1)
}
Set : _Enf_Trigger_2_On
{ Condition : _Enf_Trigger_2_On(-1) = 1
{ Condition : flow200.220 > 0.4 * convert_units { lookup {Fish_Norm_Flow, month}, cfs, af
}
Value : 0
Condition : default
Value : _Enf_Trigger_2_On(-1)
}
Condition : _Enf_Stage_1_Counter(-1) >= 14 // Require a 14 day waiting period before going
into phase 2
{ Condition : weekday{year, month, day} <= 1
{ Condition : flow200.220 <= 0.4 * convert_units { lookup {Fish_Norm_Flow, month},
cfs, af }
Value : 1
}
Condition : default
Value : _Enf_Trigger_2_On(-1)
}
Condition : default
Value : _Enf_Trigger_2_On(-1)
}
Set : _Enf_Trigger_1_On
{ Condition : _Enf_Trigger_1_On(-1) = 1
{ Condition : flow200.220 > 0.6 * convert_units { lookup {Fish_Norm_Flow, month}, cfs, af
}
Value : 0
Condition : default
Value : _Enf_Trigger_1_On(-1)
}
// Assume no waiting period since Enf_Trigger 1 only drought alert
Condition : weekday{year, month, day} <= 1
{ Condition : flow200.220 <= 0.6 * convert_units { lookup {Fish_Norm_Flow, month}, cfs,
af }
Value : 1
Condition : default
Value : _Enf_Trigger_1_On(-1)
}
Condition : default
Value : _Enf_Trigger_1_On(-1)
}
/* TARBORO */
Set : _Tarb_Trigger_5_On { Value : 0 } // No phase 5 for Tarboro
Set : _Tarb_Trigger_4_On
{ Condition : _Tarb_Trigger_4_On(-1) = 1
{ Condition : flow300.330 > convert_units { 30, cfs, af }
Value : 0
Condition : default
Value : _Tarb_Trigger_4_On(-1)
}
Condition : _Tarb_Stage_3_Counter(-1) >= 14 // Require a 14 day waiting period before
going into phase 4
{ Condition : weekday{year, month, day} <= 1
{ Condition : flow300.330 < convert_units { 30, cfs, af } and flow300.330(-1) <
convert_units { 30, cfs, af } and
flow300.330(-2) < convert_units { 30, cfs, af } and flow300.330(-3) <
convert_units { 30, cfs, af } and
flow300.330(-4) < convert_units { 30, cfs, af }
Value : 1
}
Condition : default
Value : _Tarb_Trigger_4_On(-1)
}
Condition : default
Value : _Tarb_Trigger_4_On(-1)
}
Set : _Tarb_Trigger_3_On
{ Condition : _Tarb_Trigger_3_On(-1) = 1
{ Condition : flow300.330 > convert_units { 40, cfs, af }
Value : 0
Condition : default
Value : _Tarb_Trigger_3_On(-1)
}
Condition : _Tarb_Stage_2_Counter(-1) >= 14 // Require a 14 day waiting period before
going into phase 3
{ Condition : weekday{year, month, day} <= 1
{ Condition : flow300.330 < convert_units { 40, cfs, af } and flow300.330(-1) <
convert_units { 40, cfs, af } and
flow300.330(-2) < convert_units { 40, cfs, af } and flow300.330(-3) <
convert_units { 40, cfs, af } and
flow300.330(-4) < convert_units { 40, cfs, af }
Value : 1
}
Condition : default
Value : _Tarb_Trigger_3_On(-1)
}
Condition : default
Value : _Tarb_Trigger_3_On(-1)
}
Set : _Tarb_Trigger_2_On
{ Condition : _Tarb_Trigger_2_On(-1) = 1
{ Condition : flow300.330 > convert_units { 50, cfs, af }
Value : 0
Condition : default
Value : _Tarb_Trigger_2_On(-1)
}
Condition : _Tarb_Stage_1_Counter(-1) >= 14 // Require a 14 day waiting period before
going into phase 2
{ Condition : weekday{year, month, day} <= 1
{ Condition : flow300.330 < convert_units { 50, cfs, af } and flow300.330(-1) <
convert_units { 50, cfs, af } and
flow300.330(-2) < convert_units { 50, cfs, af } and flow300.330(-3) <
convert_units { 50, cfs, af } and
flow300.330(-4) < convert_units { 50, cfs, af } and flow300.330(-5) <
convert_units { 50, cfs, af } and
flow300.330(-6) < convert_units { 50, cfs, af }
Value : 1
}
Condition : default
Value : _Tarb_Trigger_2_On(-1)
}
Condition : default
Value : _Tarb_Trigger_2_On(-1)
}
Set : _Tarb_Trigger_1_On
{ Condition : _Tarb_Trigger_1_On(-1) = 1
{ Condition : flow300.330 > convert_units { 70, cfs, af }
Value : 0
Condition : default
Value : _Tarb_Trigger_1_On(-1)
}
// Assume no waiting period since Tarb_Trigger 1 only drought alert
Condition : weekday{year, month, day} <= 1
{ Condition : flow300.330 < convert_units { 70, cfs, af } and flow300.330(-1) <
convert_units { 70, cfs, af } and
flow300.330(-2) < convert_units { 70, cfs, af } and flow300.330(-3) < convert_units
{ 70, cfs, af } and
flow300.330(-4) < convert_units { 70, cfs, af } and flow300.330(-5) < convert_units
{ 70, cfs, af } and
flow300.330(-6) < convert_units { 70, cfs, af }
Value : 1
Condition : default
Value : _Tarb_Trigger_1_On(-1)
}
Condition : default
Value : _Tarb_Trigger_1_On(-1)
}
/* Greenville */
/* Commented out because triggers are based on height at intake, need some way of modeling
that
Set : _GUC_Trigger_3_On
{ Condition : _GUC_Trigger_3_On(-1) = 1
{ Condition : flow390.400 > convert_units { 5.4, cfs, af }
Value : 0
Condition : default
Value : _GUC_Trigger_3_On(-1)
}
Condition : _GUC_Stage_2_Counter(-1) >= 14 // Require a 14 day waiting period before
going into phase 3
{ Condition : weekday{year, month, day} <= 1
{ Condition : flow390.400 <= convert_units { 5.4, cfs, af }
Value : 1
}
Condition : default
Value : _GUC_Trigger_3_On(-1)
}
Condition : default
Value : _GUC_Trigger_3_On(-1)
}
Set : _GUC_Trigger_2_On
{ Condition : _GUC_Trigger_2_On(-1) = 1
{ Condition : flow390.400 > convert_units { 5.4, cfs, af }
Value : 0
Condition : default
Value : _GUC_Trigger_2_On(-1)
}
Condition : _GUC_Stage_1_Counter(-1) >= 14 // Require a 14 day waiting period before
going into phase 2
{ Condition : weekday{year, month, day} <= 1
{ Condition : flow390.400 <= convert_units { 5.4, cfs, af }
Value : 1
}
Condition : default
Value : _GUC_Trigger_2_On(-1)
}
Condition : default
Value : _GUC_Trigger_2_On(-1)
}
Set : _GUC_Trigger_1_On
{ Condition : _GUC_Trigger_1_On(-1) = 1
{ Condition : flow390.400 > convert_units { 5.4, cfs, af }
Value : 0
Condition : default
Value : _GUC_Trigger_1_On(-1)
}
// Assume no waiting period since GUC_Trigger 1 only drought alert
Condition : weekday{year, month, day} <= 1
{ Condition : flow390.400 <= convert_units { 5.4, cfs, af }
Value : 1
Condition : default
Value : _GUC_Trigger_1_On(-1)
}
Condition : default
Value : _GUC_Trigger_1_On(-1)
}
*/
/* This section sets/resets the counters used to maintain the proper spacing of conservation stages
*/
:For:
{ [Util] = { /*Loui, */Frank, Enf, Tarb/*, GUC*/ }
}
:For:
{ [trig] = {1, 2, 3, 4, 5}
}
Set : _[Util]_Stage_[trig]_Counter
{ Condition : _[Util]_Stage_[trig]_Counter(-1) > 0 and _[Util]_Trigger_[trig]_On = 0
Value : 0
Condition : _[Util]_Trigger_[trig]_On = 1
Value : _[Util]_Stage_[trig]_Counter(-1) + 1
Condition : default
Value : _[Util]_Stage_[trig]_Counter(-1)
}
/* Count all trigger events lasting at least 7 days */
Set : _[Util]_Ph_[trig]_event_counter
{ Condition : _[Util]_Stage_[trig]_Counter = 7 and _[Util]_Stage_[trig]_Counter(-1) = 6
Value : _[Util]_Ph_[trig]_event_counter(-1) + 1
Condition : default
Value : _[Util]_Ph_[trig]_event_counter(-1)
}
:Next:
:Next:
// Set conservation demand and delivery constraints for each trigger level in effect.
// Set demand reduction factors
:SUBSTITUTE: [Dem_1_Red_Factor] = 5
:SUBSTITUTE: [Dem_2_Red_Factor] = 10
:SUBSTITUTE: [Dem_3_Red_Factor] = 20
:SUBSTITUTE: [Dem_4_Red_Factor] = 25
:SUBSTITUTE: [Dem_5_Red_Factor] = 35
:For:
{ [trig] = {1, 2, 3, 4, 5}
}
// Louisburg
/*Set : _Loui_Consvn_[trig]_Demand
{ Condition : _Loui_Trigger_[trig]_On = 1
Value : Demand086 * ( 1 - [Dem_[trig]_Red_Factor] / 100 )
Condition : default
Value : Demand086
}
Constraint Loui_Demand_Limit_Consvn_[trig] :
{ Condition : _Loui_Trigger_[trig]_On = 1
Expression : dflow050.086 <= _Loui_Consvn_[trig]_Demand }
*/
// Franklinton
Set : _Frank_Consvn_[trig]_Demand
{ Condition : _Frank_Trigger_[trig]_On = 1
Value : Demand074 * ( 1 - [Dem_[trig]_Red_Factor] / 100 )
Condition : default
Value : Demand074
}
Constraint Frank_Demand_Limit_Consvn_[trig] :
{ Condition : _Frank_Trigger_[trig]_On = 1
Expression : dflow072.074 <= _Frank_Consvn_[trig]_Demand }
// Enfield
Set : _Enf_Consvn_[trig]_Demand
{ Condition : _Enf_Trigger_[trig]_On = 1
Value : Demand226 * ( 1 - [Dem_[trig]_Red_Factor] / 100 )
Condition : default
Value : Demand226
}
Constraint Enf_Demand_Limit_Consvn_[trig] :
{ Condition : _Enf_Trigger_[trig]_On = 1
Expression : dflow220.226 <= _Enf_Consvn_[trig]_Demand }
// Tarboro
Set : _Tarb_Consvn_[trig]_Demand
{ Condition : _Tarb_Trigger_[trig]_On = 1
Value : Demand296 * ( 1 - [Dem_[trig]_Red_Factor] / 100 )
Condition : default
Value : Demand296
}
Constraint Tarb_Demand_Limit_Consvn_[trig] :
{ Condition : _Tarb_Trigger_[trig]_On = 1
Expression : dflow250.296 <= _Tarb_Consvn_[trig]_Demand }
// Greenville
/*Set : _Gree_Consvn_[trig]_Demand
{ Condition : _Gree_Trigger_[trig]_On = 1
Value : Demand392 * ( 1 - [Dem_[trig]_Red_Factor] / 100 )
Condition : default
Value : Demand392
}
Constraint Gree_Demand_Limit_Consvn_[trig] :
{ Condition : _Gree_Trigger_[trig]_On = 1
Expression : dflow391.392 <= _Gree_Consvn_[trig]_Demand }
*/
:Next:
:else:
// Do nothing if not using drought plans
:endif: