Dekomposisi LU menulis ulang matriks persegi A sebagai hasil kali matriks segitiga bawah L dan matriks segitiga atas U, sehingga A = LU. Ini adalah aritmatika yang sama dengan eliminasi Gaussian biasa, hanya dikemas sehingga pekerjaan eliminasi dapat digunakan kembali — itulah sebabnya ini adalah metode default yang digunakan sebagian besar perpustakaan numerik untuk menyelesaikan sistem linier, membalikkan matriks, dan menghitung determinan.
Mengapa repot-repot memfaktorkan A?
Jika Anda hanya perlu menyelesaikan Ax = b satu kali, eliminasi Gaussian biasa pada matriks yang diperbesar akan berfungsi dengan baik. Dekomposisi LU bermanfaat ketika Anda perlu menyelesaikan Ax = b untuk A yang sama terhadap banyak vektor b yang berbeda — situasi umum dalam simulasi, analisis rangkaian, dan pemecah berulang. Setelah A = LU dihitung, setiap b baru hanya memerlukan substitusi maju yang murah (selesaikan Ly = b) diikuti dengan substitusi kembali yang murah (selesaikan Ux = y), alih-alih menjalankan kembali eliminasi O(n³) penuh dari awal setiap saat.
Bagaimana perputaran parsial menjaganya tetap benar
Eliminasi Gaussian memecah saat pivot (entri diagonal yang akan Anda bagi) adalah nol — Anda tidak dapat membagi dengan nol, dan membagi dengan angka yang sangat kecil akan memperbesar kesalahan pembulatan. Pivot parsial memperbaikinya dengan memindai baris yang tersisa di kolom saat ini dan menukar baris mana pun yang memiliki nilai absolut terbesar sebelum menghilangkannya. Setiap pertukaran dilacak dalam matriks permutasi P, sehingga identitas yang disimpan setelahnya adalah P·A = L·U dan bukan A = L·U. Tab Langkah di kalkulator ini menunjukkan dengan tepat kapan dan mengapa setiap pertukaran terjadi.
Penentunya adalah produk sampingan gratis
Karena L berbentuk segitiga dengan diagonal 1s, det(L) = 1 selalu. Karena U berbentuk segitiga, determinannya hanyalah hasil kali diagonalnya. Dan karena setiap pertukaran baris membalik tanda determinan, det(A) menghasilkan (−1)^(jumlah pertukaran) × (hasil kali diagonal U) — tidak diperlukan ekspansi kofaktor terpisah. Hal ini juga yang menyebabkan angka nol di mana pun pada diagonal U menandakan matriks tunggal: hasil kali menjadi nol, jadi det(A) = 0 tidak peduli apa pun putaran yang dilakukan selama proses tersebut.