Anda di halaman 1dari 4

PRAKTIKUM MANDIRI 4 METODE NUMERIK 2019

NAMA : LALU ROZI WARDIMAN


NIM : F1D018033
A. TUJUAN
Tujuan dari dilakukannya praktikum ini adalah sebagai berikut:
1. Memahami persamaan yang digunakan untuk mencari turunan kedua suatu sebaran data.
2. Mampu menentukan integral dari sebaran data menggunakan metode Simpson.

B. PERMASALAHAN
Diberikan data x dan y sbb:
x -1 -0.5 0 0.5 1 1.5 2 2.5 3 3.5 4
y 0 3.375 4 2.625 0 -3.125 -6 -7.875 -8 -5.625 0
Tentukan:
1. Turunan kedua dengan selisih maju, mundur dan terpusat pada x=2.75, dengan h=0.01.
2. Hitunglah integral dari data yang diberikan dengan NC 3/8 dari -1 s.d 2 dengan h=0.01.

C. ALGORITMA PENYELESAIAN DAN SOURCE CODE


a. Source code
package PaktikumMETNUM;

class fungsi {
double [] x = {-1,-0.5,0,0.5,1,1.5,2,2.5,3,3.5,4};
double [] y = {0, 3.375, 4, 2.625, 0, -3.125, -6, -7.875, -8, -
5.625, 0};
double [] yo = new double [11];

double ini=2.7;

double fx(double a)
{ int i, j, k;
double[][] mat;
mat = new double[11][11];

for (i=0;i<11;i++)
{ mat[0][i]=y[i];
}
for (i=1;i<9;i++)
{ for (j=0;j<9-i;j++)
{ mat[i][j]=(mat[i-1][j+1]-mat[i-1][j])/(x[j+i]-x[j]);
}
}
double F=mat[0][0];
for(i=1;i<11;i++)
{ double tmp=mat[i][0];
for(k=0;k<=i-1;k++)
{ tmp=tmp*(a-x[k]);
}
F=F+tmp;
}
return F;
}

class turun {
//titik 2.75
fungsi f = new fungsi();
double pusat()
{
double f0, f2, f1, f11, f22, hasil;
f0=f.fx(2.75);
f2=f.fx(2.77);
f1=f.fx(2.76);
f11=f.fx(2.74);
f22=f.fx(2.73);
hasil=(-f2+(16*f1)-(30*f0)+(16*f11)-f22)/(0.0012);
return hasil;
}

double mundur()
{
double f0, f11, f22, hasil;
f0=f.fx(2.75);
f11=f.fx(2.74);
f22=f.fx(2.73);
hasil=(f22-(2*f11)+f0)/(0.0001);
return hasil;
}

double maju()
{
double f0, f2, f1, hasil;
f2=f.fx(2.77);
f1=f.fx(2.76);
f0=f.fx(2.75);
hasil=(f2-(2*f1)+f0)/(0.0001);
return hasil;
}
}

class naik {
fungsi f = new fungsi();

void buat(){
for (int a=0;a<11;a++) {
f.yo[a]=f.fx(f.ini);
f.ini+=0.01;
}
}
double sim3()
{ int i;
double triple=0, not=0, hasil;
buat();
for (i=0;i<7;i++)
{ if(i%3!=0)
{ not=not+f.yo[i];
}
else if(i%3==0&& i!=0)
{ triple=triple+f.yo[i];
}
}
hasil=(0.03)/8*(f.yo[0]+(3*not)+(2*triple)+f.yo[10]);
return hasil;
}
}

public class Praktikum4 {


public static void main(String [] args) {

double hasil;

fungsi f = new fungsi();


turun down = new turun();
naik up = new naik();

double ini = (f.fx(2.73) - f.fx(2.73) -f.fx(2.73) +


f.fx(2.75))/0.0001;
System.out.println("Hasil turunan kedua pada titik 2.75 adalah :
");
System.out.println("Turun Maju : " + down.maju());
System.out.println("Turun Mundur : " + down.mundur());
System.out.println("Turun Pusat : " + down.pusat());
System.out.println("Hasil Integral : ");
System.out.println("Simpson 3/8 : " + up.sim3());
}
}

D. HASIL UJI COBA DAN ANALISA DATA

Gambar 4.1 Hasil run program selisih maju,mundur dan simpson


Pencarian turunan kedua dalam program yang dibuat, menggunakan rumus:

f − 2 − 2 f −1 + f 0
selisih _ mundur  f 0'' = + O ( h)
h2
f − 2 f1 + f 0
selisih _ maju  f 0'' = 2 + O ( h)
h2
− f 2 + 16 f1 − 30 f 0 + 16 f −1 − f − 2
selisih _ pusat  f 0'' = 2
+ O(h 4 )
12h
Dimana rumus di atas adalah penurunan dari rumus selisih pusat menggunakan deret
Taylor. Rumus ini digunakan sesuai dengan ketentuan soal yang memerlukan kesalahan
O(h4) dan O(h).
Pertama-tama yang perlu dicari adalah semua nilai fungsi dari f0, f2, f1, f-1, dan f-2 untuk
dimasukkan ke dalam rumus. Namun, karena tidak diberikan persamaan pada soal, maka
nilai dari 5 titik fungsi tadi dapat dicari menggunakan metode Beda Terbagi Newton. Dalam
program yang dibuat, perhitungan BTN ini berada dalam fungsi “fx()”. Dimana fungsi ini
akan melakukan perhitungan nilai fungsi untuk setiap nilai yang dikirimkan ke dalamnya.
Untuk menentukan integral dari titik 0 sampai 2 dalam program yang dibuat, digunakan
metode Simpson 3/8. Fungsi untuk menghitung integral ini adalah fungsi “sim3()”. Dalam
fungsi ini dibuat 2 variabel penampung bernama “triple” dan “not” yang akan
menyimpan penjumlahan nilai fungsi i kelipatan 3 dan i yang bukan kelipatan. Perulangan
“for” dalam fungsi tersebut digunakan untuk pemeriksaan setiap i, jika i kelipatan 3, maka
variabel “triple” akan ditambah dengan nilai array yo dengan indeks i tersebut, sedangkan
jika i bukan kelipatan 3 dan i bukan 0, maka variabel “not” yang akan ditambah dengan
nilai array yo. Setelah itu, akan dihitung integral dari data dengan rumus Simpson 3/8 yang
telah ditentukan, yaitu:

Dimana sigma i kelipatan 3 adalah “triple”, sigma i bukan kelipatan 3 adalah “not”,
f.yo adalah nilai array yo di indeks pertama, dan f.yo[10] adalah nilai array yo di indeks
terakhir dengan nilai h=0,01. Masing-masing kemudian dimasukkan ke dalam rumus dan
akan dihitung otomatis oleh komputer, sehingga diperoleh nilai integral dari titik 0 sampai 2
adalah 1,19801.

E. KESIMPULAN
Berdasarkan praktikum yang telah dilakukan, dapat ditarik kesimpulan bahwa:
1. Pencarian turunan kedua dari suatu sebaran data dapat menggunakan rumus penurunan
selisih pusat dengan Deret Taylor. Nilai fungsi di setiap titik yang dibutuhkan dicari
menggunakan metode BTN, lalu dimasukkan ke dalam rumus selisih pusat sehingga akan
diperoleh turunannya.
2. Nilai integral suatu sebaran data dapat dihitung menggunakan berbagai metode, salah
satunya metode Simpson 3/8. Dalam metode ini, dilakukan penjumlahan semua nilai
fungsi di indeks kelipatan 3 dan bukan kelipatan 3, kecuali pada indeks pertama dan
terakhir. Lalu dihitung menggunakan rumus Simpson 3/8 yang telah ada.

F. REFERENSI
Suta Wijaya.IGP.2018. Integrasi Numerik. Program Studi Teknik Informatika Unram :
Mataram

Anda mungkin juga menyukai