Tugas 3 - Matriks Invers#
Berikut adalah beberapa sifat-sifat matriks invers kalimat:#
Hanya untuk Matriks Persegi:
Matriks invers hanya dimiliki oleh matriks persegi, yaitu matriks yang memiliki jumlah baris dan kolom yang sama.
Sebuah matriks harus berbentuk persegi untuk memiliki matriks invers, artinya baris dan kolomnya harus sama banyak.
Matriks Non-Singular:
Matriks invers hanya ada untuk matriks non-singular, yang berarti determinannya tidak boleh sama dengan nol.
Sebuah matriks hanya memiliki invers jika matriks tersebut non-singular, yaitu determinannya bukan nol.
Unik:
Matriks invers bersifat unik, artinya tidak ada matriks invers lain selain yang menjadi invers dari matriks tersebut. Jika B dan C adalah invers dari matriks A, maka B = C.
Invers suatu matriks adalah satu-satunya, yang berarti jika B dan C adalah invers dari matriks A, maka B pasti sama dengan C.
Invers dari Invers:
Invers dari invers suatu matriks adalah matriks itu sendiri.
Jika Anda membalikkan invers suatu matriks, Anda akan mendapatkan matriks aslinya kembali.
Invers dari Perkalian Matriks:
Invers dari hasil kali dua atau lebih matriks adalah hasil kali invers-inversnya dalam urutan terbalik. Jika A dan B keduanya nonsingular, maka \(( AB^-1 )\) = \((B^-1 A^-1)\).
Ketika dua atau lebih matriks dikalikan, invers dari hasil kali tersebut sama dengan perkalian invers-invers dari matriks-matriks tersebut dalam urutan terbalik. Jika A dan B adalah matriks non-singular, maka invers dari AB adalah \((B^-1)\) \(( A^-1 )\)
Mencari Invers dengan Eliminasi Gauss-Jordan Dalam metode Gauss-Jordan
kita menggunakan Operasi Baris Elementer \((OBE)\) untuk mengubah sebuah matriks menjadi bentuk identitas. Operasi OBE terdiri dari tiga jenis, yaitu:
Menambahkan kelipatan baris ke baris yang lain:
Anda dapat menambahkan kelipatan suatu baris ke baris yang lain untuk mengeliminasi elemen-elemen tertentu. Misalnya, jika Anda memiliki baris \(( R_i)\) dan \(( R_j )\), Anda dapat mengganti \(( R_j )\) dengan \( (R_j)\) + \((k cdot R_i )\), di mana \(( k )\) adalah suatu konstanta.
Mengalikan baris dengan bilangan selain nol:
Anda dapat mengalikan seluruh elemen dalam satu baris dengan suatu bilangan bukan nol. Misalnya, jika Anda memiliki baris \(( R_i )\), Anda dapat menggantinya dengan \(( k cdot R_i )\), di mana \(( k neq 0 )\).
Menukarkan posisi baris satu dengan baris yang lain:
Anda dapat menukar posisi dua baris. Misalnya, Anda dapat menukar baris \(( R_i )\) dengan baris \(( R_j )\).
Langkah-langkah Mencari Invers Matriks dengan Gauss-Jordan#
Gabungkan matriks A dengan matriks identitas I:
Jika Anda memiliki matriks \(( A )\) berukuran \(( n times n )\), buat matriks augmented \(( [A | I] )\), di mana \(( I )\) adalah matriks identitas berukuran ( n times n )$$.
Gunakan Operasi Baris Elementer (OBE) untuk mengubah ( A ) menjadi ( I ):
Terapkan OBE pada matriks augmented \(( [A | I] )\) untuk mengubah bagian \(( A )\) menjadi matriks identitas \(( I )\). Lakukan ini dengan mengikuti aturan OBE yang disebutkan di atas.
Peroleh invers matriks dari bagian kanan matriks augmented:
Setelah bagian \(( A )\) dari matriks augmented \(( [A | I] )\) menjadi matriks identitas, bagian kanan yang tadinya adalah \(( I )\) akan berubah menjadi invers dari \(( A )\), yaitu \((A^-1)\)
Menyelesaikan soal persamaan 6 variabel
Misalkan diberikan peramsaan 6 variabel sebagai berikut:
Matriks Koefisien (A)#
Vektor Hasil (b)#
Matriks Augmented \(([A | b])\)#
Untuk menyelesaikan sistem persamaan ini menggunakan metode eliminasi Gauss-Jordan, kita membentuk matriks augmented dengan menggabungkan matriks (A) dan vektor (b):
Dengan matriks augmented ini, kita dapat menerapkan operasi baris elementer (OBE) untuk mengubah bagian kiri dari matriks augmented menjadi matriks identitas, sehingga bagian kanan dari matriks augmented akan menjadi solusi dari sistem persamaan tersebut.
import numpy as np
A = np.array([[4,2,5,3,1,6,30],[3,1,4,2,2,5,28],[5,3,6,1,3,2,34],[2,4,3,5,1,3,27],[1,2,1,4,6,2,25],[6,5,2,1,4,3,35]])
print(f"Matrix A = \n{A}")
print("\n")
B = np.array([[1,0,0,0,0,0],[0,1,0,0,0,0],[0,0,1,0,0,0],[0,0,0,1,0,0],[0,0,0,0,1,0],[0,0,0,0,0,1]])
print(f"Matrix I = \n{B}")
Matrix A =
[[ 4 2 5 3 1 6 30]
[ 3 1 4 2 2 5 28]
[ 5 3 6 1 3 2 34]
[ 2 4 3 5 1 3 27]
[ 1 2 1 4 6 2 25]
[ 6 5 2 1 4 3 35]]
Matrix I =
[[1 0 0 0 0 0]
[0 1 0 0 0 0]
[0 0 1 0 0 0]
[0 0 0 1 0 0]
[0 0 0 0 1 0]
[0 0 0 0 0 1]]
def RowSwap(A,k,l):
# =============================================================================
# A is a NumPy array. RowSwap will return duplicate array with rows
# k and l swapped. (menukarkan persamaan)
# =============================================================================
m = A.shape[0] # m is number of rows in A (jumlah baris A)
n = A.shape[1] # n is number of columns in A (jumlah kolom A)
B = np.copy(A).astype('float64')
for j in range(n):
temp = B[k][j]
B[k][j] = B[l][j]
B[l][j] = temp
return B
def RowScale(A,k,scale):
# =============================================================================
# A is a NumPy array. RowScale will return duplicate array with the
# entries of row k multiplied by scale. (mengalikan entry baris A dengan skala)
# =============================================================================
m = A.shape[0] # m is number of rows in A
n = A.shape[1] # n is number of columns in A
B = np.copy(A).astype('float64')
for j in range(n):
B[k][j] *= scale
return B
def RowAdd(A,k,l,scale):
# =============================================================================
# A is a numpy array. RowAdd will return duplicate array with row
# l modified. The new values will be the old values of row l added to
# the values of row k, multiplied by scale. (menambahkan nilai baris k dikalikan dengan skala)
# =============================================================================
m = A.shape[0] # m is number of rows in A
n = A.shape[1] # n is number of columns in A
B = np.copy(A).astype('float64')
for j in range(n):
B[l][j] += B[k][j]*scale
return B
A1 = RowSwap(A,0,2)
print(A1)
print("\n")
B1 = RowSwap(B,0,2)
print(B1)
print("\n")
A2 = RowAdd(A1,0,1,-2)
print(A2)
print("\n")
B2 = RowAdd(B1,0,1,-2)
print(B2)
print("\n")
A3 = RowAdd(A2,0,2,-2)
print(A3)
print("\n")
B3 = RowAdd(B2,0,2,-2)
print(B3)
print("\n")
A4 = RowAdd(A3,0,3,-3)
print(A4)
print("\n")
B4 = RowAdd(B3,0,3,-3)
print(B4)
print("\n")
A5 = RowAdd(A4,0,4,-2)
print(A5)
print("\n")
B5 = RowAdd(B4,0,4,-2)
print(B5)
print("\n")
A6 = RowAdd(A5,0,5,-1)
print(A6)
print("\n")
B6 = RowAdd(B5,0,5,-1)
print(B6)
[[ 5. 3. 6. 1. 3. 2. 34.]
[ 3. 1. 4. 2. 2. 5. 28.]
[ 4. 2. 5. 3. 1. 6. 30.]
[ 2. 4. 3. 5. 1. 3. 27.]
[ 1. 2. 1. 4. 6. 2. 25.]
[ 6. 5. 2. 1. 4. 3. 35.]]
[[0. 0. 1. 0. 0. 0.]
[0. 1. 0. 0. 0. 0.]
[1. 0. 0. 0. 0. 0.]
[0. 0. 0. 1. 0. 0.]
[0. 0. 0. 0. 1. 0.]
[0. 0. 0. 0. 0. 1.]]
[[ 5. 3. 6. 1. 3. 2. 34.]
[ -7. -5. -8. 0. -4. 1. -40.]
[ 4. 2. 5. 3. 1. 6. 30.]
[ 2. 4. 3. 5. 1. 3. 27.]
[ 1. 2. 1. 4. 6. 2. 25.]
[ 6. 5. 2. 1. 4. 3. 35.]]
[[ 0. 0. 1. 0. 0. 0.]
[ 0. 1. -2. 0. 0. 0.]
[ 1. 0. 0. 0. 0. 0.]
[ 0. 0. 0. 1. 0. 0.]
[ 0. 0. 0. 0. 1. 0.]
[ 0. 0. 0. 0. 0. 1.]]
[[ 5. 3. 6. 1. 3. 2. 34.]
[ -7. -5. -8. 0. -4. 1. -40.]
[ -6. -4. -7. 1. -5. 2. -38.]
[ 2. 4. 3. 5. 1. 3. 27.]
[ 1. 2. 1. 4. 6. 2. 25.]
[ 6. 5. 2. 1. 4. 3. 35.]]
[[ 0. 0. 1. 0. 0. 0.]
[ 0. 1. -2. 0. 0. 0.]
[ 1. 0. -2. 0. 0. 0.]
[ 0. 0. 0. 1. 0. 0.]
[ 0. 0. 0. 0. 1. 0.]
[ 0. 0. 0. 0. 0. 1.]]
[[ 5. 3. 6. 1. 3. 2. 34.]
[ -7. -5. -8. 0. -4. 1. -40.]
[ -6. -4. -7. 1. -5. 2. -38.]
[-13. -5. -15. 2. -8. -3. -75.]
[ 1. 2. 1. 4. 6. 2. 25.]
[ 6. 5. 2. 1. 4. 3. 35.]]
[[ 0. 0. 1. 0. 0. 0.]
[ 0. 1. -2. 0. 0. 0.]
[ 1. 0. -2. 0. 0. 0.]
[ 0. 0. -3. 1. 0. 0.]
[ 0. 0. 0. 0. 1. 0.]
[ 0. 0. 0. 0. 0. 1.]]
[[ 5. 3. 6. 1. 3. 2. 34.]
[ -7. -5. -8. 0. -4. 1. -40.]
[ -6. -4. -7. 1. -5. 2. -38.]
[-13. -5. -15. 2. -8. -3. -75.]
[ -9. -4. -11. 2. 0. -2. -43.]
[ 6. 5. 2. 1. 4. 3. 35.]]
[[ 0. 0. 1. 0. 0. 0.]
[ 0. 1. -2. 0. 0. 0.]
[ 1. 0. -2. 0. 0. 0.]
[ 0. 0. -3. 1. 0. 0.]
[ 0. 0. -2. 0. 1. 0.]
[ 0. 0. 0. 0. 0. 1.]]
[[ 5. 3. 6. 1. 3. 2. 34.]
[ -7. -5. -8. 0. -4. 1. -40.]
[ -6. -4. -7. 1. -5. 2. -38.]
[-13. -5. -15. 2. -8. -3. -75.]
[ -9. -4. -11. 2. 0. -2. -43.]
[ 1. 2. -4. 0. 1. 1. 1.]]
[[ 0. 0. 1. 0. 0. 0.]
[ 0. 1. -2. 0. 0. 0.]
[ 1. 0. -2. 0. 0. 0.]
[ 0. 0. -3. 1. 0. 0.]
[ 0. 0. -2. 0. 1. 0.]
[ 0. 0. -1. 0. 0. 1.]]
A7 = RowSwap(A6,5,1)
print(A7)
print("\n")
B7 = RowSwap(B6,5,1)
print(B7)
print("\n")
A8 = RowAdd(A7,1,0,-1)
print(A8)
print("\n")
B8 = RowAdd(B7,1,0,-1)
print(B8)
print("\n")
A9 = RowAdd(A8,1,3,1)
print(A9)
print("\n")
B9 = RowAdd(B8,1,3,1)
print(B9)
print("\n")
A10 = RowAdd(A9,1,4,1)
print(A10)
print("\n")
B10 = RowAdd(B9,1,4,1)
print(B10)
print("\n")
[[ 5. 3. 6. 1. 3. 2. 34.]
[ 1. 2. -4. 0. 1. 1. 1.]
[ -6. -4. -7. 1. -5. 2. -38.]
[-13. -5. -15. 2. -8. -3. -75.]
[ -9. -4. -11. 2. 0. -2. -43.]
[ -7. -5. -8. 0. -4. 1. -40.]]
[[ 0. 0. 1. 0. 0. 0.]
[ 0. 0. -1. 0. 0. 1.]
[ 1. 0. -2. 0. 0. 0.]
[ 0. 0. -3. 1. 0. 0.]
[ 0. 0. -2. 0. 1. 0.]
[ 0. 1. -2. 0. 0. 0.]]
[[ 4. 1. 10. 1. 2. 1. 33.]
[ 1. 2. -4. 0. 1. 1. 1.]
[ -6. -4. -7. 1. -5. 2. -38.]
[-13. -5. -15. 2. -8. -3. -75.]
[ -9. -4. -11. 2. 0. -2. -43.]
[ -7. -5. -8. 0. -4. 1. -40.]]
[[ 0. 0. 2. 0. 0. -1.]
[ 0. 0. -1. 0. 0. 1.]
[ 1. 0. -2. 0. 0. 0.]
[ 0. 0. -3. 1. 0. 0.]
[ 0. 0. -2. 0. 1. 0.]
[ 0. 1. -2. 0. 0. 0.]]
[[ 4. 1. 10. 1. 2. 1. 33.]
[ 1. 2. -4. 0. 1. 1. 1.]
[ -6. -4. -7. 1. -5. 2. -38.]
[-12. -3. -19. 2. -7. -2. -74.]
[ -9. -4. -11. 2. 0. -2. -43.]
[ -7. -5. -8. 0. -4. 1. -40.]]
[[ 0. 0. 2. 0. 0. -1.]
[ 0. 0. -1. 0. 0. 1.]
[ 1. 0. -2. 0. 0. 0.]
[ 0. 0. -4. 1. 0. 1.]
[ 0. 0. -2. 0. 1. 0.]
[ 0. 1. -2. 0. 0. 0.]]
[[ 4. 1. 10. 1. 2. 1. 33.]
[ 1. 2. -4. 0. 1. 1. 1.]
[ -6. -4. -7. 1. -5. 2. -38.]
[-12. -3. -19. 2. -7. -2. -74.]
[ -8. -2. -15. 2. 1. -1. -42.]
[ -7. -5. -8. 0. -4. 1. -40.]]
[[ 0. 0. 2. 0. 0. -1.]
[ 0. 0. -1. 0. 0. 1.]
[ 1. 0. -2. 0. 0. 0.]
[ 0. 0. -4. 1. 0. 1.]
[ 0. 0. -3. 0. 1. 1.]
[ 0. 1. -2. 0. 0. 0.]]
A11 = RowAdd(A10,5,2,-1)
print(A11)
print("\n")
B11 = RowAdd(B10,5,2,-1)
print(B11)
print("\n")
A12 = RowAdd(A11,2,0,-5)
print(A12)
print("\n")
B12 = RowAdd(B11,2,0,-5)
print(B12)
print("\n")
A13 = RowAdd(A12,2,1,2)
print(A13)
print("\n")
B13 = RowAdd(B12,2,1,2)
print(B13)
print("\n")
A14 = RowAdd(A13,2,3,10)
print(A14)
print("\n")
B14 = RowAdd(B13,2,3,10)
print(B14)
print("\n")
A15 = RowAdd(A14,2,4,6)
print(A14)
print("\n")
B15 = RowAdd(B14,2,4,6)
print(B14)
print("\n")
A16 = RowAdd(A15,2,5,5)
print(A16)
print("\n")
B16 = RowAdd(B15,2,5,5)
print(B16)
print("\n")
[[ 4. 1. 10. 1. 2. 1. 33.]
[ 1. 2. -4. 0. 1. 1. 1.]
[ 1. 1. 1. 1. -1. 1. 2.]
[-12. -3. -19. 2. -7. -2. -74.]
[ -8. -2. -15. 2. 1. -1. -42.]
[ -7. -5. -8. 0. -4. 1. -40.]]
[[ 0. 0. 2. 0. 0. -1.]
[ 0. 0. -1. 0. 0. 1.]
[ 1. -1. 0. 0. 0. 0.]
[ 0. 0. -4. 1. 0. 1.]
[ 0. 0. -3. 0. 1. 1.]
[ 0. 1. -2. 0. 0. 0.]]
[[ -1. -4. 5. -4. 7. -4. 23.]
[ 1. 2. -4. 0. 1. 1. 1.]
[ 1. 1. 1. 1. -1. 1. 2.]
[-12. -3. -19. 2. -7. -2. -74.]
[ -8. -2. -15. 2. 1. -1. -42.]
[ -7. -5. -8. 0. -4. 1. -40.]]
[[-5. 5. 2. 0. 0. -1.]
[ 0. 0. -1. 0. 0. 1.]
[ 1. -1. 0. 0. 0. 0.]
[ 0. 0. -4. 1. 0. 1.]
[ 0. 0. -3. 0. 1. 1.]
[ 0. 1. -2. 0. 0. 0.]]
[[ -1. -4. 5. -4. 7. -4. 23.]
[ 3. 4. -2. 2. -1. 3. 5.]
[ 1. 1. 1. 1. -1. 1. 2.]
[-12. -3. -19. 2. -7. -2. -74.]
[ -8. -2. -15. 2. 1. -1. -42.]
[ -7. -5. -8. 0. -4. 1. -40.]]
[[-5. 5. 2. 0. 0. -1.]
[ 2. -2. -1. 0. 0. 1.]
[ 1. -1. 0. 0. 0. 0.]
[ 0. 0. -4. 1. 0. 1.]
[ 0. 0. -3. 0. 1. 1.]
[ 0. 1. -2. 0. 0. 0.]]
[[ -1. -4. 5. -4. 7. -4. 23.]
[ 3. 4. -2. 2. -1. 3. 5.]
[ 1. 1. 1. 1. -1. 1. 2.]
[ -2. 7. -9. 12. -17. 8. -54.]
[ -8. -2. -15. 2. 1. -1. -42.]
[ -7. -5. -8. 0. -4. 1. -40.]]
[[ -5. 5. 2. 0. 0. -1.]
[ 2. -2. -1. 0. 0. 1.]
[ 1. -1. 0. 0. 0. 0.]
[ 10. -10. -4. 1. 0. 1.]
[ 0. 0. -3. 0. 1. 1.]
[ 0. 1. -2. 0. 0. 0.]]
[[ -1. -4. 5. -4. 7. -4. 23.]
[ 3. 4. -2. 2. -1. 3. 5.]
[ 1. 1. 1. 1. -1. 1. 2.]
[ -2. 7. -9. 12. -17. 8. -54.]
[ -8. -2. -15. 2. 1. -1. -42.]
[ -7. -5. -8. 0. -4. 1. -40.]]
[[ -5. 5. 2. 0. 0. -1.]
[ 2. -2. -1. 0. 0. 1.]
[ 1. -1. 0. 0. 0. 0.]
[ 10. -10. -4. 1. 0. 1.]
[ 0. 0. -3. 0. 1. 1.]
[ 0. 1. -2. 0. 0. 0.]]
[[ -1. -4. 5. -4. 7. -4. 23.]
[ 3. 4. -2. 2. -1. 3. 5.]
[ 1. 1. 1. 1. -1. 1. 2.]
[ -2. 7. -9. 12. -17. 8. -54.]
[ -2. 4. -9. 8. -5. 5. -30.]
[ -2. 0. -3. 5. -9. 6. -30.]]
[[ -5. 5. 2. 0. 0. -1.]
[ 2. -2. -1. 0. 0. 1.]
[ 1. -1. 0. 0. 0. 0.]
[ 10. -10. -4. 1. 0. 1.]
[ 6. -6. -3. 0. 1. 1.]
[ 5. -4. -2. 0. 0. 0.]]
A17 = RowAdd(A16,4,3,-1)
print(A17)
print("\n")
B17 = RowAdd(B16,4,3,-1)
print(B17)
print("\n")
A18 = RowAdd(A17,5,3,-2)
print(A18)
print("\n")
B18 = RowAdd(B17,5,3,-2)
print(B18)
print("\n")
A19 = RowScale(A18,3,1/2)
print(A19)
print("\n")
B19 = RowScale(B18,3,1/2)
print(B19)
print("\n")
A20 = RowAdd(A19,3,0,-7)
print(A20)
print("\n")
B20 = RowAdd(B19,3,0,-7)
print(B20)
print("\n")
A21 = RowAdd(A20,3,1,3)
print(A21)
print("\n")
B21 = RowAdd(B20,3,1,3)
print(B21)
print("\n")
A22 = RowAdd(A21,3,4,8)
print(A22)
print("\n")
B22 = RowAdd(B21,3,4,8)
print(B22)
print("\n")
A23 = RowAdd(A22,3,5,4)
print(A23)
print("\n")
B23 = RowAdd(B22,3,5,4)
print(B23)
print("\n")
[[ -1. -4. 5. -4. 7. -4. 23.]
[ 3. 4. -2. 2. -1. 3. 5.]
[ 1. 1. 1. 1. -1. 1. 2.]
[ 0. 3. 0. 4. -12. 3. -24.]
[ -2. 4. -9. 8. -5. 5. -30.]
[ -2. 0. -3. 5. -9. 6. -30.]]
[[-5. 5. 2. 0. 0. -1.]
[ 2. -2. -1. 0. 0. 1.]
[ 1. -1. 0. 0. 0. 0.]
[ 4. -4. -1. 1. -1. 0.]
[ 6. -6. -3. 0. 1. 1.]
[ 5. -4. -2. 0. 0. 0.]]
[[ -1. -4. 5. -4. 7. -4. 23.]
[ 3. 4. -2. 2. -1. 3. 5.]
[ 1. 1. 1. 1. -1. 1. 2.]
[ 4. 3. 6. -6. 6. -9. 36.]
[ -2. 4. -9. 8. -5. 5. -30.]
[ -2. 0. -3. 5. -9. 6. -30.]]
[[-5. 5. 2. 0. 0. -1.]
[ 2. -2. -1. 0. 0. 1.]
[ 1. -1. 0. 0. 0. 0.]
[-6. 4. 3. 1. -1. 0.]
[ 6. -6. -3. 0. 1. 1.]
[ 5. -4. -2. 0. 0. 0.]]
[[ -1. -4. 5. -4. 7. -4. 23. ]
[ 3. 4. -2. 2. -1. 3. 5. ]
[ 1. 1. 1. 1. -1. 1. 2. ]
[ 2. 1.5 3. -3. 3. -4.5 18. ]
[ -2. 4. -9. 8. -5. 5. -30. ]
[ -2. 0. -3. 5. -9. 6. -30. ]]
[[-5. 5. 2. 0. 0. -1. ]
[ 2. -2. -1. 0. 0. 1. ]
[ 1. -1. 0. 0. 0. 0. ]
[-3. 2. 1.5 0.5 -0.5 0. ]
[ 6. -6. -3. 0. 1. 1. ]
[ 5. -4. -2. 0. 0. 0. ]]
[[ -15. -14.5 -16. 17. -14. 27.5 -103. ]
[ 3. 4. -2. 2. -1. 3. 5. ]
[ 1. 1. 1. 1. -1. 1. 2. ]
[ 2. 1.5 3. -3. 3. -4.5 18. ]
[ -2. 4. -9. 8. -5. 5. -30. ]
[ -2. 0. -3. 5. -9. 6. -30. ]]
[[16. -9. -8.5 -3.5 3.5 -1. ]
[ 2. -2. -1. 0. 0. 1. ]
[ 1. -1. 0. 0. 0. 0. ]
[-3. 2. 1.5 0.5 -0.5 0. ]
[ 6. -6. -3. 0. 1. 1. ]
[ 5. -4. -2. 0. 0. 0. ]]
[[ -15. -14.5 -16. 17. -14. 27.5 -103. ]
[ 9. 8.5 7. -7. 8. -10.5 59. ]
[ 1. 1. 1. 1. -1. 1. 2. ]
[ 2. 1.5 3. -3. 3. -4.5 18. ]
[ -2. 4. -9. 8. -5. 5. -30. ]
[ -2. 0. -3. 5. -9. 6. -30. ]]
[[16. -9. -8.5 -3.5 3.5 -1. ]
[-7. 4. 3.5 1.5 -1.5 1. ]
[ 1. -1. 0. 0. 0. 0. ]
[-3. 2. 1.5 0.5 -0.5 0. ]
[ 6. -6. -3. 0. 1. 1. ]
[ 5. -4. -2. 0. 0. 0. ]]
[[ -15. -14.5 -16. 17. -14. 27.5 -103. ]
[ 9. 8.5 7. -7. 8. -10.5 59. ]
[ 1. 1. 1. 1. -1. 1. 2. ]
[ 2. 1.5 3. -3. 3. -4.5 18. ]
[ 14. 16. 15. -16. 19. -31. 114. ]
[ -2. 0. -3. 5. -9. 6. -30. ]]
[[ 16. -9. -8.5 -3.5 3.5 -1. ]
[ -7. 4. 3.5 1.5 -1.5 1. ]
[ 1. -1. 0. 0. 0. 0. ]
[ -3. 2. 1.5 0.5 -0.5 0. ]
[-18. 10. 9. 4. -3. 1. ]
[ 5. -4. -2. 0. 0. 0. ]]
[[ -15. -14.5 -16. 17. -14. 27.5 -103. ]
[ 9. 8.5 7. -7. 8. -10.5 59. ]
[ 1. 1. 1. 1. -1. 1. 2. ]
[ 2. 1.5 3. -3. 3. -4.5 18. ]
[ 14. 16. 15. -16. 19. -31. 114. ]
[ 6. 6. 9. -7. 3. -12. 42. ]]
[[ 16. -9. -8.5 -3.5 3.5 -1. ]
[ -7. 4. 3.5 1.5 -1.5 1. ]
[ 1. -1. 0. 0. 0. 0. ]
[ -3. 2. 1.5 0.5 -0.5 0. ]
[-18. 10. 9. 4. -3. 1. ]
[ -7. 4. 4. 2. -2. 0. ]]
A24 = RowSwap(A23,5,4)
print(A24)
print("\n")
B24 = RowSwap(B23,5,4)
print(B24)
print("\n")
A25 = RowAdd(A24,4,0,3)
print(A25)
print("\n")
B25 = RowAdd(B24,4,0,3)
print(B25)
print("\n")
A26 = RowAdd(A25,4,1,-3)
print(A26)
print("\n")
B26 = RowAdd(B25,4,1,-3)
print(B26)
print("\n")
A27 = RowAdd(A26,4,2,1)
print(A27)
print("\n")
B27 = RowAdd(B26,4,2,1)
print(B27)
print("\n")
A28 = RowAdd(A27,4,3,-1)
print(A28)
print("\n")
B28 = RowAdd(B27,4,3,-1)
print(B28)
print("\n")
A29 = RowAdd(A28,4,5,-3)
print(A29)
print("\n")
B29 = RowAdd(B28,4,5,-3)
print(B29)
print("\n")
[[ -15. -14.5 -16. 17. -14. 27.5 -103. ]
[ 9. 8.5 7. -7. 8. -10.5 59. ]
[ 1. 1. 1. 1. -1. 1. 2. ]
[ 2. 1.5 3. -3. 3. -4.5 18. ]
[ 6. 6. 9. -7. 3. -12. 42. ]
[ 14. 16. 15. -16. 19. -31. 114. ]]
[[ 16. -9. -8.5 -3.5 3.5 -1. ]
[ -7. 4. 3.5 1.5 -1.5 1. ]
[ 1. -1. 0. 0. 0. 0. ]
[ -3. 2. 1.5 0.5 -0.5 0. ]
[ -7. 4. 4. 2. -2. 0. ]
[-18. 10. 9. 4. -3. 1. ]]
[[ 3. 3.5 11. -4. -5. -8.5 23. ]
[ 9. 8.5 7. -7. 8. -10.5 59. ]
[ 1. 1. 1. 1. -1. 1. 2. ]
[ 2. 1.5 3. -3. 3. -4.5 18. ]
[ 6. 6. 9. -7. 3. -12. 42. ]
[ 14. 16. 15. -16. 19. -31. 114. ]]
[[ -5. 3. 3.5 2.5 -2.5 -1. ]
[ -7. 4. 3.5 1.5 -1.5 1. ]
[ 1. -1. 0. 0. 0. 0. ]
[ -3. 2. 1.5 0.5 -0.5 0. ]
[ -7. 4. 4. 2. -2. 0. ]
[-18. 10. 9. 4. -3. 1. ]]
[[ 3. 3.5 11. -4. -5. -8.5 23. ]
[ -9. -9.5 -20. 14. -1. 25.5 -67. ]
[ 1. 1. 1. 1. -1. 1. 2. ]
[ 2. 1.5 3. -3. 3. -4.5 18. ]
[ 6. 6. 9. -7. 3. -12. 42. ]
[ 14. 16. 15. -16. 19. -31. 114. ]]
[[ -5. 3. 3.5 2.5 -2.5 -1. ]
[ 14. -8. -8.5 -4.5 4.5 1. ]
[ 1. -1. 0. 0. 0. 0. ]
[ -3. 2. 1.5 0.5 -0.5 0. ]
[ -7. 4. 4. 2. -2. 0. ]
[-18. 10. 9. 4. -3. 1. ]]
[[ 3. 3.5 11. -4. -5. -8.5 23. ]
[ -9. -9.5 -20. 14. -1. 25.5 -67. ]
[ 7. 7. 10. -6. 2. -11. 44. ]
[ 2. 1.5 3. -3. 3. -4.5 18. ]
[ 6. 6. 9. -7. 3. -12. 42. ]
[ 14. 16. 15. -16. 19. -31. 114. ]]
[[ -5. 3. 3.5 2.5 -2.5 -1. ]
[ 14. -8. -8.5 -4.5 4.5 1. ]
[ -6. 3. 4. 2. -2. 0. ]
[ -3. 2. 1.5 0.5 -0.5 0. ]
[ -7. 4. 4. 2. -2. 0. ]
[-18. 10. 9. 4. -3. 1. ]]
[[ 3. 3.5 11. -4. -5. -8.5 23. ]
[ -9. -9.5 -20. 14. -1. 25.5 -67. ]
[ 7. 7. 10. -6. 2. -11. 44. ]
[ -4. -4.5 -6. 4. 0. 7.5 -24. ]
[ 6. 6. 9. -7. 3. -12. 42. ]
[ 14. 16. 15. -16. 19. -31. 114. ]]
[[ -5. 3. 3.5 2.5 -2.5 -1. ]
[ 14. -8. -8.5 -4.5 4.5 1. ]
[ -6. 3. 4. 2. -2. 0. ]
[ 4. -2. -2.5 -1.5 1.5 0. ]
[ -7. 4. 4. 2. -2. 0. ]
[-18. 10. 9. 4. -3. 1. ]]
[[ 3. 3.5 11. -4. -5. -8.5 23. ]
[ -9. -9.5 -20. 14. -1. 25.5 -67. ]
[ 7. 7. 10. -6. 2. -11. 44. ]
[ -4. -4.5 -6. 4. 0. 7.5 -24. ]
[ 6. 6. 9. -7. 3. -12. 42. ]
[ -4. -2. -12. 5. 10. 5. -12. ]]
[[-5. 3. 3.5 2.5 -2.5 -1. ]
[14. -8. -8.5 -4.5 4.5 1. ]
[-6. 3. 4. 2. -2. 0. ]
[ 4. -2. -2.5 -1.5 1.5 0. ]
[-7. 4. 4. 2. -2. 0. ]
[ 3. -2. -3. -2. 3. 1. ]]
A30 = RowScale(A29,5,-1/6)
print(A30)
print("\n")
B30 = RowScale(B29,5,-1/6)
print(B30)
print("\n")
A31 = RowAdd(A30,5,0,-5)
print(A31)
print("\n")
B31 = RowAdd(B30,5,0,-5)
print(B31)
print("\n")
A32 = RowAdd(A31,5,1,6)
print(A32)
print("\n")
B32 = RowAdd(B31,5,1,6)
print(B32)
print("\n")
A33 = RowAdd(A32,5,2,-3)
print(A33)
print("\n")
B33 = RowAdd(B32,5,2,-3)
print(B33)
print("\n")
A34 = RowAdd(A33,5,3,1)
print(A34)
print("\n")
B34 = RowAdd(B33,5,3,1)
print(B34)
print("\n")
A35 = RowAdd(A34,5,4,-2)
print(A35)
print("\n")
B35 = RowAdd(B34,5,4,-2)
print(B35)
print("\n")
[[ 3. 3.5 11. -4. -5.
-8.5 23. ]
[ -9. -9.5 -20. 14. -1.
25.5 -67. ]
[ 7. 7. 10. -6. 2.
-11. 44. ]
[ -4. -4.5 -6. 4. 0.
7.5 -24. ]
[ 6. 6. 9. -7. 3.
-12. 42. ]
[ 0.66666667 0.33333333 2. -0.83333333 -1.66666667
-0.83333333 2. ]]
[[-5. 3. 3.5 2.5 -2.5 -1. ]
[14. -8. -8.5 -4.5 4.5 1. ]
[-6. 3. 4. 2. -2. 0. ]
[ 4. -2. -2.5 -1.5 1.5 0. ]
[-7. 4. 4. 2. -2. 0. ]
[-0.5 0.33333333 0.5 0.33333333 -0.5 -0.16666667]]
[[ -0.33333333 1.83333333 1. 0.16666667 3.33333333
-4.33333333 13. ]
[ -9. -9.5 -20. 14. -1.
25.5 -67. ]
[ 7. 7. 10. -6. 2.
-11. 44. ]
[ -4. -4.5 -6. 4. 0.
7.5 -24. ]
[ 6. 6. 9. -7. 3.
-12. 42. ]
[ 0.66666667 0.33333333 2. -0.83333333 -1.66666667
-0.83333333 2. ]]
[[-2.5 1.33333333 1. 0.83333333 0. -0.16666667]
[14. -8. -8.5 -4.5 4.5 1. ]
[-6. 3. 4. 2. -2. 0. ]
[ 4. -2. -2.5 -1.5 1.5 0. ]
[-7. 4. 4. 2. -2. 0. ]
[-0.5 0.33333333 0.5 0.33333333 -0.5 -0.16666667]]
[[ -0.33333333 1.83333333 1. 0.16666667 3.33333333
-4.33333333 13. ]
[ -5. -7.5 -8. 9. -11.
20.5 -55. ]
[ 7. 7. 10. -6. 2.
-11. 44. ]
[ -4. -4.5 -6. 4. 0.
7.5 -24. ]
[ 6. 6. 9. -7. 3.
-12. 42. ]
[ 0.66666667 0.33333333 2. -0.83333333 -1.66666667
-0.83333333 2. ]]
[[-2.5 1.33333333 1. 0.83333333 0. -0.16666667]
[11. -6. -5.5 -2.5 1.5 0. ]
[-6. 3. 4. 2. -2. 0. ]
[ 4. -2. -2.5 -1.5 1.5 0. ]
[-7. 4. 4. 2. -2. 0. ]
[-0.5 0.33333333 0.5 0.33333333 -0.5 -0.16666667]]
[[ -0.33333333 1.83333333 1. 0.16666667 3.33333333
-4.33333333 13. ]
[ -5. -7.5 -8. 9. -11.
20.5 -55. ]
[ 5. 6. 4. -3.5 7.
-8.5 38. ]
[ -4. -4.5 -6. 4. 0.
7.5 -24. ]
[ 6. 6. 9. -7. 3.
-12. 42. ]
[ 0.66666667 0.33333333 2. -0.83333333 -1.66666667
-0.83333333 2. ]]
[[-2.5 1.33333333 1. 0.83333333 0. -0.16666667]
[11. -6. -5.5 -2.5 1.5 0. ]
[-4.5 2. 2.5 1. -0.5 0.5 ]
[ 4. -2. -2.5 -1.5 1.5 0. ]
[-7. 4. 4. 2. -2. 0. ]
[-0.5 0.33333333 0.5 0.33333333 -0.5 -0.16666667]]
[[ -0.33333333 1.83333333 1. 0.16666667 3.33333333
-4.33333333 13. ]
[ -5. -7.5 -8. 9. -11.
20.5 -55. ]
[ 5. 6. 4. -3.5 7.
-8.5 38. ]
[ -3.33333333 -4.16666667 -4. 3.16666667 -1.66666667
6.66666667 -22. ]
[ 6. 6. 9. -7. 3.
-12. 42. ]
[ 0.66666667 0.33333333 2. -0.83333333 -1.66666667
-0.83333333 2. ]]
[[-2.5 1.33333333 1. 0.83333333 0. -0.16666667]
[11. -6. -5.5 -2.5 1.5 0. ]
[-4.5 2. 2.5 1. -0.5 0.5 ]
[ 3.5 -1.66666667 -2. -1.16666667 1. -0.16666667]
[-7. 4. 4. 2. -2. 0. ]
[-0.5 0.33333333 0.5 0.33333333 -0.5 -0.16666667]]
[[ -0.33333333 1.83333333 1. 0.16666667 3.33333333
-4.33333333 13. ]
[ -5. -7.5 -8. 9. -11.
20.5 -55. ]
[ 5. 6. 4. -3.5 7.
-8.5 38. ]
[ -3.33333333 -4.16666667 -4. 3.16666667 -1.66666667
6.66666667 -22. ]
[ 4.66666667 5.33333333 5. -5.33333333 6.33333333
-10.33333333 38. ]
[ 0.66666667 0.33333333 2. -0.83333333 -1.66666667
-0.83333333 2. ]]
[[-2.5 1.33333333 1. 0.83333333 0. -0.16666667]
[11. -6. -5.5 -2.5 1.5 0. ]
[-4.5 2. 2.5 1. -0.5 0.5 ]
[ 3.5 -1.66666667 -2. -1.16666667 1. -0.16666667]
[-6. 3.33333333 3. 1.33333333 -1. 0.33333333]
[-0.5 0.33333333 0.5 0.33333333 -0.5 -0.16666667]]
print(f"Matrix A = \n{A35}")
print("\n")
print(f"Pembulatan Matrix I = \n{B35.round()}")
Matrix A =
[[ -0.33333333 1.83333333 1. 0.16666667 3.33333333
-4.33333333 13. ]
[ -5. -7.5 -8. 9. -11.
20.5 -55. ]
[ 5. 6. 4. -3.5 7.
-8.5 38. ]
[ -3.33333333 -4.16666667 -4. 3.16666667 -1.66666667
6.66666667 -22. ]
[ 4.66666667 5.33333333 5. -5.33333333 6.33333333
-10.33333333 38. ]
[ 0.66666667 0.33333333 2. -0.83333333 -1.66666667
-0.83333333 2. ]]
Pembulatan Matrix I =
[[-2. 1. 1. 1. 0. -0.]
[11. -6. -6. -2. 2. 0.]
[-4. 2. 2. 1. -0. 0.]
[ 4. -2. -2. -1. 1. -0.]
[-6. 3. 3. 1. -1. 0.]
[-0. 0. 0. 0. -0. -0.]]