Anda di halaman 1dari 13

Persamaan algebra linear

Persamaan berbentuk: Ax = b
a11 a12 a a22 21 a31 a32 a13 x1 a23 x2 a33 x3 b1 b 2 b3

Penyelesaian untuk bil persamaan yang sedikit


Kaedah Grafik Hukum Cramer

Contoh

3 x  2 y 18 (1)  x  2y 2  ( 2)

Penyelesaian - PENGHAPUSAN GAUSS


Pembentukkan masalah ke matrik Menggunakan dua prosedur penyelesaian:

Penjelmaan kepada sistem segitiga atas. Penggantian dari belakang untuk menyelesaikan xj.

Asas penyelesaian - contoh

Dua persamaan berikut;

3 x  2 y 18 (1)  x  2 y 2  (2)

Untuk menghapuskan x dari persamaan (2) (2) tolak (1) Dharab -1/3 , menjadi

Ganti dari belakang

3x  2 y 18 (1) 2 2 y 8 (2) 3 y x 3 (18  6) 3 4

Menggunakan komputer

Bentukkan masalah ke matrik

atau

3 x  2 y 18 (1)  x  2 y 2  (2)


c1 c2 r1 3 2 r2  1 2 b 18 2

3 x1  2 x2  x1  2 x2

18 (1) 2  (2)

>A

b@

3 2 18  1 2 2

Penggunaan komputer

Mula dari baris (r1 + 1) dan hapuskan semua jalur c1 untuk lain-lain baris Algoritma: dari k=1 hingga akhir tolak 1, (m-1) % pangsi dari r=k+1 hingga akhir (m) p=ar,k /akk dari c=k hingga akhir, (m) ar,c = ar,c p*ak,c tamat c br = br p* bk tamat r tamat k

contoh - guna excel


Factor 3 -1 Penghapusan 2 2 18 2 18 8 -0.333333

3 2 0 2.6666667

Pengantian dari belakang

y= x=

3 4

2.6666667

Contoh 2

c1 c 2 c3 r1 r2 1 0.3 0.52 0.0 0.133 0.233 r3 0. 5 0.1 0.3  0.01 0.0837  0.44

Algorithma untuk penghapusan


Algoritma:
1.

dari k=1 hingga akhir tolak 1, (m-1) % paksi dari r=k+1 hingga akhir (m) p=ar,k /akk dari c=k hingga akhir, (m) ar,c = ar,c p*ak,c tamat c br = br p* bk tamat r tamat k

2.

3. 4.

5. 6. 7. 8. 9.

function [x,y]=gh(A,b) % gauss penghapusan mudah % fungsi [x,y]=gh(A,b) [m,n]=size(A); for rp=1:m-1 for r=rp+1:m p=A(r,rp)/A(rp,rp); for c=rp:m A(r,c)=A(r,c) p*A(rp,c); end; b(r)=b(r)-p*b(rp); end; end; y=A; % x=bs(A,b)';

Algorithma untuk selesaian


Kira nilai x akhir x(n) = b(n)/a(n,n) Dari i= n 1 hingga 1 langkah 1 sum=0 Dari j= i+1 hingga n sum=sum+ai,j *xj Tamat j xi = (bi sum)/aii Tamat i
function xVal=bs(A,b) [m,n]=size(A); xVal=[b(m)/A(m,n)]; % mula dgn nilai xVal akhir for r=m-1:-1:1 jum=0; for c=1:m-r jum=jum+A(r,c+r)*xVal(c); end xVal=[(b(r)jum)/A(r,r),xVal] end

Kod penghapusan Gauss


function [x,y]=gh(A,b) % gauss penghapusan mudah % fungsi [x,y]=gh(A,b) [m,n]=size(A); for rp=1:m-1 for r=rp+1:m p=A(r,rp)/A(rp,rp); for c=rp:m A(r,c)=A(r,c) p*A(rp,c); end; b(r)=b(r)-p*b(rp); end; end; y=A; x=bs(A,b)'; function xVal=bs(A,b) [m,n]=size(A); xVal=[b(m)/A(m,n)]; % mula dgn nilai xVal akhir for r=m-1:-1:1 jum=0; for c=1:m-r jum=jum+A(r,c+r)*xVal(c); end xVal=[(b(r)jum)/A(r,r),xVal] end

Latihan
Jika dicuba dengan matrik dibawah A5 = 1 1 2 b5 = 9 12 11 1 1 3 2 3 1 NaN NaN NaN ans =

Perlu kepada paksi


Algorithma: Input: paksi,A,b Output : paksi,A,b baru/sama 1. besar = |ar,r | 2. Paksi=r 3. Dari i = r hingga n 4. Jika ai,r > besar 5. Set besar = ai,r 6. Set Paksi =i 7. Tamat i 8. jika Paksi ~= r 9. tukar a (r) dengan a(paksi) 10. Tukar b(r) dengan b(paksi) 11. output A,b,paksi
function [r,A,b]=cekpaksi(r,A,b) % function [r1,A1,b1]=cekpaksi(r,A,b) [m,n]=size(A); paksi=r; besar=abs(A(r,r)); for i=r+1:n if (A(i,r) > besar) [paksi,i]=swap(paksi,i); end end if paksi ~= r for i=r:m [A(paksi,i),A(r,i)]=swap(A(paksi,i), A(r,i)); end; [b(paksi),b(r)]=swap(b(paksi),b(r)); end

Kod penghapusan Gauss dengan paksi


function [x,y]=gh(A,b) % gauss penghapusan mudah % fungsi [x,y]=gh(A,b) [m,n]=size(A); for rp=1:m-1 [paksi,A,b]=cekpaksi(rp,A,b); for r=rp+1:m p=A(r,rp)/A(rp,rp); for c=rp:m A(r,c)=A(r,c) -p*A(rp,c); end; b(r)=b(r)-p*b(rp); end; end; y=A; x=bs(A,b)'; function xVal=bs(A,b) [m,n]=size(A); xVal=[b(m)/A(m,n)]; % mula dgn nilai xVal akhir for r=m-1:-1:1 jum=0; for c=1:m-r jum=jum+A(r,c+r)*xVal(c); end xVal=[(b(r)-jum)/A(r,r),xVal] end

function [a,b]=swap(a,b) temp=a; a=b; b=temp;

Anda mungkin juga menyukai