Rabu, 22 Januari 2014

Integrasi Numerik Metode Simpson 1/3 Menggunakan C++

Materi terakhir untuk integrasi numerik adalah metode Simpson 1/3. Sebutan 1/3 muncul pada metode simpson karena terdapat faktor 1/3 pada perhitungan metode Simpson sekaligus membedakan dengan metode Simpson 3/8.

Pada integrasi numerik metode Simpson 1/3 nilai pembagi (n) harus bernilai genap. hal ini berbeda dengan integrasi metode Trapezoida dan Reimann yang tidak membutuhkan persyaratan untuk nilai pembagi.

Algoritma integrasi numerik metode Simpson 1/3 :
  • Definisikan fungsi y = f(x)
  • Tentukan batas bawah (a) dan batas atas (b) integrasi
  • Tentukan jumlah pembagi  (n)
  • Jika iterasi habis dibagi 2 dan tidak sama dengan n, maka lakukan perhitungan dibawah ini :
  • Jika tidak maka fungsi f(x) akan dikalikan 4 kemudian dijumlahkan, dengan rumus :
  •  Hitunglah luas daerah :

Code Program metode Simpson 1/3 menggunakan c++ :


#include <iostream>
#include <math.h>
#include <stdio.h>

using namespace std;

void simpson(float n,int a,int b){
float h = (b-a)/n;
float l;
float sum = 0;
float x = 0;

for(int i= 0;i<=n;i++){
if(i == 0 || i == n){
sum = sum + (x*x);
x = h+x;
}
else if(i%2 ==0 && i!= n){
sum = sum + (x*x)*2;
x = h+x;
}else {
sum = sum + (x*x)*4;
x = h+x;
}
}
l = (h/3) * sum;
printf("Nilai h = %f dan Nilai L =%f\n", h, l);
}

int main(){
simpson(10, 0, 1);
simpson(20, 0, 1);
simpson(30, 0, 1);
simpson(50, 0, 1);
simpson(100, 0, 1);
simpson(1000, 0, 1);
simpson(10000, 0, 1);
return 0;
}

Categories:

1 komentar:

  1. Misi mau tanya, maksudnya iterasi habis dibagi 2 itu gimana yak? 'iterasi' disini maksudnya gimana?🙏🏻

    BalasHapus