~ubuntu-branches/debian/sid/octave3.0/sid

« back to all changes in this revision

Viewing changes to doc/interpreter/octave.info-5

  • Committer: Bazaar Package Importer
  • Author(s): Thomas Weber
  • Date: 2008-08-12 22:28:01 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20080812222801-b3myaxymt2k5m709
Tags: 1:3.0.1-6lenny1
Allow libhdf5-openmpi-dev to satisfy Octave's hdf5 dependency (closes:
#494139)

Show diffs side-by-side

added added

removed removed

Lines of Context:
21
21
versions.
22
22
 
23
23
 
 
24
File: octave.info,  Node: Documentation Tips,  Prev: Function Headers,  Up: Tips
 
25
 
 
26
C.5 Tips for Documentation Strings
 
27
==================================
 
28
 
 
29
As noted above, documentation is typically in a commented header block
 
30
on an Octave function following the copyright statement. The help string
 
31
shown above is an unformatted string and will be displayed as is by
 
32
Octave. Here are some tips for the writing of documentation strings.
 
33
 
 
34
   * Every command, function, or variable intended for users to know
 
35
     about should have a documentation string.
 
36
 
 
37
   * An internal variable or subroutine of an Octave program might as
 
38
     well have a documentation string.
 
39
 
 
40
   * The first line of the documentation string should consist of one
 
41
     or two complete sentences that stand on their own as a summary.
 
42
 
 
43
     The documentation string can have additional lines that expand on
 
44
     the details of how to use the function or variable.  The
 
45
     additional lines should also be made up of complete sentences.
 
46
 
 
47
   * For consistency, phrase the verb in the first sentence of a
 
48
     documentation string as an infinitive with "to" omitted.  For
 
49
     instance, use "Return the frob of A and B." in preference to
 
50
     "Returns the frob of A and B."  Usually it looks good to do
 
51
     likewise for the rest of the first paragraph.  Subsequent
 
52
     paragraphs usually look better if they have proper subjects.
 
53
 
 
54
   * Write documentation strings in the active voice, not the passive,
 
55
     and in the present tense, not the future.  For instance, use
 
56
     "Return a list containing A and B." instead of "A list containing
 
57
     A and B will be returned."
 
58
 
 
59
   * Avoid using the word "cause" (or its equivalents) unnecessarily.
 
60
     Instead of, "Cause Octave to display text in boldface," write just
 
61
     "Display text in boldface."
 
62
 
 
63
   * Do not start or end a documentation string with whitespace.
 
64
 
 
65
   * Format the documentation string so that it fits in an Emacs window
 
66
     on an 80-column screen.  It is a good idea for most lines to be no
 
67
     wider than 60 characters.
 
68
 
 
69
     However, rather than simply filling the entire documentation
 
70
     string, you can make it much more readable by choosing line breaks
 
71
     with care.  Use blank lines between topics if the documentation
 
72
     string is long.
 
73
 
 
74
   * *Do not* indent subsequent lines of a documentation string so that
 
75
     the text is lined up in the source code with the text of the first
 
76
     line.  This looks nice in the source code, but looks bizarre when
 
77
     users view the documentation.  Remember that the indentation
 
78
     before the starting double-quote is not part of the string!
 
79
 
 
80
   * The documentation string for a variable that is a yes-or-no flag
 
81
     should start with words such as "Nonzero means...", to make it
 
82
     clear that all nonzero values are equivalent and indicate
 
83
     explicitly what zero and nonzero mean.
 
84
 
 
85
   * When a function's documentation string mentions the value of an
 
86
     argument of the function, use the argument name in capital letters
 
87
     as if it were a name for that value.  Thus, the documentation
 
88
     string of the operator `/' refers to its second argument as
 
89
     `DIVISOR', because the actual argument name is `divisor'.
 
90
 
 
91
     Also use all caps for meta-syntactic variables, such as when you
 
92
     show the decomposition of a list or vector into subunits, some of
 
93
     which may vary.
 
94
 
 
95
   Octave also allows extensive formatting of the help string of
 
96
functions using Texinfo.  The effect on the online documentation is
 
97
relatively small, but makes the help string of functions conform to the
 
98
help of Octave's own functions.  However, the effect on the appearance
 
99
of printed or online documentation will be greatly improved.
 
100
 
 
101
   The fundamental building block of Texinfo documentation strings is
 
102
the Texinfo-macro `@deftypefn', which takes three arguments: The class
 
103
the function is in, its output arguments, and the function's signature.
 
104
Typical classes for functions include `Function File' for standard
 
105
Octave functions, and `Loadable Function' for dynamically linked
 
106
functions.  A skeletal Texinfo documentation string therefore looks
 
107
like this
 
108
 
 
109
     -*- texinfo -*-
 
110
     @deftypefn{Function File} {@var{ret} = } fn (...)
 
111
     @cindex index term
 
112
     Help text in Texinfo format.  Code samples should be marked
 
113
     like @code{sample of code} and variables should be marked
 
114
     as @var{variable}.
 
115
     @seealso{fn2}
 
116
     @end deftypefn
 
117
 
 
118
   This help string must be commented in user functions, or in the help
 
119
string of the `DEFUN_DLD' macro for dynamically loadable functions.
 
120
The important aspects of the documentation string are
 
121
 
 
122
-*- texinfo -*-
 
123
     This string signals Octave that the follow text is in Texinfo
 
124
     format, and should be the first part of any help string in Texinfo
 
125
     format.
 
126
 
 
127
@deftypefn{class} ... @end deftypefn
 
128
     The entire help string should be enclosed within the block defined
 
129
     by deftypefn.
 
130
 
 
131
@cindex index term
 
132
     This generates an index entry, and can be useful when the function
 
133
     is included as part of a larger piece of documentation.  It is
 
134
     ignored within Octave's help viewer.
 
135
 
 
136
@var{variable}
 
137
     All variables should be marked with this macro.  The markup of
 
138
     variables is then changed appropriately for display.
 
139
 
 
140
@code{sample of code}
 
141
     All samples of code should be marked with this macro for the same
 
142
     reasons as the @var macro.
 
143
 
 
144
@seealso{function2}
 
145
     This is a comma separated list of function names that allows cross
 
146
     referencing from one function documentation string to another.
 
147
 
 
148
   Texinfo format has been designed to generate output for online
 
149
viewing with text-terminals as well as generating high-quality printed
 
150
output.  To these ends, Texinfo has commands which control the
 
151
diversion of parts of the document into a particular output processor.
 
152
Three formats are of importance: info, html and TeX.  These are
 
153
selected with
 
154
 
 
155
     @ifinfo
 
156
     Text area for info only
 
157
     @end ifinfo
 
158
 
 
159
     @ifhtml
 
160
     Text area for html only
 
161
     @end ifhtml
 
162
 
 
163
     @iftex
 
164
     @tex
 
165
     text for TeX only
 
166
     @end tex
 
167
     @end iftex
 
168
 
 
169
   Note that often TeX output can be used in html documents and so often
 
170
the `@ifhtml' blocks are unnecessary. If no specific output processor
 
171
is chosen, by default, the text goes into all output processors. It is
 
172
usual to have the above blocks in pairs to allow the same information
 
173
to be conveyed in all output formats, but with a different markup.
 
174
 
 
175
   Another important feature of Texinfo that is often used in Octave
 
176
help strings is the `@example' environment. An example of its use is
 
177
 
 
178
     @example
 
179
     @group
 
180
     @code{2 * 2}
 
181
     @result{} 4
 
182
     @end group
 
183
     @end example
 
184
 
 
185
   which produces
 
186
 
 
187
     `2 * 2'
 
188
     => 4
 
189
 
 
190
   The `@group' block prevents the example from being split across a
 
191
page boundary, while the `@result{}' macro produces a right arrow
 
192
signifying the result of a command.
 
193
 
 
194
   In many cases a function has multiple means in which it can be
 
195
called, and the `@deftypefnx' macro can be used to give alternatives.
 
196
For example
 
197
 
 
198
     -*- texinfo -*-
 
199
     @deftypefn{Function File} {@var{a} = } fn (@var{x}, ...)
 
200
     @deftypefnx{Function File} {@var{a} = } fn (@var{y}, ...)
 
201
     Help text in Texinfo format.
 
202
     @end deftypefn
 
203
 
 
204
   Many complete examples of Texinfo documentation can be taken from the
 
205
help strings for the Octave functions themselves. A relatively complete
 
206
example of which is the `nchoosek' function. The Texinfo documentation
 
207
string of `nchoosek' is
 
208
 
 
209
     -*- texinfo -*-
 
210
     @deftypefn {Function File} {} nchoosek (@var{n}, @var{k})
 
211
 
 
212
     Compute the binomial coefficient or all combinations of
 
213
     @var{n}. If @var{n} is a scalar then, calculate the
 
214
     binomial coefficient of @var{n} and @var{k}, defined as
 
215
 
 
216
     @iftex
 
217
     @tex
 
218
     $$
 
219
      {n \choose k} = {n (n-1) (n-2) \cdots (n-k+1) \over k!}
 
220
     $$
 
221
     @end tex
 
222
     @end iftex
 
223
     @ifinfo
 
224
 
 
225
     @example
 
226
     @group
 
227
      /   \
 
228
      | n |    n (n-1) (n-2) ... (n-k+1)
 
229
      |   |  = -------------------------
 
230
      | k |               k!
 
231
      \   /
 
232
     @end group
 
233
     @end example
 
234
     @end ifinfo
 
235
 
 
236
     If @var{n} is a vector, this generates all combinations
 
237
     of the elements of @var{n}, taken @var{k} at a time,
 
238
     one row per combination. The resulting @var{c} has size
 
239
     @code{[nchoosek (length (@var{n}),@var{k}), @var{k}]}.
 
240
 
 
241
     @seealso{bincoeff}
 
242
     @end deftypefn
 
243
 
 
244
   which demonstrates most of the concepts discussed above.
 
245
 
 
246
 
 
247
File: octave.info,  Node: Trouble,  Next: Installation,  Prev: Tips,  Up: Top
 
248
 
 
249
Appendix D Known Causes of Trouble
 
250
**********************************
 
251
 
 
252
   This section describes known problems that affect users of Octave.
 
253
Most of these are not Octave bugs per se--if they were, we would fix
 
254
them.  But the result for a user may be like the result of a bug.
 
255
 
 
256
   Some of these problems are due to bugs in other software, some are
 
257
missing features that are too much work to add, and some are places
 
258
where people's opinions differ as to what is best.
 
259
 
 
260
* Menu:
 
261
 
 
262
* Actual Bugs::                 Bugs we will fix later.
 
263
* Reporting Bugs::
 
264
* Bug Criteria::
 
265
* Bug Lists::
 
266
* Bug Reporting::
 
267
* Sending Patches::
 
268
* Service::
 
269
 
 
270
 
 
271
File: octave.info,  Node: Actual Bugs,  Next: Reporting Bugs,  Up: Trouble
 
272
 
 
273
D.1 Actual Bugs We Haven't Fixed Yet
 
274
====================================
 
275
 
 
276
   * Output that comes directly from Fortran functions is not sent
 
277
     through the pager and may appear out of sequence with other output
 
278
     that is sent through the pager.  One way to avoid this is to force
 
279
     pending output to be flushed before calling a function that will
 
280
     produce output from within Fortran functions.  To do this, use the
 
281
     command
 
282
 
 
283
          fflush (stdout)
 
284
 
 
285
     Another possible workaround is to use the command
 
286
 
 
287
          page_screen_output = "false"
 
288
 
 
289
     to turn the pager off.
 
290
 
 
291
   A list of ideas for future enhancements is distributed with Octave.
 
292
See the file `PROJECTS' in the top level directory in the source
 
293
distribution.
 
294
 
 
295
 
 
296
File: octave.info,  Node: Reporting Bugs,  Next: Bug Criteria,  Prev: Actual Bugs,  Up: Trouble
 
297
 
 
298
D.2 Reporting Bugs
 
299
==================
 
300
 
 
301
Your bug reports play an essential role in making Octave reliable.
 
302
 
 
303
   When you encounter a problem, the first thing to do is to see if it
 
304
is already known.  *Note Trouble::.  If it isn't known, then you should
 
305
report the problem.
 
306
 
 
307
   Reporting a bug may help you by bringing a solution to your problem,
 
308
or it may not.  In any case, the principal function of a bug report is
 
309
to help the entire community by making the next version of Octave work
 
310
better.  Bug reports are your contribution to the maintenance of Octave.
 
311
 
 
312
   In order for a bug report to serve its purpose, you must include the
 
313
information that makes it possible to fix the bug.
 
314
 
 
315
   If you have Octave working at all, the easiest way to prepare a
 
316
complete bug report is to use the Octave function `bug_report'.  When
 
317
you execute this function, Octave will prompt you for a subject and then
 
318
invoke the editor on a file that already contains all the configuration
 
319
information.  When you exit the editor, Octave will mail the bug report
 
320
for you.
 
321
 
 
322
 -- Function File:  bug_report ()
 
323
     Have Octave create a bug report template file, invoke your favorite
 
324
     editor, and submit the report to the bug-octave mailing list when
 
325
     you are finished editing.
 
326
 
 
327
* Menu:
 
328
 
 
329
* Bug Criteria::
 
330
* Where: Bug Lists.             Where to send your bug report.
 
331
* Reporting: Bug Reporting.     How to report a bug effectively.
 
332
* Patches: Sending Patches.     How to send a patch for Octave.
 
333
 
 
334
 
 
335
File: octave.info,  Node: Bug Criteria,  Next: Bug Lists,  Prev: Reporting Bugs,  Up: Trouble
 
336
 
 
337
D.3 Have You Found a Bug?
 
338
=========================
 
339
 
 
340
If you are not sure whether you have found a bug, here are some
 
341
guidelines:
 
342
 
 
343
   * If Octave gets a fatal signal, for any input whatever, that is a
 
344
     bug.  Reliable interpreters never crash.
 
345
 
 
346
   * If Octave produces incorrect results, for any input whatever, that
 
347
     is a bug.
 
348
 
 
349
   * Some output may appear to be incorrect when it is in fact due to a
 
350
     program whose behavior is undefined, which happened by chance to
 
351
     give the desired results on another system.  For example, the
 
352
     range operator may produce different results because of
 
353
     differences in the way floating point arithmetic is handled on
 
354
     various systems.
 
355
 
 
356
   * If Octave produces an error message for valid input, that is a bug.
 
357
 
 
358
   * If Octave does not produce an error message for invalid input,
 
359
     that is a bug.  However, you should note that your idea of
 
360
     "invalid input" might be my idea of "an extension" or "support for
 
361
     traditional practice".
 
362
 
 
363
   * If you are an experienced user of programs like Octave, your
 
364
     suggestions for improvement are welcome in any case.
 
365
 
 
366
 
 
367
File: octave.info,  Node: Bug Lists,  Next: Bug Reporting,  Prev: Bug Criteria,  Up: Trouble
 
368
 
 
369
D.4 Where to Report Bugs
 
370
========================
 
371
 
 
372
If you have Octave working at all, the easiest way to prepare a complete
 
373
bug report is to use the Octave function `bug_report'.  When you
 
374
execute this function, Octave will prompt you for a subject and then
 
375
invoke the editor on a file that already contains all the configuration
 
376
information.  When you exit the editor, Octave will mail the bug report
 
377
for you.
 
378
 
 
379
   If for some reason you cannot use Octave's `bug_report' function,
 
380
send bug reports for Octave to <bug@octave.org>.
 
381
 
 
382
   *Do not send bug reports to `help-octave'*.  Most users of Octave do
 
383
not want to receive bug reports.  Those that do have asked to be on the
 
384
mailing list.
 
385
 
 
386
   As a last resort, send bug reports on paper to:
 
387
 
 
388
     Octave Bugs c/o John W. Eaton
 
389
     University of Wisconsin-Madison
 
390
     Department of Chemical Engineering
 
391
     1415 Engineering Drive
 
392
     Madison, Wisconsin 53706  USA
 
393
 
 
394
 
 
395
File: octave.info,  Node: Bug Reporting,  Next: Sending Patches,  Prev: Bug Lists,  Up: Trouble
 
396
 
 
397
D.5 How to Report Bugs
 
398
======================
 
399
 
 
400
Send bug reports for Octave to one of the addresses listed in *note Bug
 
401
Lists::.
 
402
 
 
403
   The fundamental principle of reporting bugs usefully is this:
 
404
*report all the facts*.  If you are not sure whether to state a fact or
 
405
leave it out, state it!
 
406
 
 
407
   Often people omit facts because they think they know what causes the
 
408
problem and they conclude that some details don't matter.  Thus, you
 
409
might assume that the name of the variable you use in an example does
 
410
not matter.  Well, probably it doesn't, but one cannot be sure.
 
411
Perhaps the bug is a stray memory reference which happens to fetch from
 
412
the location where that name is stored in memory; perhaps, if the name
 
413
were different, the contents of that location would fool the
 
414
interpreter into doing the right thing despite the bug.  Play it safe
 
415
and give a specific, complete example.
 
416
 
 
417
   Keep in mind that the purpose of a bug report is to enable someone to
 
418
fix the bug if it is not known. Always write your bug reports on the
 
419
assumption that the bug is not known.
 
420
 
 
421
   Sometimes people give a few sketchy facts and ask, "Does this ring a
 
422
bell?"  This cannot help us fix a bug.  It is better to send a complete
 
423
bug report to begin with.
 
424
 
 
425
   Try to make your bug report self-contained.  If we have to ask you
 
426
for more information, it is best if you include all the previous
 
427
information in your response, as well as the information that was
 
428
missing.
 
429
 
 
430
   To enable someone to investigate the bug, you should include all
 
431
these things:
 
432
 
 
433
   * The version of Octave.  You can get this by noting the version
 
434
     number that is printed when Octave starts, or running it with the
 
435
     `-v' option.
 
436
 
 
437
   * A complete input file that will reproduce the bug.
 
438
 
 
439
     A single statement may not be enough of an example--the bug might
 
440
     depend on other details that are missing from the single statement
 
441
     where the error finally occurs.
 
442
 
 
443
   * The command arguments you gave Octave to execute that example and
 
444
     observe the bug.  To guarantee you won't omit something important,
 
445
     list all the options.
 
446
 
 
447
     If we were to try to guess the arguments, we would probably guess
 
448
     wrong and then we would not encounter the bug.
 
449
 
 
450
   * The type of machine you are using, and the operating system name
 
451
     and version number.
 
452
 
 
453
   * The command-line arguments you gave to the `configure' command when
 
454
     you installed the interpreter.
 
455
 
 
456
   * A complete list of any modifications you have made to the
 
457
     interpreter source.
 
458
 
 
459
     Be precise about these changes--show a context diff for them.
 
460
 
 
461
   * Details of any other deviations from the standard procedure for
 
462
     installing Octave.
 
463
 
 
464
   * A description of what behavior you observe that you believe is
 
465
     incorrect.  For example, "The interpreter gets a fatal signal,"
 
466
     or, "The output produced at line 208 is incorrect."
 
467
 
 
468
     Of course, if the bug is that the interpreter gets a fatal signal,
 
469
     then one can't miss it.  But if the bug is incorrect output, we
 
470
     might not notice unless it is glaringly wrong.
 
471
 
 
472
     Even if the problem you experience is a fatal signal, you should
 
473
     still say so explicitly.  Suppose something strange is going on,
 
474
     such as, your copy of the interpreter is out of synch, or you have
 
475
     encountered a bug in the C library on your system.  Your copy
 
476
     might crash and the copy here would not.  If you said to expect a
 
477
     crash, then when the interpreter here fails to crash, we would
 
478
     know that the bug was not happening.  If you don't say to expect a
 
479
     crash, then we would not know whether the bug was happening.  We
 
480
     would not be able to draw any conclusion from our observations.
 
481
 
 
482
     Often the observed symptom is incorrect output when your program
 
483
     is run.  Unfortunately, this is not enough information unless the
 
484
     program is short and simple.  It is very helpful if you can
 
485
     include an explanation of the expected output, and why the actual
 
486
     output is incorrect.
 
487
 
 
488
   * If you wish to suggest changes to the Octave source, send them as
 
489
     context diffs.  If you even discuss something in the Octave source,
 
490
     refer to it by context, not by line number, because the line
 
491
     numbers in the development sources probably won't match those in
 
492
     your sources.
 
493
 
 
494
   Here are some things that are not necessary:
 
495
 
 
496
   * A description of the envelope of the bug.
 
497
 
 
498
     Often people who encounter a bug spend a lot of time investigating
 
499
     which changes to the input file will make the bug go away and
 
500
     which changes will not affect it.  Such information is usually not
 
501
     necessary to enable us to fix bugs in Octave, but if you can find
 
502
     a simpler example to report _instead_ of the original one, that is
 
503
     a convenience.  Errors in the output will be easier to spot,
 
504
     running under the debugger will take less time, etc. Most Octave
 
505
     bugs involve just one function, so the most straightforward way to
 
506
     simplify an example is to delete all the function definitions
 
507
     except the one in which the bug occurs.
 
508
 
 
509
     However, simplification is not vital; if you don't want to do
 
510
     this, report the bug anyway and send the entire test case you used.
 
511
 
 
512
   * A patch for the bug.  Patches can be helpful, but if you find a
 
513
     bug, you should report it, even if you cannot send a fix for the
 
514
     problem.
 
515
 
 
516
 
24
517
File: octave.info,  Node: Sending Patches,  Next: Service,  Prev: Bug Reporting,  Up: Trouble
25
518
 
26
519
D.6 Sending Patches for Octave
788
1281
     functions (such as `cd' or `who') which are also reserved using
789
1282
     `font-lock-keyword-face'
790
1283
 
791
 
   * the built-in operators (`&&', `<>', ...) using
 
1284
   * the built-in operators (`&&', `==', ...) using
792
1285
     `font-lock-reference-face'
793
1286
 
794
1287
   * and the function names in function declarations in
1894
2387
* Fordyce, A. P.:                        Calling a Function by its Name.
1895
2388
                                                              (line  16)
1896
2389
* Frobenius norm:                        Basic Matrix Functions.
1897
 
                                                              (line 172)
 
2390
                                                              (line 183)
1898
2391
* function descriptions:                 A Sample Function Description.
1899
2392
                                                              (line   6)
1900
2393
* function file <1>:                     Function Files.      (line   6)
1933
2426
* incorrect results:                     Bug Criteria.        (line  12)
1934
2427
* increment operator:                    Assignment Ops.      (line 177)
1935
2428
* infinity norm:                         Basic Matrix Functions.
1936
 
                                                              (line 168)
 
2429
                                                              (line 179)
1937
2430
* initialization:                        Startup Files.       (line   6)
1938
2431
* inline, inline functions:              Function Handles Inline Functions and Anonymous Functions.
1939
2432
                                                              (line   6)
2353
2846
* blackman:                              Signal Processing.   (line 392)
2354
2847
* blanks:                                Creating Strings.    (line  13)
2355
2848
* blkdiag:                               Rearranging Matrices.
2356
 
                                                              (line 364)
 
2849
                                                              (line 366)
2357
2850
* bode:                                  sysfreq.             (line  12)
2358
2851
* bode_bounds:                           sysfreq.             (line  77)
2359
2852
* bone:                                  Representing Images. (line  76)
2430
2923
                                                              (line 175)
2431
2924
* class:                                 Built-in Data Types. (line  17)
2432
2925
* clc:                                   Cursor Motion.       (line  57)
2433
 
* clear:                                 Status of Variables. (line 159)
 
2926
* clear:                                 Status of Variables. (line 160)
2434
2927
* clf:                                   Graphics Objects.    (line 255)
2435
2928
* clock:                                 Timing Utilities.    (line 302)
2436
2929
* cloglog:                               Basic Statistical Functions.
2551
3044
                                                              (line   7)
2552
3045
* DEMOcontrol:                           Control Theory.      (line  25)
2553
3046
* det:                                   Basic Matrix Functions.
2554
 
                                                              (line  51)
 
3047
                                                              (line  53)
2555
3048
* detrend:                               Signal Processing.   (line   7)
2556
3049
* dgkfdemo:                              cacsd.               (line   7)
2557
3050
* dgram:                                 numerical.           (line 115)
2581
3074
* dmperm:                                MathConsiderations.  (line 380)
2582
3075
* dmr2d:                                 systime.             (line  94)
2583
3076
* dmult:                                 Basic Matrix Functions.
2584
 
                                                              (line  55)
 
3077
                                                              (line  57)
2585
3078
* do_string_escapes:                     String Conversions.  (line 199)
2586
 
* document:                              Status of Variables. (line 198)
 
3079
* document:                              Status of Variables. (line 216)
2587
3080
* dos:                                   Controlling Subprocesses.
2588
3081
                                                              (line  61)
2589
3082
* dot:                                   Basic Matrix Functions.
2590
 
                                                              (line  59)
 
3083
                                                              (line  61)
2591
3084
* double:                                Numeric Data Types.  (line  47)
2592
3085
* drawnow:                               Graphics Objects.    (line 204)
2593
3086
* dre:                                   numerical.           (line  73)
2610
3103
* EDITOR:                                Commands For History.
2611
3104
                                                              (line 152)
2612
3105
* eig:                                   Basic Matrix Functions.
2613
 
                                                              (line  65)
 
3106
                                                              (line  67)
2614
3107
* elem:                                  Matrices and Arrays in Oct-Files.
2615
3108
                                                              (line  77)
2616
3109
* empirical_cdf:                         Distributions.       (line 118)
2673
3166
* feval:                                 Calling a Function by its Name.
2674
3167
                                                              (line  52)
2675
3168
* fflush:                                Paging Screen Output.
2676
 
                                                              (line  64)
 
3169
                                                              (line  65)
2677
3170
* fft:                                   Signal Processing.   (line  17)
2678
3171
* fft2:                                  Signal Processing.   (line 124)
2679
3172
* fftconv:                               Signal Processing.   (line 168)
2747
3240
* fscanf:                                Formatted Input.     (line  12)
2748
3241
* fseek:                                 File Positioning.    (line  16)
2749
3242
* fsolve:                                Nonlinear Equations. (line  16)
2750
 
* fsolve_options:                        Nonlinear Equations. (line  34)
 
3243
* fsolve_options:                        Nonlinear Equations. (line  53)
2751
3244
* ftell:                                 File Positioning.    (line  10)
2752
3245
* full:                                  Creation.            (line 303)
2753
3246
* fullfile:                              Filesystem Utilities.
2809
3302
* getuid:                                Process ID Information.
2810
3303
                                                              (line  19)
2811
3304
* givens:                                Basic Matrix Functions.
2812
 
                                                              (line  75)
 
3305
                                                              (line  77)
2813
3306
* glob:                                  Filesystem Utilities.
2814
3307
                                                              (line 241)
2815
3308
* glpk:                                  Linear Programming.  (line  16)
2929
3422
* intmax:                                Integer Data Types.  (line  60)
2930
3423
* intmin:                                Integer Data Types.  (line  92)
2931
3424
* inv:                                   Basic Matrix Functions.
2932
 
                                                              (line  86)
 
3425
                                                              (line  88)
2933
3426
* inverse:                               Basic Matrix Functions.
2934
 
                                                              (line  87)
 
3427
                                                              (line  89)
2935
3428
* invhilb:                               Famous Matrices.     (line  54)
2936
3429
* ipermute:                              Rearranging Matrices.
2937
3430
                                                              (line 149)
2976
3469
* isdir:                                 Filesystem Utilities.
2977
3470
                                                              (line 238)
2978
3471
* isempty:                               Object Sizes.        (line  65)
2979
 
* isequal:                               Comparison Ops.      (line  45)
2980
 
* isequalwithequalnans:                  Comparison Ops.      (line  50)
 
3472
* isequal:                               Comparison Ops.      (line  44)
 
3473
* isequalwithequalnans:                  Comparison Ops.      (line  49)
2981
3474
* isfield:                               Manipulating Structures.
2982
3475
                                                              (line  15)
2983
3476
* isfigure:                              Graphics Objects.    (line  44)
3126
3619
* mahalanobis:                           Basic Statistical Functions.
3127
3620
                                                              (line   9)
3128
3621
* makeinfo_program:                      Getting Help.        (line  94)
3129
 
* manova:                                Tests.               (line 258)
 
3622
* manova:                                Tests.               (line 270)
3130
3623
* mark_as_command:                       Commands.            (line  39)
3131
3624
* mark_as_rawcommand:                    Commands.            (line  56)
3132
3625
* mat2cell:                              Creating Cell Arrays.
3133
3626
                                                              (line  67)
3134
3627
* mat2str:                               Creating Strings.    (line 111)
3135
3628
* matrix_type:                           Basic Matrix Functions.
3136
 
                                                              (line  92)
 
3629
                                                              (line  94)
3137
3630
* max:                                   Utility Functions.   (line 181)
3138
3631
* max_recursion_depth:                   Recursion.           (line  29)
3139
 
* mcnemar_test:                          Tests.               (line 272)
 
3632
* mcnemar_test:                          Tests.               (line 284)
3140
3633
* md5sum:                                Hashing Functions.   (line  27)
3141
3634
* mean:                                  Descriptive Statistics.
3142
3635
                                                              (line   9)
3211
3704
* nnz:                                   Information.         (line  26)
3212
3705
* nonzeros:                              Information.         (line  31)
3213
3706
* norm:                                  Basic Matrix Functions.
3214
 
                                                              (line 156)
 
3707
                                                              (line 167)
3215
3708
* normcdf:                               Distributions.       (line 301)
3216
3709
* normest:                               Sparse Linear Algebra.
3217
3710
                                                              (line  89)
3225
3718
* nthroot:                               Utility Functions.   (line 255)
3226
3719
* ntsc2rgb:                              Color Conversion.    (line  31)
3227
3720
* null:                                  Basic Matrix Functions.
3228
 
                                                              (line 192)
 
3721
                                                              (line 203)
3229
3722
* num2cell:                              Creating Cell Arrays.
3230
3723
                                                              (line  59)
3231
3724
* num2str:                               Creating Strings.    (line 137)
3251
3744
                                                              (line  76)
3252
3745
* ord2:                                  blockdiag.           (line 124)
3253
3746
* orderfields:                           Creating Structures. (line  90)
3254
 
* orient:                                Printing Plots.      (line 122)
 
3747
* orient:                                Printing Plots.      (line 132)
3255
3748
* orth:                                  Basic Matrix Functions.
3256
 
                                                              (line 201)
 
3749
                                                              (line 212)
3257
3750
* output_max_field_width:                Matrices.            (line 110)
3258
3751
* output_precision:                      Matrices.            (line 117)
3259
3752
* P_tmpdir:                              Filesystem Utilities.
3261
3754
* pack:                                  File Archiving Utilities.
3262
3755
                                                              (line  65)
3263
3756
* page_output_immediately:               Paging Screen Output.
3264
 
                                                              (line  57)
 
3757
                                                              (line  58)
3265
3758
* page_screen_output:                    Paging Screen Output.
3266
 
                                                              (line  49)
 
3759
                                                              (line  50)
3267
3760
* PAGER:                                 Paging Screen Output.
3268
 
                                                              (line  32)
 
3761
                                                              (line  33)
3269
3762
* PAGER_FLAGS:                           Paging Screen Output.
3270
 
                                                              (line  42)
 
3763
                                                              (line  43)
3271
3764
* parallel:                              blockdiag.           (line 481)
3272
3765
* parseparams:                           Variable-length Argument Lists.
3273
3766
                                                              (line  62)
3302
3795
                                                              (line 585)
3303
3796
* pink:                                  Representing Images. (line 129)
3304
3797
* pinv:                                  Basic Matrix Functions.
3305
 
                                                              (line 210)
 
3798
                                                              (line 221)
3306
3799
* pipe:                                  Controlling Subprocesses.
3307
3800
                                                              (line 182)
3308
3801
* pkg:                                   Packages.            (line  23)
3348
3841
* popen2:                                Controlling Subprocesses.
3349
3842
                                                              (line  99)
3350
3843
* postpad:                               Rearranging Matrices.
3351
 
                                                              (line 350)
 
3844
                                                              (line 352)
3352
3845
* pow2:                                  Utility Functions.   (line 265)
3353
3846
* ppplot:                                Statistical Plots.   (line  37)
3354
3847
* ppval:                                 Polynomial Interpolation.
3355
3848
                                                              (line  61)
3356
3849
* prepad:                                Rearranging Matrices.
3357
 
                                                              (line 349)
 
3850
                                                              (line 351)
3358
3851
* primes:                                Utility Functions.   (line 272)
3359
3852
* print:                                 Printing Plots.      (line  15)
3360
3853
* print_answer_id_name:                  Terminal Output.     (line 192)
3368
3861
* program_name:                          Command Line Options.
3369
3862
                                                              (line 149)
3370
3863
* prompt:                                misc.                (line  23)
3371
 
* prop_test_2:                           Tests.               (line 287)
 
3864
* prop_test_2:                           Tests.               (line 299)
3372
3865
* PS1:                                   Customizing the Prompt.
3373
3866
                                                              (line  57)
3374
3867
* PS2:                                   Customizing the Prompt.
3428
3921
* range:                                 Basic Statistical Functions.
3429
3922
                                                              (line 102)
3430
3923
* rank:                                  Basic Matrix Functions.
3431
 
                                                              (line 220)
 
3924
                                                              (line 231)
3432
3925
* ranks:                                 Basic Statistical Functions.
3433
3926
                                                              (line  94)
3434
3927
* rat:                                   Rational Approximations.
3493
3986
* round:                                 Utility Functions.   (line 292)
3494
3987
* rows:                                  Object Sizes.        (line  24)
3495
3988
* rref:                                  Basic Matrix Functions.
3496
 
                                                              (line 234)
 
3989
                                                              (line 245)
3497
3990
* run:                                   Calling a Function by its Name.
3498
3991
                                                              (line  71)
3499
3992
* run_count:                             Basic Statistical Functions.
3500
3993
                                                              (line  89)
3501
3994
* run_history:                           Commands For History.
3502
3995
                                                              (line 106)
3503
 
* run_test:                              Tests.               (line 306)
 
3996
* run_test:                              Tests.               (line 318)
3504
3997
* save:                                  Simple File I/O.     (line  29)
3505
3998
* save_header_format_string:             Simple File I/O.     (line 224)
3506
3999
* save_precision:                        Simple File I/O.     (line 219)
3548
4041
* sighup_dumps_octave_core:              Saving Data on Unexpected Exits.
3549
4042
                                                              (line  22)
3550
4043
* sign:                                  Utility Functions.   (line 298)
3551
 
* sign_test:                             Tests.               (line 315)
 
4044
* sign_test:                             Tests.               (line 327)
3552
4045
* sigterm_dumps_octave_core:             Saving Data on Unexpected Exits.
3553
4046
                                                              (line  28)
3554
4047
* silent_functions:                      Defining Functions.  (line 161)
3716
4209
* svd:                                   Matrix Factorizations.
3717
4210
                                                              (line 217)
3718
4211
* swap:                                  Rearranging Matrices.
3719
 
                                                              (line 294)
 
4212
                                                              (line 296)
3720
4213
* swapbytes:                             Built-in Data Types. (line  44)
3721
4214
* swapcols:                              Rearranging Matrices.
3722
 
                                                              (line 298)
 
4215
                                                              (line 300)
3723
4216
* swaprows:                              Rearranging Matrices.
3724
 
                                                              (line 302)
 
4217
                                                              (line 304)
3725
4218
* syl:                                   Functions of a Matrix.
3726
4219
                                                              (line  55)
3727
4220
* sylvester_matrix:                      Famous Matrices.     (line 105)
3761
4254
* system:                                Controlling Subprocesses.
3762
4255
                                                              (line  17)
3763
4256
* sysupdate:                             structaccess.        (line 261)
3764
 
* t_test:                                Tests.               (line 335)
3765
 
* t_test_2:                              Tests.               (line 353)
3766
 
* t_test_regression:                     Tests.               (line 372)
 
4257
* t_test:                                Tests.               (line 347)
 
4258
* t_test_2:                              Tests.               (line 365)
 
4259
* t_test_regression:                     Tests.               (line 384)
3767
4260
* table:                                 Basic Statistical Functions.
3768
4261
                                                              (line  65)
3769
4262
* tan:                                   Trigonometry.        (line  17)
3772
4265
* tar:                                   File Archiving Utilities.
3773
4266
                                                              (line  32)
3774
4267
* tcdf:                                  Distributions.       (line 335)
 
4268
* tempdir:                               Filesystem Utilities.
 
4269
                                                              (line 343)
3775
4270
* tempname:                              Filesystem Utilities.
3776
4271
                                                              (line 346)
3777
4272
* test:                                  Test Functions.      (line   7)
3796
4291
* toupper:                               String Conversions.  (line 191)
3797
4292
* tpdf:                                  Distributions.       (line 343)
3798
4293
* trace:                                 Basic Matrix Functions.
3799
 
                                                              (line 231)
 
4294
                                                              (line 242)
3800
4295
* trapz:                                 Functions of One Variable.
3801
4296
                                                              (line 131)
3802
4297
* treeplot:                              Information.         (line 179)
3803
4298
* triangle_lw:                           Signal Processing.   (line 579)
3804
4299
* triangle_sw:                           Signal Processing.   (line 583)
3805
4300
* tril:                                  Rearranging Matrices.
3806
 
                                                              (line 306)
 
4301
                                                              (line 308)
3807
4302
* trimesh:                               Plotting the Triangulation.
3808
4303
                                                              (line  20)
3809
4304
* triplot:                               Plotting the Triangulation.
3810
4305
                                                              (line  10)
3811
4306
* triu:                                  Rearranging Matrices.
3812
 
                                                              (line 307)
 
4307
                                                              (line 309)
3813
4308
* trnd:                                  Random Number Generation.
3814
4309
                                                              (line 195)
3815
4310
* true:                                  Logical Values.      (line  47)
3817
4312
                                                              (line  56)
3818
4313
* tsearchn:                              Identifying points in Triangulation.
3819
4314
                                                              (line  63)
3820
 
* type:                                  Status of Variables. (line 201)
 
4315
* type:                                  Status of Variables. (line 219)
3821
4316
* typecast:                              Built-in Data Types. (line  29)
3822
4317
* typeinfo:                              Data Types.          (line  19)
3823
4318
* tzero:                                 sysfreq.             (line 217)
3824
4319
* tzero2:                                sysfreq.             (line 240)
3825
 
* u_test:                                Tests.               (line 392)
 
4320
* u_test:                                Tests.               (line 404)
3826
4321
* ugain:                                 blockdiag.           (line 452)
3827
4322
* uint16:                                Integer Data Types.  (line  45)
3828
4323
* uint32:                                Integer Data Types.  (line  51)
3870
4365
* vander:                                Famous Matrices.     (line 130)
3871
4366
* var:                                   Descriptive Statistics.
3872
4367
                                                              (line  79)
3873
 
* var_test:                              Tests.               (line 411)
 
4368
* var_test:                              Tests.               (line 423)
3874
4369
* vec:                                   Rearranging Matrices.
3875
 
                                                              (line 340)
 
4370
                                                              (line 342)
3876
4371
* vech:                                  Rearranging Matrices.
3877
 
                                                              (line 344)
 
4372
                                                              (line 346)
3878
4373
* vectorize:                             Inline Functions.    (line  47)
3879
4374
* ver:                                   System Information.  (line  66)
3880
4375
* version:                               System Information.  (line  62)
3896
4391
* wblrnd:                                Random Number Generation.
3897
4392
                                                              (line 224)
3898
4393
* weekday:                               Timing Utilities.    (line 529)
3899
 
* welch_test:                            Tests.               (line 430)
 
4394
* welch_test:                            Tests.               (line 442)
3900
4395
* wgt1o:                                 blockdiag.           (line 460)
3901
 
* which:                                 Status of Variables. (line 207)
 
4396
* which:                                 Status of Variables. (line 225)
3902
4397
* white:                                 Representing Images. (line 166)
3903
4398
* who:                                   Status of Variables. (line  18)
3904
4399
* whos:                                  Status of Variables. (line  19)
3905
4400
* whos_line_format:                      Status of Variables. (line  54)
3906
4401
* wienrnd:                               Random Number Generation.
3907
4402
                                                              (line 233)
3908
 
* wilcoxon_test:                         Tests.               (line 449)
 
4403
* wilcoxon_test:                         Tests.               (line 461)
3909
4404
* wilkinson:                             Famous Matrices.     (line 145)
3910
4405
* winter:                                Representing Images. (line 173)
3911
4406
* xlabel:                                Plot Annotations.    (line  81)
3913
4408
                                                              (line  48)
3914
4409
* ylabel:                                Plot Annotations.    (line  82)
3915
4410
* yulewalker:                            Signal Processing.   (line 587)
3916
 
* z_test:                                Tests.               (line 470)
3917
 
* z_test_2:                              Tests.               (line 488)
 
4411
* z_test:                                Tests.               (line 482)
 
4412
* z_test_2:                              Tests.               (line 500)
3918
4413
* zeros:                                 Special Utility Matrices.
3919
4414
                                                              (line  56)
3920
4415
* zgfmul:                                numerical.           (line 197)
3945
4440
 
3946
4441
* !:                                     Element-by-element Boolean Operators.
3947
4442
                                                              (line  37)
3948
 
* !=:                                    Comparison Ops.      (line  39)
 
4443
* !=:                                    Comparison Ops.      (line  38)
3949
4444
* " <1>:                                 Strings.             (line   6)
3950
4445
* ":                                     String Objects.      (line   6)
3951
4446
* &:                                     Element-by-element Boolean Operators.
3979
4474
* ;:                                     Matrices.            (line   6)
3980
4475
* <:                                     Comparison Ops.      (line  22)
3981
4476
* <=:                                    Comparison Ops.      (line  25)
3982
 
* <>:                                    Comparison Ops.      (line  39)
3983
4477
* =:                                     Assignment Ops.      (line   6)
3984
4478
* ==:                                    Comparison Ops.      (line  28)
3985
4479
* >:                                     Comparison Ops.      (line  34)
3995
4489
                                                              (line  28)
3996
4490
* ~:                                     Element-by-element Boolean Operators.
3997
4491
                                                              (line  37)
3998
 
* ~=:                                    Comparison Ops.      (line  39)
 
4492
* ~=:                                    Comparison Ops.      (line  38)
3999
4493
 
4000
4494