     }
     
     
+    /**
+        Gets or sets the subvector at the given row index range at the given column.
+    
+        :param: rowRange    The row index range of the desired subvector.
+        :param: column      The column of the desired subvector.
+    
+        :returns: A vector representing the subvector at the given row index range at
+                    the given column.
+    
+        :exception: Throws an exception when any of the indices is out of bounds.
+    */
     subscript(rowRange: Range<Int>, column: Int) -> Vector<T> {
         
         get {

    
    
    /**
        Returns the size of the matrix if the matrix is square. If the matrix is not square, an exception will be raised.
    
        :returns: The size of the matrix if the matrix is square.
    */
    var size: Int? {
        return self.dimensions.size

    }
    
    
    /**
        Gets or sets the submatrix at the given index ranges.
    
        :param: rowRange    The row index range of the desired submatrix.
        :param: columnRange The column index range of the desired submatrix.
    
        :returns: A matrix representing the submatrix at the given index ranges.
    
        :exception: Throws an exception when any of the index ranges is out of bounds.
    */
    subscript(rowRange: Range<Int>, columnRange: Range<Int>) -> Matrix<T> {
        
        get {
