[ 
https://issues.apache.org/jira/browse/MATH-223?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Mulcahy updated MATH-223:
------------------------------

    Attachment: QRDecompositionImpl.java

The attached file uses transposed qr and Q matrices. I haven't tested this 
(sorry!) as my own code doesn't use the Commons matrix classes, but exactly the 
same code using double[][] runs in just under half the time of the original 
when decomposing a 500x500 matrix.

> QRDecomposition can easily be made to run about twice as fast
> -------------------------------------------------------------
>
>                 Key: MATH-223
>                 URL: https://issues.apache.org/jira/browse/MATH-223
>             Project: Commons Math
>          Issue Type: Improvement
>    Affects Versions: 1.2
>         Environment: Any
>            Reporter: John Mulcahy
>            Priority: Minor
>         Attachments: QRDecompositionImpl.java
>
>
> The QRDecomposition will run much faster (about twice as fast) if the qr and 
> Q matrices are calculated as their transposes and the transposition is sorted 
> out in the getQ() method. Using the transposes allows the loops to iterate 
> over rows of the transposed matrices rather than columns. It might also be 
> useful to cache the Q matrix locally when it is generated in case there are 
> any subsequent calls to getQ() as this is the most expensive part of the 
> decomposition.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to