Initial Commit
[packages] / xemacs-packages / calc / calccard.tex
1 % Reference Card for GNU Emacs Calc 2.02
2 %**start of header
3 \newcount\columnsperpage
4
5 % The format for this file is adapted from the GNU Emacs reference
6 % card version 1.9, by Stephen Gildea.
7
8 % This file can be printed with 1, 2, or 3 columns per page (see below).
9 % Specify how many you want here.  Nothing else needs to be changed.
10
11 \columnsperpage=3
12
13 % Typical command to format:  tex calccard.tex
14 % Typical command to print (3 cols):  dvips -t landscape calccard.dvi
15
16 % Copyright (c) 1987, 1992 Free Software Foundation, Inc.
17
18 % This file is part of GNU Emacs.
19
20 % GNU Emacs is free software; you can redistribute it and/or modify
21 % it under the terms of the GNU General Public License as published by
22 % the Free Software Foundation; either version 1, or (at your option)
23 % any later version.
24
25 % GNU Emacs is distributed in the hope that it will be useful,
26 % but WITHOUT ANY WARRANTY; without even the implied warranty of
27 % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
28 % GNU General Public License for more details.
29
30 % You should have received a copy of the GNU General Public License
31 % along with GNU Emacs; see the file COPYING.  If not, write to
32 % the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
33
34 % This file is intended to be processed by plain TeX (TeX82).
35 %
36 % The final reference card has six columns, three on each side.
37 % This file can be used to produce it in any of three ways:
38 % 1 column per page
39 %    produces six separate pages, each of which needs to be reduced to 80%.
40 %    This gives the best resolution.
41 % 2 columns per page
42 %    produces three already-reduced pages.
43 %    You will still need to cut and paste.
44 % 3 columns per page
45 %    produces two pages which must be printed sideways to make a
46 %    ready-to-use 8.5 x 11 inch reference card.
47 %    For this you need a dvi device driver that can print sideways.
48 % Which mode to use is controlled by setting \columnsperpage above.
49 %
50 % Author (Calc reference card):
51 %  Dave Gillespie
52 %  UUCP: uunet!synaptx!daveg
53 %  Internet: daveg@synaptics.com
54 %
55 % Author (refcard.tex format):
56 %  Stephen Gildea
57 %  UUCP: mit-erl!gildea
58 %  Internet: gildea@erl.mit.edu
59
60 \def\versionnumber{2.02}
61 \def\versiondate{January 1992}
62 \def\year{1992}
63 \def\version{v\versionnumber}
64
65 \def\shortcopyrightnotice{\vskip 1ex plus 2 fill
66   \centerline{\small \copyright\ \year\ Free Software Foundation, Inc.
67   Permissions on back.  v\versionnumber}}
68
69 \def\copyrightnotice{
70 \vskip 1ex plus 2 fill\begingroup\small
71 \centerline{Copyright \copyright\ \year\ Free Software Foundation, Inc.}
72 \centerline{designed by Dave Gillespie and Stephen Gildea, \version}
73 \centerline{for GNU Emacs Calc version \versionnumber\ (\versiondate)}
74
75 Permission is granted to make and distribute copies of
76 this card provided the copyright notice and this permission notice
77 are preserved on all copies.
78
79 For copies of the GNU Emacs Calc manual, write to the Free Software
80 Foundation, Inc., 675 Massachusetts Ave, Cambridge MA 02139.
81
82 \endgroup}
83
84 % make \bye not \outer so that the \def\bye in the \else clause below
85 % can be scanned without complaint.
86 \def\bye{\par\vfill\supereject\end}
87
88 \newdimen\intercolumnskip
89 \newbox\columna
90 \newbox\columnb
91
92 \def\ncolumns{\the\columnsperpage}
93
94 \message{[\ncolumns\space 
95   column\if 1\ncolumns\else s\fi\space per page]}
96
97 \def\scaledmag#1{ scaled \magstep #1}
98
99 % This multi-way format was designed by Stephen Gildea
100 % October 1986.
101 \if 1\ncolumns
102   \hsize 4in
103   \vsize 10in
104   \voffset -.7in
105   \font\titlefont=\fontname\tenbf \scaledmag3
106   \font\headingfont=\fontname\tenbf \scaledmag2
107   \font\smallfont=\fontname\sevenrm
108   \font\smallsy=\fontname\sevensy
109
110   \footline{\hss\folio}
111   \def\makefootline{\baselineskip10pt\hsize6.5in\line{\the\footline}}
112 \else
113   \hsize 3.2in
114   \vsize 7.95in
115   \hoffset -.75in
116   \voffset -.745in
117   \font\titlefont=cmbx10 \scaledmag2
118   \font\headingfont=cmbx10 \scaledmag1
119   \font\smallfont=cmr6
120   \font\smallsy=cmsy6
121   \font\eightrm=cmr8
122   \font\eightbf=cmbx8
123   \font\eightit=cmti8
124   \font\eighttt=cmtt8
125   \font\eightsy=cmsy8
126   \textfont0=\eightrm
127   \textfont2=\eightsy
128   \def\rm{\eightrm}
129   \def\bf{\eightbf}
130   \def\it{\eightit}
131   \def\tt{\eighttt}
132   \normalbaselineskip=.8\normalbaselineskip
133   \normallineskip=.8\normallineskip
134   \normallineskiplimit=.8\normallineskiplimit
135   \normalbaselines\rm           %make definitions take effect
136
137   \if 2\ncolumns
138     \let\maxcolumn=b
139     \footline{\hss\rm\folio\hss}
140     \def\makefootline{\vskip 2in \hsize=6.86in\line{\the\footline}}
141   \else \if 3\ncolumns
142     \let\maxcolumn=c
143     \nopagenumbers
144   \else
145     \errhelp{You must set \columnsperpage equal to 1, 2, or 3.}
146     \errmessage{Illegal number of columns per page}
147   \fi\fi
148
149   \intercolumnskip=.46in
150   \def\abc{a}
151   \output={%
152       % This next line is useful when designing the layout.
153       %\immediate\write16{Column \folio\abc\space starts with \firstmark}
154       \if \maxcolumn\abc \multicolumnformat \global\def\abc{a}
155       \else\if a\abc
156         \global\setbox\columna\columnbox \global\def\abc{b}
157         %% in case we never use \columnb (two-column mode)
158         \global\setbox\columnb\hbox to -\intercolumnskip{}
159       \else
160         \global\setbox\columnb\columnbox \global\def\abc{c}\fi\fi}
161   \def\multicolumnformat{\shipout\vbox{\makeheadline
162       \hbox{\box\columna\hskip\intercolumnskip
163         \box\columnb\hskip\intercolumnskip\columnbox}
164       \makefootline}\advancepageno}
165   \def\columnbox{\leftline{\pagebody}}
166
167   \def\bye{\par\vfill\supereject
168     \if a\abc \else\null\vfill\eject\fi
169     \if a\abc \else\null\vfill\eject\fi
170     \end}  
171 \fi
172
173 % we won't be using math mode much, so redefine some of the characters
174 % we might want to talk about
175 \catcode`\^=12
176 \catcode`\_=12
177
178 \chardef\\=`\\
179 \chardef\{=`\{
180 \chardef\}=`\}
181
182 \hyphenation{mini-buf-fer}
183
184 \parindent 0pt
185 \parskip 1ex plus .5ex minus .5ex
186
187 \def\small{\smallfont\textfont2=\smallsy\baselineskip=.8\baselineskip}
188
189 \outer\def\newcolumn{\vfill\eject}
190
191 \outer\def\title#1{{\titlefont\centerline{#1}}\vskip 1ex plus .5ex}
192
193 \outer\def\section#1{\par\filbreak
194   \vskip 3ex plus 2ex minus 2ex {\headingfont #1}\mark{#1}%
195   \vskip 2ex plus 1ex minus 1.5ex}
196
197 \newdimen\keyindent
198
199 \def\beginindentedkeys{\keyindent=1em}
200 \def\endindentedkeys{\keyindent=0em}
201 \endindentedkeys
202
203 \def\paralign{\vskip\parskip\halign}
204
205 \def\<#1>{$\langle${\rm #1}$\rangle$}
206
207 \def\kbd#1{{\tt#1}\null}        %\null so not an abbrev even if period follows
208
209 \def\beginexample{\par\leavevmode\begingroup
210   \obeylines\obeyspaces\parskip0pt\tt}
211 {\obeyspaces\global\let =\ }
212 \def\endexample{\endgroup}
213
214 \def\key#1#2{\leavevmode\hbox to \hsize{\vtop
215   {\hsize=.75\hsize\rightskip=1em
216   \hskip\keyindent\relax#1}\kbd{#2}\hfil}}
217
218 \newbox\metaxbox
219 \setbox\metaxbox\hbox{\kbd{M-x }}
220 \newdimen\metaxwidth
221 \metaxwidth=\wd\metaxbox
222
223 \def\metax#1#2{\leavevmode\hbox to \hsize{\hbox to .75\hsize
224   {\hskip\keyindent\relax#1\hfil}%
225   \hskip -\metaxwidth minus 1fil
226   \kbd{#2}\hfil}}
227
228 \def\threecol#1#2#3{\hskip\keyindent\relax#1\hfil&\kbd{#2}\quad
229   &\kbd{#3}\quad\cr}
230
231 %
232 % Calc-specific commands here:
233 %
234
235 \let\^=^
236 \let\_=_
237 \catcode`\^=7
238 \catcode`\_=8
239
240 % Redefine to make spaces a bit smaller
241 \let\wkbd=\kbd
242 \def\kbd#1{{\spaceskip=.37em\tt#1}\null}
243
244 \def\wkey#1#2{\leavevmode\hbox to \hsize{\vtop
245   {\hsize=.75\hsize\rightskip=1em
246   \hskip\keyindent\relax#1}\wkbd{#2}\hfil}}
247 \def\wthreecol#1#2#3{\hskip\keyindent\relax#1\hfil&\wkbd{#2}\quad
248   &\wkbd{#3}\quad\cr}
249
250 \def\stkkey#1#2#3#4{\par\line{\hskip1em\rlap{\kbd{#1}}\hskip4.5em%
251   \rlap{{#2}}\hskip7.5em\rlap{{#3}}\hskip7.5em\rlap{{#4}}\hfill}\par}
252 \def\S#1{$S_{\scriptscriptstyle #1}$}
253 \def\swap{$\leftrightarrow$}
254
255 \def\mhash{M-\#\ }
256 \def\,{{\rm ,\hskip.55em}\ignorespaces}
257 \def\lesssectionskip{\vskip-1.5ex}
258
259 \def\iline#1{\par\line{\hskip1em\relax #1\hfill}\par}
260
261 \if 1\ncolumns
262 \else
263   \font\eighti=cmmi8
264   \textfont1=\eighti
265 \fi
266
267 %**end of header
268 \f
269
270 % Column 1
271
272 \title{GNU Calc Reference Card}
273
274 \centerline{(for version \versionnumber\ of \versiondate)}
275
276 \section{Starting and Stopping}
277
278 \wkey{start/stop standard Calc}{\mhash c}
279 \wkey{start/stop X keypad Calc}{\mhash k}
280 \wkey{\quad start/stop either: \kbd{\mhash \#} or \kbd{\mhash \mhash}}{}
281 \wkey{stop standard Calc}{q}
282
283 \wkey{Calc tutorial}{\mhash t}
284 \wkey{run Calc in other window}{\mhash o}
285 \wkey{quick calculation in minibuffer}{\mhash q}
286
287 \section{Getting Help}
288
289 \lesssectionskip
290 The \kbd{h} prefix key is Calc's analogue of \kbd{C-h} in Emacs.
291
292 \key{quick summary of keys}{?}
293 \key{describe key briefly}{h c}
294 \key{describe key fully}{h k}
295 \key{describe function or command}{h f}
296 \key{read on-line manual}{h i{\rm\enskip or\enskip}\mhash i}
297 \key{read full Calc summary}{h s{\rm\enskip or\enskip}\mhash s}
298
299 \section{Error Recovery}
300
301 \key{abort command in progress}{C-g}
302 \key{display recent error messages}{w}
303 \key{undo last operation}{U}
304 \key{redo last operation}{D}
305 \key{recall last arguments}{M-RET}
306 \key{edit top of stack}{`}
307 \wkey{reset Calc to default state}{\mhash 0 {\rm (zero)}}
308
309 \section{Transferring Data}
310
311 \wkey{grab region from a buffer}{\mhash g}
312 \wkey{grab rectangle from a buffer}{\mhash r}
313 \wkey{grab rectangle, summing columns}{\mhash :}
314 \wkey{grab rectangle, summing rows}{\mhash \_}
315
316 \wkey{yank data to a buffer}{\mhash y}
317
318 Also, try \kbd{C-k}/\kbd{C-y} or X cut and paste.
319
320 \section{Examples}
321
322 \lesssectionskip
323 In RPN, enter numbers first, separated by \kbd{RET} if necessary,
324 then type the operator.  To enter a calculation in algebraic form,
325 press the apostrophe first.
326
327 \beginindentedkeys
328 \paralign to \hsize{#\tabskip=10pt plus 1 fil&#\tabskip=0pt\hfil\quad&#\hfil\cr
329 \wthreecol{ }{{\bf RPN style:}}{{\bf algebraic style:}}
330 \wthreecol{Example:}{2 RET 3 +}{' 2+3 RET}
331 \wthreecol{Example:}{2 RET 3 + 4 *}{' (2+3)*4 RET}
332 \wthreecol{Example:}{2 RET 3 RET 4 + *}{' 2*(3+4) RET}
333 \wthreecol{Example:}{3 RET 6 + Q 3 \^}{' sqrt(3+6)\^3 RET}
334 \wthreecol{Example:}{P 3 / n S}{' sin(-pi/3) RET =}
335 }
336 \endindentedkeys
337
338 \shortcopyrightnotice
339
340 % Column 2
341
342 \section{Arithmetic}
343
344 \key{add, subtract, multiply, divide}{+\, -\, *\, /}
345 \key{raise to a power, {\it n\/}th root}{\^\, I \^}
346 \key{change sign}{n}
347 \key{reciprocal $1/x$}{\&}
348 \key{square root $\sqrt x$}{Q}
349
350 \key{set precision}{p}
351 \key{round off last two digits}{c 2}
352 \key{convert to fraction, float}{c F\, c f}
353
354 \wkey{enter using algebraic notation}{' 2+3*4}
355 \wkey{refer to previous result}{' 3*\$\^2}
356 \wkey{refer to higher stack entries}{' \$1*\$2\^2}
357 \key{finish alg entry without evaluating}{LFD}
358 \key{set mode where alg entry used by default}{m a}
359
360 \section{Stack Commands}
361
362 \lesssectionskip
363 Here \S{n} is the $n$th stack entry, and $N$ is the size of the stack.
364
365 \vskip.5ex
366 \stkkey{\it key}{\it no prefix}{\it prefix $n$}{\it prefix $-n$}
367 \stkkey{RET}{copy \S{1}}{copy \S{1..n}}{copy \S{n}}
368 \stkkey{LFD}{copy \S{2}}{copy \S{n}}{copy \S{1..n}}
369 \stkkey{DEL}{delete \S{1}}{delete \S{1..n}}{delete \S{n}}
370 \stkkey{M-DEL}{delete \S{2}}{delete \S{n}}{delete \S{1..n}}
371 \stkkey{TAB}{swap \S{1}\swap\S{2}}{roll \S{1} to \S{n}}{roll \S{n} to \S{N}}
372 \stkkey{M-TAB}{roll \S{3} to \S{1}}{roll \S{n} to \S{1}}{roll \S{N} to \S{n}}
373
374 With a 0 prefix, these copy, delete, or reverse \S{1..N}.
375
376 \section{Display}
377
378 \wkey{scroll horizontally, vertically}{< >\, \{ \}}
379 \key{home cursor}{o}
380 \key{line numbers on/off}{d l}
381 \key{trail display on/off}{t d}
382
383 \key{scientific notation}{d s}
384 \key{fixed-point notation}{d f}
385 \key{floating-point (normal) notation}{d n}
386 \key{group digits with commas}{d g}
387
388 For display mode commands, \kbd{H} prefix prevents screen redraw
389 and \kbd{I} prefix temporarily redraws top of stack.
390
391 \section{Notations}
392
393 \wkey{scientific notation}{6.02e23}
394 \wkey{minus sign in numeric entry}{\_23{\rm\quad or\quad}23 n}
395 \wkey{fractions}{3:4}
396 \wkey{complex numbers}{({\it x}, {\it y})}
397 \wkey{polar complex numbers}{({\it r}; $\theta$)}
398 \wkey{vectors (commas optional)}{[1, 2, 3]}
399 \wkey{matrices (or nested vectors)}{[1, 2; 3, 4]}
400 \wkey{error forms (\kbd{p} key)}{100 +/- 0.5}
401 \wkey{interval forms}{[2 ..\ 5)}
402 \wkey{modulo forms (\kbd{M} key)}{6 mod 24}
403 \wkey{HMS forms}{5@ 30' 0"}
404 \wkey{date forms}{<Jul 4, 1992>}
405 \wkey{infinity, indeterminate}{inf\, nan}
406
407 % Column 3
408
409 \section{Scientific Functions}
410
411 \key{ln, log${}_{\scriptscriptstyle 10}$, log${}_b$}{L\, H L\, B}
412 \key{exponential {\it e}${}^x$, 10${}^x$}{E\, H E}
413 \key{sin, cos, tan}{S\, C\, T}
414 \key{arcsin, arccos, arctan}{I S\, I C\, I T}
415 \key{inverse, hyperbolic prefix keys}{I\, H}
416 \key{two-argument arctan}{f T}
417 \key{degrees, radians modes}{m d\, m r}
418 \key{pi ($\pi$)}{P}
419
420 \key{factorial, double factorial}{!\, k d}
421 \key{combinations, permutations}{k c\, H k c}
422 \key{prime factorization}{k f}
423 \key{next prime, previous prime}{k n\, I k n}
424 \key{GCD, LCM}{k g\, k l}
425 \key{random number, shuffle}{k r\, k h}
426 \key{minimum, maximum}{f n\, f x}
427
428 \key{error functions erf, erfc}{f e\, I f e}
429 \key{gamma, beta functions}{f g\, f b}
430 \key{incomplete gamma, beta functions}{f G\, f B}
431 \key{Bessel $J_\nu$, $Y_\nu$ functions}{f j\, f y}
432
433 \key{complex magnitude, arg, conjugate}{A\, G\, J}
434 \key{real, imaginary parts}{f r\, f i}
435 \key{convert polar/rectangular}{c p}
436
437 \section{Financial Functions}
438
439 \key{enter percentage}{M-\%}
440 \key{convert to percentage}{c \%}
441 \key{percentage change}{b \%}
442
443 \key{present value}{b P}
444 \key{future value}{b F}
445 \key{rate of return}{b T}
446 \key{number of payments}{b \#}
447 \key{size of payments}{b M}
448 \key{net present value, int.\ rate of return}{b N\, b I}
449
450 Above computations assume payments at end of period.  Use \kbd{I}
451 prefix for beginning of period, or \kbd{H} for a lump sum investment.
452
453 \key{straight-line depreciation}{b S}
454 \key{sum-of-years'-digits}{b Y}
455 \key{double declining balance}{b D}
456
457 \section{Units}
458
459 \wkey{enter with units}{' 55 mi/hr}
460 \key{convert to new units, base units}{u c\, u b}
461 \key{convert temperature units}{u t}
462 \key{simplify units expression}{u s}
463 \key{view units table}{u v}
464
465 Common units:
466 \iline{distance: \kbd{m}, \kbd{cm}, \kbd{mm}, \kbd{km};
467   \kbd{in}, \kbd{ft}, \kbd{mi}, \kbd{mfi};
468   \kbd{point}, \kbd{lyr}}
469 \iline{volume: \kbd{l} or \kbd{L}, \kbd{ml}; 
470   \kbd{gal}, \kbd{qt}, \kbd{pt}, \kbd{cup}, \kbd{floz},
471   \kbd{tbsp}, \kbd{tsp}}
472 \iline{mass: \kbd{g}, \kbd{mg}, \kbd{kg}, \kbd{t};
473   \kbd{lb}, \kbd{oz}, \kbd{ton}}
474 \iline{time: \kbd{s} or \kbd{sec}, \kbd{ms}, \kbd{us}, \kbd{ns}, \kbd{min},
475   \kbd{hr}, \kbd{day}, \kbd{wk}}
476 \iline{temperature: \kbd{degC}, \kbd{degF}, \kbd{K}}
477
478 % Column 4
479
480 \newcolumn
481 \title{GNU Calc Reference Card}
482
483 \section{Programmer's Functions}
484
485 \key{binary, octal, hex display}{d 2\, d 8\, d 6}
486 \key{decimal, other radix display}{d 0\, d r}
487 \key{display leading zeros}{d z}
488 \key{entering non-decimal numbers}{16\#7FFF}
489
490 \key{binary word size}{b w}
491 \key{binary AND, OR, XOR}{b a\, b o\, b x}
492 \key{binary DIFF, NOT}{b d\, b n}
493 \key{left shift}{b l}
494 \key{logical right shift}{b r}
495 \key{arithmetic right shift}{b R}
496
497 \key{integer quotient, remainder}{\\\, \%}
498 \key{integer square root, logarithm}{f Q\, f I}
499 \key{floor, ceiling, round to integer}{F\, I F\, R}
500
501 \section{Variables}
502
503 \lesssectionskip
504 Variable names are single digits or whole words.
505
506 \key{store to variable}{s t}
507 \key{store and keep on stack}{s s}
508 \key{recall from variable}{s r}
509 \key{shorthands for digit variables}{t {\it n}\, s {\it n}\, r {\it n}}
510 \key{unstore, exchange variable}{s u\, s x}
511 \key{edit variable}{s e}
512
513 \section{Vector Operations}
514
515 \key{vector of 1, 2, $\ldots\mskip\thinmuskip$, {\it n}}{v x {\it n}}
516 \key{vector of {\it n} counts from {\it a} by {\it b}}{C-u v x}
517 \key{vector of copies of a value}{v b}
518 \key{concatenate into vector}{|}
519 \key{pack many stack items into vector}{v p}
520 \key{unpack vector or object}{v u}
521
522 \key{length of vector (list)}{v l}
523 \key{reverse vector}{v v}
524 \key{sort, grade vector}{V S\, V G}
525 \key{histogram of vector data}{V H}
526 \key{extract vector element}{v r}
527
528 \key{matrix determinant, inverse}{V D\, \&}
529 \key{matrix transpose, trace}{v t\, V T}
530 \key{cross, dot products}{V C\, *}
531 \key{identity matrix}{v i}
532 \key{extract matrix row, column}{v r\, v c}
533
534 \key{intersection, union, diff of sets}{V \^\, V V\, V -}
535 \key{cardinality of set}{V \#}
536
537 \key{add vectors elementwise (i.e., map \kbd{+})}{V M +}
538 \key{sum elements in vector (i.e., reduce \kbd{+})}{V R +}
539 \key{sum rows in matrix}{V R \_ +}
540 \key{sum columns in matrix}{V R : +}
541 \key{sum elements, accumulate results}{V U +}
542
543 % Column 5
544
545 \section{Algebra}
546
547 \wkey{enter an algebraic formula}{' 2x+3y\^2}
548 \wkey{enter an equation}{' 2x\^2=18}
549
550 \key{symbolic (vs.\ numeric) mode}{m s}
551 \key{fractions (vs.\ float) mode}{m f}
552 \key{suppress evaluation of formulas}{m O}
553 \key{simplify formulas automatically}{m S}
554 \key{return to default evaluation rules}{m D}
555
556 \key{``Big'' display mode}{d B}
557 \key{C, Pascal, FORTRAN modes}{d C\, d P\, d F}
558 \key{\TeX, eqn modes}{d T\, d E}
559 \key{Unformatted mode}{d U}
560 \key{Normal language mode}{d N}
561
562 \key{simplify formula}{a s}
563 \key{put formula into rational form}{a n}
564 \key{evaluate variables in formula}{=}
565 \key{evaluate numerically}{N}
566 \key{let variable equal a value in formula}{s l {\it x\/}={\it val}}
567 \key{declare properties of variable}{s d}
568 \iline{Common decls: \kbd{pos}, \kbd{int}, \kbd{real},
569   \kbd{scalar}, \kbd{[{\it a}..{\it b}\hskip.1em]}.}
570
571 \key{expand, collect terms}{a x\, a c}
572 \key{factor, partial fractions}{a f\, a a}
573 \key{polynomial quotient, remainder, GCD}{a \\\, a \%\, a g}
574 \key{derivative, integral}{a d\, a i}
575 \key{taylor series}{a t}
576
577 \key{principal solution to equation(s)}{a S}
578 \key{list of solutions}{a P}
579 \key{generic solution}{H a S}
580 \key{apply function to both sides of eqn}{a M}
581
582 \key{rewrite formula}{a r}
583 \iline{Example: \wkbd{a r a*b + a*c := a*(b+c)}}
584 \iline{Example: \wkbd{a r sin(x)\^2 := 1-cos(x)\^2}}
585 \iline{Example: \wkbd{a r cos(n pi) := 1 ::\ integer(n) ::\ n\%2 = 0}}
586 \iline{Example: \wkbd{a r [f(0) := 1, f(n) := n f(n-1) ::\ n > 0]}}
587 \iline{Put rules in \kbd{EvalRules} to have them apply automatically.}
588 \iline{Put rules in \kbd{AlgSimpRules} to apply during \kbd{a s}
589   command.}
590 \iline{Common markers: \kbd{opt}, \kbd{plain}, \kbd{quote}, \kbd{eval},
591   \kbd{let}, \kbd{remember}.}
592
593 \section{Numerical Computations}
594
595 \key{sum formula over a range}{a +}
596 \key{product of formula over a range}{a *}
597 \key{tabulate formula over a range}{a T}
598 \key{integrate numerically over a range}{a I}
599 \key{find zero of formula or equation}{a R}
600 \key{find local min, max of formula}{a N\, a X}
601 \key{fit data to line or curve}{a F}
602
603 \key{mean of data in vector or variable}{u M}
604 \key{median of data}{H u M}
605 \key{geometric mean of data}{u G}
606 \key{sum, product of data}{u +\, u *}
607 \key{minimum, maximum of data}{u N\, u X}
608 \key{sample, pop.\ standard deviation}{u S\, I u S}
609
610 % Column 6
611
612 \section{Selections}
613
614 \key{select subformula under cursor}{j s}
615 \key{select {\it n\/}th subformula}{j {\it n}}
616 \key{select more}{j m}
617 \key{unselect this, all formulas}{j u\, j c}
618
619 \key{copy indicated subformula}{j RET}
620 \key{delete indicated subformula}{j DEL}
621
622 \key{commute selected terms}{j C}
623 \key{commute term leftward, rightward}{j L\, j R}
624 \key{distribute, merge selection}{j D\, j M}
625 \key{isolate selected term in equation}{j I}
626 \key{negate, invert term in context}{j N\, j \&}
627 \key{rewrite selected term}{j r}
628
629 \section{Graphics}
630
631 \key{graph function or data}{g f}
632 \key{graph 3D function or data}{g F}
633 \key{replot current graph}{g p}
634 \key{print current graph}{g P}
635 \key{add curve to graph}{g a}
636 \key{set number of data points}{g N}
637 \key{set line, point styles}{g s\, g S}
638 \key{set log vs.\ linear {\it x, y} axis}{g l\, g L}
639 \key{set range for {\it x, y} axis}{g r\, g R}
640 \key{close graphics window}{g q}
641
642 \section{Programming}
643
644 \key{begin, end recording a macro}{C-x (\, C-x )}
645 \key{replay keyboard macro}{X}
646 \wkey{read region as written-out macro}{\mhash m}
647 \key{if, else, endif}{Z [\, Z :\, Z ]}
648 \key{equal to, less than, member of}{a =\, a <\, a \{}
649 \key{repeat {\it n} times, break from loop}{Z <\, Z >\, Z /}
650 \key{``for'' loop: start, end; body, step}{Z (\, Z )}
651 \key{save, restore mode settings}{Z `\, Z '}
652 \key{display message during macro}{Z =}
653 \key{query user during macro}{Z \#}
654 \key{put finished macro on a key}{Z K}
655
656 \key{define function with formula}{Z F}
657 \key{edit definition}{Z E}
658
659 \key{record user-defined command permanently}{Z P}
660 \key{record variable value permanently}{s p}
661 \key{record mode settings permanently}{m m}
662
663 \copyrightnotice
664
665 \bye
666 \f
667 % Local variables:
668 % compile-command: "tex calccard"
669 % End: