Section: Array Generation and Manipulations
a(ndx) = val
where ndx is a set of vector indexing coordinates.  This means
that the values ndx takes reference the elements of a in column
order.  So, if, for example a is an N x M matrix, the first column
has vector indices 1,2,...,N, and the second column has indices
N+1,N+2,...,2N, and so on.  Alternately, you can use multi-dimensional
indexing to make an assignment:
a(ndx_1,ndx_2,..,ndx_m) = val
where each indexing expression ndx_i corresponds to the i-th dimension
of a.  In both cases, (vector or multi-dimensional indexing), the
right hand side val must either be a scalar, an empty matrix, or of the
same size as the indices.  If val is an empty matrix, the assignment acts
like a delete.  Note that the type of a may be modified by the assignment.
So, for example, assigning a double value to an element of a float 
array a will cause the array a to become double.  
For cell arrays, the above forms of assignment will still work, but only
if val is also a cell array.  If you want to assign the contents of
a cell in a cell array, you must use one of the two following forms, either
  a{ndx} = val
or
  a{ndx_1,ndx_2,...,ndx_m} = val
which will modify the contents of the cell.