Valor propio más pequeño sin inverso

11

Suponga que ARn×n es una matriz simétrica definida positiva. A es lo suficientemente grande como para resolver Ax=b directamente.

¿Existe un algoritmo iterativo para encontrar el valor propio más pequeño de A que no implique invertir A en cada iteración?

Es decir, tendría que usar un algoritmo iterativo como gradientes conjugados para resolver Ax=b , por lo que aplicar repetidamente A1 parece un costoso "bucle interno". Solo necesito un único vector propio.

¡Gracias!

Justin Solomon
fuente
1
¿Has intentado usar la descomposición de Cholesky? Tendría que factorizar A en LLT con L siendo una matriz triangular. Una vez que tenga la factorización (solo lo hace una vez), puede usarla en cada iteración para resolver el sistema muy rápido mediante sustitución hacia adelante y hacia atrás.
Juan M. Bello-Rivas
¿Es A una matriz escasa?
Tolga Birdal
A
Si está usando matlab u octava, use la eigsrutina. Es un método iterativo. Hay opciones para especificar qué valor propio desea, por ejemplo, el real más pequeño .
sebastian_g
AA

Respuestas:

13
  1. λmaxAeigs('lm')

  2. λ^maxM=AλmaxIeigs('lm')

  3. λ^max+λmax=λmin(A)

  4. Encuentre su vector propio resolviendo .v(AλminI)v=0

GoHokies
fuente