Berikut ini bentuk script
fungsi sft dari transformasi fourier lamabat.
function yk = sft(y)
% Slow fourier transformation
% yk = sft(y)
% Input vektor time series y
% Output hasil transformasi DFT
N =
length(y);
sudut =
-2*pi*sqrt(-1)/N;
for k=0:N-1
temp = exp(sudut*(0:N-1)*k);
yk(k+1) = sum(y.*temp);
end
return
Berikut ini adalah program matlab yang menggunakan
fungsi sft(y) di atas dengan data time series berupa sinyal sinusoidal sin(2πft+fase)
% DFT - program transformasi fouriersi
% menggunakan fungsi slow
fourier transformetion
clear
all;
clc;
help
DFT;
N =
input ('Masukan jumlah titik N - ');
frek =
input('Masukan frekwensi gelombang sinus - ');
fase =
input('Masukan beda fase -');
tau = 1
;
% Membuat data set time series
t =
(0:(N-1))*tau; % tk = k*tau, k = 0...N-1
y =
sin(2*pi*t*frek + fase);
flops(0); % menolkan
flops
% Menghitung hasil transformasi fourier dengan fungsi sft
yk =
sft(y);
fprintf('jumlah flop= %g untuk %d data /n',flops,N);
% Menghitung vektor frekwensi
f =
(0:(N-1))/(N*tau); % fk = k/N.tau
subplot(121)
plot(t,y);
title('Data asli time series');
ylabel('Amplitudo');
xlabel('waktu');
subplot(122)
plot(f,real(yk),'-',f,imag(yk),'--');
title('Real(solid); imag(dash)');
ylabel('Transformasi fourier');
xlabel('Frekwensi');
subplot(111)
Dengan memasukkan
data-data N=50, frekuensi 0,2 Hz, dan fase π/2. Di run akan muncul tampilan
seperti berikut:
Gambar 1. Running data dft
Pembahasan
Pada praktikum ini, praktikan melakukan praktikum analisis
spektra. Analisis spektra adalah suatu analisis yang dilaksanakan untuk melihat
spektrum frekuensi yang terkandung dalam data runtun waktu (time series data).
Analisis spektra didasari oleh transformasi data dari domain waktu ke domain
frekuensi sehingga spektrum frekuensi yang terkandung dapat dipantau. Salah
satu bentuk transformasi yang paling banyak digunakan adalah transformasi
fourier, dan dalam bidang numerik biasa disebut sebagai Discrete Fourier
Transformation (DFT).
Secara umum,
operasi pada program Matlab ini memiliki simbol-simbol tertentu yang mempunyai
fungsi masing-masing, seperti simbol percent (%) yang digunakan untuk
mengabaikan kalimat yang berada sesudah simbol tersebut, tanda koma (,)
digunakan untuk memisahkan dua pernyataan dalam sebaris, tanda titik koma (;) digunakan untuk memisahkan dua
pernyataan tanpa echo, dan tanda
titik-titik (....) digunakan untuk melanjutkan statement ke baris berikutnya. Analisis spektral dalam
penelitian ini digunakan untuk menampilkan periode setiap gelombaltg yang tersembunyi dari sebuah data deret waktu.
Pada praktikum Transformasi
Fourier Lambat, dibuat data seperti data pengamatan di atas. Setelah dibuat
programnya, file disimpan dengan nama “sft”.
Akan tetapi jika program tersebut di running, maka hasil run tidak
muncul. Melainkan harus memasukkan data time series berupa sinyal sinusoida
sinus atau cosinus. Programnya dapat dilihat pada data pengamatan di atas. Jika
dilakukan running maka akan seperti gambar 1 di atas.
Tidak ada komentar:
Posting Komentar