Using this flag, transpose-on-write policies can obtain performance improvements by avoiding the actual matrix transposition until it is necessary.
This flag will be a private boolean value in the QVMatrix class, indicating the storage order of the matrix values in the data buffer (row order if 'false', col order if 'true').
The method QVMatrix::transpose() should return a matrix object pointing to the same data-buffer and with the value for the 'transpose' flag inverted. Access operators such as m(i,j), matrix operations such as '*' or '+', and decomposition functions such as Cholesky can internally operate considering the row or column order without significant performance differences. And the transpose operation of large matrices will have an insignificant performance time.
Log in to post a comment.