private void SetBaseStatistics() { if (CostBenefitCalculator.NameIsAStatistic( this.CalcParams.AnalyzerParms.ObservationAttributeName)) { if ((!this.CalcParams.AnalyzerParms.NodeName.EndsWith(Input.INPUT_PRICE_TYPES.input.ToString())) && (this.AnalyzerType != ARSAnalyzerHelper.ANALYZER_TYPES.resources01 && (!this.AnalyzerType.ToString().StartsWith(ARSAnalyzerHelper.ANALYZER_TYPES.resources02.ToString())))) { SetBasicStatistics(); } else { //resource use analyses are in a separate stat analyzer } } else { if (this.CalcParams.AnalyzerParms.ObservationAttributeName.Equals( CostBenefitStatistic01.TRName) || this.CalcParams.AnalyzerParms.ObservationAttributeName.Equals( CostBenefitStatistic01.TRUnit)) { //the observation builder aggregates these two attributes //into delimited strings which need to be parsed SetBasicDescriptors(); } } }
public virtual void SetBenefitStatisticProperty(int filePosition, int nodePosition, string attName, string attValue, string nodeName) { if (attName.Contains(CostBenefitStatistic01.MEAN)) { this.CalcParams.AnalyzerParms.BenefitStatistics[filePosition][nodePosition] .SetMeanBenefitsProperties(attName, attValue); } else if (attName.Contains(CostBenefitStatistic01.SD)) { this.CalcParams.AnalyzerParms.BenefitStatistics[filePosition][nodePosition] .SetStdDevBenefitsProperties(attName, attValue); } else if (attName.Contains(CostBenefitStatistic01.VAR2)) { this.CalcParams.AnalyzerParms.BenefitStatistics[filePosition][nodePosition] .SetVarianceBenefitsProperties(attName, attValue); } else if (attName.Contains(CostBenefitStatistic01.MED)) { this.CalcParams.AnalyzerParms.BenefitStatistics[filePosition][nodePosition] .SetMedianBenefitsProperties(attName, attValue); } else if (attName.Contains(CostBenefitStatistic01.N)) { this.CalcParams.AnalyzerParms.BenefitStatistics[filePosition][nodePosition] .SetNBenefitsProperties(attName, attValue); } else { if (CostBenefitCalculator.NameIsAStatistic(attName)) { this.CalcParams.AnalyzerParms.BenefitStatistics[filePosition][nodePosition] .SetTotalBenefitsProperty(attName, attValue); } else { //late concession if (attName.Equals(CostBenefitStatistic01.TRName) || attName.Equals(CostBenefitStatistic01.TRUnit)) { this.CalcParams.AnalyzerParms.BenefitStatistics[filePosition][nodePosition] .SetTotalBenefitsProperty(attName, attValue); } //not needed with most collections when they are //initialized correctly //this.CalcParams.AnalyzerParms.BenefitStatistics[filePosition][nodePosition] // .SetCalculatorProperties(attName, attValue); } } }
public virtual void SetCostStatisticProperty(int filePosition, int nodePosition, string attName, string attValue, string nodeName) { if (attName.Contains(CostBenefitStatistic01.MEAN)) { this.CalcParams.AnalyzerParms.CostStatistics[filePosition][nodePosition] .SetMeanCostsProperties(attName, attValue); } else if (attName.Contains(CostBenefitStatistic01.SD)) { this.CalcParams.AnalyzerParms.CostStatistics[filePosition][nodePosition] .SetStdDevCostsProperties(attName, attValue); } else if (attName.Contains(CostBenefitStatistic01.VAR2)) { this.CalcParams.AnalyzerParms.CostStatistics[filePosition][nodePosition] .SetVarianceCostsProperties(attName, attValue); } else if (attName.Contains(CostBenefitStatistic01.MED)) { this.CalcParams.AnalyzerParms.CostStatistics[filePosition][nodePosition] .SetMedianCostsProperties(attName, attValue); } else if (attName.Contains(CostBenefitStatistic01.N)) { this.CalcParams.AnalyzerParms.CostStatistics[filePosition][nodePosition] .SetNCostsProperties(attName, attValue); } else { //set base statistic props if (CostBenefitCalculator.NameIsAStatistic(attName)) { this.CalcParams.AnalyzerParms.CostStatistics[filePosition][nodePosition] .SetTotalCostsProperty(attName, attValue); } else { //names written separately (unlike setbenstatprop) ////most collections were initialized with the base descriptors ////they need //this.CalcParams.AnalyzerParms.CostStatistics[filePosition][nodePosition] // .SetCalculatorProperties(attName, attValue); } } }
private bool NeedsStatistic(string observationValue) { bool bNeedsStatistic = false; if (!string.IsNullOrEmpty( this.CalcParams.AnalyzerParms.ObservationAttributeValue)) { //1. double check whether this needs a statistic if (CostBenefitCalculator.NameIsAStatistic( this.CalcParams.AnalyzerParms.ObservationAttributeName)) { //2. if a single observation value is a number //it can generate a statistic bool bIsNumber = CalculatorHelpers.ValidateIsNumber(observationValue); if (bIsNumber) { bNeedsStatistic = true; } } } return(bNeedsStatistic); }