public class Logarithm extends UnaryFunction implements RealUnaryFunction
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).
| Modifier and Type | Field and Description |
|---|---|
protected boolean |
strict |
curNumberOfParameters, name, NaN, numberOfParameters| Constructor and Description |
|---|
Logarithm()
Standard constructor, returns complex results for negative arguments
|
Logarithm(boolean strict)
Constructor with control for behaviour for complex results
|
| Modifier and Type | Method and Description |
|---|---|
java.lang.Object |
eval(java.lang.Object arg) |
double |
evaluate(double val) |
java.lang.Object |
log(java.lang.Object param) |
runasArray, asBool, asDouble, asInt, asLong, asStrictInt, asString, checkNumberOfParameters, getName, getNumberOfParameters, setCurNumberOfParameters, setName, toString, toStringpublic Logarithm(boolean strict)
strict - if true negative real arguments return NaN, otherwise complex results are returnedpublic Logarithm()
public java.lang.Object eval(java.lang.Object arg)
throws EvaluationException
eval in class UnaryFunctionEvaluationExceptionpublic java.lang.Object log(java.lang.Object param)
throws EvaluationException
EvaluationExceptionpublic double evaluate(double val)
evaluate in interface RealUnaryFunctionCopyright © 2018 Singular Systems http://www.singularsys.com/jep