\section{MEAN Mean Function}

\subsection{Usage}

Computes the mean of an array along a given dimension.  The general
syntax for its use is
\begin{verbatim}
  y = mean(x,d)
\end{verbatim}
where \verb|x| is an \verb|n|-dimensions array of numerical type.
The output is of the same numerical type as the input.  The argument
\verb|d| is optional, and denotes the dimension along which to take
the mean.  The output \verb|y| is the same size as \verb|x|, except
that it is singular along the mean direction.  So, for example,
if \verb|x| is a \verb|3 x 3 x 4| array, and we compute the mean along
dimension \verb|d=2|, then the output is of size \verb|3 x 1 x 4|.
\subsection{Function Internals}

The output is computed via
\[
y(m_1,\ldots,m_{d-1},1,m_{d+1},\ldots,m_{p}) = \frac{1}{N}
\sum_{k=1}^{N} x(m_1,\ldots,m_{d-1},k,m_{d+1},\ldots,m_{p})
\]
If \verb|d| is omitted, then the mean is taken along the 
first non-singleton dimension of \verb|x|. 
\subsection{Example}

The following piece of code demonstrates various uses of the mean
function
\begin{verbatim}
--> A = [5,1,3;3,2,1;0,3,1]
A = 
  <int32>  - size: [3 3]
 
Columns 1 to 3
 5  1  3  
 3  2  1  
 0  3  1  

\end{verbatim}
We start by calling \verb|mean| without a dimension argument, in which 
case it defaults to the first nonsingular dimension (in this case, 
along the columns or \verb|d = 1|).
\begin{verbatim}
--> mean(A)
ans = 
  <double>  - size: [1 3]
 
Columns 1 to 3
 2.6666666666666665  2.0000000000000000  1.6666666666666667  

\end{verbatim}
Next, we take the mean along the rows.
\begin{verbatim}
--> mean(A,2)
ans = 
  <double>  - size: [3 1]
 
Columns 1 to 1
 3.0000000000000000  
 2.0000000000000000  
 1.3333333333333333  

\end{verbatim}
