[Muhammad Arief Rahman] Tugas 01
-
Upload
arief-rahman -
Category
Documents
-
view
226 -
download
0
Transcript of [Muhammad Arief Rahman] Tugas 01
-
8/17/2019 [Muhammad Arief Rahman] Tugas 01
1/13
Tugas 01
KL5200
Gelombang Acak Lanjut
Andojo Wurjanto, Ph.D
Muhammad Arief Rahman
25515304
OCEAN ENGINEERING PROGRAM
FACULTY OF CIVIL AND ENVIRONMENTAL ENGINEERING
BANDUNG INSTITUTE OF TECHNOLOGY
2016
-
8/17/2019 [Muhammad Arief Rahman] Tugas 01
2/13
Soal I. Penyajian 10 data gelombang harmonik beserta plot grafik gelombangnya untuk panjang
waktu data 100 sekon
1a. Tabel data gelombang harmonik
1b. Plot 10 gelombang harmonik
Dengan diketahuinya data gelombang harmonik yang terdiri dari amplitudo, periode, frekuensi dan
fasa, maka gelombang harmonik dapat dibentuk dengan persamaan:
ɳ (t) = Amplitudo cos(2πft+teta)
Gelombang harmonik 1 (Amplitudo 0.5m, Frekuensi 0.05 Hz, Fasa 30 derajat)
-
8/17/2019 [Muhammad Arief Rahman] Tugas 01
3/13
Gelombang harmonik 1 (Amplitudo 0.6m, Frekuensi 0.08 Hz, Fasa 120 derajat)
Gelombang harmonik 1 (Amplitudo 0.7m, Frekuensi 0.1 Hz, Fasa 45 derajat)
Gelombang harmonik 1 (Amplitudo 0.8m, Frekuensi 0.13 Hz, Fasa 135 derajat)
-
8/17/2019 [Muhammad Arief Rahman] Tugas 01
4/13
Gelombang harmonik 1 (Amplitudo 0.9m, Frekuensi 0.15 Hz, Fasa 150 derajat)
Gelombang harmonik 1 (Amplitudo 1.0m, Frekuensi 0.18 Hz, Fasa 60 derajat)
Gelombang harmonik 1 (Amplitudo 1.2m, Frekuensi 0.20 Hz, Fasa 35 derajat)
-
8/17/2019 [Muhammad Arief Rahman] Tugas 01
5/13
Gelombang harmonik 1 (Amplitudo 1.3m, Frekuensi 0.23 Hz, Fasa 110 derajat)
Gelombang harmonik 1 (Amplitudo 1.4m, Frekuensi 0.25 Hz, Fasa 75 derajat)
Gelombang harmonik 1 (Amplitudo 1.5m, Frekuensi 0.28 Hz, Fasa 15 derajat)
-
8/17/2019 [Muhammad Arief Rahman] Tugas 01
6/13
Soal II. Perkakas atau perangkat lunak yang digunakan dalam melakukan perhitungan
Transformasi Fourier
Sumber perkakas yang digunakan
Perkakas atau perangkat lunak yang digunakan dalam pengerjaan tugas ini adalah Matlab
(Matrix Laboratory) dengan versi Matlab R2012a. Matlab ini merupakan perangkat lunak
berbayar dan dapat diakses di alamat web:
http://www.mathworks.com/downloads/web_downloads/?s_tid=srchtitle.
Alamat tautan tersebut merupakan tautan untuk mendownloawd Matlab versi terbaru
R2016a. Untuk melihat daftat harga yang dikeluarkan oleh The MathWorks, Inc. Untuk
produk-produknya dapat dilihat pada tautan berikut:
https://www.mathworks.com/store/default.do?s_cid=store_top_nav&s_tid=gn_store.
Deskripsi tentang Matlab
Matlab adalah sebuah program untuk menganalisis dan mengkomputasi data numerik, dan
Matlab juga merupakan suatu bahasa pemrograman matematika lanjutan, yang dibentuk
dengan dasar pemikiran yang menggunakan sifat dan bentuk matriks. Matlab merupakan
bahasa pemrograman yang dikembangkan oleh The Mathwork Inc. yang hadir dengan fungsi
dan karakteristik yang berbeda dengan bahasa pemrograman lain yang sudah ada lebih
dahulu seperti Delphi, Basic maupun C++. (Sumber: https://id.wikipedia.org/wiki/MATLAB)
Matlab dikembangkan pada tahun 1950an oleh J. H. Wilkinson, George Forsythe, and John
Todd. Pada awalnya program aplikasi MATLAB ini merupakan suatu interface untuk koleksi
rutin-rutin numerik dari proyek LINPACK dan EISPACK, dan dikembangkan denganmenggunakan bahasa FORTRAN, namun sekarang ini Matlab merupakan produk komersial
dari perusahaan Mathworks, Inc. Yang dalam perkembangan selanjutnya dikembangkan
dengan menggunakan bahasa C++ dan assembler, (utamanya untuk fungsi-fungsi dasar
Matlab). Matlab telah berkembang menjadi sebuah environment pemprograman yang
canggih yang berisi fungsi-fungsi built-in untuk melakukan tugas pengolahan sinyal, aljabar
linier, dan kalkulasi matematis lainnya. Matlab juga menyediakan berbagai fungsi untuk
menampilkan data, baik dalam bentuk dua dimensi maupun dalam bentuk tiga dimensi.
(Sumber:http://www.mathworks.com/company/newsletters/articles/the-origins-of
matlab.html).
Software ini bekerja pada sistem operasi Windows. Untuk dapat mendownload versi trial
dari perangkat lunak ini dapat mengakses tautan berikut:
http://www.mathworks.com/products/new_products/latest_features.html?s_tid=hp_spot_
R2016a_0316.
Matlab terdiri dari figur-figur menarik dan terdapat banyak fungsi yang dapat menyelesaikan
persoalan dalam dunia engineering dan sains. Beberapa figur yang ditawarkan kepada
pengguna diantaranya:
-
Matlab Command window/editor Matlab Command window/editor merupakan windowyang muncul ketika menjalankan aplikasi Matlab.
http://www.mathworks.com/downloads/web_downloads/?s_tid=srchtitlehttps://www.mathworks.com/store/default.do?s_cid=store_top_nav&s_tid=gn_storehttps://id.wikipedia.org/wiki/MATLABhttp://www.mathworks.com/products/new_products/latest_features.html?s_tid=hp_spot_R2016a_0316http://www.mathworks.com/products/new_products/latest_features.html?s_tid=hp_spot_R2016a_0316http://www.mathworks.com/products/new_products/latest_features.html?s_tid=hp_spot_R2016a_0316http://www.mathworks.com/products/new_products/latest_features.html?s_tid=hp_spot_R2016a_0316https://id.wikipedia.org/wiki/MATLABhttps://www.mathworks.com/store/default.do?s_cid=store_top_nav&s_tid=gn_storehttp://www.mathworks.com/downloads/web_downloads/?s_tid=srchtitle
-
8/17/2019 [Muhammad Arief Rahman] Tugas 01
7/13
-
Command Window digunakan untuk menjalankan program/perintah yang dibuat pada
layar editor. Pada windows ini dapat diakses perintah maupun fungsi yang ada di matlab
secara langsung.
-
Matlab Editor/Debugger merupakan tool yang disediakan oleh Matlab yang berfungsi
sebagai editor script Matlab.
-
Figure Windows merupakan hasil visualisasi dari Matlab, berfungsi sebagai visualisasi
output dapat juga sekaligus menjadi media input.
3.
Penjelasan tentang penggunaan Transformasi Fourier pada Matlab
-
definisikan interval waktu 0.1s dan panjang seri waktu t 100s. Dt dipilih sebesar 0.1 agar
dapat menggambarkan gelombang dengan jelas. Sehingga banyaknya data per satu
gelombang harmonik adalah 1000. Berikut pendefinisian awal variabel yang telah kita
ketahui
Tsw = 100; % panjang data time series 100 sekon dt = 0.1; % time interval atau waktu pencuplikan data n=0:0.1:100; % banyaknya data adalah panjang waktu data dikaliinterval waktu data
-
definisikan 10 nilai Amplitudo, Frekuensi, Periode dan fasa yang berbeda untuk
pembuatan gelombang harmonik
Amplitudo=linspace(0.5,1.5,10);frekuensi=([0.05 0.08 0.1 0.13 0.15 0.18 0.2 0.23 0.25 0.28]); periode= 1./frekuensi ; fasa=([30 120 45 135 150 60 35 110 75 15])
-
gelombang harmonik dibentuk menggunakan ɳ (t) = Amplitudo cos(2πft+teta), pada
matlab ditulis sebagai berikut:
for i=1:10 y(i,:)=Amplitudo(i)*cos((2*pi*frekuensi(i)*n)+fasa(i)); end
-
8/17/2019 [Muhammad Arief Rahman] Tugas 01
8/13
-
Gelombang acak merupakan superposisi atau penjumlahan dari gelombang-gelombang
harmonik penyusunnya. 10 gelombang harmonik dijumlahkan menjadi 1 gelombang
acak dengan menggunakan fungsi sum sebagai berikut:
y_random = sum(y);
Gambar plot gelombang acak terhadap waktu
-
Proses transformasi fourier pada matlab merupakan transformasi fourier diskrit dan
dinyatakan dalam fungsi fft. Proses transformasi fourier pada matlab menggunakan
fungsi power yang terdiri dari bilangan real dan imajiner. Persaamaan yang digunakan
adalah:
Dengan keterangan:
ak, bk : koefisien transformasi fourier
xn : amplitudo gelombang acak
N : Watu data time series
K : jumlah gerak harmonik yang diperhitungkan
n : waktu ke n
pada matlab dituliskan sebagai berikut:
y_fft = fft(y_random); % proses fft dengan menggunakan fungsi fft y_Ak = real(y_fft); % nilai Ak yang merupakan nilai real dari hasil fft y_Bk = imag(y_fft); % nilai Bk yang merupakan nilai imajiner dari hasil fft
- Amplitudo gelombang dalam doman frekuensi dari hasil transformasi fourier merupakanresultan dari koefisien fouriernya (Ak dan Bk). Pada matlab dituliskan sebagai berikut
y_Ck = (y_Ak.^2 + y_Bk.^2).^(1/2); % amplitudo gelombang hasil fft
-
8/17/2019 [Muhammad Arief Rahman] Tugas 01
9/13
-
Power spektrum dapat dihitung dengan mengkuadratkan amplitudo gelombang dalam
domain frekuensi dibagi dengan dua kali delta frekuensi (df). df merupakan Tsw atau
1/100. Pada matlab dinyatakan sebagai berikut:
spektrum = y_Ck.^2 / (2*0.01);
- Untuk mengetahui frekuensi yang terdapat dari gelombang acak, power spektrum di
plot terhadap frekuensi. Banyaknya frekuensi yang di plot atau yang menjadi panjang
dari sumbu x adalah f nyquist nya dimana f nyquist merupakan 1/2dt. Dari hasil plot
power spektrum didapat hasil bahwa frekuensi yang muncul atau mempunyai nilai
power spektrum besar adalah frekuensi dari setiap gelombang harmonik [0.05, 0.08 0.1
0.13 0.15 0.18 0.2 0.23 0.25 0.28] penyusun gelombang acak yang telah ditentukan
sebelumnya. Sehingga dapat dikatakan pengerjaan transformasi fourier dengan
menggunakan perangkat lunak Matlab telah berjalan dengan benar.Hasil visualisasi pada
matlab sebagai berikut:
Gambar plot power spectrum terhadap frekuensi
-
8/17/2019 [Muhammad Arief Rahman] Tugas 01
10/13
Lampiran
1.
Script yang digunakan pada Matlab
clc
clear all
close all
%% Muhammad Arief Rahman #25515304
%% Tugas 1 Gerak harmonik dan Transformasi Fourier
%% pembuatan 10 gelombang harmonik
% definisikan interval waktu 1s dengna panjang seri waktu t 100s
% ditekahui
Tsw = 100; % panjang data time series 100 sekon
dt = 0.1; % time interval atau waktu pencuplikan data
n=0:0.1:100; % banyaknya data adalah panjang waktu data dikali interval waktu data
% definisikan 10 amplitudo, frekuensi dan fasa yang berbeda untuk pembuatan
gelombang harmonik
Amplitudo=linspace(0.5,1.5,10);
frekuensi=([0.05 0.08 0.1 0.13 0.15 0.18 0.2 0.23 0.25 0.28]);
periode= 1./frekuensi ;
fasa=([30 120 45 135 150 60 35 110 75 15]);
% gelombang harmonik dan plot masing-masing gelombang
for i=1:10
figure(i)
y(i,:)=Amplitudo(i)*cos((2*pi*frekuensi(i)*n)+fasa(i));
plot(n,y(i,:),'linewidth',1.7); ylim([-2 2]); grid on
ylabel('Amplitudo (meter)','Fontsize',11,'FontWeight','bold');
xlabel('waktu (sekon)','Fontsize',11,'FontWeight','bold');
set(gca,'fontsize',10,'fontweight','b');
end
close all
%% gelombang acak merupakan penjumlahan dari gelombang-gelombang harmonik
y_random = sum(y);
figure(1)
plot(n,y_random,'linewidth',1.7); grid on
ylabel('Amplitudo (meter)','Fontsize',11,'FontWeight','bold');
xlabel('waktu (sekon)','Fontsize',11,'FontWeight','bold');
set(gca,'fontsize',10,'fontweight','b');
-
8/17/2019 [Muhammad Arief Rahman] Tugas 01
11/13
%% pengolahan data dengan metode transformasi fourier (FT)
y_fft = fft(y_random); % proses fft dengan menggunakan fungsi fft
y_Ak = real(y_fft); % definisikan nilai Ak yang merupakan nilai real dari hasil fft
y_Bk = imag(y_fft); % definisikan nilai Bk yang merupakan nilai imajiner dari hasil fft
y_Ck = (y_Ak.^2 + y_Bk.^2).^(1/2); % amplitudo gelombang hasil fft
%% plot power spektrum density
spektrum = y_Ck.^2 / (2*0.01);
df = 0:0.01:(1/(2*0.1));
m1=find(spektrum
-
8/17/2019 [Muhammad Arief Rahman] Tugas 01
12/13
-
8/17/2019 [Muhammad Arief Rahman] Tugas 01
13/13