Uploaded by User35330

F1D018037 METODE INTERPOLASI LAGRANCE

advertisement
LAPORAN PRAKTIKUM
INTERPOLASI LAGRANGE
Nama
: MUHAMMAD AWALUDDIN
NIM
: F1D018037
Kelas
:A
A. Tujuan
1. Dapat menentukan fungsi pendekatan terbaik dari model yang telah diberikan
2. Membuat rancangan program untuk menentukan interpolasi lagrange.
B. Permasalahan
Buatlah program untuk menentukan fungsi pendekatan terbaik data berikut menggunakan
model:
1. y=a+bx,
2. y=ax2+bx+c,
3. y=aebx
4. Dan buat juga program untuk menentukan nilai x=5.5 dengan mempertimbangkan
semua data menggunakan metode Lagrange
Diberikan data x dan y sbb:
x
1
2
3
4
5
6
7
8
y
1.5576
1.2131
0.9447
0.7358
0.5730
0.4462
0.3476
0.2707
C. Algoritma dan penyelesaian
Algoritma :
1. Tetapkan jumlah titik yang diketahui. Untuk menginputkan titik yang diketahui dapat
meenggunakan dua array x dan y dengan jumlah data = jumlah titiknya. Dengan dua
array akan lebih mudah mengatur perilaku data didalam program.
2. Mencari Li(x) dan P(x) Li(x) didapat sejumlah titik yang diketahui, sehingga
diperlukan perulangan sebanyak titik yang diketahui.
Source Code
import java.util.Scanner;
class PRAKTIKUM3 {
static double[] X;
static double[] Y;
double calculate(int ordo, double x){
double phi, L;
L=0.0;
for(int i=0; i< ordo+1; i++){
phi=1.0;
for(int j=0; j<ordo+1; j++){
if(i!=j){
phi=phi*(x-X[j])/(X[i]-X[j]);
}
}
L=L+Y[i]*phi;
System.out.println("nilai L : "+L);
}
return L;
}
public static void main(String[] args){
Scanner input = new Scanner(System.in);
PRAKTIKUM3 l = new PRAKTIKUM3();
int data, ordo;
double fx, t;
System.out.print(" INPUT DATA : ");
data=input.nextInt();
X = new double[data];
Y = new double[data];
for(int a=0; a<data; a++){
System.out.print(" INPUT X : ");
X[a]=input.nextDouble();
System.out.print(" INPUT Y : ");
Y[a]=input.nextDouble();
}
for(int a=0; a<data; a++){
System.out.println(" X["+a+"] : "+X[a]+"\t Y["+a+"] : "+Y[a]);
}
System.out.print(" INPUT ORDE : ");
ordo=input.nextInt();
System.out.print(" INPUT NILAI T : ");
t=input.nextDouble();
fx=l.calculate(ordo, t);
System.out.println(" HASIL= "+t+" detik adalah "+fx);
}
}
D. Hasil Percobaan dan Analisa
Berdasarkan percobaan yang telah dilakukan didapatkan hasil sebagai berikut :
Percobaan dilakukan dengan jumlah inputan 8 titik dengan nilai sesuai dengan
permasalahan dan jumlah ordenya 1. Nilai T adalah 5.5, berdasarkan inputan berikut
didapatkan hasil L : -5.4516 dan L : 0.0073500000000000634.
Untuk mendapatkan hasil tersebut harus dicari terlebih dahulu nilai 8 titik dari
setiap variabel a0 sampai dengan a8 dengan mengunakan rumus
 a0 = f(x0)
 a1 = f[x1, x0]
 a2 = f[x2, x1, x0]
…
 an = f[xn, xn-1, xn-2, . . . ., x0]
yang dibutuhkan untuk mendapatkan hasil pendekatan. Setelah ditemukan hasil
dari variabel a0 sampai a8 , kemudian dilakukan perhitungan untuk mendapatkan nilai
pendekatan dengan menggunakan metode lagrange yang dimana rumusnya yaitu
n
f n  x    Li x . f xi 
i 0
. Maka setelah dilakukan perhitungan didapatkan hasil pendekatan = 34,293
E. Kesimpulan
Dari percobaan yang telah dilakukan, dapat diambil kesimpulan yaitu:
a. Untuk menentukan persamaan yang terbaik untuk suatu sebaran data, maka perlu
dihitung masing-masing error dari setiap persamaan. Persamaan dengan error yang
paling rendah adalah model persamaan yang terbaik.
b. Penentuan nilai fungsi dari suatu titik data dapat dilakukan berdasarkan data-data
yang berada di sekitarnya. Dan penentuan titik-titiknya berdasarkan orde yang
digunakan. Semakin kecil range antar titik, maka semakin baik hasil yang diperoleh.
F. REFERENSI
[1] Suta Wijaya, IGP, “Slide ke-25, Solusi Persamaan Non Linear Metode Terbuka”,
Program Studi Teknik Informatika – UNRAM, Mataram, 2017
[2] Achmad Basuki dan Ramadijanti, Nana, Metode Numerik dan Algoritma Komputasi,
Yogyakarta: Andi. 2004
[3] Agus Setiawan, Pengantar Metode Numerik, Yogyakarta: Andi, 2006.
[4] Rinaldi Munir, Metode Numerik, Bandung: Informatika, 2006
[5] Steven C Chapra. Canale. Raymond P, Metode Numerik untuk Teknik dengan Penerapan
pada Komputer Pribadi, Jakarta: Universitas Indonesia, 1991
Download