Different performance using mldivide, how to speed up my application?
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I use mldivide to solve a system's equation, eg fsol = kk \ fn. Depending on how I form the system's matrix,kk, I have a change in mldivide performance.
My code adresses fem analysis. kk is a sparse matrix. When I use kk(nd,nd) = kk(nd,nd) + k, where nd is 1x4 matrix, it is slower to form the kk matrix, but for some reason the fsol = kk \ fn runs much faster, than the case I use separate matrices to store the indices and values and form the kk matrix as kk= sparse(I,J,val).
It probably has something to do with memory allocation, but I have no idea how to solve the problem. Could someone give me some insight as to how to control the overall process?
Thank you.
2 Kommentare
Walter Roberson
am 15 Jan. 2016
If nd is 1x4 then kd(nd,nd) would be addressing 16 locations, not 4 locations. Is that your intention?
Antworten (0)
Siehe auch
Kategorien
Mehr zu Linear Algebra finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!