docs: public static DMatrixRMaj permuteRowInv( int pinv[] , DMatrixRMaj input , DMatrixRMaj output ) {
          if( input.numRows > pinv.length )
              throw new MatrixDimensionException("permutation vector must have at least as many elements as input has rows");
  
          if( output == null )
              output = new DMatrixRMaj(1,1);
          output.reshape(input.numRows,input.numCols);
  
          int m = input.numCols;
          for (int row = 0; row < input.numRows; row++) {
              System.arraycopy(input.data,row*m,output.data,pinv[row]*m,m);
          }
          return output;
      }