Changeset 16899 for branches/2988_ModelsOfModels2/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Formatters/SymbolicDataAnalysisExpressionSmalltalkFormatter.cs
- Timestamp:
- 05/06/19 14:20:06 (5 years ago)
- Location:
- branches/2988_ModelsOfModels2/HeuristicLab.Problems.DataAnalysis.Symbolic
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2988_ModelsOfModels2/HeuristicLab.Problems.DataAnalysis.Symbolic
- Property svn:mergeinfo changed
/trunk/HeuristicLab.Problems.DataAnalysis.Symbolic merged: 16737,16740,16758,16762,16764,16768,16802,16822,16839,16858,16868
- Property svn:mergeinfo changed
-
branches/2988_ModelsOfModels2/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Formatters/SymbolicDataAnalysisExpressionSmalltalkFormatter.cs
r16722 r16899 20 20 #endregion 21 21 22 using System; 22 23 using System.Globalization; 23 24 using System.Text; … … 69 70 } 70 71 stringBuilder.Append(") ifTrue:[1] ifFalse:[-1]"); 72 } else if (symbol is Absolute) { 73 stringBuilder.Append($"({FormatRecursively(node.GetSubtree(0))}) abs"); 74 } else if (symbol is AnalyticQuotient) { 75 stringBuilder.Append($"({FormatRecursively(node.GetSubtree(0))}) / (1 + ({FormatPower(node.GetSubtree(1), "2")})) sqrt"); 71 76 } else if (symbol is Average) { 72 77 stringBuilder.Append("(1/"); … … 84 89 stringBuilder.Append(FormatRecursively(node.GetSubtree(0))); 85 90 stringBuilder.Append(" cos"); 91 } else if (symbol is Cube) { 92 stringBuilder.Append(FormatPower(node.GetSubtree(0), "3")); 93 } else if (symbol is CubeRoot) { 94 stringBuilder.Append(FormatPower(node.GetSubtree(0), "(1/3)")); 86 95 } else if (symbol is Division) { 87 96 if (node.SubtreeCount == 1) { … … 146 155 stringBuilder.Append(FormatRecursively(node.GetSubtree(0))); 147 156 stringBuilder.Append(" sin"); 157 } else if (symbol is Square) { 158 stringBuilder.Append(FormatPower(node.GetSubtree(0), "2")); 159 } else if (symbol is SquareRoot) { 160 stringBuilder.Append(FormatPower(node.GetSubtree(0), "(1/2)")); 148 161 } else if (symbol is Subtraction) { 149 162 if (node.SubtreeCount == 1) { … … 184 197 } 185 198 199 private string FormatPower(ISymbolicExpressionTreeNode node, string exponent) { 200 return $"(({FormatRecursively(node)}) log * {exponent}) exp "; 201 } 202 186 203 public override IDeepCloneable Clone(Cloner cloner) { 187 204 return new SymbolicDataAnalysisExpressionSmalltalkFormatter(this, cloner);
Note: See TracChangeset
for help on using the changeset viewer.