Anda di halaman 1dari 9

Mata Kuliah : Algoritma dan Pemrograman

Nama : Vina Fadhilla


NIM : 4161121025
Kelas : Fisika Dik B 2016
Dosen : Dr. Alkahfi Maas Siregar, M.Si

Laporan Praktikum-12
Pemrograman Interferensi Celah Banyak

Formulasi masalah fisis akan menjadi sederhana manakala telah diperoleh


persamaan matematis yang mewakilinya. Penyusunan program berguna untuk
untuk dapat memudahkan pemahaman fisis menggunakan berbagai situasi yang
mungkin. Interferensi merupakan gejala fisika yang terjadi karena superposisi
gelombang-gelombang yang datang disuatu tempat. Misalkan arah berkas cahaya
membentuk sudut θ dengan sumbu celah dan jarak Antara celah adalah d,
sehingga diperoleh AC=d.sin θ.

A. Data Praktikum

1.1 Interferensi I

Untuk menjelankan program Interferensi celah pada Matlab, dapat


dilakukan dengan menyusun program pada jendela Command Window
sepert pada program berikut :

%program interferensi celah


%menggunakan phasor
%implementasi looping/iterasi
clc;
clear all;
%
%Masukkan program
disp('panjang gelombang (4000A-8000A)');
lambda= input('berikan nilai panjang gelombang, lambda = ');
disp(' ');
disp('jarak celah(>panjang gelombang)');
d = input('berikan jarak celah, d = ');
disp(' ');
disp('jumlah celah(bilangan bulat>=2)');

1|Lap.Prak.Algo
n=input('berikan jumlah celah, n = ');
%
%persiapan sumbu x dan y
xmin=0;
xmax=60;
ymin=0;
ymax=(n)^2+5;
%
ax=0;
ay=0;
%
sudut=0:1:60;
delta=((2*pi)/lambda)*d*sin(sudut*pi/180);
for i=1:1:n,
ax=ax+cos(i*delta);
ay=ay+sin(i*delta);
ax=ax;
ay=ay;
end
It=(ax).^2+(ay).^2;
%
plot(sudut,It)
axis([xmin xmax ymin ymax])
grid

Setelah program disusun, kemudian eksekusi program dengan


menyimpan file program dengan nama “prog_interferensi1”. Setelah file
disimpan, panggil atau ketikkan nama file yang disimpan tadi. Masukkan
nilai-nilai yang diminta pada jendela Command Window, dengan lambda=
6000, d=7000, n=7. Maka tampilan jendela Command Window seperti
berikut :

panjang gelombang (4000A-8000A)


berikan nilai panjang gelombang, lambda = 6000
jarak celah(>panjang gelombang)
berikan jarak celah, d = 7000
jumlah celah(bilangan bulat>=2)
berikan jumlah celah, n = 7

2|Lap.Prak.Algo
50

45

40

35

30

25

20

15

10

0
0 10 20 30 40 50 60

Masukkan nilai-nilai berbeda yang diminta pada jendela Command


Window, dengan lambda=5500 , d=7500, n=5. Maka tampilan jendela
Command Window seperti berikut :

panjang gelombang (4000A-8000A)


berikan nilai panjang gelombang, lambda = 5500
jarak celah(>panjang gelombang)
berikan jarak celah, d = 7500
jumlah celah(bilangan bulat>=2)
berikan jumlah celah, n = 5

3|Lap.Prak.Algo
30

25

20

15

10

0
0 10 20 30 40 50 60

1.2 Interferensi II

Untuk menjelankan program Interferensi II pada Matlab, dapat


dilakukan dengan menyusun program pada jendela Command Window
sepert pada program berikut :

%Program Interferensi Celah menggunakan phasor


%Implementasi looping/iterasi
clc;
clear all;
%Masukan program
disp('panjang gelombang(4000A-8000A)');
lambda=input('Berikan nilai panjang gelombang, lambda = ');
disp(' ')
disp('Jarak celah ( < panjang gelombang)');
d=input('Berikan jarak celah, d = ');
disp(' ')
disp('Jumlah celah (bilangan bulat >=2)');
n=input('Berikan jumlah celah, n = ');
%
%Persiapan sumbu x dan y

4|Lap.Prak.Algo
xmin=0; xmax=60;
ymin=0; ymax=(n)^2+5;
ax=0; ay=0;
%
sudut=0.1:0.1:60;
gamma=(1/2)*((2*pi)/lambda)*d*sin(sudut*pi/180);
nsin=sin(n*gamma);
ssin=sin(gamma);
It=(nsin./ssin).^2;
plot(sudut,It)
title('Program Interferensi 2');
xlabel('Sudut');
ylabel('Interferensi');
axis([xmin xmax ymin ymax])
grid
Setelah program disusun, kemudian eksekusi program dengan
menyimpan file program dengan nama “prog_interferensi1”. Setelah file
disimpan, panggil atau ketikkan nama file yang disimpan tadi. Masukkan
nilai-nilai yang diminta pada jendela Command Window, dengan lambda=
5500, d=7500, n=6. Kemudian berikan judul Plot/grafik yang muncul, dan
berikan nama pada sumbu x dan sumbu y dalam grafik. Maka tampilan
jendela Command Window seperti berikut :

panjang gelombang(4000A-8000A)

Berikan nilai panjang gelombang, lambda = 5500

Jarak celah ( < panjang gelombang)

Berikan jarak celah, d = 7500

Jumlah celah (bilangan bulat >=2)

Berikan jumlah celah, n = 6

>>

5|Lap.Prak.Algo
Program Interferensi 2
40

35

30

25
Interferensi

20

15

10

0
0 10 20 30 40 50 60
Sudut

B. Analisis Data

Pada saat mengeksekusi program interferensi 2 terjadi error pada


saat memanggil program pada jendela Command Window, dikatakan
bahwa kesalahan terjadi pada baris 13, kolom 17 yaitu kekurangan
menuliskan perintah disp.

>> prog_interferensi2
??? Error: File: prog_interferensi2.m Line: 13 Column:
17
Unexpected MATLAB expression.

Kesalahan lainnya terjadi ketika sudah memasukkan nilai-nilai


yang diminta pada jendela command window, tetapi ada satu kesalahan
yang muncul. Dikatakan bahwa kesalahan terjadi karena tidak ditemukan
fungsi ‘nsin’ dan kesalahan pada baris 22 pada program interferensi 2,
dikarenakan kurangnya tanda (=).

panjang gelombang(4000A-8000A)
Berikan nilai panjang gelombang, lambda = 5500

6|Lap.Prak.Algo
Jarak celah ( < panjang gelombang)
Berikan jarak celah, d = 7500
Jumlah celah (bilangan bulat >=2)
Berikan jumlah celah, n = 5
??? Undefined function or variable 'nsin'.
Error in ==> prog_interferensi2 at 22
nsin-sin(n*gamma);

C. Simpulan
1. Persamaan yang digunakan sebagai representasi/formulasi masalah fisis akan
menjadi sederhana apabila diperoleh persamaan matematis yang mewakilinya.
Penyusunan program yang dilakukan dapat memudahkan fisis menggunakan
berbagai situasi yang mungkin.
2. Menyusun dan mengeksekusi program sesuai dengan formula fisis dapat
dilakukan dengan memasukkan beberapa perintah seperti disp, input, for…end
plot, axis, dan lainnya.

D. Tugas
1. Tuliskan persamaan yang digunakan pada Interferensi I dan II

Jawab :

Interferensi I:
delta=((2*pi)/lambda)*d*sin((sudut*pi/180));
for i=1:1:n,
ax=ax+cos(i*delta);
ay=ay+sin(i*delta);
ax=ax;
ay=ay;
end
It=(ax).^2+(ay).^2;

Interferensi II:
gamma=(1/2)*((2*pi)/lambda)*d*sin(sudut*pi/180);
nsin=sin(n*gamma);
ssin=sin(gamma);
It=(nsin./ssin).^2;

7|Lap.Prak.Algo
2. Temukan hasil eksekusi menggunakan nilai amplitude berbeda. Susunlah
program untuk menyimpan hasil eksekusi yang diperoleh.

Jawab :

%program interferensi celah


%menggunakan phasor
%implementasi looping/iterasi
clc;
clear all;
%
%masukan program
disp('panjang gelombang (4000A-8000A)');
lambda=input('berikan nilai panjang gelombang,
lambda=');
disp(' ');
disp('jarak celah (<panjang gelombang)');
d=input('berikan jarak celah,d=');
disp(' ');
disp('jumlah celah (bilangan bulat>=2)');
n=input('berikan jumlah celah,n=');
%
%persiapan sumbu x dan y
xmin=0;
xmax=60;
ymin=0;
ymax=(n)^2+5;
%
ax=0;
ay=0;
%
sudut=0:1:60;
delta=((2*pi)/lambda)*d*sin((sudut*pi/180));
for i=1:1:n,
ax=ax+cos(i*delta);
ay=ay+sin(i*delta);
ax=ax;
ay=ay;
end
It=(ax).^2+(ay).^2;
%
plot(sudut,It)
axis([xmin xmax ymin ymax])
grid

Hasil eksekusi program seperti berikut :


panjang gelombang (4000A-8000A)

8|Lap.Prak.Algo
berikan nilai panjang gelombang, lambda=5000
jarak celah (<panjang gelombang)
berikan jarak celah,d=3000
jumlah celah (bilangan bulat>=2)
berikan jumlah celah,n=5
»

30

25

20

15

10

0
0 10 20 30 40 50 60

%program menyimpan file menggunakan perintah save


%
clear all;
clc;
xmin=0;
xmax=60;
ymin=0;
%
save xmin.txt xmin -ascii;
save xmax.txt xmax -ascii;
save ymin.txt ymin -ascii;

9|Lap.Prak.Algo

Anda mungkin juga menyukai