Wednesday, December 16, 2015
Metode Gauss-Seidel dengan Matlab
Contoh Soal
3x + y - z = 5
4x + 7 y - 3z = 20
2x - 2y + 5z =10
Tulis koding di bawah ini pada m-file
syms x
a11=input('')
a12=input('')
a13=input('')
b1=input('')
a21=input('')
a22=input('')
a23=input('')
b2=input('')
a31=input('')
a32=input('')
a33=input('')
b3=input('')
%1
x10=0;
x20=0;
x30=0;
x11=(b1-(a12*x20)-(a13*x30))/a11;
x21=(b2-(a21*x11)-(a23*x30))/a22;
x31=(b3-(a31*x11)-(a32*x21))/a33;
%2
x12=(b1-(a12*x21)-(a13*x31))/a11;
x22=(b2-(a21*x12)-(a23*x31))/a22;
x32=(b3-(a31*x12)-(a32*x22))/a33;
%3
x13=(b1-(a12*x22)-(a13*x32))/a11;
x23=(b2-(a21*x13)-(a23*x32))/a22;
x33=(b3-(a31*x13)-(a32*x23))/a33;
%4
x14=(b1-(a12*x23)-(a13*x33))/a11;
x24=(b2-(a21*x14)-(a23*x33))/a22;
x34=(b3-(a31*x14)-(a32*x24))/a33;
%1
c11=(abs(x12-x11)/abs(x12))*100;
c21=(abs(x22-x21)/abs(x22))*100;
c31=(abs(x32-x31)/abs(x32))*100;
%2
c12=(abs(x13-x12)/abs(x13))*100;
c22=(abs(x23-x22)/abs(x23))*100;
c32=(abs(x33-x32)/abs(x33))*100;
%3
c13=(abs(x14-x13)/abs(x14))*100;
c23=(abs(x24-x23)/abs(x24))*100;
c33=(abs(x34-x33)/abs(x34))*100;
disp([num2str(x11) ' ' num2str(x21) ' ' num2str(x31) ' ' num2str(c11) ' ' num2str(c21) ' ' num2str(c31)])
disp([num2str(x12) ' ' num2str(x22) ' ' num2str(x32) ' ' num2str(c12) ' ' num2str(c22) ' ' num2str(c32)])
disp([num2str(x13) ' ' num2str(x23) ' ' num2str(x33) ' ' num2str(c13) ' ' num2str(c23) ' ' num2str(c33)])
Hasil
x1 x2 x3 x y z
1.6667 1.9048 2.0952 3.6697 31.1475 13.2231
1.7302 2.7664 2.4145 11.6694 7.9874 6.519
1.5494 3.0066 2.5829 1.5682 2.7756 1.6713
Selamat mencoba! Semoga bermanfaat! ^_^
Terimakasih mbak Citra, karena telah memotivasi saya untuk mengerjakannya!!
Subscribe to:
Posts (Atom)