A samozřejmě pokud netrváš na použití z C++, máš spoustu dalších možností. Např. GNU Octave umožňuje pohodlně použít jak LAPACK, tak UMFPACK.
Třeba tvůj příklad by vypadal takto:
N = 2000;
b = (0:N-1).';
A = b*b.' + rand (N);
x = A \ b; # použije se LAPACK.
Syntaxe řešení rovnic je úplně stejná (A \ b), i když je A řídká matice (pak se použije UMFPACK nebo CHOLMOD).
Moje zkušenost je taková, že na hustou (tj. ne řídké matice) lineární algebru je LAPACK (a jeho komerční akcelerace, např. ACML, Intel MKL) špička, pokud jde o rychlost, numerickou robustnost a state-of-the-art algoritmy.
…
Přečteno 9 983×
Přečteno 8 634×
Přečteno 7 971×
Přečteno 6 526×
Přečteno 6 077×