org.apache.commons.math3.ml.neuralnet.sofm.util

## Class ExponentialDecayFunction

- java.lang.Object
- - org.apache.commons.math3.ml.neuralnet.sofm.util.ExponentialDecayFunction

-     public class ExponentialDecayFunction
      extends Object

  Exponential decay function: `a e-x / b`, where `x` is the (integer) independent variable.
  Class is immutable.
  Since:
    3.3
  Version:
    $Id: ExponentialDecayFunction.java 1566092 2014-02-08 18:48:29Z tn $

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ExponentialDecayFunction(double initValue, double valueAtNumCall, long numCall)` Creates an instance.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `double` | `value(long numCall)` Computes `a e-numCall / b`.

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

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

- - ### Constructor Detail

    - #### ExponentialDecayFunction

          public ExponentialDecayFunction(double initValue,
                                  double valueAtNumCall,
                                  long numCall)

      Creates an instance. It will be such that
      - `a = initValue`
      - `b = -numCall / ln(valueAtNumCall / initValue)`
      Parameters:
        `initValue` - Initial value, i.e. `value(0)`.
        `valueAtNumCall` - Value of the function at `numCall`.
        `numCall` - Argument for which the function returns `valueAtNumCall`.
      Throws:
        `NotStrictlyPositiveException` - if `initValue <= 0`.
        `NotStrictlyPositiveException` - if `valueAtNumCall <= 0`.
        `NumberIsTooLargeException` - if `valueAtNumCall >= initValue`.
        `NotStrictlyPositiveException` - if `numCall <= 0`.

  - ### Method Detail

    - #### value

          public double value(long numCall)

      Computes `a e-numCall / b`.
      Parameters:
        `numCall` - Current step of the training task.
      Returns:
        the value of the function at `numCall`.

Copyright © 2003–2014 The Apache Software Foundation. All rights reserved.