code: public static void applyReflectorsToRow( final int blockLength ,
                                               final DSubmatrixD1 A ,
                                               final DSubmatrixD1 V ,
                                               int row )
      {
          int height = Math.min(blockLength, A.row1 - A.row0);
  
          double dataA[] = A.original.data;
          double dataV[] = V.original.data;
  
          int indexU,indexV;
  
          // for each previously computed reflector
          for( int i = 0; i < row; i++ ) {
              int width = Math.min(blockLength,A.col1 - A.col0);
  
              indexU = A.original.numCols*A.row0 + height*A.col0 + i*width + row;
              indexV = V.original.numCols*V.row0 + height*V.col0 + i*width + row;
  
              double u_row = (i+1 == row) ? 1.0 : dataA[ indexU ];
              double v_row = dataV[ indexV ];
  
              // take in account the leading one
              double before = A.get(i,i+1);
              A.set(i,i+1,1);
  
              // grab only the relevant row from A = A + u*v^T + v*u^T
              VectorOps_DDRB.add_row(blockLength,A,row,1,V,i,u_row,A,row,row,A.col1-A.col0);
              VectorOps_DDRB.add_row(blockLength,A,row,1,A,i,v_row,A,row,row,A.col1-A.col0);
  
              A.set(i,i+1,before);
          }
      }
docs: <p>
  Applies the reflectors that have been computed previously to the specified row.
  <br>
  A = A + u*v^T + v*u^T only along the specified row in A.
  </p>
  
  @param blockLength
  @param A Contains the reflectors and the row being updated.
  @param V Contains previously computed 'v' vectors.
  @param row The row of 'A' that is to be updated.