[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Working on eigs
From: |
Marco Caliari |
Subject: |
Working on eigs |
Date: |
Mon, 10 Apr 2017 14:21:59 +0200 (CEST) |
User-agent: |
Alpine 2.10 (DEB 1266 2009-07-14) |
Dear maintainers,
I started to work on eigs. I closed bugs #39573 and #50546 (changesets
already in stable). I have also a patch for #45153 and #47236 which you
can find on my Bitbucket repository
https://bitbucket.org/caliari/octave/
(eigs bookmark). I introduced the [L,U,P,Q,R] = lu (A) factorization for
the sparse case and [L,U,P] = lu(A) for the full case. I used this test
clear all
n = 50;
A = toeplitz ((n + 1) ^ 2 * [2, -1, zeros(1, n - 2)]);
%A = toeplitz (sparse ((n + 1) ^ 2 * [2, -1, zeros(1, n - 2)]));
A = kron (A, eye (n)) + kron (eye (n), A);
opts.v0 = (1:length (A))';
opts.disp = 2;
tic
eigs (A, 10, 'sm', opts)
% new: 4.2 seconds
% old: 6.4 seconds
toc
b = ones (length(A), 1);
tic
[L, U, P] = lu (A);
toc
tic
U \ (L \ (P * b));
toc
to show the effectiveness of [L,U,P] factorization. Matlab in this case is
much faster, but I think it depends on the underlying optimized linear
algebra (MKL), since the factorization itself and the solution of
triangular systems is faster in Matlab. I was working on #49523 but do not
know how to continue. Another thing surely missing is the 'single' version
of eigs. I think the main problems are fixed now, but please review my
patches and feel free to contact me for additional issues with eigs.
Marco
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Working on eigs,
Marco Caliari <=