Package com.singularsys.jep.functions
Class Logarithm
java.lang.Object
com.singularsys.jep.functions.PostfixMathCommand
com.singularsys.jep.functions.UnaryFunction
com.singularsys.jep.functions.Logarithm
- All Implemented Interfaces:
PostfixMathCommandI,RealUnaryFunction,Serializable
Log base 10.
By default, negative arguments will return a complex result
log(|x|) + pi iif the strict flag is set in the constructor
version 3.4: Speedup by using static final fields.
version 3.4: Change to use Java 5 Math.log10() method.
version 3.5: For negative arguments log10(-x) =log10(x) + i pi log10(e)
as 10^(log10(x) + i log10(e)) = x * e^(i pi) = -x.
For complex arguments, (x+i y) = r e^(i th),
log10(r e^(i th)) = log10(r) + i th log10(e) as
10^(log10(r) + i th log10(e)) = r * e^(i th).
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class com.singularsys.jep.functions.UnaryFunction
UnaryFunction.FunctionWithException<T> -
Field Summary
FieldsFields inherited from class com.singularsys.jep.functions.PostfixMathCommand
curNumberOfParameters, description, name, NaN, numberOfParameters -
Constructor Summary
Constructors -
Method Summary
Methods inherited from class com.singularsys.jep.functions.UnaryFunction
instanceOf, instanceOf, instanceOf, instanceOf, runMethods inherited from class com.singularsys.jep.functions.PostfixMathCommand
asArray, asBool, asDouble, asInt, asLong, asStrictInt, asString, asType, checkNumberOfParameters, getDescription, getDescription, getDescriptionWithType, getName, getNumberOfParameters, setCurNumberOfParameters, setDescription, setName, toString, toString
-
Field Details
-
strict
protected final boolean strict
-
-
Constructor Details
-
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 Details
-
eval
Description copied from class:UnaryFunctionEvaluate the function- Specified by:
evalin classUnaryFunction- Parameters:
arg- the single argument passed in- Returns:
- the result of the function
- Throws:
EvaluationException- on error
-
log
- Throws:
EvaluationException
-
evaluate
public double evaluate(double val) Description copied from interface:RealUnaryFunctionEvaluate the function- Specified by:
evaluatein interfaceRealUnaryFunction- Parameters:
val- the argument- Returns:
- the result of applying the function to the argument
-