Sistema de resolución de ecuaciones lineales con matriz tridiagonal cíclica

8

Tengo este problema en mi libro de texto:

Sugiera un algoritmo eficiente para resolver un sistema de ecuaciones lineales con matriz cíclica de tres diagonales, que tiene la forma: sin intercambiar filas y columnas. Estime la complejidad.

[a1b100d1c2a2b20000cn2an2bn200cn1an1bn1d200cnan]

Y no sé cómo abordar esto. Eliminación clásica funcionaría muy eficiente en tiempo con esta matriz, pero el problema es cuando, digamos, quiero eliminar con fila -st que es añadir a segunda fila y cuando . No puedo hacer eso, e incluso si entonces el mismo problema puede ocurrir en algún lugar en medio de este proceso. Además, como dice el texto del problema, no se me permite intercambiar filas o columnas, por lo que no sé si este enfoque se puede solucionar de alguna manera. ¿Alguien puede ayudar?O(n)c21c2a1[a1b100d1]a1=0a10

xan
fuente
La forma de la matriz no le impedirá encontrarse con un problema con la matriz (o una submatriz) siendo singular, pero no leí el problema como preguntando qué podría salir mal. En cambio, al pedir un "algoritmo eficiente ... sin intercambiar filas y columnas", parece que su "[c] eliminación lassica" sin pivotar sería un enfoque razonable. ¿Ves cómo estimar la complejidad de este método?
hardmath

Respuestas:

4

No es difícil determinar la complejidad de una eliminación / reducción directa a la forma triangular superior. Tenga en cuenta que la matriz inicial:

[a1b100d1c2a2b20000cn2an2bn200cn1an1bn1d200cnan]

se convierte después de un paso de eliminación:

[a1b100d10a2b1c2a1b20d1c2a100cn2an2bn200cn1an1bn10b1d2a10cnand1d2a1]

El costo de este paso es constante , y deja una submatriz cíclica de tres diagonales en la esquina inferior derecha. Por lo tanto, la reducción total implicará un costo de . Para resolver un sistema lineal, uno podría realizar las mismas operaciones en el lado derecho, también un costo . Entonces, también se debe realizar una resolución posterior con una matriz triangular superior que tenga como máximo tres entradas distintas de cero por fila, otra tarea . Eso representa la complejidad de resolver sistemas con tales matrices de coeficientes.O(1)(n1)×(n1)O(n)O(n)O(n)

hardmath
fuente
1
+1, gracias, pero ¿y si ? Entonces el primer paso será diferente. Y puede haber complicaciones adicionales. ¿No es eso un problema? a1=0
xan
Es una limitación de la eliminación gaussiana sin pivotar que cuando los ceros aparecen en lugares donde queremos (en esencia) producir uno principal, ¡entonces estamos atascados! La idea de pivotar parcial es tratar de evitar esto mediante el intercambio táctico de filas (resp. Filas y columnas de intercambio giratorio completo). Pero la declaración del problema prohíbe el intercambio de filas o columnas, lo que interpreto como tratar de mantener su análisis de complejidad lo más simple posible. Ciertas condiciones (como el dominio diagonal ) pueden mantenerse y garantizar el éxito sin pivotar.
hardmath