Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
04/03/12 08:20:22 (13 years ago)
Author:
gkronber
Message:

#1810 implemented a number of additional special functions from alglib

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Grammars/FullFunctionalExpressionGrammar.cs

    r7695 r7696  
    6161      var sqrt = new SquareRoot();
    6262      sqrt.InitialFrequency = 0.0;
     63      var airyA = new AiryA();
     64      var airyB = new AiryB();
     65      var bessel = new Bessel();
     66      var cosineIntegral = new CosineIntegral();
     67      var dawson = new Dawson();
     68      var erf = new Erf();
     69      var expIntegralEi = new ExponentialIntegralEi();
     70      var fresnelCosineIntegral = new FresnelCosineIntegral();
     71      var fresnelSineIntegral = new FresnelSineIntegral();
     72      var gamma = new Gamma();
     73      var hypCosineIntegral = new HyperbolicCosineIntegral();
     74      var hypSineIntegral = new HyperbolicSineIntegral();
     75      var norm = new Norm();
     76      var psi = new Psi();
     77      var sineIntegral = new SineIntegral();
     78
    6379      var exp = new Exponential();
    6480      var @if = new IfThenElse();
     
    86102      laggedVariable.InitialFrequency = 0.0;
    87103
    88       var allSymbols = new List<Symbol>() { add, sub, mul, div, mean, sin, cos, tan, log, square, pow, sqrt, root, exp, @if, gt, lt, and, or, not, timeLag, integral, derivative, constant, variableSymbol, laggedVariable, variableCondition };
    89       var unaryFunctionSymbols = new List<Symbol>() { square, sqrt, sin, cos, tan, log, exp, not, timeLag, integral, derivative };
     104      var allSymbols = new List<Symbol>() { add, sub, mul, div, mean, sin, cos, tan, log, square, pow, sqrt, root, exp,
     105        airyA, airyB, bessel, cosineIntegral, dawson, erf, expIntegralEi, fresnelCosineIntegral, fresnelSineIntegral, gamma, hypCosineIntegral, hypSineIntegral, norm, psi, sineIntegral,
     106        @if, gt, lt, and, or, not, timeLag, integral, derivative, constant, variableSymbol, laggedVariable, variableCondition };
     107      var unaryFunctionSymbols = new List<Symbol>() { square, sqrt, sin, cos, tan, log, exp, not, timeLag, integral, derivative,
     108        airyA, airyB, bessel, cosineIntegral, dawson, erf, expIntegralEi, fresnelCosineIntegral, fresnelSineIntegral, gamma, hypCosineIntegral, hypSineIntegral, norm, psi, sineIntegral
     109      };
    90110
    91111      var binaryFunctionSymbols = new List<Symbol>() { pow, root, gt, lt, variableCondition };
    92       var functionSymbols = new List<Symbol>() { add, sub, mul, div, mean, and, or };
     112      var ternarySymbols = new List<Symbol>() { add, sub, mul, div, mean, and, or };
    93113      var terminalSymbols = new List<Symbol>() { variableSymbol, constant, laggedVariable };
    94114
     
    96116        AddSymbol(symb);
    97117
    98       foreach (var funSymb in functionSymbols) {
     118      foreach (var funSymb in ternarySymbols) {
    99119        SetSubtreeCount(funSymb, 1, 3);
    100120      }
Note: See TracChangeset for help on using the changeset viewer.