What is the fastest way to compute the first eigenvector?

33 visualizaciones (últimos 30 días)
I'd like to know a way to compute the first eigenvector (the eigenvector with the largest eigenvalue) of a matrix A. Now I am using eig function.
[V, D] = eig(A);
However, this computes all eigenvectors of A, resulting in slow computation.
Does anyone know if there is a fastest way to compute the eigenvector? Thank you in advance.

Respuesta aceptada

gonzalo Mier
gonzalo Mier el 10 de Jun. de 2019
Read about eigs
  4 comentarios
Shojiro SHIBAYAMA
Shojiro SHIBAYAMA el 10 de Feb. de 2020
Editada: Shojiro SHIBAYAMA el 10 de Feb. de 2020
Wow thank you for the fruitful reply. I also have saw the results:
>> A=randn(100, 10);
>> AtA = A'*A;
>> rank(AtA)
10
>> tic;for i = 1:1000; eig(AtA);end; toc;
Elapsed time is 0.000973 seconds.
>> tic;for i = 1:1000; eigs(AtA);end; toc;
Elapsed time is 0.247325 seconds.
I am going to replace eigs with eig.
gonzalo Mier
gonzalo Mier el 3 de Abr. de 2020
Really interesting! Thank you for contribute

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Logical en Help Center y File Exchange.

Etiquetas

Productos

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by