EDYCJA: Testuję, czy jakieś wartości własne mają wartość jednego lub więcej.
Muszę znaleźć największą absolutną wartość własną dużej, rzadkiej, niesymetrycznej macierzy.
Korzystam z eigen()
funkcji R , która korzysta z algo QR z EISPACK lub LAPACK, aby znaleźć wszystkie wartości własne, a następnie używam, abs()
aby uzyskać wartości bezwzględne. Jednak muszę to zrobić szybciej.
Próbowałem także użyć interfejsu ARPACK w igraph
pakiecie R. Dało to jednak błąd jednej z moich matryc.
Ostateczne wdrożenie musi być dostępne od R.
Prawdopodobnie będzie wiele wartości własnych tej samej wielkości.
Masz jakieś sugestie?
EDYCJA:
Dokładność musi być tylko 1e-11
. A „typowy” matryca dotąd . Byłem w stanie dokonać na tym faktoryzacji QR. Jednak możliwe jest również posiadanie znacznie większych. Obecnie zaczynam czytać o algorytmie Arnoldiego. Rozumiem, że jest to związane z Lanczsos.
EDYCJA 2: Jeśli mam wiele macierzy, które „ testuję ” i wiem, że istnieje duża podmacierz, która się nie zmienia. Czy można to zignorować / odrzucić?