Ujian Formatif 2 Fisika Komputasi
Ujian Formatif 2 Fisika Komputasi
FISIKA KOMPUTASI
Oleh :
1. Faury Hidayati (8166175005)
2. Irpan Afandi (8166175011)
3. Syarief Sa’adillah Lubis (8166175021)
4. Zahra Tazkia (8166175022)
SOAL
1. Jelaskan penyelesaian Persamaan Tak Linear dengan Metode Belah Dua (Bisection),
Metode Newton-Raphson dan Metode Secant
1. Penjelasan Persamaan Tak Linear dengan Metode Belah Dua (Bisection), Metode Newton-
Raphson dan Metode Secant.
a) Metode Belah Dua (Bisection)
Metode biseksi merupakan salah satu metode tertutup untuk mentukan solusi akar dari
persamaan non linear atau disebut juga metode pembagian Interval atau metode yang digunakan
untuk mencari akar-akar persamaan nonlinear melalui proses iterasi, dengan prinsip utama
sebagai berikut:
Menggunakan dua buah nilai awal untuk mengurung salah satu atau lebih akar persamaan
non linear.
Nilai akarnya diduga melalui nilai tengah antara dua nilai awal yang ada.
Dimana nilai f(a) dan nilai f(b) memiliki tanda yang berlawanan atau harus memenuhi
persyaratan f(xa) * f(xb) < 0.
Contoh Soal
Tentukan akar persamaan fungsi : f(x) = x2 – 11x + 24 secara analitis dan numerik.
Cara I : Analitis
Dik. x2 – 11x + 24
Dit. x1 dan x2?
Dij. Pemfaktoran
f(x) = 0
x2 – 11x + 24 = 0
(x – 8 )(x – 3) = 0
x1 =8
x2 =3
Jadi secara analitis diperoleh akar-akar permasaaan fungsi adalah 3 dan 8.
Cara II : Dengan Menggunakan MatLab
Langkah algoritma metode Bisection
Langkah 1
Pilih taksiran nilai a sebagai batas bawah interval dan taksiran nilai b sebagai batas atas interval.
Jika terpenuhi kondisi :
Jika f(a) f(b) < 0 maka interval [a; b] mengandung akar fungsi.
Jika f(a) f(b) > 0 ; maka tidak ada akar dalam interval [a; b], maka geser posisi interval.
Jika f(a) f(b) = 0 ; maka a dan b, salah satu merupakan akar.
Langkah 2
Taksiran akar yang pertama c dimana, c = (a + b )/2
Langkah 3
Evaluasi keberadaan akar, apakah dalam subinterval pertama (antara a dan c ) atau dalam
subinterval kedua (antara c dan b).
Jika diperoleh : f(a) f(c) < 0 ; akar berada dalam subinterval pertama, maka b = c.
selanjutnya ke langkah 4
Jika f(a) f(c) > 0 ; akar berada dalam subinterval ke dua, maka a = c. selanjutnya ke
langkah 4
Jika f(a) f(c) = 0 ; c adalah akar.
Langkah 4
Kembali ke langkah 2 dan proses hingga langkah 3.
4. Selanjutnya masukkan coding yang telah disediakan ke dalam file yang baru di buka
seperti pada gambar berikut;
5. Kemudian menyimpan file pada work MatLab. Setelah data tersimpan, langkah
selanjutnya adalah menjalankan program.
6. Setelah kita mengklik Debug – Run, maka akan muncul tampilan seperti pada gambar di
bawah ini pada MatLab output.
7. Langkah selanjutnya memasukkan persamaan dengan syarat memberikan tanda kutip
pada awal dan akhir persamaan, kemudian memasukkan batas atas dan bawah.
Testing I
Pada testing I, kita belum mengetahui akar persamaan dari fungsi f(x), untuk menetukan
akar persamaan, kita harus memasukkan batas bawah dan batas atas dengan ketentuan
f(a) f(b) < 0 supaya akar fungsi berada pada interval [a; b]. Hal lain yang mesti
diperhatikan adalah, interval [a; b] yang kita masukkan tidak boleh terlalu lebar.
Dari hasil testing I, hanya diperoleh satu akar persamaan dari fungsi f(x) adalah 3.
Testing II
Pada testing II kita sudah mengetahui salah satu akar persamaan dari fungsi f(x), jadi
untuk mencari satu akar lagi, kita dapat memasukkan akar yang sudah diperoleh ke salah
satu batas. Untuk soal ini, kita memasukkan ke batas bawah karena pada saat interval [-1,
4], akar persamaan adalah 3, otomatis, akar yang lainnya di atas 3.
Dari hasil testing II diperoleh akar persamaan lain yaitu 8.
Jadi dengan menggunakan metode belah dua (Bisection) yang berbantuan MatLab, diperoleh
akar persamaan 3 dan 8. Hal ini sama dengan penyelesaian secara analitis.
Beberapa hal yang harus diperhatikan dalam menyelesaikan metode belah dua (Bisection)
dengan MatLab
1. Pada saat testing awal, batas-batas yang dimasukkan harus memenuhi ketentuan f(a) f(b)
< 0 supaya akar fungsi berada pada interval [a; b].
2. Setelah ditentukan batas yang cocok untuk ketentuan f(a) f(b) < 0, kita harus
mempertimbangkan interval batas tersebut, jika batas yang kita gunakan cukup besar,
maka kita harus memasukkan nilai batas yang lain.
3. Jika batas yang kita masukkan masih cukup besar, padahal sudah memasukkan batas
bawah dan atas yang lain maka akan muncul tanda error, jika terjadi hal seperti ini, kita
harus mengulang menjalankan program.
4. Jika sudah diperoleh salah satu akar persamaan, untuk mencari akar persamaan yang lain,
kita harus memasukkan salah satu akar ke dalam batas yang kita gunakan.
Contoh Soal
Menentukan akar persamaan fungsi : f(x) = x2 – 11x + 24 secara analitis dan numerik.
a. Analitis
Dik. x2 – 11x + 24
Dit. x1 dan x2?
Dij. Pemfaktoran
f(x) = 0
x2 – 11x + 24 = 0
(x – 8 )(x – 3) = 0
x1 =8
x2 =3
Jadi secara analitis diperoleh akar-akar permasaaan fungsi adalah 3 dan 8.
format long
fx = input('Isikan persamaan tak linearnya (string) : ');
x0 = input('Isikan nilai awal : ');
maks = input('Isikan maksimum iterasinya : ');
tol = input('Isikan toleransinya : ');
iter=0;
h=0.5;
fprintf('======================================================\n');
fprintf('iter x f(x) df(x) galat\n');
fprintf('======================================================\n');
while iter<maks
f=inline(fx);
fun=f(x0);
fak = (f(x0+h)-f(x0-h))/(2*h);
Es=abs((x0-fun/fak)-x0)/abs(x0-fun/fak);
if fak==0
break
elseif Es<tol
akar=x0-fun/fak;
break
else
x0=x0-fun/fak;
end
fprintf('%3d %3.6f %3.6f %3.6f %3.6f\n',iter+1,x0,fun,fak,Es);
iter=iter+1;
end
akar=x0;
func=f(akar);
%grafik fungsi (x0)
t=-10:10;
z=f(t);
plot(t,z),title('Grafik fungsi (x)');
grid on;
fprintf('======================================================\n');
fprintf(1,' Akarnya : %10.5f \n',akar) ;
fprintf(1,' dengan toleransi : %10.5f \n',tol) ;
fprintf(1,' dan pada iterasi ke : %10g \n',iter) ;
7. Langkah selanjutnya adalah memasukkan data input untuk persamaan tak linear f(x) = x 2
– 11x + 24, kemudian memasukkan nilai awal, iterasi maksimum dan toleransinya,
kemudian di klik enter sehingga akan muncul dua output, output pertama dalam bentuk
iterasi dan output kedua dalam bentuk grafik.
Testing I
Pada testing I, nilai awal yang dimasukkan bebas atau titik sembarang, begitu juga
dengan iterasi maksimum dan toleransi.
Testing II
Pada testing II, dimasukkan nilai awal yang berbeda, hal ini supaya kita memperoleh akar
persamaan yang lain dalam bentuk iterasi.
Pada testing II diperoleh akan persamaan yang lain yaitu 8 pada iterasi ke 4.
Grafik yang dihasilkan pada testing 1 dan testing 2 sama
.
Jadi dengan menggunakan metode Newton-Raphson yang berbantuan MatLab, diperoleh akar
persamaan 3 dan 8. Hal ini sama dengan penyelesaian secara analitis.
c) Metode Secant
Metode Secant adalah metode pencarian akar yang merupakan modifikasi dari metode
Newton-Raphson. Metode Secant merupakan salah satu metode terbuka untuk menentukan
solusi akar persamaan non linear, dengan prinsip utama sebagai berikut;
Metode ini melakukan pendekatan terhadap kurva f(x) dengan garis Secant yang
ditentukan oleh 2 titik terakhir.
Nilai taksiran akar selanjutnya adalah titik potong antara garis Secant dengan sumbu x
Contoh Soal
Menentukan akar persamaan fungsi : f(x) = x2 – 11x + 24 dengan menggunakan MatLab.
Dengan Menggunakan MatLab
Algoritma
Adapun langkah – langkah penyelesaian persamaan tak linear dengan menggunakan
metode secant dalam aplikasi Matlab, yaitu :
1. Input f(x), nilai tebakan awal x0 dan x1, serta galat atau iterasi maks.
2. Cek, jika nilai f(x0) atau f(x1) < 0 atau f(x0) atau f(x1) = 0 maka salah satu dari nilai
tebakan awal merupakan nilai akar atau akar hampiran. Jika tidak lanjutkan ke langkah
berikutnya.
3. Tentukan nilai xi+1 = xi - [ (f(xi)*(xi - xi-1 )) / (f(xi) - f(xi-1)) ].
4. Cek konvergensi, jika iterasi = iterasi maksimum (soal), atau galat < galat soal (mutlak
maupun relatif).
7. Setelah kita mengklik Debug – Run, maka akan muncul tampilan seperti pada gambar di
bawah ini pada MatLab output.
8. Langkah selanjutnya adalah memasukkan data input untuk persamaan tak linear f(x) = x 2
– 11x + 24, kemudian memasukkan nilai awal ke x1 dan nilai awal ke x2, kemudian di
klik enter sehingga akan muncul dua output, output pertama dalam bentuk iterasi dan
output kedua dalam bentuk grafik.
Kelebihan metode Secant dengan MatLab
Mampu menemukan solusi akar persamaan tak linear.
Dengan metode Secant dalam satu kali testing langsung diperoleh iterasi dan bentuk
kurvanya.
Kelemahan metode Newton-Raphson dengan MatLab
Tidak terlihat secara jelas akar persamaan fungsi.
metode travezoid dan metode simpson 1/3 dengan jumlah pias N = 8 dengan Matlab
a. Metode Travezoid
b. Metode Simpson 1/3
Analitis
2 2
1 4 2 3
( x 2 x 5 )dx 4 x 3 x 5 x 1
3 2
2
1 2 1 2
(x
3
2 x 2 5 )dx (2) 4 ( 2) 3 5(2) (1) 4 (1) 3 5(1)
1 4 3 4 3
2
16 1 2
(x
3
2 x 2 5 )dx 4 10 5
1 3 4 3
2
(x
3
2 x 2 5 )dx 13.3
1
Menggunakan MatLab
Algoritma
Algoritma Metode Integrasi Simpson adalah:
1) Definisikan y=f(x)
2) Tentukan batas bawah (a) dan batas atas integrasi (b)
3) Tentukan jumlah pembagi m
4) Hitung h=(b-a)/2m
n n
h
5) Hitung L 2 ( f 0 4 f i 2 f i f n )
i ganjil i genap
Flowchart
Mulai
Hitung nilai h
Selesai
disp ('________________________________________________________');
disp ( ' MENENTUKAN INTEGRAL DENGAN METODE SIMPSON ' );
disp ('NAMA : ZAHRA TAZKIA');
disp ('NIM : 8166175022');
disp ('KELAS : FISIKA REGULAR A 2016 PASCA SARJANA');
disp ('M. KULIAH : FISIKA KOMPUTASI');
disp ('DOSEN : Dr. MAKMUR SIRAIT, M.Si');
disp ('________________________________________________________');
disp (' ')
%input
syms x;
f=input('masukkan fungsi persamaan f(x)= ');
a=input('Batas bawah= ');
b=input('Batas atas= ');
n=input('Banyaknya segmen/interval= ');
analitik=input('Hasil penghitungan analitik= ');
%proses
h=(b-a)/n;
t=a;
fa=subs(f,x,a);
fb=subs(f,x,b);
sum1=0;
sum2=0;
for i=1:(n-1)
t=t+h;
if mod(i,2)~=0
ganjil=subs(f,x,t);
genap=0;
else
genap=subs(f,x,t);
ganjil=0;
end
sum1=sum1+ganjil;
sum2=sum2+genap;
end
%output
disp('Luas hasil penghitungan metode simpson 1/3=')
disp(h/3*(fa+4*sum1+2*sum2+fb))
disp(' ');
disp('Error antara penghitungan analitik dengan metode simpson 1/3=')
9. Langkah selanjutnya adalah memasukkan persamaan, batas bawah, batas atas, jumlah
segmen dan hasil analitis integral yang diperoleh. Untuk lebih jelas ditampilkan seperti
gambar
10. Untuk menghasilkan output maka langkah selanjutnya menng klik enter sehingga
diperoleh hasil dengan MatLab seperti berikut
3. Solusi persamaan linier dengan metode Gauss-Jordan ;
X + Y + 4Z = 11
3X + 2Y – Z = - 4
5X + 3Y + 2Z = 5
, sehingga :
, sehingga :
, sehingga :
, sehingga :
, sehingga :
, sehingga :
, sehingga :
disp ('________________________________________________________');
disp ( ' SOLUSI PERSAMAAN DENGAN METODE GAUSS JORDAN ' );
disp ('NAMA : ZAHRA TAZKIA');
disp ('NIM : 8166175022');
disp ('KELAS : FISIKA REGULAR A 2016 PASCA SARJANA');
disp ('M. KULIAH : FISIKA KOMPUTASI');
disp ('DOSEN : Dr. MAKMUR SIRAIT, M.Si');
disp ('________________________________________________________');
7. Langkah selanjutnya adalah memasukkan data input sesuai dengan soal, seperti pada
gambar di bawah ini.
8. Setelah semua elemen matriks ruas kanan dan kiri dituliskan maka klik enter, sehingga
tampil seperti gambar di bawah ini.
Hasil penyelesaian persamaan X + Y + 4Z = 11, 3X + 2Y – Z = - 4 dan 5X + 3Y + 2Z = 5
dengan menggunakan metode Gauss Jordan yang diselesaikan dengan MatLab adalah X =
0.99999999999999, Y= -2.00000000000000, dan Z= 3.00000000000000.
Untuk mencari nilai λ yang sesuai, terlebih dahulu dihitung determinan dari (A−λ) dengan
metode Sarrus (khusus matriks 3x3) atau ekspansi kofaktor. Menggunakan ekspansi kofaktor baris
pertama, diperoleh
Berdasarkan persamaan (A−λ)x = 0, diketahui jika x tidak nol maka A−λ harus sama
dengan nol. Hal ini berarti det(A−λ) = 0. Dengan demikian, diperoleh persamaan
−λ3 + 2λ2+ 33λ− 15 = 0
Dengan pemfaktoran, diperoleh ketiga nilai eigen yaitu λ = -5,07 ; λ = 6,6 ; λ = 0,44.
5. Kemudian menyimpan file pada work MatLab. Setelah data tersimpan, langkah
selanjutnya adalah menjalankan program
6. Setelah kita mengklik Debug – Run, maka akan muncul tampilan seperti pada gambar di
bawah ini pada MatLab output.
7. Untuk memproses data matriks yang dimasukkan maka klik enter sehingga akan
tertampil nilai eigen dan vektor eigen seperti gambar.
Jadi hasil nilai eigen matriks A dengan menggunakan MatLab adalah
- 5.07892906042201 0 0 - 5.07892906 042201
nilai A 0 6.63372221808682 0 6.63372221 808682
0 0 0.44520684 233519 0.44520684 233519