com.singularsys.jep.functions
Class Logarithm

java.lang.Object
  extended by com.singularsys.jep.functions.PostfixMathCommand
      extended by com.singularsys.jep.functions.UnaryFunction
          extended by com.singularsys.jep.functions.Logarithm
All Implemented Interfaces:
PostfixMathCommandI, RealUnaryFunction, java.io.Serializable

public class Logarithm
extends UnaryFunction
implements RealUnaryFunction

Log base 10. By default negative arguments will return a complex result

log(|x|) + pi i
if the strict flag is set in the constructor

Speedup by using static final fields. Change to use Java 5 Math.log10() method.

See Also:
Serialized Form

Field Summary
protected  boolean strict
           
 
Fields inherited from class com.singularsys.jep.functions.PostfixMathCommand
curNumberOfParameters, name, NaN, numberOfParameters
 
Constructor Summary
Logarithm()
          Standard constructor, returns complex results for negative arguments
Logarithm(boolean strict)
          Constructor with control for behaviour for complex results
 
Method Summary
 java.lang.Object eval(java.lang.Object arg)
           
 double evaluate(double val)
           
 java.lang.Object log(java.lang.Object param)
           
 
Methods inherited from class com.singularsys.jep.functions.UnaryFunction
run
 
Methods inherited from class com.singularsys.jep.functions.PostfixMathCommand
asArray, asBool, asDouble, asInt, asLong, asStrictInt, asString, checkNumberOfParameters, checkStack, getName, getNumberOfParameters, setCurNumberOfParameters, setName, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

strict

protected final boolean strict
Constructor Detail

Logarithm

public Logarithm(boolean strict)
Constructor with control for behaviour for complex results

Parameters:
strict - if true negative real arguments return NaN, otherwise complex results are returned

Logarithm

public Logarithm()
Standard constructor, returns complex results for negative arguments

Method Detail

eval

public java.lang.Object eval(java.lang.Object arg)
                      throws EvaluationException
Specified by:
eval in class UnaryFunction
Throws:
EvaluationException

log

public java.lang.Object log(java.lang.Object param)
                     throws EvaluationException
Throws:
EvaluationException

evaluate

public double evaluate(double val)
Specified by:
evaluate in interface RealUnaryFunction


Copyright © 2010 Singular Systems http://www.singularsys.com/jep