Esempio n. 1
0
        // =========================================
        //
        protected override void initialize_ModelParameters()
        {
            WaterSimManager WSim = (this as WaterSimManager);

            //  WSim.ProcessManager.AddProcess(WM);
            base.initialize_ModelParameters();
            ParameterManagerClass            FPM       = ParamManager;
            Extended_Parameter_Documentation ExtendDoc = FPM.Extended;

            // =======================================================

            // Provider parameters
            // Inputs/Outputs
            //
            // Template(s)
            // ExtendDoc.Add(new WaterSimDescripItem(eModelParam.ep, "", "", "", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
            // _pm.AddParameter(new ModelParameterClass(eModelParam.ep,"", "", rangeChecktype.rctCheckRange, 0, 0, geti_, seti_, RangeCheck.NoSpecialBase));
            //
            // NEW STUFF - State
            _pm.AddParameter(new ModelParameterClass(eModelParam.epState, "State Code", "ST", rangeChecktype.rctCheckRange, 0, 14, WSmith.geti_StateIndex, WSmith.seti_StateIndex, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epState, "The State Currently being Examined: one of five (Florida, Idaho, Illinois, Minnesota, Wyoming, Arizona,Colorado,Nevada,California,Utah,New Mexic, Alabama,Kansas, Tennessee, Virginia) in the initial work.", "", "The State Examined", "State", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));

            // Drivers
            _pm.AddParameter(new ModelParameterClass(eModelParam.epPopulation, "Population Served", "POP", geti_Pop));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epPopulation, "State Population People in any given year- we use an estimate of slope to project out to 2065", "ppl", "State Population (ppl)", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));

            // Outputs
            _pm.AddParameter(new ModelParameterClass(eModelParam.epGPCD_urban, "Urban GPCD", "UGPCD", WSmith.geti_gpcd));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epGPCD_urban, "The GPCD (Gallons per Capita per Day) for delivered water for the Urban water sector.", "GPCD", "Gallons per Capita per Day (GPCD)", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));

            _pm.AddParameter(new ModelParameterClass(eModelParam.epGPCD_ag, "Agricultural GPCD", "AGPCD", WSmith.geti_gpcdAg));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epGPCD_ag, "The GPCD (Gallons per Capita per Day) for delivered water for Agricultural Uses.", "GPCD", "Gallons per Capita per Day (GPCD)", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));

            _pm.AddParameter(new ModelParameterClass(eModelParam.epGPCD_other, "Other GPCD: Power and Industry", "OGPCD", WSmith.geti_gpcdOther));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epGPCD_other, "The GPCD (Gallons per Capita per Day) for delivered water for Industrial Uses and Power Combined.", "GPCD", "Gallons per Capita per Day (GPCD)", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
            //

            // Resources
            _pm.AddParameter(new ModelParameterClass(eModelParam.epSurfaceFresh, "Surface Water (Fresh)", "SUR", rangeChecktype.rctCheckRange, 0, 20000 /* 50000000 */, WSmith.geti_SurfaceWaterFresh, WSmith.seti_SurfaceWaterFresh, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epSurfaceFresh, "Fresh Water Deliveries from Surface Sources; this is total fresh water withdrawals.", "MGD", "Million Gallons per Day (MGD)", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
            _pm.AddParameter(new ModelParameterClass(eModelParam.epSurfaceFreshNet, "Surface Water (Fresh) Net", "SURN", WSmith.geti_SurfaceWaterFreshNet));

            _pm.AddParameter(new ModelParameterClass(eModelParam.epSurfaceSaline, "Surface Water (Saline)", "SAL", rangeChecktype.rctCheckRange, 0, 20000 /* 50000000 */, WSmith.geti_SurfaceWaterSaline, WSmith.seti_SurfaceWaterSaline, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epSurfaceSaline, "Saline Water Deliveries from Surface Sources; this is total saline water withdrawals.", "MGD", "Million Gallons per Day (MGD)", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
            _pm.AddParameter(new ModelParameterClass(eModelParam.epSurfaceSalineNet, "Surface Water (Saline) Net", "SALN", WSmith.geti_SurfaceWaterSalineNet));

            _pm.AddParameter(new ModelParameterClass(eModelParam.epGroundwater, "Groundwater (Fresh)", "GW", rangeChecktype.rctCheckRange, 0, 20000 /* 500000008*/, WSmith.geti_Groundwater, WSmith.seti_Groundwater, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epGroundwater, "Fresh Water Deliveries from Pumped Groundwater; this is total water withdrawals.", "MGD", "Million Gallons per Day (MGD)", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
            _pm.AddParameter(new ModelParameterClass(eModelParam.epGroundwaterNet, "Groundwater (Fresh) Net", "GWN", WSmith.geti_GroundwaterNet));

            _pm.AddParameter(new ModelParameterClass(eModelParam.epEffluent, "Effluent (Reclaimed)", "REC", rangeChecktype.rctCheckRange, 0, 20000 /*50000000*/, WSmith.geti_Effluent, WSmith.seti_Effluent, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epEffluent, "Effluent (reclaimed) Water Deliveries from Waste Water Treatment Plants; total withdrawals.", "MGD", "Million Gallons per Day (MGD)", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
            _pm.AddParameter(new ModelParameterClass(eModelParam.epEffluentNet, "Effluent (Reclaimed) Net", "RECN", WSmith.geti_EffluentNet));

            _pm.AddParameter(new ModelParameterClass(eModelParam.epSurfaceLake, "Surface Lake Water", "SURL", rangeChecktype.rctCheckRange, 0, 20000, WSmith.geti_SurfaceLake, WSmith.seti_SurfaceLake, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epSurfaceLake, "Surface Lake Water", "mgd", "Million Gallons Per Day", "Surface Lake Water", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
            _pm.AddParameter(new ModelParameterClass(eModelParam.epSurfaceLakeNet, "Surface Lake Water Net", "SURLN", WSmith.geti_SurfaceLakeNet));

            //
            _pm.AddParameter(new ModelParameterClass(eModelParam.epTotalSupplies, "Total Supplies", "TS", WSmith.geti_TotalSupplies));


            // CONSUMERS
            _pm.AddParameter(new ModelParameterClass(eModelParam.epUrban, "Urban Demand", "UD", rangeChecktype.rctCheckRange, 0, 30000 /*50000000*/, WSmith.geti_Urban, WSmith.seti_Urban, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epUrban, "Urban Water Demand", "MGD ", "Million Gallons per Day", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));

            _pm.AddParameter(new ModelParameterClass(eModelParam.epUrbanNet, "Urban Demand (Net)", "UDN", WSmith.geti_Urban_Net));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epUrbanNet, "Urban (residential) Net Water Balance; the difference between source withdrawals and demand.", "MGD ", "Million Gallons per Day (MGD)", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));

            _pm.AddParameter(new ModelParameterClass(eModelParam.epAgriculture, "Agriculture Demand", "AD", rangeChecktype.rctCheckRange, 0, 30000 /*50000000*/, WSmith.geti_Agriculture, WSmith.seti_Agriculture, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epAgriculture, "Agriculture Water Demand; total withdrawals.", "MGD ", "Million Gallons per Day (MGD)", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));

            _pm.AddParameter(new ModelParameterClass(eModelParam.epAgricultureNet, "Agriculture Demand (Net)", "ADN", WSmith.geti_Agriculture_Net));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epAgricultureNet, "Agricultural Net Water Balance; the difference between source withdrawals and demand.", "MGD ", "Million Gallons per Day (MGD)", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));

            _pm.AddParameter(new ModelParameterClass(eModelParam.epIndustrial, "Industrial Demand", "ID", rangeChecktype.rctCheckRange, 0, 30000 /* 50000000*/, WSmith.geti_Industrial, WSmith.seti_Industrial, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epIndustrial, "Industrial Water Demand; total withdrawals. Water used for industries such as steel, chemical, paper, and petroleum refining. ", "MGD ", "Million Gallons per Day (MGD)", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));

            _pm.AddParameter(new ModelParameterClass(eModelParam.epIndustrialNet, "Industrial Demand (Net)", "IDN", WSmith.geti_Industrial_Net));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epIndustrialNet, "Industrial Net Water Balance; the difference between source withdrawals and demand.", "MGD ", "Million Gallons per Day (MGD)", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));

            _pm.AddParameter(new ModelParameterClass(eModelParam.epPower, "Power Demand", "PD", rangeChecktype.rctCheckRange, 0, 30000 /*50000000*/, WSmith.geti_PowerWater, WSmith.seti_PowerWater, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epPower, "Water Use by Power: total withdrawals. Water used in the process of generating electricity with steam-driven turbine generators [Thermoelectric power, subcategories by cooling-system type (once-through, closed-loop/recirculation)].", "MGD ", "Million Gallons per Day (MGD)", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));

            _pm.AddParameter(new ModelParameterClass(eModelParam.epPowerNet, "Power Demand (Net)", "PDN", WSmith.geti_PowerWater_Net));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epPowerNet, "Power Net Water Balance; the difference between source withdrawals and demand.", "MGD ", "Million Gallons per Day (MGD)", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
            //
            _pm.AddParameter(new ModelParameterClass(eModelParam.epPowerEnergy, "Power Produced", "PE", WSmith.geti_PowerEnergy));
            //
            _pm.AddParameter(new ModelParameterClass(eModelParam.epNetDemandDifference, "Net Demand Difference", "DDIF", rangeChecktype.rctCheckRange, 0, 100 /*50000000*/, WSmith.geti_NetDemandDifference, null, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epNetDemandDifference, "The ratio of net demand to total demand for all consumers; ", "% ", "Percent (%)", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));


            //
            // Controls - Policy

            _pm.AddParameter(new ModelParameterClass(eModelParam.epUrbanWaterConservation, "Water Conservation (urban & rural)", "UCON", rangeChecktype.rctCheckRange, 50, 100, WSmith.geti_UrbanConservation, WSmith.seti_UrbanConservation, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epUrbanWaterConservation, "Urban Water Conservation: reduction in annual water use.", "", "Percent reduction in water use", "", new string[4] {
                "None", "Low", "Med", "High"
            }, new int[4] {
                100, 80, 65, 50
            }, new ModelParameterGroupClass[] { }));

            _pm.AddParameter(new ModelParameterClass(eModelParam.epAgWaterConservation, "Ag Water Conservation", "ACON", rangeChecktype.rctCheckRange, 50, 100, WSmith.geti_AgConservation, WSmith.seti_AgConservation, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epAgWaterConservation, "Agricultural Water Conservation: reduction in annual water used by the Ag sector.", "", "Percent reduction in water use", "", new string[4] {
                "None", "Low", "Med", "High"
            }, new int[4] {
                100, 80, 65, 50
            }, new ModelParameterGroupClass[] { }));

            _pm.AddParameter(new ModelParameterClass(eModelParam.epPowerWaterConservation, "Power Water Conservation", "PCON", rangeChecktype.rctCheckRange, 50, 100, WSmith.geti_PowerConservation, WSmith.seti_PowerConservation, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epPowerWaterConservation, "Power Water Conservation: reduction in annual water use for Thermoelectric power generation.", "", "Percent reduction in water use", "", new string[4] {
                "None", "Low", "Med", "High"
            }, new int[4] {
                100, 80, 65, 50
            }, new ModelParameterGroupClass[] { }));
            //
            _pm.AddParameter(new ModelParameterClass(eModelParam.epIndustrialWaterConservation, "Industrial Water Conservation", "ICON", rangeChecktype.rctCheckRange, 50, 100, WSmith.geti_IndustryConservation, WSmith.seti_IndustryConservation, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epIndustrialWaterConservation, "Industrial Water Conservation: reduction in annual water use for Industry.", "", "Percent reduction in water use", "", new string[4] {
                "None", "Low", "Med", "High"
            }, new int[4] {
                100, 80, 65, 50
            }, new ModelParameterGroupClass[] { }));


            // Index Values
            _pm.AddParameter(new ModelParameterClass(eModelParam.epSurfaceWaterManagement, "Use More Surface Water", "SWM", rangeChecktype.rctCheckRange, 80, 150, WSmith.geti_SurfaceWaterControl, WSmith.seti_SurfaceWaterControl, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epSurfaceWaterManagement, "Controls Scenario Chosen for alteration in surface water supply: increased surface water withdrawals.", "", "Alteration in Available Surface Water", "", new string[4] {
                "Less", "None", "Med", "High"
            }, new int[4] {
                80, 100, 120, 140
            }, new ModelParameterGroupClass[] { }));
            // 0=20% decrease, 1=contenporary, 2=20% increase, 3 = 40% increase in river water
            _pm.AddParameter(new ModelParameterClass(eModelParam.epGroundwaterManagement, "Change Groundwater Use", "GWM", rangeChecktype.rctCheckRange, 80, 150, WSmith.geti_GroundwaterControl, WSmith.seti_GroundwaterControl, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epGroundwaterManagement, "Controls Scenario Chosen for alteration in groundwater supplies: increased or decreased groundwater withdrawals.", "", "Alteration in Groundwater Used", "", new string[4] {
                "Less", "None", "More", "Most"
            }, new int[4] {
                80, 100, 120, 140
            }, new ModelParameterGroupClass[] { }));

            _pm.AddParameter(new ModelParameterClass(eModelParam.epReclainedWaterUse, "Use Reclaimed Water", "RECM", rangeChecktype.rctNoRangeCheck, 0, 100, WSmith.geti_ReclaimedWaterManagement, WSmith.seti_ReclaimedWaterManagement, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epReclainedWaterUse, "Alteration in reclaimed (effluent) supplies: increased effluent withdrawals.", "", "% of indoor water use", "", new string[4] {
                "None", "Low", "Med", "High"
            }, new int[4] {
                0, 33, 66, 100
            }, new ModelParameterGroupClass[] { }));
            //
            _pm.AddParameter(new ModelParameterClass(eModelParam.epLakeWaterManagement, "Increase Lake Water use", "LWM", rangeChecktype.rctCheckRange, 80, 150, WSmith.geti_LakeWaterManagement, WSmith.seti_LakeWaterManagement, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epLakeWaterManagement, "Controls Lake Water Management: increased or decreased groundwater withdrawals.", "", "Scenario changes in lake later withdrawals", "", new string[4] {
                "Less", "None", "More", "Most"
            }, new int[4] {
                80, 100, 120, 140
            }, new ModelParameterGroupClass[] { }));

            _pm.AddParameter(new ModelParameterClass(eModelParam.epAugmented, "Augmented Desal", "DESAL", rangeChecktype.rctCheckRange, 0, 200, WSmith.geti_Desalinization, WSmith.seti_Desalinization, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epAugmented, "Adds a percent of desalinaiton: increased surface saline withdrawals.", "", "Scenario changes in lake later withdrawals", "", new string[4] {
                "None", "Low", "Med", "High"
            }, new int[4] {
                0, 100, 150, 200
            }, new ModelParameterGroupClass[] { }));
            //
            _pm.AddParameter(new ModelParameterClass(eModelParam.epPolicyStartYear, "Policy Start Year", "PST", rangeChecktype.rctCheckRange, 2016, 2060, geti_PolicyStartYear, seti_PolicyStartYear, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epPolicyStartYear, "Year that the Policies are implemented", "yr", "Year", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
            //
            // Controls - External Forcings
            _pm.AddParameter(new ModelParameterClass(eModelParam.epPopGrowthAdjustment, "Population Growth Projected", "POPGR", rangeChecktype.rctCheckRange, 0, 150, WSmith.geti_PopGrowthRate, WSmith.seti_PopGrowthRate, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epPopGrowthAdjustment, "Adjustment in the Projected Population Growth Rate.", "%", "Population Growth", "", new string[4] {
                "Low", "Some", "Planned", "High"
            }, new int[4] {
                60, 80, 100, 120
            }, new ModelParameterGroupClass[] { }));

            //_pm.AddParameter(new ModelParameterClass(eModelParam.epClimateDrought, "Drought Impacts on Rivers/Lakes ", "CLIM", rangeChecktype.rctCheckRange, 0, 4, WSmith.geti_DroughtImpacts, WSmith.seti_DroughtImpacts, RangeCheck.NoSpecialBase));
            //   ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epClimateDrought, "Alteration in Fresh Water Withdrawals as a result of drought on supplies.", "Scenario-driven", "Drought Reductions in Surface Water", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
            //
            _pm.AddParameter(new ModelParameterClass(eModelParam.epDroughtControl, "Drought Impacts Control- controls rate", "DC", rangeChecktype.rctCheckRange, 50, 150, WSmith.geti_DroughtControl, WSmith.seti_DroughtControl, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epDroughtControl, "Percent reduction in Surface flows due to drought", "%", "Percent (%)", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));

            _pm.AddParameter(new ModelParameterClass(eModelParam.epAgricultureProduction, "Agriculture Net $", "ANP", WSmith.geti_AgricutureProduction));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epAgricultureProduction, "Agriculture Net Annual Farm Income.", "M$", "Million Dollars ", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));

            _pm.AddParameter(new ModelParameterClass(eModelParam.epAgriculturalGrowth, "Agriculture Growth", "AGGR", rangeChecktype.rctCheckRange, 50, 150, WSmith.geti_AgGrowthRate, WSmith.seti_AgGrowthRate, RangeCheck.NoSpecialBase));
            ExtendDoc.Add(new WaterSimDescripItem(eModelParam.epAgriculturalGrowth, "Agriculture Growth Rate Applied.", "%", "Percent of current growth", "", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));

            // -----------------------------
            // Initialize Other
            WSmith.startYear   = _StartYear;
            WSmith.endYear     = _EndYear;
            WSmith.currentYear = _StartYear;
            // =============================
            //
            defaultSettings();
            //
            // 12.14.16 added
            WSmith.policyStartYear = geti_PolicyStartYear();
        }
Esempio n. 2
0
        public bool initializeFluxParameters()
        {
            bool result = true;
            try
            {
                Extended_Parameter_Documentation ExtendDoc = ParamManager.Extended;
                //----  SUR_UD Parameter  ----------------------------
                ParamManager.AddParameter(new ModelParameterClass(eModelParam.ep_SUR_UD, "SUR to UTOT Allocation", "SUR_UD", rangeChecktype.rctCheckRange, 0, 50000, geti_SUR_UD, seti_SUR_UD, RangeCheck.NoSpecialBase));
                ExtendDoc.Add(new WaterSimDescripItem(eModelParam.ep_SUR_UD, "SUR Water Supply allocated to UTOT water consumption", "MGD", "Million Gallons Per Day", "SUR to UTOT", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
                //----  SUR_AD Parameter  ----------------------------
                ParamManager.AddParameter(new ModelParameterClass(eModelParam.ep_SUR_AD, "SUR to ATOT Allocation", "SUR_AD", rangeChecktype.rctCheckRange, 0, 50000, geti_SUR_AD, seti_SUR_AD, RangeCheck.NoSpecialBase));
                ExtendDoc.Add(new WaterSimDescripItem(eModelParam.ep_SUR_AD, "SUR Water Supply allocated to ATOT water consumption", "MGD", "Million Gallons Per Day", "SUR to ATOT", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
                //----  SUR_ID Parameter  ----------------------------
                ParamManager.AddParameter(new ModelParameterClass(eModelParam.ep_SUR_ID, "SUR to ITOT Allocation", "SUR_ID", rangeChecktype.rctCheckRange, 0, 50000, geti_SUR_ID, seti_SUR_ID, RangeCheck.NoSpecialBase));
                ExtendDoc.Add(new WaterSimDescripItem(eModelParam.ep_SUR_ID, "SUR Water Supply allocated to ITOT water consumption", "MGD", "Million Gallons Per Day", "SUR to ITOT", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
                //----  SUR_PD Parameter  ----------------------------
                ParamManager.AddParameter(new ModelParameterClass(eModelParam.ep_SUR_PD, "SUR to PTOT Allocation", "SUR_PD", rangeChecktype.rctCheckRange, 0, 50000, geti_SUR_PD, seti_SUR_PD, RangeCheck.NoSpecialBase));
                ExtendDoc.Add(new WaterSimDescripItem(eModelParam.ep_SUR_PD, "SUR Water Supply allocated to PTOT water consumption", "MGD", "Million Gallons Per Day", "SUR to PTOT", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
                //----  SURL_UD Parameter  ----------------------------
                ParamManager.AddParameter(new ModelParameterClass(eModelParam.ep_SURL_UD, "SURL to UTOT Allocation", "SURL_UD", rangeChecktype.rctCheckRange, 0, 50000, geti_SURL_UD, seti_SURL_UD, RangeCheck.NoSpecialBase));
                ExtendDoc.Add(new WaterSimDescripItem(eModelParam.ep_SURL_UD, "SURL Water Supply allocated to UTOT water consumption", "MGD", "Million Gallons Per Day", "SURL to UTOT", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
                //----  SURL_AD Parameter  ----------------------------
                ParamManager.AddParameter(new ModelParameterClass(eModelParam.ep_SURL_AD, "SURL to ATOT Allocation", "SURL_AD", rangeChecktype.rctCheckRange, 0, 50000, geti_SURL_AD, seti_SURL_AD, RangeCheck.NoSpecialBase));
                ExtendDoc.Add(new WaterSimDescripItem(eModelParam.ep_SURL_AD, "SURL Water Supply allocated to ATOT water consumption", "MGD", "Million Gallons Per Day", "SURL to ATOT", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
                //----  SURL_ID Parameter  ----------------------------
                ParamManager.AddParameter(new ModelParameterClass(eModelParam.ep_SURL_ID, "SURL to ITOT Allocation", "SURL_ID", rangeChecktype.rctCheckRange, 0, 50000, geti_SURL_ID, seti_SURL_ID, RangeCheck.NoSpecialBase));
                ExtendDoc.Add(new WaterSimDescripItem(eModelParam.ep_SURL_ID, "SURL Water Supply allocated to ITOT water consumption", "MGD", "Million Gallons Per Day", "SURL to ITOT", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
                //----  SURL_PD Parameter  ----------------------------
                ParamManager.AddParameter(new ModelParameterClass(eModelParam.ep_SURL_PD, "SURL to PTOT Allocation", "SURL_PD", rangeChecktype.rctCheckRange, 0, 50000, geti_SURL_PD, seti_SURL_PD, RangeCheck.NoSpecialBase));
                ExtendDoc.Add(new WaterSimDescripItem(eModelParam.ep_SURL_PD, "SURL Water Supply allocated to PTOT water consumption", "MGD", "Million Gallons Per Day", "SURL to PTOT", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
                //----  GW_UD Parameter  ----------------------------
                ParamManager.AddParameter(new ModelParameterClass(eModelParam.ep_GW_UD, "GW to UTOT Allocation", "GW_UD", rangeChecktype.rctCheckRange, 0, 50000, geti_GW_UD, seti_GW_UD, RangeCheck.NoSpecialBase));
                ExtendDoc.Add(new WaterSimDescripItem(eModelParam.ep_GW_UD, "GW Water Supply allocated to UTOT water consumption", "MGD", "Million Gallons Per Day", "GW to UTOT", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
                //----  GW_AD Parameter  ----------------------------
                ParamManager.AddParameter(new ModelParameterClass(eModelParam.ep_GW_AD, "GW to ATOT Allocation", "GW_AD", rangeChecktype.rctCheckRange, 0, 50000, geti_GW_AD, seti_GW_AD, RangeCheck.NoSpecialBase));
                ExtendDoc.Add(new WaterSimDescripItem(eModelParam.ep_GW_AD, "GW Water Supply allocated to ATOT water consumption", "MGD", "Million Gallons Per Day", "GW to ATOT", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
                //----  GW_ID Parameter  ----------------------------
                ParamManager.AddParameter(new ModelParameterClass(eModelParam.ep_GW_ID, "GW to ITOT Allocation", "GW_ID", rangeChecktype.rctCheckRange, 0, 50000, geti_GW_ID, seti_GW_ID, RangeCheck.NoSpecialBase));
                ExtendDoc.Add(new WaterSimDescripItem(eModelParam.ep_GW_ID, "GW Water Supply allocated to ITOT water consumption", "MGD", "Million Gallons Per Day", "GW to ITOT", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
                //----  GW_PD Parameter  ----------------------------
                ParamManager.AddParameter(new ModelParameterClass(eModelParam.ep_GW_PD, "GW to PTOT Allocation", "GW_PD", rangeChecktype.rctCheckRange, 0, 50000, geti_GW_PD, seti_GW_PD, RangeCheck.NoSpecialBase));
                ExtendDoc.Add(new WaterSimDescripItem(eModelParam.ep_GW_PD, "GW Water Supply allocated to PTOT water consumption", "MGD", "Million Gallons Per Day", "GW to PTOT", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
                //----  REC_UD Parameter  ----------------------------
                ParamManager.AddParameter(new ModelParameterClass(eModelParam.ep_REC_UD, "REC to UTOT Allocation", "REC_UD", rangeChecktype.rctCheckRange, 0, 50000, geti_REC_UD, seti_REC_UD, RangeCheck.NoSpecialBase));
                ExtendDoc.Add(new WaterSimDescripItem(eModelParam.ep_REC_UD, "REC Water Supply allocated to UTOT water consumption", "MGD", "Million Gallons Per Day", "REC to UTOT", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
                //----  REC_AD Parameter  ----------------------------
                ParamManager.AddParameter(new ModelParameterClass(eModelParam.ep_REC_AD, "REC to ATOT Allocation", "REC_AD", rangeChecktype.rctCheckRange, 0, 50000, geti_REC_AD, seti_REC_AD, RangeCheck.NoSpecialBase));
                ExtendDoc.Add(new WaterSimDescripItem(eModelParam.ep_REC_AD, "REC Water Supply allocated to ATOT water consumption", "MGD", "Million Gallons Per Day", "REC to ATOT", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
                //----  REC_ID Parameter  ----------------------------
                ParamManager.AddParameter(new ModelParameterClass(eModelParam.ep_REC_ID, "REC to ITOT Allocation", "REC_ID", rangeChecktype.rctCheckRange, 0, 50000, geti_REC_ID, seti_REC_ID, RangeCheck.NoSpecialBase));
                ExtendDoc.Add(new WaterSimDescripItem(eModelParam.ep_REC_ID, "REC Water Supply allocated to ITOT water consumption", "MGD", "Million Gallons Per Day", "REC to ITOT", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
                //----  REC_PD Parameter  ----------------------------
                ParamManager.AddParameter(new ModelParameterClass(eModelParam.ep_REC_PD, "REC to PTOT Allocation", "REC_PD", rangeChecktype.rctCheckRange, 0, 50000, geti_REC_PD, seti_REC_PD, RangeCheck.NoSpecialBase));
                ExtendDoc.Add(new WaterSimDescripItem(eModelParam.ep_REC_PD, "REC Water Supply allocated to PTOT water consumption", "MGD", "Million Gallons Per Day", "REC to PTOT", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
                //----  SAL_UD Parameter  ----------------------------
                ParamManager.AddParameter(new ModelParameterClass(eModelParam.ep_SAL_UD, "SAL to UTOT Allocation", "SAL_UD", rangeChecktype.rctCheckRange, 0, 50000, geti_SAL_UD, seti_SAL_UD, RangeCheck.NoSpecialBase));
                ExtendDoc.Add(new WaterSimDescripItem(eModelParam.ep_SAL_UD, "SAL Water Supply allocated to UTOT water consumption", "MGD", "Million Gallons Per Day", "SAL to UTOT", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
                //----  SAL_AD Parameter  ----------------------------
                ParamManager.AddParameter(new ModelParameterClass(eModelParam.ep_SAL_AD, "SAL to ATOT Allocation", "SAL_AD", rangeChecktype.rctCheckRange, 0, 50000, geti_SAL_AD, seti_SAL_AD, RangeCheck.NoSpecialBase));
                ExtendDoc.Add(new WaterSimDescripItem(eModelParam.ep_SAL_AD, "SAL Water Supply allocated to ATOT water consumption", "MGD", "Million Gallons Per Day", "SAL to ATOT", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
                //----  SAL_ID Parameter  ----------------------------
                ParamManager.AddParameter(new ModelParameterClass(eModelParam.ep_SAL_ID, "SAL to ITOT Allocation", "SAL_ID", rangeChecktype.rctCheckRange, 0, 50000, geti_SAL_ID, seti_SAL_ID, RangeCheck.NoSpecialBase));
                ExtendDoc.Add(new WaterSimDescripItem(eModelParam.ep_SAL_ID, "SAL Water Supply allocated to ITOT water consumption", "MGD", "Million Gallons Per Day", "SAL to ITOT", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));
                //----  SAL_PD Parameter  ----------------------------
                ParamManager.AddParameter(new ModelParameterClass(eModelParam.ep_SAL_PD, "SAL to PTOT Allocation", "SAL_PD", rangeChecktype.rctCheckRange, 0, 50000, geti_SAL_PD, seti_SAL_PD, RangeCheck.NoSpecialBase));
                ExtendDoc.Add(new WaterSimDescripItem(eModelParam.ep_SAL_PD, "SAL Water Supply allocated to PTOT water consumption", "MGD", "Million Gallons Per Day", "SAL to PTOT", new string[] { }, new int[] { }, new ModelParameterGroupClass[] { }));




                FFluxParametersReady = true;
            } // try
            catch (Exception ex)
            {
                // ouch
                result = false;
            }
            return result;
        } // InitiallizeFluxParameters