Monday, August 28, 2017

WATAK PELIPATAN SIRKULAR DFT (DISCRETE FOURIER TRANSFORM)











function TAMPILKAN_DFT_Callback(hObject, eventdata, handles)
% hObject    handle to TAMPILKAN_DFT (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)

%Membaca data global agar dapat dipakai untuk callback berikutnya
global x_1
x1 = x_1;

global x_2
x2 = x_2;

global n1_x
n1 = n1_x;

global n2_x
n2 = n2_x;

%Membaca N
N = str2num(get(handles.editBanyakTitik,'String'));

%==========================================================================
%Menghitung DFT[x(mod(-n,N)+1)]]
xn=x2;
L=length(xn);
xn=[xn,zeros(1,N-L)];
k=[-N/2:N/2];
Xk=dft(xn,N);                           % DFT
magXk=abs([Xk(N/2+1:N) Xk(1:N/2+1)]);   % magnitudo DFT

%Menampilkan Magnitudo dari DFT
magXk=abs([Xk(N/2+1:N) Xk(1:N/2+1)]);   % magnitudo DFT
axes(handles.axes2), stem(k,magXk, 'c', 'LineWidth',2); grid
xlabel('k');
title('Bagian magnitudo dari DFT[x(mod(-n,N)+1)]'); ylabel('Magnitudo')

%Memberikan grid x dan y dengan warna biru
set(gca, 'XColor', 'b')
set(gca, 'YColor', 'b')

%Memberikan warna kehijauan  pada latar sumbu
set(gca,'Color',[0.5 0.5 0.5]);

%Menampilkan Sudut dari DFT
angX=angle([Xk(N/2+1:N) Xk(1:N/2+1)]);
axes(handles.axes4), stem(k,angX, 'c', 'LineWidth',2); grid
xlabel('k');
title('Bagian Sudut dari DFT[x(mod(-n,N)+1)]'); ylabel('Radian')

%Memberikan grid x dan y dengan warna biru
set(gca, 'XColor', 'b')
set(gca, 'YColor', 'b')

%Memberikan warna kehijauan  pada latar sumbu
set(gca,'Color',[0.5 0.5 0.5]);

%==========================================================================
%Menghitung DFT[x(n)]
xn=x1;
L=length(xn);
xn=[xn,zeros(1,N-L)];
k=[-N/2:N/2];
Xk=dft(xn,N);                           % DFT1

magXk=abs([Xk(N/2+1:N) Xk(1:N/2+1)]);   % magnitudo DFT

%Menampilkan Magnitudo dari DFT
magXk=abs([Xk(N/2+1:N) Xk(1:N/2+1)]);   % magnitudo DFT
axes(handles.axes3), stem(k,magXk, 'c', 'LineWidth',2); grid
xlabel('k');
title('Bagian magnitudo dari DFT[x(n)]'); ylabel('Magnitudo')

%Memberikan grid x dan y dengan warna biru
set(gca, 'XColor', 'b')
set(gca, 'YColor', 'b')

%Memberikan warna kehijauan  pada latar sumbu
set(gca,'Color',[0.5 0.5 0.5]);

%Menampilkan Sudut dari DFT
angX=angle([Xk(N/2+1:N) Xk(1:N/2+1)]);
axes(handles.axes5), stem(k,angX, 'c', 'LineWidth',2); grid
xlabel('k');
title('Bagian Sudut dari DFT[x(n)]'); ylabel('Radian')

%Memberikan grid x dan y dengan warna biru
set(gca, 'XColor', 'b')
set(gca, 'YColor', 'b')

%Memberikan warna kehijauan  pada latar sumbu
set(gca,'Color',[0.5 0.5 0.5]);


GUI MATLAB ini ketika dijalankan ditampilkan pada Gambar 3.15.







No comments: