Formando el complemento Schur
Suponga que ha permutado y dividido su matriz en el formulario
A = ( A11UN21UN12UN22) ,
tal que contenga sus grados de libertad de interés y sea mucho más pequeño que A 11 , entonces uno puede formar el complemento SchurUN22UN11
S22: = A22- A21UN- 111UN12,
ya sea a través de una factorización LU parcial de aspecto correcto o la fórmula explícita, y luego puede entenderse en el siguiente sentido:S22
S22x = y→( A11UN21UN12UN22) ( ⋆X) = ( 0y) ,
donde representa la parte 'poco interesante' de la solución. Por lo tanto, dado un lado derecho que no es cero en los grados de libertad del complemento Schur S 22 , solo necesitamos resolver contra S 22 para obtener la porción de la solución correspondiente a esos grados de libertad.⋆S22S22
Complejidad computacional en caso denso no estructurado
Configuración de a la altura de A y n a la altura de A 22 , a continuación, el método estándar para el cálculo de S 22 es a primera factor de L 11 U 11 : = A 11 (Ignoremos pivotante por ahora) en aproximadamente 2 / 3 ( N - n ) 3 trabajos, luego formarnorteUNnorteUN22S22L11U11: = A112 / 3 ( N- n )3
S22: = A22−(A21U−111)(L−111A12)=A22−A21A−111A12
usando dos soluciones triangulares que requieren trabajo cada una, y luego realizando la actualización a A 22 en 2 n 2 ( N - n ) trabajo.n(N−n)2A222n2(N−n)
Por lo tanto, el trabajo total es aproximadamente . Cuando n es muy pequeño, N - n ≈ N , por lo que el coste puede ser visto a ser aproximadamente 2 / 3 N 3 , que es el costo de una factorización completa.2/3(N−n)3+2n(N−n)2+2n2(N−n)nN-n≈N2 /3N3
El beneficio es que, si hay una gran cantidad de lados derechos para resolver con el mismo sistema de ecuaciones, entonces podría potencialmente reutilizarse una gran cantidad de veces, donde cada resolución solo requeriría 2 n 2 de trabajo (en lugar de 2 N 2 funciona) si S 22 está factorizado.S222 n22 N2S22
Complejidad computacional en el caso disperso (típico)
Si su sistema disperso surgió de algún tipo de aproximación por diferencias finitas o elementos finitos, entonces los solucionadores directos dispersos seguramente podrán explotar parte de la estructura; Sistemas 2D se pueden resolver con de trabajo y O ( N log N ) de almacenamiento, mientras que los sistemas 3D se pueden resolver con O ( N 2 ) de trabajo y O ( N 4 / 3 ) de almacenamiento. Los sistemas factorizados se pueden resolver con la misma cantidad de trabajo que los requisitos de almacenamiento.O ( N3 / 2)O ( NIniciar sesiónnorte)O ( N2)O ( N4 / 3)
El punto de plantear las complejidades computacionales es que, si y usted tiene un sistema 2d, entonces dado que el complemento de Schur probablemente será denso, la complejidad de resolución dado el complemento de Schur factorizado seráO(n2)=O(N), que solo le falta un factor logarítmico en lugar de resolver el completo ¡sistema! En 3D, que requiereO(N)trabajo en lugar deO(N 4 / 3 ).n ≈ N--√O ( n2) = O ( N)O ( N)O ( N4 / 3)
Por lo tanto, es importante tener en cuenta que, en su caso, donde , solo habrá ahorros significativos si está trabajando en varias dimensiones y tiene muchos lados derechos para resolver.n = N--√