weka.core

## Class SpecialFunctions

- java.lang.Object
- - weka.core.SpecialFunctions

- All Implemented Interfaces:
    RevisionHandler

      public final class SpecialFunctions
      extends java.lang.Object
      implements RevisionHandler

  Class implementing some mathematical functions.
  Version:
    $Revision: 8034 $
  Author:
    Eibe Frank (eibe@cs.waikato.ac.nz)

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `SpecialFunctions()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.String` | `getRevision()` Returns the revision string.
    `static double` | `lnFactorial(double x)` Returns natural logarithm of factorial using gamma function.
    `static double` | `log2Binomial(double a, double b)` Returns base 2 logarithm of binomial coefficient using gamma function.
    `static double` | `log2Multinomial(double a, double[] bs)` Returns base 2 logarithm of multinomial using gamma function.
    `static void` | `main(java.lang.String[] ops)` Main method for testing this class.

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### SpecialFunctions

          public SpecialFunctions()

  - ### Method Detail

    - #### lnFactorial

          public static double lnFactorial(double x)

      Returns natural logarithm of factorial using gamma function.
      Parameters:
        `x` - the value
      Returns:
        natural logarithm of factorial

    - #### log2Binomial

          public static double log2Binomial(double a,
                            double b)

      Returns base 2 logarithm of binomial coefficient using gamma function.
      Parameters:
        `a` - upper part of binomial coefficient
        `b` - lower part
      Returns:
        the base 2 logarithm of the binominal coefficient a over b

    - #### log2Multinomial

          public static double log2Multinomial(double a,
                               double[] bs)

      Returns base 2 logarithm of multinomial using gamma function.
      Parameters:
        `a` - upper part of multinomial coefficient
        `bs` - lower part
      Returns:
        multinomial coefficient of a over the bs

    - #### getRevision

          public java.lang.String getRevision()

      Returns the revision string.
      Specified by:
        `getRevision` in interface `RevisionHandler`
      Returns:
        the revision

    - #### main

          public static void main(java.lang.String[] ops)

      Main method for testing this class.