Class SquareRoot

All Implemented Interfaces:
PostfixMathCommandI, RealUnaryFunction, Serializable

public class SquareRoot extends UnaryFunction implements RealUnaryFunction
Square root function. Positive Number arguments returns double results. Negative Number arguments return Complex results by default or Double.NaN if the strict flag is set in constructor. Complex arguments return Complex results.
See Also:
  • Constructor Details

    • SquareRoot

      public SquareRoot()
      Standard constructor, Complex results for negative Number arguments.
    • SquareRoot

      public SquareRoot(boolean strict)
      Controls behaviour for negative real arguments.
      Parameters:
      strict - true then returns NaN for negative real arguments, false to return complex results for negative real arguments.
  • Method Details

    • eval

      public Object eval(Object arg) throws EvaluationException
      Description copied from class: UnaryFunction
      Evaluate the function
      Specified by:
      eval in class UnaryFunction
      Parameters:
      arg - the single argument passed in
      Returns:
      the result of the function
      Throws:
      EvaluationException - on error
    • sqrt

      public Object sqrt(Object x) throws EvaluationException
      Calculates the square root of the parameter. The parameter must either be of type Double or Complex.
      Parameters:
      x - value
      Returns:
      The square root of the parameter.
      Throws:
      EvaluationException - if the calculation cannot be performed
    • evaluate

      public double evaluate(double val)
      Description copied from interface: RealUnaryFunction
      Evaluate the function
      Specified by:
      evaluate in interface RealUnaryFunction
      Parameters:
      val - the argument
      Returns:
      the result of applying the function to the argument