integral numerik.pdf

7
1 Integral Numerik Sunkar E. Gautama, 2013 http://paradoks77.blogspot.com Integral numerik ialah metode untuk menghitung nilai integrasi suatu fungsi dalam suatu selang tanpa mempedulikan fungsi hasil integralnya dengan menggunakan metode numerik. Jadi, untuk menghitung nilai integral tentu =2 2 +53 terhadap secara numerik, tidak perlu mengetahui fungsi (). Dalam integral numerik, digunakan teorema integral tentu dari suatu fungsi terhadap dalam selang [, ] sama dengan luas daerah di bawah kurva yang dibatasi oleh sumbu X, garis = , dan = . Dengan demikian, digunakan suatu metode untuk menghitung luasan di bawah kurva tadi, dengan pengandaian luas daerah tadi setara dengan suatu segiempat dengan panjang Δ = dan tinggi rata-rata ketinggian titik pada kurva, . Beberapa metode yang akan dibahas di bawah ini ialah metode trapesium, metode Simpson, dan metode Simpson 3/8, dengan perluasan integral komposit untuk kurva dengan loop yang tidak sederhana. 1. Metode Trapesium (trapezoidal rule) Metode trapesium ialah metode yang paling sederhana diantara tiga metode yang dibahas di sini. Metode trapesium mengandaikan daerah luasan yang ditinjau berbentuk trapesium dengan panjang Δ = dan dipilih dua titik ketinggian yakni tinggi rusuk sejajar masing-masing 0 = () dan 1 = () yang berjarak = Δ. Pada trapesium, = panjang × tinggi rata rata = Δ × Dengan = 0 0 + 1 1 0 + 1 . 0 dan 1 masing-masing ialah pembobotan untuk tiap ketinggian titik yang diambil. Mengingat pada trapesium (dua sudut siku-siku) rusuk miringnya linier, maka pembobotannya seragam, yakni 0 = 1 =1. Dengan demikian, luas daerah di bawah kurva ialah: Luas = Δ × 0 + 1 2 + (galat)

Upload: sunkar-e-gautama

Post on 01-Dec-2015

4.661 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: integral numerik.pdf

1

Integral Numerik

Sunkar E. Gautama, 2013

http://paradoks77.blogspot.com

Integral numerik ialah metode untuk menghitung nilai integrasi suatu fungsi dalam suatu

selang tanpa mempedulikan fungsi hasil integralnya dengan menggunakan metode numerik. Jadi,

untuk menghitung nilai integral tentu 𝑓 𝑥 = 2𝑥2 + 5𝑥 − 3 terhadap 𝑥 secara numerik, tidak perlu

mengetahui fungsi 𝐹(𝑥).

Dalam integral numerik, digunakan teorema integral tentu dari suatu fungsi 𝑓 𝑥 terhadap

𝑥 dalam selang [𝑎, 𝑏] sama dengan luas daerah di bawah kurva yang dibatasi oleh sumbu X, garis

𝑥 = 𝑎, dan 𝑥 = 𝑏. Dengan demikian, digunakan suatu metode untuk menghitung luasan di bawah

kurva tadi, dengan pengandaian luas daerah tadi setara dengan suatu segiempat dengan panjang

Δ𝑥 = 𝑏 − 𝑎 dan tinggi rata-rata ketinggian titik pada kurva, 𝑦 . Beberapa metode yang akan dibahas

di bawah ini ialah metode trapesium, metode Simpson, dan metode Simpson 3/8, dengan perluasan

integral komposit untuk kurva dengan loop yang tidak sederhana.

1. Metode Trapesium (trapezoidal rule)

Metode trapesium ialah metode yang paling sederhana diantara tiga metode yang

dibahas di sini. Metode trapesium mengandaikan daerah luasan yang ditinjau berbentuk

trapesium dengan panjang Δ𝑥 = 𝑏 − 𝑎 dan dipilih dua titik ketinggian yakni tinggi rusuk sejajar

masing-masing 𝑓 𝑥0 = 𝑓(𝑎) dan 𝑓 𝑥1 = 𝑓(𝑏) yang berjarak ℎ = Δ𝑥.

Pada trapesium, 𝐿 = panjang × tinggi rata − rata = Δ𝑥 × 𝑦

Dengan 𝑦 =𝑤0𝑦0+𝑤1𝑦1

𝑤0+𝑤1. 𝑤0 dan 𝑤1 masing-masing ialah pembobotan untuk tiap ketinggian titik

yang diambil. Mengingat pada trapesium (dua sudut siku-siku) rusuk miringnya linier, maka

pembobotannya seragam, yakni 𝑤0 = 𝑤1 = 1. Dengan demikian, luas daerah di bawah kurva

ialah:

Luas = Δ𝑥 ×𝑦0 + 𝑦1

2+ (galat)

Page 2: integral numerik.pdf

2

𝐼 = 𝑓(𝑥)𝑏

𝑎

𝑑𝑥 =Δ𝑥

2 𝑓 𝑎 + 𝑓 𝑏 + 𝑂(ℎ3)

𝐼 = 𝑓(𝑥)𝑥1

𝑥0

𝑑𝑥 =ℎ

2 𝑓 𝑥0 + 𝑓 𝑥1 + 𝑂(ℎ3)

2. Metode Simpson

Jika pada metode trapesium hanya diambil dua titik ketinggian, maka pada metode

simpson diambil tiga titik ketinggian yang berjarak sama, ℎ =Δ𝑥

2=

𝑎−𝑏

2.

Tinggi rata-rata, 𝑦 =𝑤0𝑦0+𝑤1𝑦1+𝑤2𝑦2

𝑤0+𝑤1+𝑤2. Titik tinggi yang berada di tengah mendapatkan bobot

yang lebih tinggi, sebagaimana dapat dilihat bahwa ketinggian rata-rata cenderung mendekati

ketinggian pada titik tengahnya. Menggunakan fungsi Lagrange orde-2:

𝑃2 𝑥 = 𝑥 − 𝑥1 𝑥 − 𝑥2

𝑥0 − 𝑥1 𝑥0 − 𝑥2 𝑓 𝑥0 +

𝑥 − 𝑥0 𝑥 − 𝑥2

𝑥1 − 𝑥0 𝑥1 − 𝑥2 𝑓 𝑥1 +

𝑥 − 𝑥0 𝑥 − 𝑥1

𝑥2 − 𝑥0 𝑥2 − 𝑥1 𝑓 𝑥2

Di mana ℎ =𝑎−𝑏

2, 𝑥0 = 𝑎, 𝑥1 = 𝑎 + ℎ, 𝑥2 = 𝑏 = 𝑎 + 2ℎ. Dengan demikian

𝐼 = 𝑓(𝑥)𝑥2

𝑥0

𝑑𝑥 = 𝑃2(𝑥)𝑥2

𝑥0

𝑑𝑥 + 𝑅𝑠

Di mana Rs ialah suku yang mengandung galat komputasi, O(h5). Dari kedua persamaan di atas,

diperoleh rumus integral Simpson

𝐼 = 𝑓(𝑥)𝑥2

𝑥0

𝑑𝑥 =ℎ

3 𝑓 𝑥0 + 4𝑓 𝑥1 + 𝑓 𝑥2 + 𝑂(ℎ5)

Dengan demikian, diperoleh pembobotan 𝑤0 = 1, 𝑤1 = 4, 𝑤2 = 1.

Page 3: integral numerik.pdf

3

3. Metode Simpson 3/8

Pada metode Simpson 3/8 dipilih empat titik ketinggian pada selang yang berjarak

sama, ℎ =Δ𝑥

3=

𝑎−𝑏

3, sehingga 𝑥0 = 𝑎, 𝑥1 = 𝑎 + ℎ, 𝑥2 = 𝑎 + 2ℎ, 𝑥3 = 𝑎 + 3ℎ = 𝑏.

Ketinggian rata-rata ialah 𝑦 =𝑤0𝑦0+𝑤1𝑦1+𝑤2𝑦2+𝑤3𝑦3

𝑤0+𝑤1+𝑤2+𝑤3, dengan 𝑤0 = 1, 𝑤1 = 3, 𝑤2 =

3, 𝑤3 = 1.

Luas daerah di bawah kurva:

𝐼 = 𝑓(𝑥)𝑏

𝑎

𝑑𝑥 = Δ𝑥 × 𝑦 + (galat)

𝐼 = 𝑓(𝑥)𝑥3

𝑥0

𝑑𝑥 =3ℎ

8 𝑓 𝑥0 + 3𝑓 𝑥1 + 3𝑓 𝑥2 + 𝑓 𝑥3 + 𝑂(ℎ5)

4. Metode Bode

Metode integral Bode menggunakan lima titik ketinggian yang berjarak sama, ℎ =Δ𝑥

4=

𝑎−𝑏

4 dan

tinggi rata-rata, 𝑦

𝑦 =𝑤0𝑦0 + 𝑤1𝑦1 + 𝑤2𝑦2 + 𝑤3𝑦3 + 𝑤4𝑣4

𝑤0 + 𝑤1 + 𝑤2 + 𝑤3 + 𝑤4

Dengan 𝑤0 = 7, 𝑤1 = 32, 𝑤2 = 12, 𝑤3 = 32, 𝑤4 = 7, sehingga

𝐼 = 𝑓(𝑥)𝑏

𝑎

𝑑𝑥 = Δ𝑥 × 𝑦 + (galat)

𝐼 = 𝑓(𝑥)𝑥4

𝑥0

𝑑𝑥 =2ℎ

45 7𝑓 𝑥0 + 32𝑓 𝑥1 + 12𝑓 𝑥2 + 32𝑓 𝑥3 + 7𝑓 𝑥4 + 𝑂(ℎ7)

Page 4: integral numerik.pdf

4

5. Integral Komposit

Metode integral komposit yaitu metode menghitung integrasi numerik suatu fungsi

dengan membaginya dalam selang-selang tertentu menjadi segmen-segmen luasan sebanyak N,

selanjutnya segmen-segmen tadi dihitung luasnya menggunakan metode trapesium atau

Simpson kemudian dijumlahkan untuk menghitung integrasi fungsi. Karena pembagian menjadi

segmen-segmen, menggunakan integral komposit mengaruskan kita membuat vektor yang

merepresentasikan sumbu X. Makin banyak segmen yang dibuat maka solusi numerik yang

diperoleh akan makin mendekati solusi sebenarnya.

𝐼 = 𝑓(𝑥)𝑏

𝑎

𝑑𝑥 = 𝑓(𝑥)𝑥1

𝑥0

𝑑𝑥 + 𝑓(𝑥)𝑥2

𝑥1

𝑑𝑥 + ⋯ + 𝑓(𝑥)𝑥𝑛

𝑥𝑛−1

𝑑𝑥

Jika luasan tiap segmen dihitung menggunakan metode trapesium, diperoleh:

𝐼 =ℎ

2 𝑓 𝑥0 + 𝑓 𝑥1 +

2 𝑓 𝑥1 + 𝑓 𝑥2 + ⋯ +

2 𝑓 𝑥𝑛−1 + 𝑓 𝑥𝑛

𝐼 =ℎ

2 𝑓 𝑥0 + 2 𝑓(𝑥𝑖)

𝑛−1

𝑖=1

+ 𝑓(𝑥𝑛)

Misalkan kita ingin menghitung integral fungsi 𝑓(𝑥) dalam selang (𝑎, 𝑏) dengan

pembagian selang menjadi 100 upaselang (ingat, 100 upaselang berarti ada 100+1 titik).

Berikut algoritmanya:

1) a batas bawah; // definisikan batas bawah integrasi

2) b batas atas; // definisikan batas atas integrasi

3) h = (b – a)/100; // definisi lebar upaselang

4) x0 = a // membuat vektor X

for i = 1, i <= 100 // bernilai awal a, naik dengan beda h, hingga b

xi = x0 + h;

yi = f(xi); // membuat vektor Y (hasil fungsi)

end

5) for i = 0, i < 100 // perulangan dari i = 0 hingga 99

ui = (h/2)*(fi + fi+1) // menghitung luasan segmen

end

6) L0 = 0 // menghitung luas total segmen

for i = 1, i <= 100

Li = Li-1 + ui-1;

end

7) I = L100 // diperoleh hasil integrasi = luas total

Jika program/bahasa pemrograman yang digunakan mendukung fungsi barisan,

maka poin (4) dapat diganti dengan “x = a:h:b”, atau dalam Matlab menyediakan fungsi “x =

linspace(a,b,101)”. Jika program menyediakan fungsi sumasi, maka poin (7) dan (8) dapat

dihilangkan dan diganti menjadi “I = sum(y)”

Patut diingat pula indeks yang digunakan, apakah berjalan dari 0 ataukah dari 1.

Pada algoritma di atas, indeks berjalan dari nol, sehingga vektor X = (x0 x1 x2 … x100), jika indeks

berjalan dari satu, maka vektor X akan menjadi X = (x1 x2 x3 … x101)

Page 5: integral numerik.pdf

5

Lampiran:

1. Contoh program integral numerik dengan metode Simpson menggunakan bahasa C++:

Fungsi: 𝑦 𝑥 = 2𝑥2 + 5𝑥 − 3.

//Integral Numerik Simpson by skaga

#include<iostream>

using namespace std;

int main()

{

int i, kol=3;

float x[kol], y[kol], a, b, deltax, h , ratay, L;

char off;

cout << "Masukkan batas bawah (a) : ";

cin >> a;

cout << "Masukkan batas atas (b) : ";

cin >> b;

deltax = b - a;

h = deltax/2;

x[0] = a, x[1] = a+h, x[2] = a+2*h;

for (i=0; i<3; i++){

y[i]=2*x[i]*x[i] + 5*x[i] - 3; // masukkan fungsi

}

ratay = (y[0] + 4*y[1] + y[2])/6;

L = deltax*ratay;

cout << "integral y(x) = " << L << '\n';

cin >> off;

return 0;

}

Page 6: integral numerik.pdf

6

2. Contoh program integral numerik metode Simpson 3/8 menggunakan Matlab:

3. Contoh perhitungan integral numerik metode trapesium komposit menggunakan MS Excel.

𝑦 𝑥 = 𝑥2 sin 𝑥 ; 𝑎 = 2, 𝑏 = 3, ℎ = 0.1

i x(i) y(i) y(i-1) + y(i) (h/2)*(x(i-1) + x(i))

0 2 3.6371897

1 2.1 3.8067533 7.443943014 0.372197151

2 2.2 3.9131226 7.719875901 0.385993795

3 2.3 3.9447806 7.857903167 0.392895158

4 2.4 3.8906679 7.835448492 0.391772425

5 2.5 3.7404509 7.631118821 0.381555941

6 2.6 3.4847893 7.225240174 0.361262009

7 2.7 3.1155993 6.6003886 0.33001943

8 2.8 2.6263071 5.741906424 0.287095321

9 2.9 2.0120869 4.638393956 0.231919698

10 3 1.2700801 3.282166931 0.164108347

sum 3.298819274

% Integral numerik dengan metode Simpson 3/8

a = input('masukkan batas bawah = ');

b = input('masukkan batas atas = ');

deltax = b - a;

h = deltax/3;

x = [a (a+h) (a+2*h) b];

y = input('masukkan fungsi y=f(x) : ');

y = [1 3 3 1].*y;

ratay = sum(y)/8;

L = deltax*ratay;

fprintf('integral fungsi y(x) dari x = %g hingga x

= %g ialah %g \n', a, b, L);

𝑥2 sin 𝑥 𝑑𝑥 = −𝑥2 cos 𝑥 + 2𝑥 sin 𝑥

+ 2 cos 𝑥 + 𝐶

Metode analitik memberikan

solusi

Sehingga 𝑥2 sin 𝑥3

2𝑑𝑥 = 3,30719 …

Dengan program Matlab pada

lampiran 2, diperoleh hasil I = L =

3,3091.

Page 7: integral numerik.pdf

7

4. Contoh program plot integral numerik fungsi

Panas jenis zat padat sebagai fungsi temperatur berdasarkan model Debye diberikan oleh

fungsi

𝐶𝑉 𝑇 = 9𝑁𝑘𝑇3

𝜃𝐷3

𝑥4𝑒𝑥

𝑒𝑥 − 1 2

𝜃𝐷 /𝑇

0

𝑑𝑥

Dengan 𝜃𝐷 temperatur Debye (konstanta), N jumlah atom, dan k tetapan Boltzmann. Plot fungsi

CV terhadap T dibuat dengan memerikan vektor T, memasukkan fungsi dan

mengintegralkannya, kemudian diplot. Berikut programnya menggunakan Matlab.

Daftar Pustaka:

Suarga, Fisika Komputasi: Solusi Problema Fisika dengan Matlab, Penerbit ANDI, Yogyakarta, 2005

% Perhitungan Panas Jenis Zat Padat model Debye menggunakan Simpson 3/8

% @Sunkar Eka Gautama, 2011

clear;

theta = input('nilai theta(Debye) = ');

batasatas = input('batas atas temperatur = ');

T = linspace(0,batasatas/theta,300); % T = T/theta

t = 1./T;

h = t/3;

a = 0.*h; b = h; c = 2*h; d = 3*h;

y = (3.*h./8).*(0 + 3.*(b.^4.*exp(b)./(exp(b)-1).^2)...

+ 3.*(c.^4.*exp(c)./(exp(c)-1).^2) + (d.^4.*exp(d)./(exp(d)-1).^2));

Y = 9.*T.^3.*y;

plot(T,Y);

title('Kurva Panas Jenis Zat Padat (CV) Model Debye');

xlabel('temperatur'); ylabel('CV (dalam R)');