;ELC   
;;; Compiled
;;; in Emacs version 29.4
;;; with all optimizations.



(byte-code "\300\301!\210\300\302!\207" [require calc-ext calc-macs] 2)
(defvar calc-gnuplot-tempfile "calc")
(defvar calc-gnuplot-keep-outfile nil)
(defvar calc-gnuplot-version nil)
(defvar calc-gnuplot-display (getenv "DISPLAY"))
(defvar calc-graph-default-precision 5)
(defvar calc-gnuplot-buffer nil)
(defvar calc-gnuplot-input nil)
(defvar calc-gnuplot-last-error-pos 1)
(defvar calc-graph-last-device nil)
(defvar calc-graph-last-output nil)
(defvar calc-graph-file-cache nil)
(defvar calc-graph-var-cache nil)
(defvar calc-graph-data-cache nil)
(defvar calc-graph-data-cache-limit 10)
(defvar calc-graph-no-auto-view nil)
(defvar calc-graph-no-wait nil)
(defalias 'calc-graph-w32-p #[0 "\301=\207" [system-type windows-nt] 2])
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put calc-graph-w32-p speed -1 put byte-optimizer byte-compile-inline-expand] 5)#@13 

(fn MANY)
(defalias 'calc-graph-fast #[257 "\301\302\301!\210\303!\210\304\305!)\207" [calc-graph-no-auto-view t calc-graph-delete calc-graph-add calc-graph-plot nil] 3 (#$ . 960) "P"])#@13 

(fn MANY)
(defalias 'calc-graph-fast-3d #[257 "\301\302\301!\210\303!\210\304\305!)\207" [calc-graph-no-auto-view t calc-graph-delete calc-graph-add-3d calc-graph-plot nil] 3 (#$ . 1155) "P"])#@12 

(fn ALL)
(defalias 'calc-graph-delete #[257 "\300\301\302\"!\207" [calc-do make-closure #[0 "\303 \210r	q\210\304\305\300\"\203\" \306\307!\203 \310`d|\210\202\" `dS|\210)\311 \207" [V0 calc-gnuplot-input calc-graph-var-cache calc-graph-init calc-graph-find-plot t looking-at "s?plot" nil calc-graph-view-commands] 3]] 5 (#$ . 1357) "P"])#@29 

(fn &optional BEFORE ALL)
(defalias 'calc-graph-find-plot #[512 "eb\210\300\301\302\303#\2059 `db\210\204! \304\305\302\303#\203! `W\203. \211b\210\2036 \306 \210\2026 \2046 \300\307!\210\303\262\207" [re-search-forward "^s?plot[ 	]+" nil t search-backward "," beginning-of-line ",[ 	]+"] 7 (#$ . 1706)])#@13 

(fn MANY)
(defalias 'calc-graph-add #[257 "\211C\300\301\302\"!\207" [calc-do make-closure #[0 "\301 \210\300\242\204 \302\303\304\305!!\303\304\306!!\"\210\202\275 \300\242:\204% \300\242\307=\203P \303\304\305!!\304\306!\211\242\310=\2048 \311\312!\210\211A\211\262\203K \302\303@!\"\210\2028 \266\202\275 \300\313\300\242!\240\307V\203\200 \303\304\300\242T!!\300\242\307V\203| \302\303\304\300\242!!\"\210\300\211\242S\240\210\202b \210\202\275 \314\300\211\242[\240\210\300\242\307V\203\274 \304\300\242!\262\211\242\310=\203\242 \211G\315U\204\246 \311\316!\210\302\303A@!\303\3058!\"\210\300\211\242S\240\210\202\207 \210\317 \207" [V0 calc-graph-init calc-graph-add-curve calc-graph-lookup calc-top-n 2 1 0 vec error "Y argument must be a vector" prefix-numeric-value nil 3 "Argument must be an [x,y] vector" calc-graph-view-commands] 6]] 6 (#$ . 2023) "P"])#@13 

(fn MANY)
(defalias 'calc-graph-add-3d #[257 "\211C\300\301\302\"!\207" [calc-do make-closure #[0 "\301 \210\300\242\204 \302\303\304\305!!\303\304\306!!\303\304\307!!#\210\202\327 \300\242:\204* \300\242\310=\203[ \303\304\305!!\303\304\306!!\304\307!\211\242\311=\204B \312\313!\210\211A\211\262\203V \302\303@!#\210\202B \266\202\327 \300\314\300\242!\240\310V\203\225 \303\304\300\242\306\\!!\303\304\300\242T!!\300\242\310V\203\220 \302\303\304\300\242!!#\210\300\211\242S\240\210\202u \266\202\327 \315\300\211\242[\240\210\300\242\310V\203\326 \304\300\242!\262\211\242\311=\203\267 \211G\316U\204\273 \312\317!\210\302\303A@!\303\3068!\303\3058!#\210\300\211\242S\240\210\202\234 \210\320 \207" [V0 calc-graph-init calc-graph-add-curve calc-graph-lookup calc-top-n 3 2 1 0 vec error "Z argument must be a vector" prefix-numeric-value nil 4 "Argument must be an [x,y,z] vector" calc-graph-view-commands] 8]] 6 (#$ . 2907) "P"])#@36 

(fn XDATA YDATA &optional ZDATA)
(defalias 'calc-graph-add-curve #[770 "\301 \302\303!\302\304!rq\210eb\210\305\203 \306\202 \307\310\311#\203# \312\313!\210\305\314\310\311#\2034 \310\210\315c\210\202P db\210h\316=\204@ \317c\210\203H \320\202I \321\322\261\210\323u\210\324\325A@!\326\325A@!\261\210\203n \326\325A@!\261\210\327\330\325A@!\331\332\261\210\242\333=\205\206 T8\262\211\242\333=\205\223 T8)\262\334\211\250\206\256 \211:\205\256 \211@\335=\205\256 \3368\337Y\262\203\271 \340!\206\272 \337\211\250\206\321 \211:\205\321 \211@\335=\205\321 \3368\337Y\262\203\334 \340!\206\355 \302\3368!\242\333=\203\354 \337\202\355 \323\341\342\336\n8\311\"!#\207" [calc-gnuplot-input calc-graph-count-curves calc-var-value var-PointStyles var-LineStyles re-search-forward "^plot[ 	]" "^splot[ 	]" nil t error "Can't mix 2d and 3d curves on one graph" "^s?plot[ 	]" ", " 10 "\n" "splot" "plot" " \n" -1 "{" symbol-name ":" "} " "title \"" "\" " "with dots" vec calc-graph-set-styles float 2 0 math-trunc math-contains-sdev-p eval] 13 (#$ . 3863)])#@14 

(fn THING)
(defalias 'calc-graph-lookup #[257 "\211\242\301=\203 \302\3038!\203 \207\304\"\211\204< \305\306GT!P\307\301\310!\310\311P!E\262B\262B\3038L\266\211A\207" [calc-graph-var-cache var calc-var-value 2 assoc "PlotData" int-to-string nil intern "var-"] 9 (#$ . 4955)])#@12 

(fn ARG)
(defalias 'calc-graph-juggle #[257 "\301 \210rq\210\211\302W\203$ \303 \211\302V\203# \302W\203# \\\262\202 \210\211S\211\262\302Y\2054 \304 \210\202$ )\207" [calc-gnuplot-input calc-graph-init 0 calc-graph-count-curves calc-graph-do-juggle] 4 (#$ . 5256) "p"])
(defalias 'calc-graph-count-curves #[0 "rq\210\301\302\303\304#\203% \305eb\210\306\307\303\304#\203 \211T\262\202 \211\262\202& \310)\207" [calc-gnuplot-input re-search-forward "^s?plot[ 	]" nil t 1 search-forward "," 0] 5])
(defalias 'calc-graph-do-juggle #[0 "\300\301\302\211\"\205, `\262\301\302\300\"\210\211`=\206, `\303\\dS{`dS|\210\304\\b\210\211\305\261\262\207" [nil calc-graph-find-plot t 2 5 ", "] 4])#@13 

(fn FLAG)
(defalias 'calc-graph-print #[257 "\300\301\"\207" [calc-graph-plot t] 4 (#$ . 5965) "P"])#@32 

(fn FLAG &optional PRINTING)
(defalias 'calc-graph-plot #[513 "\300\301\302#`\"\207" [calc-do make-closure #[0 "p\306\307!\310\311\301\205 \312\301!\311V\301\205 \312\301!\311W\310\211\211\211\211\211\211\211\211\n@\313\314\315\"\210\212\316 \210q\210\317 \210Aq\210eb\210\320\321\310\322#\323 B\306\324!q\210\317 \210\325c\210\211\326Y\203k \327\330\331\332\333\334\335\261\210\211\336Y\203\202 \337\340\203{ \341\202| \342\343\344\345\261\210`\262\346\261\266eb\210\203\240 \203\235 \347\350!\210\202\240 \322\262\np\322CA\300\203\265 D\262E\262\202\330 \351\352!\262\351\353!\262\204\307 F\262\203\324 \354!@\262\202\330 G\262\341\232\204\344 \355\232\203!\300\203\354 \356\202H\357\230\203\367 \360\202I\361=\203\362\202J\363=\204\364\365!\203\366\202B\336Y\203\367\202\356\262K\232\204:K\370\371\"\204:\370\372!\210\367\262\367\232\203K\373\374\375 S\376 S#\262\377\232\203f\373\374\201\201 \375 \336Z_\201\201 \376 \336Z_#\262;\203\222\201\202 \232\204\202\201\203 \232\203\232\322\211\262	\203\232\201\204 \201\205 !\262\f\262\202\232\201\206 \322\"\262L\232\204\274L\370\201\207 \201\210 \232\203\264\341\202\272\201\211 !\"\210\351\201\212 !\211\203\317\201\213 \n!\202\333\203\330M\202\332N\351\201\214 !\262\203\360\201\213 !\262\202\364O\262\201\215 \352!\210\201\215 \353!\210\201\215 \201\212 !\210\201\215 \201\214 !*\210\211b\210\201\216 \201\217 \203$\201\220 \202'\201\221 \201\222 \n\\]!\201\223 \261\210\320\201\224 \310\322#\203|\311\224\311\225|\210\201\225 \201\226 !\203Y\201\227 \201\230 !\210\2024h\201\231 >\203i\201\205 u\210\202Yh\201\232 =\2034\201\227 \201\205 !\210\2024rq\210PQRST\257\262	\204\264U@A\232\203\264UGVV\203\273U\211AA\241\210\202\241\310BCU)\201\233 \322\211\"\210\320\203\316\201\234 \202\321\201\235 \310\322#\203n@T@\201\230 \224\201\230 \225{W\201\236 \201\237 WP!\201\240 \201\241 !!X\205\326\224\326\225{Y\205\201\236 \201\237 YP!\205\201\241 !Z\336\224\336\225{[\201\236 \201\237 [P!\201\241 !\\\310\311\224\311\225|\210\201\204 @!\262rq\210\310X\\\310\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211?\205m\201\242 !\311\310\211\336]R\201\243 >?\205\200R\322\310\311\310]^_`Rabcdefghijklmnopqrstuvwx\212\203\313\201\244  \210\202\320\201\245  \210q\210db\210\201\223 W\261\210\203\353\201\246 Y\261\210\201\246 [\346\261\210`\262\310\211\201\247 \310?\205xwtgFyz{|\211@T}8A@\232\204'\310e@T}8A\240\210e\204;\201\250  \210,\266e\204^_\204R\347\201\251 W[#\210\201\252 d\310\201\253 %\210.\210\201\211 !c.\266\202\303\f\203w\310\241\210@\311U\203\226\370\201\254 !\210\201\255 \201\256 !\210\201\257 \201\260 !\202(@V]V\201\204 \311!\201\252 ed\310\201\253 %\210\370\201\261 \201\211 !\"\266\201\210 \232\204\322~\204\322\201\210 L\370\201\207 !\210\300\203\333\202\372\200\206\372\201\262 \201\263 \"\203\362\201\264 \202\372\205\372\201\265 \211\205&\211;\203\370\201\266 \373\206E\"\"\202&\2119\203 \211!\202&\201\206 \322\"\262.\207" [V0 V1 calc-graph-resolution calc-graph-is-splot calc-graph-surprise-splot calc-graph-refine get-buffer-create "*Gnuplot Temp-2*" nil 0 prefix-numeric-value add-hook kill-emacs-hook calc-graph-kill-hook calc-graph-init erase-buffer re-search-forward "^splot[ 	]" t buffer-string "*Gnuplot Temp*" "# (Note: This is a temporary copy---do not edit!)\n" 2 "set noarrow\nset nolabel\n" "set autoscale xy\nset nologscale xy\n" "set xlabel\nset ylabel\nset title\n" "set noclip points\nset clip one\nset clip two\n" "set format \"%g\"\nset tics\nset xtics\nset ytics\n" "set style data linespoints\n" "set nogrid\nset nokey\nset nopolar\n" 3 "set surface\nset nocontour\n" "set " "" "no" "parametric\n" "set notimestamp\nset border\nset ztics\nset zeroaxis\n" "set view 60,30,1,1\nset offsets 0,0,0,0\n" "\n\n" error "This option works only for 2d plots" calc-graph-find-command "terminal" "output" read-from-string "default" "postscript" "pgnuplot" "windows" windows-nt "qt" x getenv "DISPLAY" "x11" "dumb" calc-gnuplot-command "set terminal" "set terminal dumb" format "dumb %d %d" frame-width frame-height "big" calc-graph-curve-num calc-gnuplot-input calc-gnuplot-version calc-graph-no-auto-view calc-gnuplot-print-device calc-gnuplot-print-output calc-gnuplot-default-device calc-gnuplot-default-output calc-gnuplot-name system-type window-system calc-graph-last-device calc-graph-last-output calc-graph-default-resolution-3d calc-graph-default-resolution calc-graph-default-precision calc-angle-mode calc-complex-mode calc-simplify-mode calc-infinite-mode calc-word-size calc-graph-data-cache calc-graph-data-cache-limit calc-graph-xname calc-graph-xvalue calc-graph-y3name calc-graph-y3value calc-graph-yname calc-graph-yvalue math-working-step-2 math-working-step calc-graph-non-blank calc-graph-blank calc-internal-prec calc-prefer-frac calc-symbolic-mode calc-graph-stepcount calc-graph-keep-file calc-graph-numsteps3 calc-graph-numsteps calc-graph-yvector calc-graph-ycacheptr calc-graph-ycache calc-graph-yval calc-graph-yvec calc-graph-zval var-DUMMY2 calc-graph-y3step var-DUMMY calc-graph-xstep calc-graph-xval calc-graph-xvec calc-graph-xhigh calc-graph-xlow calc-graph-zp calc-graph-yp calc-graph-xp calc-twos-complement-mode calc-number-radix calc-leading-zeros calc-group-digits calc-graph-file-cache calc-gnuplot-keep-outfile calc-gnuplot-print-command calc-gnuplot-plot-command 4 "auto" "tty" calc-temp-file-name -1 eval "set output" "STDOUT" prin1-to-string "samples" string-to-number "precision" calc-graph-set-command "set samples " int-to-string 20 200 5 "\n" "{\\*[^}]+}[^,\n]*" looking-at "," delete-char 1 (32 9) 44 calc-graph-find-plot "{\\([^{}:\n]+\\):\\([^{}:\n]+\\):\\([^{}:\n]+\\)}" "{\\([^{}:\n]+\\)\\(:\\)\\([^{}:\n]+\\)}" intern "var-" math-evaluate-expr calc-var-value file-exists-p (none num) calc-graph-compute-3d calc-graph-compute-2d ":" 10 calc-graph-format-data "No valid data points for %s:%s" write-region quiet "clear" calc-clear-command-flag clear-message message "No data to plot!" "load" string-match "^dumb" calc-graph-show-dumb calc-graph-show-tty "!"] 50]] 7 (#$ . 6074) "P"])
(defalias 'calc-graph-compute-2d #[0 "\242\306=\211\203l GS\211\307U\203 \310\311!\207\242\306=\211\203/ GS\nU\206k \310\312 #\207\242\313=\203P \314!\203P \315\316\3178\3208\"\nS\"!\3208\211\207\211:?\206[ \211@\321>\262\203e \322\211!\207\310\323 #\207\211:?\206w \211@\321>\262\204\253 \324\"\325!\326!\210\"\204\222 \310\327 \"\210\"A\203\240 \310\330 \"#\210\331\332\"@!\333#)\334#\"$\335$#\"\210#$\206\305 C\211$C\244\210\242\306=\211\204\340 %\203\340 $AA\203\340 \336 \207\337 \207" [calc-graph-yvalue calc-graph-yvec calc-graph-numsteps calc-graph-xvalue calc-graph-xvec calc-graph-xname vec 0 error "Can't plot an empty vector" "%s and %s have different lengths" intv math-constp math-div math-sub 3 2 (frac float) 1 "%s is not a suitable basis for %s" nil math-evaluate-expr calc-default-formula-arglist "%s does not contain any unassigned variables" "%s contains more than one variable: %s" math-expr-subst math-build-var-name (var DUMMY var-DUMMY) assoc delq calc-graph-refine-2d calc-graph-recompute-2d calc-graph-yname calc-graph-xstep math-arglist calc-graph-data-cache calc-graph-ycache calc-graph-refine] 5])
(defalias 'calc-graph-refine-2d #[0 "\306	A\307\310!\211\203- \311\312\"\203- \313\224\313\225\314\315\224\315\225O!\314O!\266\202M \f\203M \nA\203M \nA@@\f\316\"\317U\266\202\203M \nA\211\2022 \nGS\nA\203\226 \203j \n@@\316\"\317U\266\202\203\226 \320\321\n@@\nA@@\"\313\"T\322!\nB\nAB\241\210\nAA\211\202S 	\323\211\207" [calc-graph-keep-file calc-graph-ycache calc-graph-ycacheptr calc-graph-xval calc-graph-xlow calc-graph-xhigh nil calc-graph-find-command "xrange" string-match "\\`\\[\\([0-9.eE+-]*\\):\\([0-9.eE+-]*\\)\\]\\'" 2 math-read-number 1 math-compare -1 math-div math-add math-evaluate-expr 1000000 math-working-step-2 var-DUMMY math-working-step calc-graph-yvalue calc-graph-yval calc-graph-yp calc-graph-numsteps] 7])
(defalias 'calc-graph-recompute-2d #[0 "\n\203 GS\306\202G \242\307=\203? \310!\203? \306\3118\3128\313\314\"\fS\"\3118\202G \315\316#\210\f\fS\211\317Y\203\376 T\n\203\206  A\211 @!	=\204\234 	@:\203\234 	@@!\320\"\321U\266\202\204\234 \202\234 \f\317U\203\223 !\202\234 !\322\"	A\203\271 	A@@!\320\"\321U\266\202\203\271 	A\211\202\235 	A\203\317 	A@@!\320\"\317U\266\202\204\343 \306\"!#	!\323$!B	AB\241\210	A\n\203\363 	@AB\202J \204J 	\202J \n\203 \324%\325\237B GS\211\207\326\211\207" [calc-graph-ycache calc-graph-ycacheptr calc-graph-xvec calc-graph-xvalue calc-graph-numsteps calc-graph-yvector nil intv math-constp 2 3 math-div math-sub error "%s is not a suitable basis for %s" 0 math-compare -1 math-add math-evaluate-expr t vec 1000000 calc-graph-resolution calc-graph-yp calc-graph-xlow calc-graph-xhigh calc-graph-xstep calc-graph-xname calc-graph-yname math-working-step-2 math-working-step calc-graph-xp calc-graph-xval calc-graph-keep-file var-DUMMY calc-graph-yvalue calc-graph-yvec] 6])
(defalias 'calc-graph-compute-3d #[0 "\242\306=\211\203j\307!\203GSA@GS\f\242\306=\2030 \fGS\nU\204s \310\311\"\210\202s \f\242\312=\203S \313\f!\203S \314\n\315\f8\316\317\320\f8\315\f8\"\nS\"#\202s \f\211:?\206^ \211@\321>\262\203l \314\n\f\322#\202s \310\323&#\210'\242\306=\203\215 'GSU\204\332 \310\311(\"\210\202\332 '\242\312=\203\266 \313'!\203\266 \314\315'8\316\317\320'8\315'8\"S\"#'\202\332 '\211:?\206\302 \211@\321>\262\203\322 \314'\322#'\202\332 \310\323(&#\210\324\211)*\324+\325,\fAA\211\203)\326T\f@\"\244)*\327\330'A!B\244*+\331\330@A!B\244+\202\346 \nT_S\211\207GS\211\327U\203,\310\332!\210\f\242\306=\203;\fGS\nU\204B\310\323&#\210'\242\306=\203S'GS\nU\204[\310\323(&#\210\f)'*+\325\211,\207\211:?\206u\211@\321>\262\204\261\324-\333!\334!\210\335-\336\"\211-A\204\227\310\337&\"\210-AA\203\246\310\340&-#\210\341\342\343-\"\344#)\f\242\306=\211,\203\302\fGS\202\357\f\242\312=\203\350\313\f!\203\350.\314\n\315\f8\316\317\320\f8\315\f8\"\nS\"#\202\357\310\323&#\210'\242\306=\203\377'GS\2023'\242\312=\203+\313'!\203+.\314\315'8\316\317\320'8\315'8\"S\"#'\2023\310\323(&#\210\324\211)*\324+\325,\327/\fA\211\203\224)\326T\f@\"\244)*\327\330'A!B\244*\345+B+'0\f@1\3272/T/0A\2110\203B2T20@3\333!+B+\202v+\237+\nT_S\211\207" [calc-graph-yvalue calc-graph-yvec calc-graph-numsteps calc-graph-numsteps3 calc-graph-xvalue calc-graph-xname vec math-matrixp error "%s has wrong length" intv math-constp calcFunc-index 2 math-div math-sub 3 (frac float) 1 "%s is not a suitable basis for %s" nil t make-list 0 copy-sequence (skip) "Can't plot an empty vector" math-evaluate-expr calc-default-formula-arglist sort string-lessp "%s does not contain enough unassigned variables" "%s contains too many variables: %s" math-multi-subst mapcar math-build-var-name ((var DUMMY var-DUMMY) (var DUMMY2 var-DUMMY2)) (skip) calc-graph-yname calc-graph-y3value calc-graph-y3name calc-graph-xp calc-graph-yp calc-graph-zp calc-graph-xvec math-arglist calc-graph-resolution math-working-step calc-graph-y3step var-DUMMY math-working-step-2 var-DUMMY2] 9])
(defalias 'calc-graph-format-data #[0 "\306!\203 \307\310\311A\"B\307\310\312A\"B\210\nT\211X\205\f\203= A\211@&A\211@'	A\211@(\202x )\203X *&\313*+\"*A\211@'\202x @@&@A'A\211\203v ,\203x &,\232\203x \314-\203\242 (\242\315=\203\375 (G\316U\203\375 (A@&\317(8'\320(8(\202\375 '\242\315=\203\341 'G\316U\203\341 .\204\314 r\321\322!q\210\212db\210\323\324!\210\325c\210\326.*'A@&\320'8(\317'8'\202\375 '\242\327=\203\375 'G\320U\203\375 'A@&\317'8'&\211:?\206	\211@\330>\262\203\326'\211:?\206\211@\330>\262\203\326(\2035(\211:?\2060\211@\330>\262\203\326\331/\3260\332&!\203K\333&!c\210\202i&@\334=\203Y\335&!&\333&A@!\336\337\317&8!\261\210\340c\210\332'!\203|\333'!c\210\202\232'@\334=\203\212\335'!'\333'A@!\336\337\317'8!\261\210(\203\320\340c\210\332(!\203\262\333(!c\210\202\320(@\334=\203\300\335(!(\333(A@!\336\337\317(8!\261\210\341c\210\202 (\342\232\204 \343\344!\203 $\242\307=\203 $\3071\n&'\257C\244\203 \345\344!\210/\204 \341c\210\326/\202 \207" [calc-graph-yp calc-graph-zp calc-graph-stepcount calc-graph-numsteps calc-graph-xvec calc-graph-xp math-contains-sdev-p vec mapcar math-get-value math-get-sdev math-add 0 calcFunc-xyz 4 2 3 get-buffer-create "*Gnuplot Temp*" re-search-backward "^plot[ 	]" "set parametric\ns" t calcFunc-xy (frac float) nil Math-integerp math-format-number frac math-float "e" int-to-string " " "\n" (skip) boundp var-PlotRejects calc-refresh-evaltos calc-graph-xval calc-graph-yval calc-graph-zval calc-graph-yvec calc-graph-xvalue calc-graph-xstep calc-graph-xhigh calc-graph-is-splot calc-graph-surprise-splot calc-graph-blank calc-graph-non-blank calc-graph-curve-num] 7])#@12 

(fn NUM)
(defalias 'calc-temp-file-name #[257 "GTX\203 \302C\244\211\202 \211T8\2064 \211T\233\303	\304X\203, \305\306Z!\202/ \307!P!\302D\240@\207" [calc-graph-file-cache calc-gnuplot-tempfile nil make-temp-file 0 char-to-string 65 int-to-string] 8 (#$ . 19460)])
(defalias 'calc-graph-delete-temps #[0 "\205( @\203  \301@@!\203  \3021 \303@@!0\210\202  \210A\211\204 \304\207" [calc-graph-file-cache file-exists-p (error) delete-file nil] 3])
(defalias 'calc-graph-kill-hook #[0 "\300 \207" [calc-graph-delete-temps] 1])#@135 Default `calc-gnuplot-plot-command' for "tty" output mode.
This is useful for tek40xx and other graphics-terminal types.

(fn OUTPUT)
(defalias 'calc-graph-show-tty #[257 "\303\304	\304\n\305\306\211#&\207" [shell-file-name calc-gnuplot-buffer shell-command-switch call-process nil format "cat %s >/dev/tty; rm %s"] 11 (#$ . 20010)])#@42 The keymap for the "dumb" terminal plot.
(defvar calc-dumb-map nil (#$ . 20353))#@144 Default calc-gnuplot-plot-command for Pinard's "dumb" terminal type.
This "dumb" driver will be present in Gnuplot 3.0.

(fn &optional OUTPUT)
(defalias 'calc-graph-show-dumb #[256 "\304 \305\306\"\216\307!\210\310 \210	b\210\311\312\313\314#\204 \315\316!\210db\210\317\320!\210\321\312!\203_ \316u\210l\2034 \316y\210\322\323!\204S \322\324!\204S \322\325!\204S `\326\327\330\331 \"!\210\211b\266\332\333 `\"\210db\210\202i \313\210\334u\210\335\336!\210\n\204\254 \337 \340\n\341\342#\210\340\n\343\342#\210\340\n\344\345#\210\340\n\346\345#\210\340\n\347\350#\210\340\n\351\352#\210\340\n\353\345#\210\340\n\354\342#\210\340\n\355\356#\210\340\n\357\356#\210\360\n!\210\314\361\362\363!!\210\364 \210\365\366!)\207" [calc-gnuplot-buffer calc-gnuplot-trail-mark calc-dumb-map truncate-lines current-window-configuration make-closure #[0 "\301\300!\207" [V0 set-window-configuration] 2] switch-to-buffer delete-other-windows search-forward "\f" nil t sleep-for 1 re-search-backward "\f\\|^[ 	]+\\^$\\|G N U P L O T" looking-at calc-graph-find-command "time" "title" "ylabel" insert-before-markers format "(%s)" current-time-string set-window-start selected-window -1 recenter (4) make-sparse-keymap define-key "\n" scroll-up-command " " [33554464] scroll-down-command "" "<" scroll-left ">" scroll-right "{" "}" "q" exit-recursive-edit "" use-local-map message substitute-command-keys "Type \\`q' or \\`C-c C-c' to return to Calc" recursive-edit bury-buffer "*Gnuplot Trail*"] 7 (#$ . 20440) nil])
(defalias 'calc-graph-clear #[0 "\205$ \302\232\204 \303\232\203! \304\305	\306\232\203 \307\202 \310	!\"\207\304\311!\207" [calc-graph-last-device calc-graph-last-output "x11" "X11" calc-gnuplot-command "set output" "STDOUT" "" prin1-to-string "clear"] 4 nil nil])#@14 

(fn TITLE)
(defalias 'calc-graph-title-x #[257 "\300\301\302\232?\205\f \303!\"\207" [calc-graph-set-command "xlabel" "" prin1-to-string] 5 (#$ . 22227) "sX axis title: "])#@14 

(fn TITLE)
(defalias 'calc-graph-title-y #[257 "\300\301\302\232?\205\f \303!\"\207" [calc-graph-set-command "ylabel" "" prin1-to-string] 5 (#$ . 22409) "sY axis title: "])#@14 

(fn TITLE)
(defalias 'calc-graph-title-z #[257 "\300\301\302\232?\205\f \303!\"\207" [calc-graph-set-command "zlabel" "" prin1-to-string] 5 (#$ . 22591) "sZ axis title: "])#@14 

(fn RANGE)
(defalias 'calc-graph-range-x #[257 "\300\301\"\207" [calc-graph-set-range "xrange"] 4 (#$ . 22773) "sX axis range: "])#@14 

(fn RANGE)
(defalias 'calc-graph-range-y #[257 "\300\301\"\207" [calc-graph-set-range "yrange"] 4 (#$ . 22912) "sY axis range: "])#@14 

(fn RANGE)
(defalias 'calc-graph-range-z #[257 "\300\301\"\207" [calc-graph-set-range "zrange"] 4 (#$ . 23051) "sZ axis range: "])#@18 

(fn CMD RANGE)
(defalias 'calc-graph-set-range #[514 "\211C\211\242\300\232\203 \301\302\303\"!\210\304\305\242\"\203  \211\242\306\307O\240\210\310\311\242\"\204? \304\312\242\"\2048 \304\313\242\"\203? \211\242\314\224\315I\210\316\242\317\232?\205N \320\242\321Q\"\207" ["$" calc-do make-closure #[0 "\301\302!\211\242\303=\203' \304!\203' \300\305\306\3078!!\310\305\306\3118!!Q\240\210\202P \211\242\312=\203L \211G\311U\203L \300\305\306A@!!\310\305\306\3078!!Q\240\210\202P \313\314!\210\315\302!\207" [V0 calc-top-n 1 intv math-constp math-format-number math-float 2 ":" 3 vec error "Range specification must be an interval or 2-vector" calc-pop-stack] 8] string-match "\\[.+\\]" 1 -1 string-search ":" "," " " 0 58 calc-graph-set-command "" "[" "]"] 8 (#$ . 23190)])#@13 

(fn FLAG)
(defalias 'calc-graph-log-x #[257 "\300\301\211#\207" [calc-graph-set-log 0] 5 (#$ . 23990) "P"])#@13 

(fn FLAG)
(defalias 'calc-graph-log-y #[257 "\300\301\301#\207" [calc-graph-set-log 0] 5 (#$ . 24106) "P"])#@13 

(fn FLAG)
(defalias 'calc-graph-log-z #[257 "\300\301\211#\207" [calc-graph-set-log 0] 5 (#$ . 24222) "P"])#@26 

(fn XFLAG YFLAG ZFLAG)
(defalias 'calc-graph-set-log #[771 "\300\301!\206 \302\303\304\"\303\305\"\303\306\"\307\203- \310=\203$ \202/ \311!\310V\202/ ?\2036 \304\2027 \302\203P \310=\203G \202R \311!\310V\202R ?\203Y \305\202Z \302\203s \310=\203j \202u \311!\310V\202u ?\203| \306\202} \302Q\262\312\301\302\232?\205\212 \"\207" [calc-graph-find-command "logscale" "" string-match "x" "y" "z" nil 0 prefix-numeric-value calc-graph-set-command] 12 (#$ . 24338)])#@14 

(fn STYLE)
(defalias 'calc-graph-line-style #[257 "\300\205 \301!\302\"\207" [calc-graph-set-styles prefix-numeric-value t] 4 (#$ . 24840) "P"])#@14 

(fn STYLE)
(defalias 'calc-graph-point-style #[257 "\300\301\205	 \302!\"\207" [calc-graph-set-styles t prefix-numeric-value] 5 (#$ . 24995) "P"])#@36 

(fn LINES POINTS &optional YERR)
(defalias 'calc-graph-set-styles #[770 "\301 \210rq\210\302\303\211\"\204 \304\305!\210`\303\211\211\211\211\211\211\211\306\307!\210\310u\210`\262\262b\210\311\312!\203e \313\224\262\314\225b\210\311\315!\203G \313\224\313\225{\262\311\316!\203V \317\313\224\313\225{!\262\311\320!\203e \317\313\224\313\225{!\262	\204\276 \321\232\206u \322\232\262\323\232\206\202 \322\232\262\203\235 \324=\204\241 \262\314Y\262\202\241 ?\262\n\203\272 \n\324=\204\276 \n\262\n\314Y\262\202\276 ?\262|\210b\210\3251\335 \326\327\330\212\331\332!\210\333\313!)P!J!0\202\337 \210\303\262	\203\355 \334c\266\n\202a\335\203\336\232\203\f\324=\203\337\202\203\203\322\202\321\202\203\323\202\336\261\210\203K\314V\203K\340\203>\314V\203>\341!\202?\342\343\341	!\261\266\n\202a\203_\314V\203_\340\341!\261\210\266	)\344 \207" [calc-gnuplot-input calc-graph-init calc-graph-find-plot nil error "No data points have been set!" re-search-forward "[,\n]" -1 looking-at "[^,\n]*[^,\n 	]\\([ 	]+with\\)" 1 0 "[ 	]+\\([a-z]+\\)" "[ 	a-z]+\\([0-9]+\\)" string-to-number "[ 	a-z]+[0-9]+[ 	]+\\([0-9]+\\)" "lines" "linespoints" "points" t (error) math-contains-sdev-p intern "var-" re-search-backward ":\\(.*\\)}" match-string " with yerrorbars" " with " "dots" "yerrorbars" " ls " int-to-string "1" " ps " calc-graph-view-commands] 17 (#$ . 25151)])#@13 

(fn FLAG)
(defalias 'calc-graph-zero-x #[257 "\300\301\203 \302!\303X\202 \304\301!?\205 \305\"\207" [calc-graph-set-command "noxzeroaxis" prefix-numeric-value 0 calc-graph-find-command " "] 5 (#$ . 26614) "P"])#@13 

(fn FLAG)
(defalias 'calc-graph-zero-y #[257 "\300\301\203 \302!\303X\202 \304\301!?\205 \305\"\207" [calc-graph-set-command "noyzeroaxis" prefix-numeric-value 0 calc-graph-find-command " "] 5 (#$ . 26838) "P"])#@13 

(fn NAME)
(defalias 'calc-graph-name #[257 "\301 \210rq\210\302\303\211\"\204 \304\305!\210`\303\306\307!\210\310\224\262b\210\311\312!\2030 \313\224b\210`|\210\2023 \211b\210\314\315!\261)\266\316 \207" [calc-gnuplot-input calc-graph-init calc-graph-find-plot nil error "No data points have been set!" re-search-forward "[,\n]\\|[ 	]+with" 0 looking-at "[^,\n]*[^,\n 	]\\([ 	]+title\\)" 1 " title " prin1-to-string calc-graph-view-commands] 6 (#$ . 27062) "sTitle for current curve: "])#@13 

(fn FLAG)
(defalias 'calc-graph-hide #[257 "\300 \210\301\302\211\"\205; \303\304!\204 \305\306!\210\307u\210\303\310!\203- \211\203) \311!\312X\205; \313\307!\207\211\2039 \311!\312V\205; \314c\207" [calc-graph-init calc-graph-find-plot nil looking-at "{" error "Can't hide this curve (wrong format)" 1 "\\*" prefix-numeric-value 0 delete-char "*"] 4 (#$ . 27565) "P"])#@14 

(fn TITLE)
(defalias 'calc-graph-header #[257 "\300\301\302\232?\205\f \303!\"\207" [calc-graph-set-command "title" "" prin1-to-string] 5 (#$ . 27946) "sTitle for entire graph: "])#@13 

(fn FLAG)
(defalias 'calc-graph-border #[257 "\300\301\203 \302!\303X\202 \304\301!?\205 \305\"\207" [calc-graph-set-command "noborder" prefix-numeric-value 0 calc-graph-find-command " "] 5 (#$ . 28136) "P"])#@13 

(fn FLAG)
(defalias 'calc-graph-grid #[257 "\300\301\203 \302!\303V\202 \304\301!?\205 \305\"\207" [calc-graph-set-command "grid" prefix-numeric-value 0 calc-graph-find-command " "] 5 (#$ . 28357) "P"])#@13 

(fn FLAG)
(defalias 'calc-graph-key #[257 "\300\301\203 \302!\303V\202 \304\301!?\205 \305\"\207" [calc-graph-set-command "key" prefix-numeric-value 0 calc-graph-find-command " "] 5 (#$ . 28572) "P"])#@17 

(fn RES FLAG)
(defalias 'calc-graph-num-points #[514 "\211\203. \302!\303V\203 \304\232\203 \305\306\"\207\307!\211\207\304\232\203( \305\310	\"\207\307!\211\207\311\312\304\232?\2058 \"\207" [calc-graph-default-resolution calc-graph-default-resolution-3d prefix-numeric-value 0 "" message "Default resolution is %d" string-to-number "Default 3D resolution is %d" calc-graph-set-command "samples"] 6 (#$ . 28785) "sNumber of data points: \nP"])#@18 

(fn NAME FLAG)
(defalias 'calc-graph-device #[514 "\302\232\203 \303\304!\210\305 \207\211\2037 \306!\307V\203( \310\232\203$ \311\312\"\207\211\207\310\232\2033 \311\313	\"\207\211\207\314\315\310\232?\205A \"\207" [calc-gnuplot-default-device calc-gnuplot-print-device "?" calc-gnuplot-command "set terminal" calc-graph-view-trail prefix-numeric-value 0 "" message "Default GNUPLOT device is \"%s\"" "GNUPLOT device for Print command is \"%s\"" calc-graph-set-command "terminal"] 6 (#$ . 29249) "sDevice name: \nP"])#@18 

(fn NAME FLAG)
(defalias 'calc-graph-output #[514 "\302\303\"\203 \304\262\202: \302\305\"\203 \306\262\202: \302\307\"\203' \310\262\202: \311!\312\232\2035 \312\262\202: \313!\262\211\203d \314!\315V\203U \312\232\203Q \316\317\"\207\211\207\312\232\203` \316\320	\"\207\211\207\321\322\312\232?\205p \323!\"\207" [calc-gnuplot-default-output calc-gnuplot-print-output string-match "\\<[aA][uU][tT][oO]$" "auto" "\\<[tT][tT][yY]$" "tty" "\\<[sS][tT][dD][oO][uU][tT]$" "STDOUT" file-name-nondirectory "" expand-file-name prefix-numeric-value 0 message "Default GNUPLOT output file is \"%s\"" "GNUPLOT output file for Print command is \"%s\"" calc-graph-set-command "output" prin1-to-string] 6 (#$ . 29787) "FOutput file name: \np"])#@13 

(fn NAME)
(defalias 'calc-graph-display #[257 "\211\301\232\203 \302\303\206 \304\"\207\211\305 \205 \306\307!\207" [calc-gnuplot-display "" message "Current X display is \"%s\"" "<none>" calc-gnuplot-alive calc-gnuplot-command "exit"] 4 (#$ . 30550) "sX display name: "])#@13 

(fn NAME)
(defalias 'calc-graph-geometry #[257 "\211\301\232\203 \302\303\206 \304\"\207\211\304\232?\205 \211\305 \205  \306\307!\207" [calc-gnuplot-geometry "" message "Current X geometry is \"%s\"" "default" calc-gnuplot-alive calc-gnuplot-command "exit"] 4 (#$ . 30835) "sX geometry spec (or \"default\"): "])#@12 

(fn CMD)
(defalias 'calc-graph-find-command #[257 "\301 \210rq\210eb\210\302\303\304Q\305\306#\205 \307\224\307\225{)\207" [calc-gnuplot-input calc-graph-init re-search-forward "^set[ 	]+" "[ 	]*\\(.*\\)$" nil t 1] 5 (#$ . 31161)])#@23 

(fn CMD &rest ARGS)
(defalias 'calc-graph-set-command #[385 "\301 \210rq\210eb\210\302\303\304Q\305\306#\203( \307u\210\305\210`\310 \210`T|\266\202? \311\306\211\"\203; h\312=\203? \307u\210\202? dSb\210\211\203[ \211@\203[ n\204O \313c\210\314\315\316B\317#\313\261\210)\320 \207" [calc-gnuplot-input calc-graph-init re-search-forward "^set[ 	]+" "[ 	\n]" nil t -1 beginning-of-line calc-graph-find-plot 10 "\n" "set " mapconcat identity " " calc-graph-view-commands] 7 (#$ . 31403)])#@12 

(fn CMD)
(defalias 'calc-graph-command #[257 "\300\301\302\"!\207" [calc-do make-closure #[0 "\302 \210\303 \210\304\300!\210	\305=\206 \306 \210\303 \207" [V0 system-type calc-graph-init calc-graph-view-trail calc-gnuplot-command windows-nt accept-process-output] 2]] 5 (#$ . 31905) "sGNUPLOT command: "])#@26 

(fn &optional NO-VIEW)
(defalias 'calc-graph-kill #[256 "\300 \203\f \301\302\303\"!\210\304 \207" [calc-gnuplot-alive calc-do make-closure #[0 "\300\204 \303 \210\304\305\306!)\210\307\310!\210\311\n!\203 \312\n!\210\313\211\207" [V0 calc-graph-no-wait calc-gnuplot-process calc-graph-view-trail t calc-gnuplot-command "exit" sit-for 1 process-status delete-process nil] 2] calc-graph-delete-temps] 5 (#$ . 32221) nil])
(defalias 'calc-graph-quit #[0 "\302!\203\n \303\304!\210\302	!\203 \305\304!\210\306\304!\207" [calc-gnuplot-input calc-gnuplot-buffer get-buffer-window calc-graph-view-commands t calc-graph-view-trail calc-graph-kill] 2 nil nil])#@26 

(fn &optional NO-NEED)
(defalias 'calc-graph-view-commands #[256 "\204 \303 \210\304	\n?#\207" [calc-graph-no-auto-view calc-gnuplot-input calc-gnuplot-buffer calc-graph-init-buffers calc-graph-view] 5 (#$ . 32888) "p"])#@26 

(fn &optional NO-NEED)
(defalias 'calc-graph-view-trail #[256 "\204 \303 \210\304	\n?#\207" [calc-graph-no-auto-view calc-gnuplot-buffer calc-gnuplot-input calc-graph-init-buffers calc-graph-view] 5 (#$ . 33119) "p"])#@27 

(fn BUF OTHER-BUF NEED)
(defalias 'calc-graph-view #[771 "\303\204i \304!\211\262\203> \204i 	=\203$ rq\210\305d\")\203i \306!\210\306!\210\307 \310!\210\311\303!\210\310!\266\202i \304!\211\262\203O \312\"\210\202i \n\313=\203e \204^ \314 \204i \315!\210\202i \311!\210rq\210	=\203\226 \304!\211\262\203\226 \305d\"\204\226 db\210\316\317\320!Z!\210\321`\"\210db\210)\206\236 \322\323!\207" [calc-graph-no-auto-view calc-gnuplot-buffer major-mode nil get-buffer-window pos-visible-in-window-p bury-buffer selected-window select-window switch-to-buffer set-window-buffer calc-mode window-full-height-p display-buffer vertical-motion 6 window-height set-window-start sit-for 0] 8 (#$ . 33347)])
(defalias 'calc-gnuplot-check-for-errors #[0 "rq\210	b\210\302\303\304\305#db\210d)\205 \306 \207" [calc-gnuplot-buffer calc-gnuplot-last-error-pos re-search-forward "^[ 	]+\\^$" nil t calc-graph-view-trail] 4])#@82 Send ARGS to Gnuplot.
Returns nil if Gnuplot signaled an error.

(fn &rest ARGS)
(defalias 'calc-gnuplot-command #[128 "\306 \210\307\310\311#\312P\313=\204 \314 \210r	q\210\315 \210db\210`\316Y\204( \211c\210\317\f!`\320\223\210\321\f\"\210\322	!\203= \323 \210\313=\204L \314?\205J \f!\210\315 ?\322	!\203X \323 \210)\207" [system-type calc-gnuplot-buffer calc-gnuplot-trail-mark calc-gnuplot-version calc-gnuplot-process calc-graph-no-wait calc-graph-init mapconcat identity " " "\n" windows-nt accept-process-output calc-gnuplot-check-for-errors 3 process-mark nil process-send-string get-buffer-window calc-graph-view-trail] 5 (#$ . 34290)])
(defalias 'calc-graph-init-buffers #[0 "\203\n \302!\204 \303\304!	\203 \302	!\206 \303\305!\211\207" [calc-gnuplot-buffer calc-gnuplot-input buffer-name get-buffer-create "*Gnuplot Trail*" "*Gnuplot Commands*"] 2])
(defalias 'calc-graph-init #[0 "\306 \204\356 \307\310	\203 \311	!\210\310\312 \210r\nq\210\313c\210`)\262\310\211\314=\203J \315-\316P!\317\320\"\203F \321\322\224\322\225O!.\210\202J \322.\210\3231\216 \324/\205i /\325\326!\232?\205i \314=?\205i \327/D0\205y \314=?\205y \3300D\"\331\332\333\n-%\334	\310\"\2620\210\202\225 \210\335\336-\"\210r\nq\210\314=\204\273 \212\211b\210\337\340\310\307#)\204\273 \341	!\342>\203\273 \343	!\210\202\231 \341	!\344>\204\307 \335\345!\210\314=\204\351 \212\211b\210\346\347\310\307#)\203\346 \321\322\224\322\225{!.\202\351 \322.db*\266r1q\210\350 \351U\203\377 \352c\2022\206dSf\353=\206db\210\354c)\207" [process-connection-type calc-gnuplot-process calc-gnuplot-buffer calc-graph-last-device calc-graph-last-output system-type calc-gnuplot-alive t nil delete-process calc-graph-init-buffers "\nStarting gnuplot...\n" windows-nt shell-command-to-string " -V" string-match "gnuplot \\([0-9]+\\)\\." string-to-number 1 (file-error) append getenv "DISPLAY" "-display" "-geometry" apply start-process "gnuplot" set-process-query-on-exit-flag error "Sorry, can't find \"%s\" on your system" search-forward "gnuplot> " process-status (run stop) accept-process-output (run stop) "Unable to start GNUPLOT process" re-search-forward "G N U P L O T.*\n.*version \\([0-9]+\\)\\." buffer-size 0 "# Commands for running gnuplot\n\n\n" 10 "\n" calc-gnuplot-name calc-gnuplot-version calc-gnuplot-display calc-gnuplot-geometry calc-gnuplot-input calc-graph-no-auto-view] 10])
(provide 'calc-graph)
