From: Jay Belanger Date: Fri, 3 Aug 2007 05:21:43 +0000 (+0000) Subject: (math-get-value,math-get-sdev,math-contains-sdev): New functions. X-Git-Tag: emacs-pretest-23.0.90~11615 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=6a599ca51fa11aacb38da5bef9c6ffad5cb1ea36;p=emacs.git (math-get-value,math-get-sdev,math-contains-sdev): New functions. --- diff --git a/lisp/calc/calc-ext.el b/lisp/calc/calc-ext.el index b517a54c6f0..5a334778aa5 100644 --- a/lisp/calc/calc-ext.el +++ b/lisp/calc/calc-ext.el @@ -2213,6 +2213,25 @@ calc-kill calc-kill-region calc-yank)))) a (math-reject-arg a 'constp))) +;;; Some functions for working with error forms. +(defun math-get-value (x) + "Get the mean value of the error form X. +If X is not an error form, return X." + (if (eq (car-safe x) 'sdev) + (nth 1 x) + x)) + +(defun math-get-sdev (x &optional one) + "Get the standard deviation of the error form X. +If X is not an error form, return 1." + (if (eq (car-safe x) 'sdev) + (nth 2 x) + (if one 1 0))) + +(defun math-contains-sdev-p (ls) + "Non-nil if the list LS contains an error form." + (let ((ls (if (eq (car-safe ls) 'vec) (cdr ls) ls))) + (memq t (mapcar (lambda (x) (eq (car-safe x) 'sdev)) ls)))) ;;; Coerce integer A to be a small integer. [S I] (defun math-fixnum (a)