Changeset 2370 for trunk/sources/HeuristicLab.Modeling/3.2/AnalyzerModel.cs
- Timestamp:
- 09/18/09 22:20:34 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Modeling/3.2/AnalyzerModel.cs
r2369 r2370 25 25 using HeuristicLab.Core; 26 26 using HeuristicLab.DataAnalysis; 27 using HeuristicLab.Data; 27 28 28 29 namespace HeuristicLab.Modeling { … … 63 64 } 64 65 65 private Dictionary< string, double> results = new Dictionary<string, double>();66 public IEnumerable<KeyValuePair< string, double>> Results {66 private Dictionary<ModelingResult, double> results = new Dictionary<ModelingResult, double>(); 67 public IEnumerable<KeyValuePair<ModelingResult, double>> Results { 67 68 get { return results; } 68 69 } 69 70 70 public void SetResult(string name, double value) {71 results.Add(name, value);71 public void ExtractResult(IScope scope, ModelingResult result) { 72 SetResult(result, scope.GetVariableValue<DoubleData>(result.ToString(), false).Data); 72 73 } 73 74 74 public double GetResult(string name) { 75 return results[name]; 75 76 public void SetResult(ModelingResult result, double value) { 77 results.Add(result, value); 78 } 79 80 public double GetResult(ModelingResult result) { 81 return results[result]; 76 82 } 77 83 … … 89 95 } 90 96 91 public double GetVariableQualityImpact(string variableName) { 92 if (variableQualityImpacts.ContainsKey(variableName)) return variableQualityImpacts[variableName]; 93 else throw new ArgumentException("Impact of variable " + variableName + " is not available."); 97 private Dictionary<string, Dictionary<ModelingResult, double>> variableResults = new Dictionary<string, Dictionary<ModelingResult, double>>(); 98 public double GetVariableResult(ModelingResult result, string variableName) { 99 if (variableResults.ContainsKey(variableName)) { 100 if (variableResults[variableName].ContainsKey(result)) { 101 return variableResults[variableName][result]; 102 } else throw new ArgumentException("No value for modeling result: " + result + "."); 103 } else throw new ArgumentException("No variable result for variable " + variableName + "."); 94 104 } 95 105 96 public double GetVariableEvaluationImpact(string variableName) { 97 if (variableEvaluationImpacts.ContainsKey(variableName)) return variableEvaluationImpacts[variableName]; 98 else throw new ArgumentException("Impact of variable " + variableName + " is not available."); 106 public void SetVariableResult(ModelingResult result, string variableName, double value) { 107 if (!variableResults.ContainsKey(variableName)) { 108 variableResults.Add(variableName, new Dictionary<ModelingResult, double>()); 109 } 110 variableResults[variableName][result] = value; 111 } 112 113 public IEnumerable<KeyValuePair<ModelingResult, double>> GetVariableResults(string variableName) { 114 return variableResults[variableName]; 99 115 } 100 116 … … 103 119 #endregion 104 120 105 private Dictionary<string, double> variableQualityImpacts = new Dictionary<string, double>();106 public void SetVariableQualityImpact(string variableName, double impact) {107 variableQualityImpacts[variableName] = impact;108 }109 110 public void SetVariableQualityImpact(int variableIndex, double impact) {111 variableQualityImpacts[dataset.GetVariableName(variableIndex)] = impact;112 }113 114 private Dictionary<string, double> variableEvaluationImpacts = new Dictionary<string, double>();115 public void SetVariableEvaluationImpact(string variableName, double impact) {116 variableEvaluationImpacts[variableName] = impact;117 }118 119 public void SetVariableEvaluationImpact(int variableIndex, double impact) {120 variableEvaluationImpacts[dataset.GetVariableName(variableIndex)] = impact;121 }122 121 } 123 122 }
Note: See TracChangeset
for help on using the changeset viewer.