docs: protected void updateA( DSubmatrixD1 A )
      {
          setW();
  
          A.row0 = Y.row0;
          A.row1 = Y.row1;
          A.col0 = Y.col1;
          A.col1 = Y.original.numCols;
  
          WTA.row0 = 0;
          WTA.col0 = 0;
          WTA.row1 = W.col1-W.col0;
          WTA.col1 = A.col1-A.col0;
          WTA.original.reshape(WTA.row1,WTA.col1,false);
  
          if( A.col1 > A.col0 ) {
              BlockHouseHolder_DDRB.computeW_Column(blockLength,Y,W,temp, gammas,Y.col0);
  
              MatrixMult_DDRB.multTransA(blockLength,W,A,WTA);
              BlockHouseHolder_DDRB.multAdd_zeros(blockLength,Y,WTA,A);
          } else if( saveW ) {
              BlockHouseHolder_DDRB.computeW_Column(blockLength,Y,W,temp, gammas,Y.col0);
          }
      }