Function: math-sqrt-raw

math-sqrt-raw is an autoloaded and byte-compiled function defined in calc-math.el.gz.

Signature

(math-sqrt-raw A &optional GUESS)

Source Code

;; Defined in /usr/src/emacs/lisp/calc/calc-math.el.gz
(defun math-sqrt-raw (a &optional guess)   ; [F F F]
  (if (not (Math-posp a))
      (math-sqrt a)
    (cond
     ((math-use-emacs-fn 'sqrt a))
     (t
      (if (null guess)
          (let ((ldiff (- (math-numdigs (nth 1 a)) 6)))
            (or (evenp (+ (nth 2 a) ldiff)) (setq ldiff (1+ ldiff)))
            (setq guess (math-make-float (cl-isqrt
                                          (math-scale-int (nth 1 a) (- ldiff)))
                                         (/ (+ (nth 2 a) ldiff) 2)))))
      (math-sqrt-float-iter a guess)))))