;ELC ;;; Compiled ;;; in Emacs version 27.1 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. ;;; This file does not contain utf-8 non-ASCII characters, ;;; and so can be loaded in Emacs versions earlier than 23. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\300\302!\207" [require calc-ext calc-macs] 2) (defalias 'calc-vector-count #[(arg) "\300\301`\"\207" [calc-do #[nil "\301\302\303#\207" [arg calc-vector-op "coun" calcFunc-vcount] 4]] 3 nil "P"]) (defalias 'calc-vector-sum #[(arg) "\300\301`\"\207" [calc-do #[nil "\301 \203 \302\303\304#\207\302\305\306#\207" [arg calc-is-hyperbolic calc-vector-op "vprd" calcFunc-vprod "vsum" calcFunc-vsum] 4]] 3 nil "P"]) (defalias 'calc-vector-product #[(arg) "\301 \210\302!\207" [arg calc-hyperbolic-func calc-vector-sum] 2 nil "P"]) (defalias 'calc-vector-max #[(arg) "\300\301`\"\207" [calc-do #[nil "\301 \203 \302\303\304#\207\302\305\306#\207" [arg calc-is-inverse calc-vector-op "vmin" calcFunc-vmin "vmax" calcFunc-vmax] 4]] 3 nil "P"]) (defalias 'calc-vector-min #[(arg) "\301 \210\302!\207" [arg calc-invert-func calc-vector-max] 2 nil "P"]) (defalias 'calc-vector-mean #[(arg) "\300\301`\"\207" [calc-do #[nil "\301 \203\302 \203\303\304\305#\207\303\306\307#\207\302 \203!\303\310\311#\207\303\312\313#\207" [arg calc-is-hyperbolic calc-is-inverse calc-vector-op "harm" calcFunc-vhmean "medn" calcFunc-vmedian "meae" calcFunc-vmeane "mean" calcFunc-vmean] 4]] 3 nil "P"]) (defalias 'calc-vector-rms #[(arg) "\300\301`\"\207" [calc-do #[nil "\301\302\303#\207" [arg calc-vector-op "rms" calcFunc-rms] 4]] 3 nil "P"]) (defalias 'calc-vector-mean-error #[(arg) "\301 \210\302!\207" [arg calc-invert-func calc-vector-mean] 2 nil "P"]) (defalias 'calc-vector-median #[(arg) "\301 \210\302!\207" [arg calc-hyperbolic-func calc-vector-mean] 2 nil "P"]) (defalias 'calc-vector-harmonic-mean #[(arg) "\301 \210\302 \210\303!\207" [arg calc-invert-func calc-hyperbolic-func calc-vector-mean] 2 nil "P"]) (defalias 'calc-vector-geometric-mean #[(arg) "\300\301`\"\207" [calc-do #[nil "\301 \203 \302\303\304#\207\305\303\306#\207" [arg calc-is-hyperbolic calc-binary-op "geom" calcFunc-agmean calc-vector-op calcFunc-vgmean] 4]] 3 nil "P"]) (defalias 'calc-vector-sdev #[(arg) "\300\301`\"\207" [calc-do #[nil "\301 \203\302 \203\303\304\305#\207\303\306\307#\207\302 \203!\303\310\311#\207\303\312\313#\207" [arg calc-is-hyperbolic calc-is-inverse calc-vector-op "pvar" calcFunc-vpvar "var" calcFunc-vvar "psdv" calcFunc-vpsdev "sdev" calcFunc-vsdev] 4]] 3 nil "P"]) (defalias 'calc-vector-pop-sdev #[(arg) "\301 \210\302!\207" [arg calc-invert-func calc-vector-sdev] 2 nil "P"]) (defalias 'calc-vector-variance #[(arg) "\301 \210\302!\207" [arg calc-hyperbolic-func calc-vector-sdev] 2 nil "P"]) (defalias 'calc-vector-pop-variance #[(arg) "\301 \210\302 \210\303!\207" [arg calc-invert-func calc-hyperbolic-func calc-vector-sdev] 2 nil "P"]) (defalias 'calc-vector-covariance #[(arg) "\300\301`\"\207" [calc-do #[nil "\302=\203\n\302\202 \303\304 \203\305 \306\307\310 !B#\2027\311 \203.\305 \312\313\310 !B#\2027\305 \314\315\310 !B#)\207" [arg n 1 2 calc-is-hyperbolic calc-enter-result "corr" calcFunc-vcorr calc-top-list-n calc-is-inverse "pcov" calcFunc-vpcov "cov" calcFunc-vcov] 6]] 3 nil "P"]) (defalias 'calc-vector-pop-covariance #[(arg) "\301 \210\302!\207" [arg calc-invert-func calc-vector-covariance] 2 nil "P"]) (defalias 'calc-vector-correlation #[(arg) "\301 \210\302!\207" [arg calc-hyperbolic-func calc-vector-covariance] 2 nil "P"]) (defalias 'calc-vector-op #[(name func arg) "\304\n!\211\305W\203\306\307!\210\310\n \311\n!B#\207" [name calc-aborted-prefix arg func prefix-numeric-value 0 error "Negative arguments not allowed" calc-enter-result calc-top-list-n] 7]) (defalias 'calcFunc-vsum #[(&rest vecs) "\301\302\303\304$\207" [vecs math-reduce-many-vecs calcFunc-add calcFunc-vsum 0] 5]) (defalias 'calcFunc-vprod #[(&rest vecs) "\301\302\303\304$\207" [vecs math-reduce-many-vecs calcFunc-mul calcFunc-vprod 1] 5]) (defalias 'calcFunc-vmax #[(&rest vecs) "@\242\301=\203\n\302\207@\242\303=\203\304\305@!8\207\306\307\310\311$\207" [vecs sdev (var inf var-inf) intv 3 math-fix-int-intv math-reduce-many-vecs calcFunc-max calcFunc-vmax (neg (var inf var-inf))] 5]) (defalias 'calcFunc-vmin #[(&rest vecs) "@\242\301=\203\n\302\207@\242\303=\203\304\305@!8\207\306\307\310\311$\207" [vecs sdev (neg (var inf var-inf)) intv 2 math-fix-int-intv math-reduce-many-vecs calcFunc-min calcFunc-vmin (var inf var-inf)] 5]) (defalias 'math-reduce-many-vecs #[(func whole-func vecs ident) "\306\211\211\211\f\307\\ \203\211 @\211\242\310=\203*\311\307 8!\242\300=\203*\307 8J \211\242\300=\262\203V\312 \205; C\313 !\"\211\203P\314\315!\300B\"\202R\202\202 \211:?\206a\211@\316>\262\204l\317 !\203} \203x \"\202y \202\202\n C\244 A\211\204) \203\245\320 !\n\203\241 \nB\"\202\262 \202\262\n\203\260\nB\202\262,\207" [vec val symb-part const-part calc-internal-prec vecs nil 2 var calc-var-value append math-flatten-vector calcFunc-reducer math-calcFunc-to-var (frac float cplx polar hms date sdev intv mod) math-infinitep math-normalize func ident whole-func] 5]) (defalias 'calcFunc-vcount #[(&rest vecs) "\302 \203] @\211\242\303=\262\203\304 @!\\\202U @\211:?\206&\211@\305>\262\2030T\202U @\242\306=\203P\307\310 @8!\242\303=\203P\304\310 @8J!\\\202U\311 @\312\" A\211\204)\207" [count vecs 0 vec math-count-elements (frac float cplx polar hms date sdev intv mod) var calc-var-value 2 math-reject-arg numvecp] 5]) (defalias 'math-count-elements #[(vec) "\302 A\211\203# @\211\242\301=\262\203\303 @!\\\202T\202)\207" [count vec 0 math-count-elements] 3]) (defalias 'math-flatten-many-vecs #[(vecs) "\301C\211\203_ \n@\211\242\301=\262\203\303\n@!\202V\n@\211:?\206(\211@\304>\262\2033\n@C\202V\n@\242\305=\203Q\306\307\n@8!\242\301=\203Q\303\307\n@8J!\202V\310\n@\311\"\244\nA\211\204 *\207" [vecs vec p math-flatten-vector (frac float cplx polar hms date sdev intv mod) var calc-var-value 2 math-reject-arg numvecp] 5]) (defalias 'calcFunc-vflat #[(&rest vecs) "\301!\207" [vecs math-flatten-many-vecs] 2]) (defalias 'math-split-sdev-vec #[(vec zero-ok) "\300C\300C\306 A\211\203 @:\203\n @@\307=\203\n \204)\306D\202~A\211\203u@\211:\203R @\307=\203R\n\204) A@\fB\310 8 B\202) \203c A@\fB\311 B\202)\n\204n\300C\306\312 \fB\202)\f\237 \205} \237D,\207" [vec p exact wts means zero-ok nil sdev 2 0 t] 4]) (defalias 'calcFunc-vmean #[(&rest vecs) "\306\307!\310\"\211@ A@\nGS\211\311U\203\312\310\313\"\202}\f\314U\203@\nA@\242\315=\203@\316\nA@!\317\320 8\321 8\")\202}\322\320\\ \203t\f\314V\203t\323\324 \211#\325\326\323\327\314#\"\330\325\331\323\332\n#\"\"*\202{\330\325\333\n\"\f\")!,\207" [vecs split means wts len x math-split-sdev-vec math-flatten-many-vecs nil 0 math-reject-arg "*Must be at least 1 argument" 1 intv math-fix-int-intv calcFunc-vmean 2 3 math-normalize calcFunc-map (var mul var-mul) calcFunc-reduce (var add var-add) (var div var-div) math-div (var add var-add) (var div var-div) (var add var-add) calc-internal-prec sqrwts suminvsqrwts] 9]) #@46 Return the root-mean-square of the vector A. (defalias 'calcFunc-rms #[(a) "\301\302\303\304\"!!\207" [a math-sqrt calcFunc-vmean calcFunc-map (var abssqr var-abssqr)] 5 (#$ . 7460)]) (defalias 'math-fix-int-intv #[(x) "\301!\203\207\302\303A@\304>\203\3058\202\306\3058\307\"A@\310>\203,\3038\2022\311\3038\307\"F\207" [x math-floatp intv 3 (2 3) 2 math-add 1 (1 3) math-sub] 6]) (defalias 'calcFunc-vmeane #[(&rest vecs) "\306\307!\310\"\211@ A@\nGS\211\311U\203\312\310\313\"\202\314 \315\\ \203T\316\317 \211#!\320\321\316\322\323!#\"\"\324\325\320\326\316\327\n!#\"\"\"\330\325\323\"\"D\"*\202}\325\320\331\n\"\f\"#\324#\330\325\332\333\316\334\316\335\316\336\n\337#!#\"\315#\"\340\f\211S\"\"D\"))!,\207" [vecs split means wts len calc-internal-prec math-split-sdev-vec math-flatten-many-vecs nil 0 math-reject-arg "*Must be at least 1 argument" math-normalize 2 calcFunc-map (var mul var-mul) calcFunc-reduce (var add var-add) (var div var-div) 1 math-make-sdev math-div (var add var-add) (var div var-div) calcFunc-sqrt (var add var-add) calcFunc-reducer (var add var-add) (var pow var-pow) (var abs var-abs) (var add var-add) math-neg math-mul sqrwts suminvsqrwts mean] 17]) (defalias 'calcFunc-vmedian #[(&rest vecs) "\305\306!A!\211 G\211\307\245 \310U\203\311\312\313\"\202\202 \314U\2032 @\242\315>\2032\316 @!\202\202\n\203c\n@\242\317=\203E\n\211@A@\240\210\n@\211:?\206Q\211@\320>\262\204\\\311\n@\321\"\210\nA\211\2046\322 \323\" \307\246\310U\203\324\325\fS 8\f 8\"\307\"\202\202\f 8,\207" [vecs flat p len hlen copy-sequence math-flatten-many-vecs 2 0 math-reject-arg nil "*Must be at least 1 argument" 1 (sdev intv) calcFunc-vmean sdev (frac float hms) anglep sort math-lessp math-div math-add] 6]) (defalias 'calcFunc-vgmean #[(&rest vecs) "\305!\211GS\211\306U\203\307\310\311\"\2024\312 \313\\\314\315 \"\n\313U\203+\316\f!\2022\317\f\320\321\nE\"*!*\207" [vecs flat len calc-internal-prec x math-flatten-many-vecs 0 math-reject-arg nil "*Must be at least 1 argument" math-normalize 2 calcFunc-reduce (var mul math-mul) math-sqrt math-pow frac 1] 7]) (defalias 'calcFunc-agmean #[(a b) " \305\"\306U\266\202\203\207\307!\203\207\307 !\203 \207\n\203&\310 \207\211:?\2061\211@\311>\262\204;\312\313\"\207 \211:?\206F\211@\311>\262\204P\312 \313\"\207\314 \315\\\316\317!!\316\317 !!\320\321 \"\204~\322\323 \"\324\"\325\322 \"!\f\202c*!\207" [a b calc-symbolic-mode calc-internal-prec mean math-compare 0 math-zerop math-inexact-result (frac float) math-reject-arg realp math-normalize 2 math-float math-abs nil math-nearly-equal-float math-mul-float math-add-float (float 5 -1) math-sqrt-float] 5]) (defalias 'calcFunc-vhmean #[(&rest vecs) "\304!\211GS\211\305U\203\306\307\310\"\202&\311 \312\\\313\n\314\315\316\317 \"\"\")!*\207" [vecs flat len calc-internal-prec math-flatten-many-vecs 0 math-reject-arg nil "*Must be at least 1 argument" math-normalize 2 math-div calcFunc-reduce (var add math-add) calcFunc-map (var inv var-inv)] 9]) (defalias 'calcFunc-vvar #[(&rest vecs) "G\301U\203$@\242\302>\203$@\242\303=\203\304@\305\"\207\306\307@8!\207\310\305\211\311$\207" [vecs 1 (sdev intv) intv math-intv-variance nil math-sqr 2 math-covariance 0] 5]) (defalias 'calcFunc-vsdev #[(&rest vecs) "G\301U\2039@\242\302>\2039@\242\303=\2034\304@!\203-\305\306\307@8\310@8\"\311 \"\207\312\313@!!\207\310@8\207\312\314\315\211\316$!\207" [vecs 1 (sdev intv) intv math-floatp math-div math-sub 3 2 math-sqrt-12 math-sqrt calcFunc-vvar math-covariance nil 0] 6]) (defalias 'calcFunc-vpvar #[(&rest vecs) "G\301U\203$@\242\302>\203$@\242\303=\203\304@\305\"\207\306\307@8!\207\310\311\305\312$\207" [vecs 1 (sdev intv) intv math-intv-variance t math-sqr 2 math-covariance nil 0] 5]) (defalias 'calcFunc-vpsdev #[(&rest vecs) "G\301U\2039@\242\302>\2039@\242\303=\2034\304@!\203-\305\306\307@8\310@8\"\311 \"\207\312\313@!!\207\310@8\207\312\314\315\316\317$!\207" [vecs 1 (sdev intv) intv math-floatp math-div math-sub 3 2 math-sqrt-12 math-sqrt calcFunc-vpvar math-covariance nil t 0] 6]) (defalias 'math-intv-variance #[(x pop) "\304!\204 \305\306\"\210\307!\203\310\311\312\3138\3148\"!\315\"\207\316!\312\3138\3148\"\317 \314\"\310\320 !\203C\321\322\323\324\n!\n$\202N\321\325\326\324\n!\327\n\330\"$ \203Y\327 \330\"\202Z \"+\207" [x len hlen pop math-constp math-reject-arg constp math-floatp math-div math-sqr math-sub 3 2 12 math-fix-int-intv math-quotient math-evenp calcFunc-sum (^ (var X var-X) 2) (var X var-X) math-neg (^ (- (var X var-X) (/ 1 2)) 2) (var X var-X) math-add 1] 8]) (defalias 'calcFunc-vcov #[(vec1 &optional vec2) "\302C C\303\304$\207" [vec1 vec2 math-covariance nil 1] 5]) (defalias 'calcFunc-vpcov #[(vec1 &optional vec2) "\302C C\303\304$\207" [vec1 vec2 math-covariance t 1] 5]) (defalias 'calcFunc-vcorr #[(vec1 &optional vec2) "\302C C\303\304$\207" [vec1 vec2 math-covariance nil 2] 5]) (defalias 'math-covariance #[(vec1 vec2 pop mode) "@\204L \306U\204L\n@\242\307=\203(\310\311\n@8!\242\312=\203(\311\n@8J\202+\n@\313\n!\2044\314 \210\nA@G\315U\204@\314 \210\316\n\311\"C\316\n\317\"C\320 \311\\\321\322\n!\323\"\211@\fA@4\323\21156\323\21178\3239 GS\211:;\203~\317\202\311W\203\221\324\323;\203\216\325\202\217\326\"\2104\204\2337\203\310\3274\203\252\330\3314\211#\202\253\3067\203\271\330\3327\211#\202\272\306\"8\333\334\330\335\3178#\"9 \306U\204\354\321\322!\323\"\2115@6\311\f87:6GSU\204\354\314 \210\330\336 8\203\337\333\340\330\341 8#\"\3429!\"\202\337\343\344 \":[\"#< \306U\203<\202D\330\34568\2039\337\333\346\330\34768#\"\3429!\"\202C\337\343\3506\":[\"#=\330\351<=#>8\203]\330\352>8#>\337\343\353>\" \311U\203\242\330\354<\211#\330\355=\211#?@8\203\220\330\356@8#@\330\357?8#?\360\361\343\362@\"\343\363?\"\"!*\202\3148\203\277;\203\2619\202\314\337\3619:S\":\"\202\314;\203\311:\202\314:S\". !\207" [vec2 mode vec1 calc-internal-prec split1 means1 0 var calc-var-value 2 vec math-matrixp math-dimension-error 3 math-mat-col 1 math-normalize math-split-sdev-vec math-flatten-many-vecs nil math-reject-arg "*Must be at least 1 argument" "*Must be at least 2 arguments" math-add calcFunc-map (var mul var-mul) (var mul var-mul) calcFunc-reduce (var add var-add) (var div var-div) (var add var-add) math-div (var add var-add) (var div var-div) math-neg calcFunc-reducer (var add var-add) (var add var-add) (var add var-add) (var div var-div) (var add var-add) (var mul var-mul) (var div var-div) (var add var-add) (var mul var-mul) (var mul var-mul) (var div var-div) (var div var-div) math-sqrt math-mul (var add var-add) (var add var-add) wts1 split2 means2 wts2 sqrwts suminvsqrwts len pop diff1 diff2 covar var2 var1] 12]) (provide 'calc-stat)