Class Logarithm

All Implemented Interfaces:
PostfixMathCommandI, RealUnaryFunction, 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

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:
  • 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