Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
05/07/19 14:20:33 (5 years ago)
Author:
gkronber
Message:

#2915: Corrected calculation of cuberoot function in all interpreters and updated all formatters.
I tested a run with all interpreters and got the same results with all of them.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Formatters/SymbolicDataAnalysisExpressionExcelFormatter.cs

    r16868 r16905  
    144144        stringBuilder.Append($"POWER({FormatRecursively(node.GetSubtree(0))}, 3)");
    145145      } else if (symbol is CubeRoot) {
    146         stringBuilder.Append($"POWER({FormatRecursively(node.GetSubtree(0))}, 1/3)");
     146        var arg_expr = FormatRecursively(node.GetSubtree(0));
     147        stringBuilder.Append($"IF({arg_expr} < 0, -POWER(-{arg_expr}, 1/3), POWER({arg_expr}, 1/3))");
    147148      } else if (symbol is Division) {
    148149        if (node.SubtreeCount == 1) {
Note: See TracChangeset for help on using the changeset viewer.