Exemple #1
0
        public virtual void SetCapital1ConstantProperty(string attName,
                                                        string attValue)
        {
            switch (attName)
            {
            case cRandMPercent:
                this.RandMPercent = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cReplacementCost:
                this.ReplacementCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalReplacementCost:
                this.TotalReplacementCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cReplacementYrsFromBaseDate:
                this.ReplacementYrsFromBaseDate = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            default:
                break;
            }
        }
Exemple #2
0
 public static string[] AddStringArrayToStringArray(string[] strArray,
                                                    List <List <double> > trends, int rowIndex)
 {
     string[] newArray = new string[] { };
     if (trends.Count > rowIndex)
     {
         List <double> trend = trends[rowIndex];
         newArray = new string[trend.Count];
         if (strArray == null)
         {
             strArray = new string[trend.Count];
         }
         if (strArray.Count() == 0)
         {
             strArray = new string[trend.Count];
         }
         double trendValue       = 0;
         double stringArrayValue = 0;
         for (int k = 0; k < strArray.Count(); k++)
         {
             stringArrayValue = CalculatorHelpers
                                .ConvertStringToDouble(strArray[k]);
             if (trend.Count > k)
             {
                 trendValue  = trend[k] + stringArrayValue;
                 newArray[k] = trendValue.ToString();
             }
         }
     }
     return(newArray);
 }
Exemple #3
0
        public void SetTotalNPV1Stat1Property(NPV1Stat1 ind,
                                              string attName, string attValue)
        {
            ind.SetMeanBenefitsProperties(attName, attValue);
            ind.SetMeanCostsProperties(attName, attValue);
            ind.SetMedianBenefitsProperties(attName, attValue);
            ind.SetMedianCostsProperties(attName, attValue);
            ind.SetVarianceBenefitsProperties(attName, attValue);
            ind.SetVarianceCostsProperties(attName, attValue);
            ind.SetStdDevBenefitsProperties(attName, attValue);
            ind.SetStdDevCostsProperties(attName, attValue);
            switch (attName)
            {
            case TCostN:
                ind.TotalCostN = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TBenefitN:
                ind.TotalBenefitN = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            default:
                break;
            }
        }
Exemple #4
0
        public static void CopyStringDataToStringData(List <List <string> > dataToCopy, List <List <string> > data,
                                                      int numOfCols, int startColIndex)
        {
            int    iRow     = 0;
            int    iCol     = 0;
            int    iColStop = numOfCols + startColIndex;
            double dbZero   = 0;

            foreach (var row in dataToCopy)
            {
                foreach (var col in dataToCopy)
                {
                    if (data.Count() > iRow)
                    {
                        for (int i = startColIndex; i < iColStop; i++)
                        {
                            if (row.Count > i && data[iRow].Count > i)
                            {
                                //don't overwrite the location and tr indexes (they init with zero)
                                dbZero = CalculatorHelpers.ConvertStringToDouble(row[i]);
                                if (dbZero != 0)
                                {
                                    data[iRow][i] = row[i];
                                }
                            }
                        }
                    }
                    iCol++;
                }
                iRow++;
            }
        }
Exemple #5
0
        public void SetTotalME2Change1Property(ME2Change1 ind,
                                               string attDateame, string attValue)
        {
            string sPropertyValue = string.Empty;

            switch (attDateame)
            {
            case cTotalME2MAmountChange:
                ind.TotalME2MAmountChange = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalME2MPercentChange:
                ind.TotalME2MPercentChange = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalME2MBaseChange:
                ind.TotalME2MBaseChange = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalME2MBasePercentChange:
                ind.TotalME2MBasePercentChange = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalME2LAmountChange:
                ind.TotalME2LAmountChange = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalME2LPercentChange:
                ind.TotalME2LPercentChange = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalME2LBaseChange:
                ind.TotalME2LBaseChange = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalME2LBasePercentChange:
                ind.TotalME2LBasePercentChange = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalME2UAmountChange:
                ind.TotalME2UAmountChange = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalME2UPercentChange:
                ind.TotalME2UPercentChange = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalME2UBaseChange:
                ind.TotalME2UBaseChange = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalME2UBasePercentChange:
                ind.TotalME2UBasePercentChange = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            default:
                break;
            }
        }
Exemple #6
0
 private void AddComparisonStatisticProperties(int filePosition,
                                               double attNumber)
 {
     if (this.CalcParams.AnalyzerParms.BaseCBStatistic.NameIsNotAStatistic(
             this.CalcParams.AnalyzerParms.ObservationAttributeName))
     {
         //for standard deviation's running sum
         double dbStandardDeviation  = 0;
         double dbMemberSquared      = Math.Pow(attNumber, 2);
         double dbMemberSquaredTotal = 0;
         //for mean and sd running sum
         //double dbNewValue = attNumber;
         int    iObservations = 1;
         double dbMean        = attNumber;
         double dbTotal       = attNumber;
         double dbMedian      = 0;
         //could be another observation for same element within file
         //get the existing values from the collections, add the new
         //attnumber to the statistical collection, and set new
         //statistics (two tillage operations with same label
         //will have two observations, N=2, and need new mean, sd ... set)
         //note this attribute will never have a statistical suffix
         //in the attribute name (i.e. _MEAN)
         string sAttValue = this.GetStatisticalPropertyValue(
             filePosition, this.CalcParams.AnalyzerParms.NodePositionIndex,
             this.CalcParams.AnalyzerParms.ObservationAttributeName,
             this.CalcParams.AnalyzerParms.NodeName, string.Empty);
         dbTotal = CalculatorHelpers.ConvertStringToDouble(sAttValue)
                   + attNumber;
         //get the new N and MEAN
         if (!string.IsNullOrEmpty(sAttValue))
         {
             //set the number of observations
             string sNValue = this.GetStatisticalPropertyValue(
                 filePosition, this.CalcParams.AnalyzerParms.NodePositionIndex,
                 this.CalcParams.AnalyzerParms.ObservationAttributeName,
                 this.CalcParams.AnalyzerParms.NodeName, CostBenefitStatistic01.N);
             iObservations = CalculatorHelpers.ConvertStringToInt(sNValue) + 1;
             //set the mean
             dbMean = dbTotal / iObservations;
             //set the new variance
             string sSumVariance = this.GetStatisticalPropertyValue(
                 filePosition, this.CalcParams.AnalyzerParms.NodePositionIndex,
                 this.CalcParams.AnalyzerParms.ObservationAttributeName,
                 this.CalcParams.AnalyzerParms.NodeName, CostBenefitStatistic01.VAR2);
             dbMemberSquared = dbMemberSquared
                               + CalculatorHelpers.ConvertStringToDouble(sSumVariance);
         }
         //get the new variance
         dbMemberSquaredTotal += dbMemberSquared;
         //get the new standard deviation
         dbStandardDeviation = GetStandardDeviation(dbTotal, iObservations, dbMemberSquaredTotal);
         //set the corresponding property values in the cb collections
         SetStatisticProperties(filePosition,
                                iObservations, dbTotal, dbMean, dbMemberSquaredTotal,
                                dbStandardDeviation, dbMedian);
     }
 }
Exemple #7
0
        public static bool IsDouble(string test)
        {
            bool   bIsDouble = false;
            double dbTest    = CalculatorHelpers.ConvertStringToDouble(test);

            if (dbTest != 0)
            {
                bIsDouble = true;
            }
            return(bIsDouble);
        }
        //attname and attvalue generally passed in from a reader
        public virtual void SetLCC1Property(string attName,
                                            string attValue, int colIndex)
        {
            this.SetSubPrice1sProperty(attName, attValue, colIndex);
            switch (attName)
            {
            case cServiceLifeYears:
                this.ServiceLifeYears = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cYearsFromBaseDate:
                this.YearsFromBaseDate = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cPlanningConstructionYears:
                this.PlanningConstructionYears = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cPerUnitAmount:
                this.PerUnitAmount = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cPerUnitUnit:
                this.PerUnitUnit = attValue;
                break;

            case cOCTotalCost:
                this.OCTotalCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cAOHTotalCost:
                this.AOHTotalCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cCAPTotalCost:
                this.CAPTotalCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cLCCTotalCost:
                this.LCCTotalCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cEAATotalCost:
                this.EAATotalCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cUnitTotalCost:
                this.UnitTotalCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            default:
                break;
            }
        }
Exemple #9
0
        public static void AddStringArrayToDoubleArray(string[] strArray,
                                                       List <List <double> > trends)
        {
            //trends
            List <double> trend = new List <double>();

            for (int k = 0; k < strArray.Count(); k++)
            {
                trend.Add(CalculatorHelpers
                          .ConvertStringToDouble(strArray[k]));
            }
            trends.Add(trend);
        }
Exemple #10
0
        public void SetTotalMN1Total1Property(MN1Total1 ind,
                                              string attName, string attValue)
        {
            switch (attName)
            {
            case cTotalFNIndex:
                ind.TotalFNIndex = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            default:
                break;
            }
        }
Exemple #11
0
        //takes '25_0', and outputs 25 as a double and 0 as an integer
        private bool GetValues(string obsMember, out double member,
                               out int filePosition)
        {
            bool bHasFileCount = false;

            member = 0;
            //string sValue = obsMember;
            filePosition = 0;
            string sMemberValue = string.Empty;

            GetValues(obsMember, out sMemberValue, out filePosition);
            member = CalculatorHelpers.ConvertStringToDouble(sMemberValue);
            return(bHasFileCount);
        }
Exemple #12
0
        private void SetStatistic01Property(Statistic01 stat,
                                            string attName, string attValue)
        {
            switch (attName)
            {
            case cTotal:
                stat.Total
                    = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cMean:
                stat.Mean
                    = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cVariance:
                stat.Variance
                    = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cStandardDeviation:
                stat.StandardDeviation
                    = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cMedian:
                stat.Median
                    = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cObservations:
                stat.Observations
                    = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cCI5Percent:
                stat.CI5Percent
                    = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cCI95Percent:
                stat.CI95Percent
                    = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            default:
                break;
            }
        }
Exemple #13
0
        public void SetTotalLCA1Total1Property(LCA1Total1 ind,
                                               string attName, string attValue)
        {
            switch (attName)
            {
            case cTotalOCCost:
                ind.TotalOCCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalAOHCost:
                ind.TotalAOHCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalCAPCost:
                ind.TotalCAPCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalLCCCost:
                ind.TotalLCCCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalEAACost:
                ind.TotalEAACost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalUnitCost:
                ind.TotalUnitCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalRBenefit:
                ind.TotalRBenefit = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalLCBBenefit:
                ind.TotalLCBBenefit = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalREAABenefit:
                ind.TotalREAABenefit = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalRUnitBenefit:
                ind.TotalRUnitBenefit = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            default:
                break;
            }
        }
Exemple #14
0
        public static double GetDoubleValue(string[] strArray, int colIndex)
        {
            double dbValue = 0;

            if (strArray == null)
            {
                strArray = new string[colIndex];
            }
            if (strArray.Count() > colIndex)
            {
                dbValue = CalculatorHelpers
                          .ConvertStringToDouble(strArray[colIndex]);
            }
            return(dbValue);
        }
Exemple #15
0
        public static Vector <double> GetYData(List <List <string> > data)
        {
            //first columns holds the ys as strings
            var ys = from row in data
                     select row.ElementAt(0);

            //convert to doubles
            var yds = ys
                      .Select(y1 => CalculatorHelpers.ConvertStringToDouble(y1))
                      .ToArray();
            //convert to vector
            Vector <double> y = Vector <double> .Build.Dense(yds.ToArray());

            return(y);
        }
Exemple #16
0
        public virtual void SetGeneralCapital1InputProperty(string attName,
                                                            string attValue)
        {
            switch (attName)
            {
            case cEnergyUseHr:
                this.EnergyUseHr = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cEnergyEffTypical:
                this.EnergyEffTypical = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            default:
                break;
            }
        }
Exemple #17
0
        private void SetStatistic02Property(Statistic02 stat,
                                            string attName, string attValue)
        {
            switch (attName)
            {
            case cAmount:
                stat.Amount
                    = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cLikelihood:
                stat.Likelihood
                    = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            default:
                break;
            }
        }
Exemple #18
0
        private void SetTotalSubPrice2StockProperty(SubPrice2Stock ind,
                                                    string attName, string attValue)
        {
            switch (attName)
            {
            case cTotalSubP2Description:
                ind.TotalSubP2Description = attValue;
                break;

            case cTotalSubP2Name:
                ind.TotalSubP2Name = attValue;
                break;

            case cTotalSubP2Label:
                ind.TotalSubP2Label = attValue;
                break;

            case cTotalSubP2Total:
                ind.TotalSubP2Total = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalSubP2TotalPerUnit:
                ind.TotalSubP2TotalPerUnit = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalSubP2Price:
                ind.TotalSubP2Price = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTotalSubP2Unit:
                ind.TotalSubP2Unit = attValue;
                break;

            case cTotalSubP2Amount:
                ind.TotalSubP2Amount = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            default:
                break;
            }
        }
Exemple #19
0
        //attname and attvalue generally passed in from a reader
        public virtual void SetDemog1Properties(string attName,
                                                string attValue)
        {
            switch (attName)
            {
            case cAge:
                this.Age = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cEducationYears:
                this.EducationYears = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cRace:
                this.Race = attValue;
                break;

            case cHousing:
                this.Housing = attValue;
                break;

            case cGender:
                this.Gender = attValue;
                break;

            case cWorkStatus:
                this.WorkStatus = attValue;
                break;

            case cMaritalStatus:
                this.MaritalStatus = attValue;
                break;

            case cLocationId:
                this.LocationId = attValue;
                break;

            default:
                break;
            }
        }
        public virtual void SetTotalGeneralCapital1StockProperties(string attName,
                                                                   string attValue)
        {
            switch (attName)
            {
            case TEnergyEffTypical:
                this.TotalEnergyEffTypical = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TEnergyUseHr:
                this.TotalEnergyUseHr = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TRandMPercent:
                this.TotalRandMPercent = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            default:
                break;
            }
        }
Exemple #21
0
        public static string[] AddStringArrayToStringArray(string[] strArray, int strArrayCount,
                                                           string[] strArray2)
        {
            string[] newArray = new string[strArrayCount];
            if (strArray == null)
            {
                strArray = new string[strArrayCount];
            }
            if (strArray.Count() == 0)
            {
                strArray = new string[strArrayCount];
            }
            if (strArray2 == null)
            {
                strArray2 = new string[strArrayCount];
            }
            if (strArray2.Count() == 0)
            {
                strArray2 = new string[strArrayCount];
            }
            double stringArrayValue  = 0;
            double stringArrayValue2 = 0;

            for (int k = 0; k < strArray.Count(); k++)
            {
                stringArrayValue = CalculatorHelpers
                                   .ConvertStringToDouble(strArray[k]);
                if (strArray2.Count() > k)
                {
                    stringArrayValue2 = CalculatorHelpers
                                        .ConvertStringToDouble(strArray2[k]);
                    newArray[k] = (stringArrayValue + stringArrayValue2).ToString();
                }
            }
            return(newArray);
        }
Exemple #22
0
        public async Task <bool> RunSubAlgorithm1or2Async(string inputFilePath, string rFile)
        {
            bool   bHasCalcs = false;
            string sBaseURL  =
                "https://ussouthcentral.services.azureml.net/workspaces/d454361ecdcb4ec4b03fa1aec5a7c0e2/services/b10e6b4c4e63438999cc45147bbe006c/jobs";

            if (_subalgorithm == Calculator1.MATH_SUBTYPES.subalgorithm2.ToString())
            {
                sBaseURL = "https://ussouthcentral.services.azureml.net/workspaces/d454361ecdcb4ec4b03fa1aec5a7c0e2/services/abd32060dc014d0e8fe1256e0f694daa/jobs";
            }
            string sPlatForm = _params.ExtensionDocToCalcURI.URIDataManager.PlatformType.ToString();

            if (sPlatForm != CalculatorHelpers.PLATFORM_TYPES.azure.ToString())
            {
                sBaseURL = "https://ussouthcentral.services.azureml.net/workspaces/d454361ecdcb4ec4b03fa1aec5a7c0e2/services/b10e6b4c4e63438999cc45147bbe006c/execute?api-version=2.0&details=true";
                if (_subalgorithm == Calculator1.MATH_SUBTYPES.subalgorithm2.ToString())
                {
                    sBaseURL = "https://ussouthcentral.services.azureml.net/workspaces/d454361ecdcb4ec4b03fa1aec5a7c0e2/services/abd32060dc014d0e8fe1256e0f694daa/execute?api-version=2.0&details=true";
                }
            }
            //r web service is default
            string sApiKey =
                "fxBeL9LJ3ORm0kW0DtKhT99OfUK6YgBlc59crizYhlxKoEjRd3kuDHvPRuehCQ02VJhPPXcdYTp2pDUynb9gMA==";

            if (_subalgorithm == Calculator1.MATH_SUBTYPES.subalgorithm2.ToString())
            {
                //python
                sApiKey =
                    "/bjDNKx4OWdMIQu6CkvWCIhcfUOCTp9jUE9kD7uylwhOYyhVFOqAFA7M75mJjHS6p6jnAhCvFn1jSl678gzPVA==";
            }
            string sError = string.Empty;
            //convert the script file to the script string expected by the algorithm
            List <string> rlines = new List <string>();

            rlines             = CalculatorHelpers.ReadLines(_params.ExtensionDocToCalcURI, rFile, out sError);
            this.ErrorMessage += sError;
            if (rlines == null)
            {
                this.ErrorMessage += string.Concat(" ", Errors.MakeStandardErrorMsg("DATAURL_BAD"));
                return(bHasCalcs);
            }
            if (rlines.Count == 0)
            {
                this.ErrorMessage += string.Concat(" ", Errors.MakeStandardErrorMsg("DATAURL_BAD"));
                return(bHasCalcs);
            }
            StringBuilder sbR = new StringBuilder();

            for (int i = 0; i < rlines.Count(); i++)
            {
                sbR.AppendLine(rlines[i]);
            }
            string rScript = sbR.ToString();

            //web server expects to store in temp/randomid/name.csv
            //web service stores in temp blob
            string sOutputDataURL = CalculatorHelpers.GetTempContainerPath("Routput.csv");

            //web service expects urls that start with container names
            //regular rproject file must be stored in JDataURL
            string sInputContainerPath = CalculatorHelpers.GetContainerPathFromFullURIPath("resources", inputFilePath);

            //async wait so that results can be stored in output file location and parsed into string lines
            SetResponse(sBaseURL, sApiKey, sInputContainerPath, sOutputDataURL, rScript).Wait();
            StringBuilder sb = new StringBuilder();

            //if web service successully saved the results, the response will start with Success
            if (_response.StartsWith("Success"))
            {
                //return the output file contents in a string list of lines
                //must convert container path to full path
                string        sOutputFullDataURL = string.Concat("https://devtreks1.blob.core.windows.net/", sOutputDataURL);
                List <string> lines = new List <string>();
                //azure emulator can't process real Azure URL so this won't work
                //instead, double check that output url is actually saved
                lines              = CalculatorHelpers.ReadLines(_params.ExtensionDocToCalcURI, sOutputFullDataURL, out sError);
                this.ErrorMessage += sError;
                //this results in endless wait-try ReadLinesAsync(sOutputDataURL).ConfigureAwait(false)
                //lines = await CalculatorHelpers.ReadLinesAsync(sOutputDataURL);
                if (lines == null)
                {
                    this.ErrorMessage += string.Concat(" ", Errors.MakeStandardErrorMsg("DATAURL_BAD"));
                    return(bHasCalcs);
                }
                if (lines.Count == 0)
                {
                    this.ErrorMessage += string.Concat(" ", Errors.MakeStandardErrorMsg("DATAURL_BAD"));
                    return(bHasCalcs);
                }
                sb = new StringBuilder();
                if (_subalgorithm == Calculator1.MATH_SUBTYPES.subalgorithm2.ToString())
                {
                    sb.AppendLine("py results");
                }
                else
                {
                    sb.AppendLine("r results");
                }
                //dep var has to be in the R project 1st column
                string   sLine = string.Concat("first variable:  ", _colNames[0]);
                string[] line  = new List <string>().ToArray();
                for (int i = 0; i < lines.Count(); i++)
                {
                    line = lines[i].Split(Constants.CSV_DELIMITERS);
                    //lineout[1] = CalculatorHelpers.ConvertStringToDouble(line[0]).ToString("N4", CultureInfo.InvariantCulture);
                    sb.AppendLine(Shared.GetLine(line, false));
                }
                if (this.MathResult.ToLower().StartsWith("http"))
                {
                    sError = string.Empty;
                    bool bHasSaved = CalculatorHelpers.SaveTextInURI(
                        _params.ExtensionDocToCalcURI, sb.ToString(), this.MathResult, out sError);
                    if (!string.IsNullOrEmpty(sError))
                    {
                        this.MathResult += sError;
                    }
                }
                else
                {
                    this.MathResult = sb.ToString();
                }
                bHasCalcs = true;
                //last line of string should have the QTM vars
                if (line != null)
                {
                    int iPos = 0;
                    if (line[iPos] != null)
                    {
                        this.QTPredicted = CalculatorHelpers.ConvertStringToDouble(line[iPos]);
                    }
                    iPos = 1;
                    if (line[iPos] != null)
                    {
                        this.QTL = CalculatorHelpers.ConvertStringToDouble(line[iPos]);
                    }
                    iPos = 2;
                    if (line[iPos] != null)
                    {
                        this.QTU = CalculatorHelpers.ConvertStringToDouble(line[iPos]);
                    }
                }
            }
            else
            {
                this.ErrorMessage += string.Concat(_response, "The calculations could not be run using the web service.");
            }
            return(bHasCalcs);
        }
        //attname and attvalue generally passed in from a reader
        public virtual void SetHealthBenefit1Properties(string attName,
                                                        string attValue)
        {
            if (Demographics == null)
            {
                Demographics = new Demog1();
            }
            Demographics.SetDemog1Properties(attName, attValue);
            switch (attName)
            {
            case cOutputCost:
                this.OutputCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cBenefitAdjustment:
                this.BenefitAdjustment = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cAdjustedBenefit:
                this.AdjustedBenefit = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cOutputEffect1Name:
                this.OutputEffect1Name = attValue;
                break;

            case cOutputEffect1Unit:
                this.OutputEffect1Unit = attValue;
                break;

            case cOutputEffect1Amount:
                this.OutputEffect1Amount = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cOutputEffect1Price:
                this.OutputEffect1Price = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cOutputEffect1Cost:
                this.OutputEffect1Cost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cAverageBenefitRating:
                this.AverageBenefitRating = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cPhysicalHealthRating:
                this.PhysicalHealthRating = CalculatorHelpers.ConvertStringToInt(attValue);
                break;

            case cEmotionalHealthRating:
                this.EmotionalHealthRating = CalculatorHelpers.ConvertStringToInt(attValue);
                break;

            case cSocialHealthRating:
                this.SocialHealthRating = CalculatorHelpers.ConvertStringToInt(attValue);
                break;

            case cEconomicHealthRating:
                this.EconomicHealthRating = CalculatorHelpers.ConvertStringToInt(attValue);
                break;

            case cHealthCareDeliveryRating:
                this.HealthCareDeliveryRating = CalculatorHelpers.ConvertStringToInt(attValue);
                break;

            case cBeforeQOLRating:
                this.BeforeQOLRating = CalculatorHelpers.ConvertStringToInt(attValue);
                break;

            case cAfterQOLRating:
                this.AfterQOLRating = CalculatorHelpers.ConvertStringToInt(attValue);
                break;

            case cBeforeYears:
                this.BeforeYears = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cAfterYears:
                this.AfterYears = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cAfterYearsProb:
                this.AfterYearsProb = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTimeTradeoffYears:
                this.TimeTradeoffYears = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cEquityMultiplier:
                this.EquityMultiplier = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cBenefitAssessment:
                this.BenefitAssessment = attValue;
                break;

            case cQALY:
                this.QALY = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cICERQALY:
                this.ICERQALY = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTTOQALY:
                this.TTOQALY = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cWillDoSurvey:
                this.WillDoSurvey = CalculatorHelpers.ConvertStringToBool(attValue);
                break;

            default:
                break;
            }
        }
        public void SetTotalME2IndicatorStockProperty(ME2IndicatorStock ind,
                                                      string attName, string attValue)
        {
            switch (attName)
            {
            case cTME2Description:
                ind.TME2Description = attValue;
                break;

            case cTME2Name:
                ind.TME2Name = attValue;
                break;

            case cTME2Label:
                ind.TME2Label = attValue;
                break;

            case cTME2Type:
                ind.TME2Type = attValue;
                break;

            case cTME2RelLabel:
                ind.TME2RelLabel = attValue;
                break;

            case cTME2TAmount:
                ind.TME2TAmount = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTME2TUnit:
                ind.TME2TUnit = attValue;
                break;

            case cTME2TD1Amount:
                ind.TME2TD1Amount = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTME2TD1Unit:
                ind.TME2TD1Unit = attValue;
                break;

            case cTME2TD2Amount:
                ind.TME2TD2Amount = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTME2TD2Unit:
                ind.TME2TD2Unit = attValue;
                break;

            case cTME2MathResult:
                ind.TME2MathResult = attValue;
                break;

            case cTME2MathSubType:
                ind.TME2MathSubType = attValue;
                break;

            case cTME2TMAmount:
                ind.TME2TMAmount = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTME2TMUnit:
                ind.TME2TMUnit = attValue;
                break;

            case cTME2TLAmount:
                ind.TME2TLAmount = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTME2TLUnit:
                ind.TME2TLUnit = attValue;
                break;

            case cTME2TUAmount:
                ind.TME2TUAmount = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTME2TUUnit:
                ind.TME2TUUnit = attValue;
                break;

            case cTME2MathOperator:
                ind.TME2MathOperator = attValue;
                break;

            case cTME2MathExpression:
                ind.TME2MathExpression = attValue;
                break;

            case cTME2N:
                ind.TME2N = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTME2Date:
                ind.TME2Date = CalculatorHelpers.ConvertStringToDate(attValue);
                break;

            case cTME2MathType:
                ind.TME2MathType = attValue;
                break;

            case cTME21Amount:
                ind.TME21Amount = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTME21Unit:
                ind.TME21Unit = attValue;
                break;

            case cTME22Amount:
                ind.TME22Amount = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTME22Unit:
                ind.TME22Unit = attValue;
                break;

            case cTME25Amount:
                ind.TME25Amount = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTME25Unit:
                ind.TME25Unit = attValue;
                break;

            case cTME23Amount:
                ind.TME23Amount = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTME23Unit:
                ind.TME23Unit = attValue;
                break;

            case cTME24Amount:
                ind.TME24Amount = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case cTME24Unit:
                ind.TME24Unit = attValue;
                break;

            default:
                break;
            }
        }
Exemple #25
0
        private async Task <StringBuilder> Predict(List <List <string> > trainData,
                                                   List <List <string> > rowNames, List <List <string> > testData)
        {
            StringBuilder sb = null;

            try
            {
                //ml algo rule: iterations can also set rowcount and -1 for mlinstructs removed
                int iRowCount = (Shared.GetRowCount(_iterations, trainData.Count) - 1);
                //columns of data used and returned in DataResults
                _actualColNames = Shared.GetActualColNames(_colNames, _depColNames).ToArray();
                //ml instructions associated with actual colNames
                List <string> normTypes = Shared.GetNormTypes(trainData[0], _colNames, _depColNames);
                //instructions in both row names and datasets
                List <string> actualMLInstructs = Shared.GetAlgoInstructs(rowNames);
                actualMLInstructs.AddRange(normTypes);
                // error allowance
                double dbPlusorMinus
                    = CalculatorHelpers.ConvertStringToDouble(actualMLInstructs[0]);
                //converts rows to columns with normalized data
                List <List <double> > trainDB = Shared.GetNormalizedDData(trainData,
                                                                          this.IndicatorQT, _colNames, _depColNames, normTypes, "F2");
                List <List <double> > testDB = Shared.GetNormalizedDData(testData,
                                                                         this.IndicatorQT, _colNames, _depColNames, normTypes, "F2");
                //make a new list with same matrix, to be replaced with results
                int iColCount = testDB.Count;
                if (_subalgorithm == MATHML_SUBTYPES.subalgorithm_03.ToString().ToString())
                {
                    //subalgo02 needs qtm and percent probability of accuracy, qtm, low ci, high ci
                    iColCount = testDB.Count + 5;
                    //normtypes need full columns before insertion
                    normTypes = Shared.FixNormTypes(normTypes, iColCount);
                }
                //row count comes from original testdata to account for the instructions row
                DataResults    = CalculatorHelpers.GetList(testData.Count, iColCount);
                DataResults[0] = normTypes;
                //dep var output count
                int numOutput = 1;
                //less col[0]
                int numInput  = trainDB.Count - 1;
                int numHidden = 12;
                //can truncate the data to iRowCount
                double[][] trainInputs = Shared.MakeInputDData(trainDB, iRowCount, this.IndicatorQT,
                                                               numInput);
                //build a neural network
                NeuralNetwork2 nn2       = new NeuralNetwork2(numInput, numHidden, numOutput);
                int            maxEpochs = iRowCount;
                double         learnRate = 0.001;
                //train nn2
                double[] wts = nn2.Train(trainInputs, maxEpochs, learnRate, sb);
                //mean squared error
                double trainErr = nn2.Error(trainInputs);
                //final model accuracy
                double trainAcc = nn2.Accuracy(trainInputs, dbPlusorMinus);
                //add classified test data to DataResults
                bool bHasNewClassifs = await AddNewClassifications(nn2, testDB,
                                                                   trainAcc, trainErr, iRowCount, dbPlusorMinus, _ciLevel);
            }
            catch (Exception ex)
            {
                IndicatorQT.ErrorMessage = ex.Message;
            }
            return(sb);
        }
        public virtual void SetTotalMachinery1ConstantProperties(string attName,
                                                                 string attValue)
        {
            switch (attName)
            {
            case TPriceDiesel:
                this.TotalPriceDiesel = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TPriceGas:
                this.TotalPriceGas = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TPriceLP:
                this.TotalPriceLP = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TPriceElectric:
                this.TotalPriceElectric = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TPriceNG:
                this.TotalPriceNG = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TPriceOil:
                this.TotalPriceOil = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TPriceRegularLabor:
                this.TotalPriceRegularLabor = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TPriceMachineryLabor:
                this.TotalPriceMachineryLabor = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TPriceSupervisorLabor:
                this.TotalPriceSupervisorLabor = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TStartingHrs:
                this.TotalStartingHrs = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TPlannedUseHrs:
                this.TotalPlannedUseHrs = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TUsefulLifeHrs:
                this.TotalUsefulLifeHrs = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case THousingPercent:
                this.TotalHousingPercent = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TTaxPercent:
                this.TotalTaxPercent = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TInsurePercent:
                this.TotalInsurePercent = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TSpeed:
                this.TotalSpeed = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TWidth:
                this.TotalWidth = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case THorsepower:
                this.TotalHorsepower = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case THPPTOEquiv:
                this.TotalHPPTOEquiv = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TFieldEffTypical:
                this.TotalFieldEffTypical = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            default:
                break;
            }
        }
        public virtual void SetTotalMachinery1StockProperties(string attName,
                                                              string attValue)
        {
            switch (attName)
            {
            case TSalvageValue:
                this.TotalSalvageValue = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TMarketValue:
                this.TotalMarketValue = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TFuelAmount:
                this.TotalFuelAmount = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TFuelPrice:
                this.TotalFuelPrice = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TFuelCost:
                this.TotalFuelCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TLubeOilAmount:
                this.TotalLubeOilAmount = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TLubeOilPrice:
                this.TotalLubeOilPrice = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TLubeOilCost:
                this.TotalLubeOilCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TRepairCost:
                this.TotalRepairCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TLaborAmount:
                this.TotalLaborAmount = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TLaborPrice:
                this.TotalLaborPrice = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TLaborCost:
                this.TotalLaborCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TCapitalRecoveryCost:
                this.TotalCapitalRecoveryCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TTaxesHousingInsuranceCost:
                this.TotalTaxesHousingInsuranceCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            default:
                break;
            }
        }
Exemple #28
0
        public async Task <bool> RunSubAlgorithm3Async(string inputFile1Path, string inputFile2Path)
        {
            bool   bHasCalcs = false;
            string sBaseURL  =
                "https://ussouthcentral.services.azureml.net/workspaces/d454361ecdcb4ec4b03fa1aec5a7c0e2/services/8b1074b465ea4258a11ec48ce64ae257/jobs";
            string sPlatForm = CalculatorHelpers.GetPlatform(_params.ExtensionDocToCalcURI, inputFile1Path);

            if (sPlatForm != CalculatorHelpers.PLATFORM_TYPES.azure.ToString())
            {
                sBaseURL = "https://ussouthcentral.services.azureml.net/workspaces/d454361ecdcb4ec4b03fa1aec5a7c0e2/services/8b1074b465ea4258a11ec48ce64ae257/execute?api-version=2.0&details=true";
            }
            string sApiKey =
                "RO2Ev5dRSKqNJ4jz+zoT0qDntEsKbyizbgZKlhOR2vGztsjBD3S3C8nmIlZI9TbbmCcsw+unwhky1GgZ5qiHmg==";
            string sError = string.Empty;


            //web server expects to store in temp/randomid/name.csv
            //scoring results
            string sOutputData1URL = CalculatorHelpers.GetTempContainerPath("outputdata1.csv");
            //model results
            string sOutputData2URL = CalculatorHelpers.GetTempContainerPath("outputdata2.csv");
            //web service expects urls that start with container names
            string sInput1ContainerPath = CalculatorHelpers.GetContainerPathFromFullURIPath("resources", inputFile1Path);
            string sInput2ContainerPath = CalculatorHelpers.GetContainerPathFromFullURIPath("resources", inputFile2Path);

            //async wait so that results can be stored in output file location and parsed into string lines
            SetResponse2(sBaseURL, sApiKey, sInput1ContainerPath, sInput2ContainerPath, sOutputData1URL, sOutputData2URL).Wait();
            StringBuilder sb = new StringBuilder();

            //if web service successully saved the results, the response will start with Success
            if (_response.StartsWith("Success"))
            {
                //return the output file contents in a string list of lines
                //must convert container path to full path
                string        sOutput1FullDataURL = string.Concat("https://devtreks1.blob.core.windows.net/", sOutputData1URL);
                List <string> lines = new List <string>();
                //azure emulator can't process real Azure URL so this won't work
                //instead, double check that output url is actually saved
                lines              = CalculatorHelpers.ReadLines(_params.ExtensionDocToCalcURI, sOutput1FullDataURL, out sError);
                this.ErrorMessage += sError;
                //this results in endless wait
                //lines = await CalculatorHelpers.ReadLinesAsync(sOutputDataURL);
                if (lines == null)
                {
                    this.ErrorMessage += string.Concat(" ", Errors.MakeStandardErrorMsg("DATAURL_BAD"));
                    return(bHasCalcs);
                }
                if (lines.Count == 0)
                {
                    this.ErrorMessage += string.Concat(" ", Errors.MakeStandardErrorMsg("DATAURL_BAD"));
                    return(bHasCalcs);
                }
                sb = new StringBuilder();
                sb.AppendLine("aml results");
                //dep var has to be in the R project 1st column
                //string sLine = string.Concat("first variable:  ", _colNames[0]);
                string[] line = new List <string>().ToArray();
                int      iPos = 0;
                for (int i = 0; i < lines.Count(); i++)
                {
                    line = lines[i].Split(Constants.CSV_DELIMITERS);
                    //lineout[1] = CalculatorHelpers.ConvertStringToDouble(line[0]).ToString("N4", CultureInfo.InvariantCulture);
                    sb.AppendLine(Shared.GetLine(line, false));
                }
                if (this.MathResult.ToLower().StartsWith("http"))
                {
                    sError = string.Empty;
                    bool bHasSaved = CalculatorHelpers.SaveTextInURI(
                        _params.ExtensionDocToCalcURI, sb.ToString(), this.MathResult, out sError);
                    if (!string.IsNullOrEmpty(sError))
                    {
                        this.MathResult += sError;
                    }
                }
                else
                {
                    this.MathResult = sb.ToString();
                }
                bHasCalcs = true;
                //last line of string should have the QTM vars
                if (line != null)
                {
                    //last string is prediction
                    iPos = line.Count() - 1;
                    //int iPos = line.Count() - 3;
                    if (line[iPos] != null)
                    {
                        this.QTPredicted = CalculatorHelpers.ConvertStringToDouble(line[iPos]);
                    }
                }
                string sOutput2FullDataURL = string.Concat("https://devtreks1.blob.core.windows.net/", sOutputData2URL);
                lines = new List <string>();
                //azure emulator can't process real Azure URL so this won't work
                //instead, double check that output url is actually saved
                lines              = CalculatorHelpers.ReadLines(_params.ExtensionDocToCalcURI, sOutput2FullDataURL, out sError);
                this.ErrorMessage += sError;
                if (lines == null)
                {
                    this.ErrorMessage += string.Concat(" ", Errors.MakeStandardErrorMsg("DATAURL_BAD"));
                    return(bHasCalcs);
                }
                if (lines.Count == 0)
                {
                    this.ErrorMessage += string.Concat(" ", Errors.MakeStandardErrorMsg("DATAURL_BAD"));
                    return(bHasCalcs);
                }
                sb = new StringBuilder();
                //dep var has to be in the R project 1st column
                //string sLine = string.Concat("first variable:  ", _colNames[0]);
                line = new List <string>().ToArray();
                double dbCI = 0;
                for (int i = 0; i < lines.Count(); i++)
                {
                    line = lines[i].Split(Constants.CSV_DELIMITERS);
                    if (line != null)
                    {
                        iPos = 0;
                        //used to derive conf interval
                        dbCI = CalculatorHelpers.ConvertStringToDouble(line[iPos]);
                        sb.AppendLine(string.Format("{0} {1}", "Mean Absolute Error: ", dbCI.ToString()));
                        double dbScore = 0;
                        if (line.Count() >= 2)
                        {
                            iPos    = 1;
                            dbScore = CalculatorHelpers.ConvertStringToDouble(line[iPos]);
                            sb.AppendLine(string.Format("{0} {1}", "Root Mean Squared Error: ", dbScore.ToString()));
                        }
                        if (line.Count() >= 3)
                        {
                            iPos    = 2;
                            dbScore = CalculatorHelpers.ConvertStringToDouble(line[iPos]);
                            sb.AppendLine(string.Format("{0} {1}", "Relative Absolute Error: ", dbScore.ToString()));
                        }
                        if (line.Count() >= 4)
                        {
                            iPos    = 3;
                            dbScore = CalculatorHelpers.ConvertStringToDouble(line[iPos]);
                            sb.AppendLine(string.Format("{0} {1}", "Relative Squared Error: ", dbScore.ToString()));
                        }
                        if (line.Count() >= 5)
                        {
                            iPos    = 4;
                            dbScore = CalculatorHelpers.ConvertStringToDouble(line[iPos]);
                            sb.AppendLine(string.Format("{0} {1}", "Coefficient of Determination: ", dbScore.ToString()));
                        }
                        //sb.AppendLine(Shared.GetLine(line, false));
                    }
                }
                this.MathResult += sb.ToString();
                bHasCalcs        = true;
                //last line of string should have the QTM vars
                if (line != null)
                {
                    if (line[iPos] != null)
                    {
                        dbCI = CalculatorHelpers.ConvertStringToDouble(line[iPos]);
                    }
                    this.QTL = this.QTPredicted - dbCI;
                    this.QTU = this.QTPredicted + dbCI;
                }
            }
            else
            {
                this.ErrorMessage += "The calculations could not be run using the web service.";
            }
            return(bHasCalcs);
        }
Exemple #29
0
        public virtual void SetTotalIrrPower1StockProperties(string attName,
                                                             string attValue)
        {
            switch (attName)
            {
            case TEngineEfficiency:
                this.TotalEngineEfficiency = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TFuelConsumptionPerHour:
                this.TotalFuelConsumptionPerHour = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TWaterHP:
                this.TotalWaterHP = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TBrakeHP:
                this.TotalBrakeHP = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TFlowRate:
                this.TotalFlowRate = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TStaticHead:
                this.TotalStaticHead = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TPressureHead:
                this.TotalPressureHead = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TFrictionHead:
                this.TotalFrictionHead = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TOtherHead:
                this.TotalOtherHead = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TPumpEfficiency:
                this.TotalPumpEfficiency = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TGearDriveEfficiency:
                this.TotalGearDriveEfficiency = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TExtraPower1:
                this.TotalExtraPower1 = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TExtraPower2:
                this.TotalExtraPower2 = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TEnergyExtraCostPerNetAcOrHa:
                this.TotalEnergyExtraCostPerNetAcOrHa = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TEnergyExtraCost:
                this.TotalEnergyExtraCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TPumpCapacity:
                this.TotalPumpCapacity = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TEngineFlywheelPower:
                this.TotalEngineFlywheelPower = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TFuelAmountRequired:
                this.TotalFuelAmountRequired = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TPumpingPlantPerformance:
                this.TotalPumpingPlantPerformance = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TSeasonWaterNeed:
                this.TotalSeasonWaterNeed = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TSeasonWaterExtraCredit:
                this.TotalSeasonWaterExtraCredit = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TSeasonWaterExtraDebit:
                this.TotalSeasonWaterExtraDebit = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TWaterPrice:
                this.TotalWaterPrice = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TDistributionUniformity:
                this.TotalDistributionUniformity = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TSeasonWaterApplied:
                this.TotalSeasonWaterApplied = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TWaterCost:
                this.TotalWaterCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TPumpHoursPerUnitArea:
                this.TotalPumpHoursPerUnitArea = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TIrrigationTimes:
                this.TotalIrrigationTimes = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TIrrigationDurationPerSet:
                this.TotalIrrigationDurationPerSet = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TIrrigationDurationLaborHoursPerSet:
                this.TotalIrrigationDurationLaborHoursPerSet = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TIrrigationNetArea:
                this.TotalIrrigationNetArea = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TEquipmentLaborAmount:
                this.TotalEquipmentLaborAmount = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TEquipmentLaborCost:
                this.TotalEquipmentLaborCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TRepairCostsPerNetAcOrHa:
                this.TotalRepairCostsPerNetAcOrHa = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TRandMPercent:
                this.TotalRandMPercent = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            default:
                break;
            }
        }
Exemple #30
0
        //attname and attvalue generally passed in from a reader
        public virtual void SetTotalOutputHCStockProperties(string attName,
                                                            string attValue)
        {
            switch (attName)
            {
            case TOutputCost:
                this.TotalOutputCost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TBenefitAdjustment:
                this.TotalBenefitAdjustment = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TAdjustedBenefit:
                this.TotalAdjustedBenefit = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TOutputEffect1Amount:
                this.TotalOutputEffect1Amount = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TOutputEffect1Price:
                this.TotalOutputEffect1Price = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TOutputEffect1Cost:
                this.TotalOutputEffect1Cost = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TEmotionalHealthRating:
                this.TotalEmotionalHealthRating = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TSocialHealthRating:
                this.TotalSocialHealthRating = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TEconomicHealthRating:
                this.TotalEconomicHealthRating = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case THealthCareDeliveryRating:
                this.TotalHealthCareDeliveryRating = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TBeforeQOLRating:
                this.TotalBeforeQOLRating = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TAfterQOLRating:
                this.TotalAfterQOLRating = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TBeforeYears:
                this.TotalBeforeYears = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TAfterYears:
                this.TotalAfterYears = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TAfterYearsProb:
                this.TotalAfterYearsProb = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TTimeTradeoffYears:
                this.TotalTimeTradeoffYears = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TEquityMultiplier:
                this.TotalEquityMultiplier = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TAverageBenefitRating:
                this.TotalAverageBenefitRating = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TQALY:
                this.TotalQALY = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TICERQALY:
                this.TotalICERQALY = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            case TTTOQALY:
                this.TotalTTOQALY = CalculatorHelpers.ConvertStringToDouble(attValue);
                break;

            default:
                break;
            }
        }