Anda di halaman 1dari 3

MODUL 2.

INTERPOLASI

Tujuan Praktikum:
Diharapkan praktikan memahami cara interpolasi data dengan Matlab

Materi:
Interpolasi adalah mencari nilai-nilai antara yang tidak ada pada data. Interpolasi bisa
dimanfaatkan untuk penghalusan kurva atau penghalusan peta. Pencarian nilai menggunakan
fungsi pendekatan seperti pendekatan linier, kuadratik dan polynomial.
Di bidang matematika analisis numerik, interpolasi adalah jenis estimasi, metode membangun
titik data baru dalam kisaran satu set diskrit titik data yang dikenal.
Dalam teknik dan sains, seseorang sering memiliki jumlah titik data, diperoleh dari hasil
sampling atau eksperimen, yang mewakili nilai-nilai dari suatu fungsi untuk sejumlah nilai-nilai
dari variabel independen. Kebanyakan data tersebut ada yang tidak mewakili data yang kita
diperlukan. Oleh karena itu, untuk dapat menhasilkan data yang diinginkan dalam titik yg
diperlukan maka sering data yang ada di-interpolasi, yaitu, memperkirakan nilai fungsi yang
untuk nilai intermediate dari variabel independen.

Interpolasi 1D (satu dimensi)


Missal dalam sebuah sampling diperoleh data
No X Y
1 1.00 3.00
2 4.00 5.00
3 7.00 6.00
4 10.00 9.00

Pertanyaanya adalah (persoalan sederhana): berapakah nilay Y untuk x = 5


Mengacu pada data yang ditampilkan di atas, dalam matlab solusi dari masalah tersebut dapat
diselesaikan dengan:
Untuk fungsi interpolasi maka matlab menggunakan fungsi interp
%%
clear all
%%% Simple interpolation
xxx = [1.00,5.00,7.00,10.00];
yyy = [3.00,5.00,6.00,9.00];
plot(xxx,yyy,'+-')
hold on
xi = ([8]);
yi = interp1(xxx,yyy,xi);
plot(xxx,yyy,xi,yi,'ro')

Bagaimana untuk sampel yang time seris (data yang bergantung waktu)?
Contoh
%%% time series example
ttt = 1:0.5:10;
ynew = 5.*sin(ttt/10.);
plot (ttt,ynew)
ynew = 5.*sin(ttt/1.);
xinew =3.0:0.05:5;
yinew = interp1(ttt,ynew,xinew);
plot(ttt,ynew,xinew,yinew,'r.')

Contoh contoh di atas merupakan interpolasi linier biasa yang banyak digunakan orang untuk
pengetahuan dasar. Selanjutnya cara interpolasi lain juga dapat dilakukan dengan

%%% aditional interpolation


yinews = interp1(ttt,ynew,xinew,'spline');
yinewc = interp1(ttt,ynew,xinew,'cubic');
plot(ttt,ynew,xinew,yinew,'r.',xinew,yinewc,'g.')

Interpolasi 2d (dua dimensi)


%%%% making 2D interpolation
clear all
[xxx,yyy] = meshgrid(-3:.1:3);
zzz = peaks(xxx,yyy);
mesh(xxx,yyy,zzz);
hold on
[xi,yi] =meshgrid(-1.5:0.05:1.5);
zi = interp2(xxx,yyy,zzz,xi,yi);
mesh (xi,yi,zi+15)

%%%% making 2D interpolation


clear all
xrand = rand (100,1)*4-2;
yrand = rand (100,1)*4-2;
zrand = xrand.*exp(-xrand.^2-yrand.^2);
ti = -2:0.15:2;
[xi,yi] = meshgrid(ti,ti);
zi = griddata(xrand,yrand,zrand,xi,yi);
mesh (xi,yi,zi)
hold on
plot3(xrand,yrand,zrand,'oc','linewidth',2)

Latihan
Buatlah interpolasi dari data file yang diberikan
Nama file: lab5b_gaps.txt
Langkah-langkah yang dilakukan
1. Bukalah data tersebut dengan editor matlab
Ada berapa baris dan kolom data tersebut
2. Definisikan x sebagai data kolom 1 dan y sebagai data kolom 2
Misalnya
Xdata = …
Ydata = …
3. Plot kan grafik antara Ydata versus Ydata
4. Lihat data mana yang tidak ada (kosong)
Cata di titik mana data yang kosong
Tugas
Isilah setiap titik yang kosong dengan menggunakan interpolasi yag telah anda pelajari

Anda mungkin juga menyukai