Формування доповнення Щура
Припустимо, ви перестановили та розподілили вашу матрицю у формі
A=(A11A21A12A22),
таким чином, що містить ваші ступені свободи інтересів і набагато менше, ніж A 11 , тоді можна сформувати доповнення ШураA22A11
S22:=A22−A21A−111A12,
або через часткову правильну LU-факторизацію, або явну формулу, і тоді можна зрозуміти в наступному сенсі:S22
S22x=y→(A11A21A12A22)(⋆x)=(0y),
де являє собою нецікаву частину рішення. Таким чином, за умови правостороння сторона, яка є лише нульовою в ступенях свободи доповнення Шура S 22 , нам потрібно вирішити лише проти S 22 , щоб отримати частину розчину, відповідну цим ступеням свободи.⋆S22S22
Обчислювальна складність у неструктурованому щільному випадку
Установка на висоту А і п до висоти А 22 , то стандартний метод обчислення S 22 є першим фактора L 11 U 11 : = 11 (давайте ігнорувати повороту на даний момент) в приблизно 2 / 3 ( N - п ) 3 роботи, потім сформуватиNAnA22S22L11U11:=A112/3(N−n)3
S22:=A22−(A21U−111)(L−111A12)=A22−A21A−111A12
з використанням двох трикутників, що вимагають працювати кожен, а потім виконувати оновлення до A 22 у 2 n 2 ( N - n ) роботі.n(N−n)2A222n2(N−n)
Таким чином, загальна робота приблизно . При п дуже мала, N - п ≈ Н , так що вартість може бути видно, що приблизно 2 / 3 Н 3 , який є вартість повного розкладання.2/3(N−n)3+2n(N−n)2+2n2(N−n)nN−n≈N2/3N3
Перевага полягає в тому, що якщо існує дуже велика кількість правої сторони, яку слід вирішити за допомогою однієї і тієї ж системи рівнянь, потенційно може бути використана у великій кількості разів, коли для кожного рішення потрібно буде лише 2 n 2 роботи (а не 2 N 2 працює), якщо S 22 враховується.S222n22N2S22
Обчислювальна складність у (типовому) рідкісному випадку
Якщо ваша розріджена система виникла з якихось типів кінцевих різниць або наближення кінцевих елементів, то розріджені прямі розв'язувачі майже напевно зможуть використовувати частину структури; 2d системи можуть бути вирішені за допомогою роботи та O ( N журнал N ) зберігання, в той час як 3D - системи можуть бути вирішені за допомогою O ( N 2 ) роботи та O ( N 4 / 3 ) для зберігання. Системи з фактом можуть бути вирішені таким же обсягом роботи, що і вимоги щодо зберігання.O(N3/2)O(NlogN)O(N2)O(N4/3)
Суть виведення обчислювальної складності полягає в тому, що якщо і у вас є система 2d, то, оскільки доповнення Шура, ймовірно, буде щільним, складність розв язання з урахуванням фактично складеного доповнення Шура будеO(n2)=O(N), якому не вистачає лише логарифмічного коефіцієнта проти вирішення повного система! У 3d, вона вимагаєO(N)роботу замістьO(N 4 / 3 ).n≈N−−√O(n2)=O(N)O(N)O(N4/3)
Тому важливо пам’ятати, що у вашому випадку, коли , значні заощадження будуть лише в тому випадку, якщо ви працюєте в декількох вимірах і матимете багато правого боку для вирішення.n=N−−√