# HG changeset patch
# User Michael Godfrey <michaeldgodfrey@gmail.com>
# Date 1388864279 18000
#      Sat Jan 04 14:37:59 2014 -0500
# Node ID 78073f0ce9840bc201bbdb1af0d7e56b4d409508
# Parent  cda4bd2fd0c09e1a3287cf990d991488c045404b
Edits to Manual and indicies

diff -r cda4bd2fd0c0 -r 78073f0ce984 doc/interpreter/diagperm.txi
--- a/doc/interpreter/diagperm.txi	Fri Jan 03 20:55:33 2014 -0500
+++ b/doc/interpreter/diagperm.txi	Sat Jan 04 14:37:59 2014 -0500
@@ -18,6 +18,8 @@
 
 @node Diagonal and Permutation Matrices
 @chapter Diagonal and Permutation Matrices
+@cindex diagonal and permutation matrices
+@cindex matrices, diagonal and permutation
 
 @menu
 * Basic Usage::          Creation and Manipulation of Diagonal/Permutation Matrices
@@ -224,6 +226,7 @@
 
 @node Expressions Involving Diagonal Matrices
 @subsection Expressions Involving Diagonal Matrices
+@cindex diagonal matrix expressions
 
 Assume @var{D} is a diagonal matrix.  If @var{M} is a full matrix,
 then @code{D*M} will scale the rows of @var{M}.  That means,
@@ -260,6 +263,7 @@
 i.e., null rows are appended to the result.
 The situation for right-multiplication @code{M*D} is analogous.
 
+@cindex pseudoinverse
 The expressions @code{D \ M} and @code{M / D} perform inverse scaling.
 They are equivalent to solving a diagonal (or rectangular diagonal)
 in a least-squares minimum-norm sense.  In exact arithmetic, this is
@@ -270,12 +274,12 @@
 The matrix division algorithms do, in fact, use division rather than 
 multiplication by reciprocals for better numerical accuracy; otherwise, they
 honor the above definition.  Note that a diagonal matrix is never truncated due
-to ill-conditioning; otherwise, it would not be much useful for scaling.  This
+to ill-conditioning; otherwise, it would not be of much use for scaling.  This
 is typically consistent with linear algebra needs.  A full matrix that only
-happens to be diagonal (an is thus not a special object) is of course treated
+happens to be diagonal (and is thus not a special object) is of course treated
 normally.
 
-Multiplication and division by diagonal matrices works efficiently also when
+Multiplication and division by diagonal matrices work efficiently also when
 combined with sparse matrices, i.e., @code{D*S}, where @var{D} is a diagonal
 matrix and @var{S} is a sparse matrix scales the rows of the sparse matrix and
 returns a sparse matrix.  The expressions @code{S*D}, @code{D\S}, @code{S/D}
@@ -399,6 +403,8 @@
 
 @node Permutation Matrix Functions
 @subsection Permutation Matrix Functions
+@cindex matrix, permutation functions
+@cindex permutation matrix functions
 
 @dfn{inv} and @dfn{pinv} will invert a permutation matrix, preserving its
 specialness.  @dfn{det} can be applied to a permutation matrix, efficiently
@@ -455,7 +461,7 @@
 @end example
 
 @noindent
-Finally, here's how you solve a linear system @code{A*x = b}
+Finally, here's how to solve a linear system @code{A*x = b}
 with Tikhonov regularization (ridge regression) using SVD (a skeleton only):
 
 @example
@@ -477,16 +483,17 @@
 
 @node Zeros Treatment
 @section Differences in Treatment of Zero Elements
+@cindex matrix, zero elements
 
 Making diagonal and permutation matrices special matrix objects in their own
 right and the consequent usage of smarter algorithms for certain operations
 implies, as a side effect, small differences in treating zeros.
-The contents of this section applies also to sparse matrices, discussed in
-the following chapter.
+The contents of this section apply also to sparse matrices, discussed in
+the following chapter. (@pxref{Sparse Matrices})
 
-The IEEE standard defines the result of the expressions @code{0*Inf} and 
-@code{0*NaN} as @code{NaN}, as it has been generally agreed that this is the
-best compromise.
+The IEEE floating point standard defines the result of the expressions @code{0*Inf} and 
+@code{0*NaN} as @code{NaN}. This is widely agreed to be a good
+compromise.
 Numerical software dealing with structured and sparse matrices (including
 Octave) however, almost always makes a distinction between a "numerical zero"
 and an "assumed zero". 
diff -r cda4bd2fd0c0 -r 78073f0ce984 doc/interpreter/linalg.txi
--- a/doc/interpreter/linalg.txi	Fri Jan 03 20:55:33 2014 -0500
+++ b/doc/interpreter/linalg.txi	Sat Jan 04 14:37:59 2014 -0500
@@ -18,6 +18,7 @@
 
 @node Linear Algebra
 @chapter Linear Algebra
+@cindex linear algebra
 
 This chapter documents the linear algebra functions of Octave.
 Reference material for many of these functions may be found in
@@ -34,6 +35,7 @@
 
 @node Techniques Used for Linear Algebra
 @section Techniques Used for Linear Algebra
+@cindex linear algebra, techniques
 
 Octave includes a polymorphic solver, that selects an appropriate
 matrix factorization depending on the properties of the matrix itself. 
@@ -81,6 +83,7 @@
 
 @node Basic Matrix Functions
 @section Basic Matrix Functions
+@cindex matrix functions, basic
 
 @DOCSTRING(balance)
 
@@ -109,6 +112,7 @@
 @DOCSTRING(mgorth)
 
 @DOCSTRING(pinv)
+@cindex pseudoinverse
 
 @DOCSTRING(rank)
 
@@ -120,6 +124,7 @@
 
 @node Matrix Factorizations
 @section Matrix Factorizations
+@cindex matrix factorizations
 
 @DOCSTRING(chol)
 
@@ -173,6 +178,7 @@
 
 @node Functions of a Matrix
 @section Functions of a Matrix
+@cindex matrix, functions of
 
 @DOCSTRING(expm)
 
@@ -188,6 +194,7 @@
 
 @node Specialized Solvers
 @section Specialized Solvers
+@cindex matrix, specialized solvers
 
 @DOCSTRING(bicg)
 
diff -r cda4bd2fd0c0 -r 78073f0ce984 doc/interpreter/plot.txi
--- a/doc/interpreter/plot.txi	Fri Jan 03 20:55:33 2014 -0500
+++ b/doc/interpreter/plot.txi	Sat Jan 04 14:37:59 2014 -0500
@@ -49,6 +49,7 @@
 
 @node High-Level Plotting
 @section High-Level Plotting
+@cindex plotting, high-level
 
 Octave provides simple means to create many different types of two- and
 three-dimensional plots using high-level functions.
@@ -261,8 +262,9 @@
 
 @node Two-dimensional Function Plotting
 @subsubsection Two-dimensional Function Plotting
-
-Octave can plot a function from a function handle inline function or
+@cindex plotting, two-dimensional functions
+
+Octave can plot a function from a function handle, inline function, or
 string defining the function without the user needing to explicitly
 create the data to be plotted.  The function @code{fplot} also generates
 two-dimensional plots with linear axes using a function name and limits
@@ -300,6 +302,7 @@
 
 @node Three-Dimensional Plots
 @subsection Three-Dimensional Plots
+@cindex plotting, three-dimensional
 
 The function @code{mesh} produces mesh surface plots.  For example,
 
@@ -480,6 +483,7 @@
 
 @node Multiple Plots on One Page
 @subsection Multiple Plots on One Page
+@cindex plotting, multiple plots per figure
 
 Octave can display more than one plot in a single figure.  The simplest
 way to do this is to use the @code{subplot} function to divide the plot
@@ -506,6 +510,7 @@
 
 @node Multiple Plot Windows
 @subsection Multiple Plot Windows
+@cindex plotting, multiple plot windows
 
 You can open multiple plot windows using the @code{figure} function.
 For example,
@@ -527,6 +532,7 @@
 
 @node Manipulation of Plot Windows
 @subsection Manipulation of Plot Windows
+@cindex plotting, window manipulation
 
 By default, Octave refreshes the plot window when a prompt is printed,
 or when waiting for input.  The
@@ -903,6 +909,7 @@
 
 @node Printing and Saving Plots
 @subsection Printing and Saving Plots
+@cindex plotting, saving and printing plots
 @cindex printing plots
 @cindex saving plots
 
@@ -1253,6 +1260,7 @@
 @DOCSTRING(findfigs)
 
 @cindex saving graphics objects
+@cindex graphics objects, saving
 
 Figures can be printed or saved in many graphics formats with @code{print} and
 @code{saveas}.  Occasionally, however, it may be useful to save the original
@@ -2985,8 +2993,8 @@
 object representing the baseline is given by the @code{baseline} property and
 the y-value of the baseline by the @code{basevalue} property.
 
-Changes to any of these property are propagated to the other members of
-the bar series and to the baseline itself.  Equally changes in the
+Changes to any of these properties are propagated to the other members of
+the bar series and to the baseline itself.  Equally, changes in the
 properties of the base line itself are propagated to the members of the
 corresponding bar series.
 
