Kembali ke bentuk Ax = b

4.4. MATRIK DAN ELIMINASI GAUSS DALAM PYTHON 57 15 ~~~~~~menggabungkan matrik A dan vektor b kedalam matrik augment C~~~~~ 16 n=lenA 17 C=zerosn,n+1 18 for i in range0,n: 19 for j in range0,n: 20 C[i,j]=A[i,j] 21 for i in range0,lenA: 22 C[i,n]=b[i,0] 23 print C Ya.. apa boleh buat, dalam source code ini saya terpaksa mengganti nama matrik augment yang semula bernama A sebagaimana pada source-code yang sudah-sudah menjadi C. Sehingga keseluruhan source code eliminasi gauss ditulis sebagai berikut 1 from numpy import array, zeros 2 3 ~~~~~~inisialisasi matrik A~~~~~ 4 A = array[[1.,1.,0.,3.],\ 5 [2.,1.,-1.,1.],\ 6 [3.,-1.,-1.,2.],\ 7 [-1.,2.,3.,-1.]] 8 ~~~~~~inisialisasi vektor b~~~~~ 9 b = array[[4.],\ 10 [1],\ 11 [-3],\ 12 [4]] 13 ~~~~~~menggabungkan matrik A dan vektor b kedalam matrik augment C~~~~~ 14 n=lenA 15 C=zerosn,n+1 16 for i in range0,n: 17 for j in range0,n: 18 C[i,j]=A[i,j] 19 for i in range0,n: 20 C[i,n]=b[i,0] 21 22 ~~~~~~proses triangularisasi~~~~~~~~~~ 23 for k in range0,n-1: 24 -----proses pivot dari sini---------- 25 if C[k][k]==0: 26 for s in range0,n+1: 27 v=C[k,s] 28 u=C[k+1,s] 29 C[k,s]=u 30 C[k+1,s]=v 31 -----proses pivot sampai sini---------- 32 for j in rangek+1,n: 33 m=C[j,k]C[k,k] 34 for i in range0,n+1: 35 C[j,i]=C[j,i]-mC[k,i] 36 37 ~~~~~~proses substitusi-mundur~~~~~~~~ 38 X = zerosn,1 39 40 X[n-1,0]=C[n-1,n]C[n-1,n-1] 41 for j in rangen-2,-1,-1: 42 S=0 43 for i in rangej+1,n: 58 BAB 4. METODE ELIMINASI GAUSS 44 S=S+C[j,i]X[i,0] 45 X[j,0]=C[j,n]-SC[j,j] 46 47 print X

4.4.9 Function eliminasi gauss

Pendefinisian function eliminasi gauss merupakan langkah paling akhir dari proses pembuatan source code ini. Berdasarkan source code di atas, function eliminasi gauss bisa dimulai dari baris ke-14 hingga baris ke-45. Berikut ini adalah cara pendefinisiannya 1 def eliminasi_gaussA,b: 2 n=lenA 3 C=zerosn,n+1 4 for i in range0,n: 5 for j in range0,n: 6 C[i,j]=A[i,j] 7 for i in range0,n: 8 C[i,n]=b[i,0] 9 10 for k in range0,n-1: 11 if C[k,k]==0: 12 for s in range0,n+1: 13 v=C[k,s] 14 u=C[k+1,s] 15 C[k,s]=u 16 C[k+1,s]=v 17 for j in rangek+1,n: 18 m=C[j,k]C[k,k] 19 for i in range0,n+1: 20 C[j,i]=C[j,i]-mC[k,i] 21 X = zerosn,1 22 X[n-1,0]=C[n-1,n]C[n-1,n-1] 23 for j in rangen-2,-1,-1: 24 S=0 25 for i in rangej+1,n: 26 S=S+C[j,i]X[i,0] 27 X[j,0]=C[j,n]-SC[j,j] 28 return X Dengan adanya function eliminasi_gauss 4 , maka source-code untuk menyelesaikan sistem per- samaan linear dengan metode eliminasi gauss dapat ditulis secara sangat sederhana. Berikut ini contohnya.. 1 from numpy import array 2 from komputasi import eliminasi_gauss 3 4 ~~~~~~inisialisasi matrik A~~~~~ 5 A = array[[1.,1.,0.,3.],\ 6 [2.,1.,-1.,1.],\ 7 [3.,-1.,-1.,2.],\ 8 [-1.,2.,3.,-1.]] 4 Function ini saya letakkan di dalam modul komputasi. Modul ini adalah mudul bikinan sendiri. Saya kira anda mampu membuat modul yang sama seperti saya jika anda telah memahami bab-bab sebelumnya. 4.5. CONTOH APLIKASI 59 9 ~~~~~~inisialisasi vektor b~~~~~ 10 b = array[[4.],\ 11 [1],\ 12 [-3],\ 13 [4]] 14 ~~~~~~mencari solusi sistem persamaan linear~~~~~ 15 print eliminasi_gaussA,b

4.5 Contoh aplikasi

4.5.1 Menghitung arus listrik

Gunakan metode Eliminasi Gauss untuk menentukan arus i 1 , i 2 dan i 3 yang mengalir pada rangkaian berikut ini jawab: Berdasarkan Hukum Kirchhoff: I 1 + I 2 = I 3 10 − 6I 1 − 2I 3 = 0 −14 + 6I 1 − 10 − 4I 2 = 0 Lalu kita susun ulang ketiga persamaan di atas menjadi seperti ini: I 1 + I 2 − I 3 = 0 6I 1 + 2I 3 = 10 6I 1 − 4I 2 = 24