Anda di halaman 1dari 51

KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 1
















Dalam bagian ketiga ini, kita akan membahas tentang beberapa metode numerik yang dapat
digunakan untuk menemukan akar-akar persamaan non-linier. Masalah yang akan kita bahas
tersebut secara matematis dapat diterangkan sebagai pencarian harga harga x sedemikian hingga
memenuhi persamaan non-liner f (x) =0.

Manakala kita mengatakan bahwa f (x) adalah fungsi non-linier dalam x , ini berarti bahwa f ( x)
tidak dinyatakan dalam bentuk ax +b , dimana a dan b merupakan konstanta dan manakala kita
mengatakan bahwa f ( x) adalah fungsi aljabar, ini berarti bahwa fungsi tersebut tidak melibatkan
bentuk diferensial d
n
y/dx
n
.

Masalah menemukan akar dari suatu persamaan non linier ini merupakan masalah yang muncul
dalam berbagai disiplin ilmu. Contoh sederhana dari persamaan nonlinier adalah persamaan
kuadratik yang berbentuk f (x) =ax
2
+bx +c yang dalam keadaan tertentu bisa diselesaikan
dengan formula kuadratik

x
1,2
=
-bb
2
-4uc
2u
(3.1)

MENCARI AKAR-AKAR PERSAMAAN NON LINIER
Objektif:
1. Mengetahui metode numerik untuk mencari akar-akar persamaan non linier.
2. Mengimplementasikan metode numerik mencari akar menggunakan MATLAB.
3. Mengetahui fasilitas dalam MATLAB dalam mencari akar persamaan non linier.
4. Mengaplikasikan dalam permasalahan fisika.

PENDAHULUAN
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 2


Rumus-rumus yang memberikan nilai eksak dari penyelesaian secara eksplisit hanya ada untuk
kasus-kasus yang sangat sederhana. Fungsi yang cukup sederhana seperti f(x) = e
-x
x sudah
tidak bisa diselesaikan secara analitik. Dalam hal ini satu-satunya alternatif adalah menggunakan
solusi pendekatan (approximate solution). Hal inilah yang menjadi sebab mengapa metode
numerik menjadi sangat diperlukan dalam memecahkan persoalan-persoalan dalam bidang sains
dan teknologi bahkan dalam bidang social maupun ekonomi.

Beberapa metode numerik akan dibahas secara detail antara lain metode bagi dua (bisection),
Newton-Raphson, posisi palsu (regula falsi/interpolasi linier), Secant dan metode iterasi
langsung. Contoh studi kasus dalam fenomena sistem fisika juga akan diberikan untuk
memberikan gambaran jelas terhadap metode yang dipelajari.



Secara umum, jika f(x) real dan kontinu pada interval antara x
a
sampai x
b
, dan f(x
a
) dan f(x
b
)
berlawanan tanda, maka

(x
u
)(x
b
) <0 (3.2)

dan sekurang-kurangnya ada satu akar pada interval itu.
Berikut langkah-langkah komputasi aktual dengan metode bisection:
1. Tentukan nilai awal x
a
yang lebih rendah dan x
b
yang lebih tinggi, sehingga fungsi
berubah tanda melalui interval. Ini bisa dicek dengan menghitung (x
u
)(x
b
) <0.
2. Estimasikan akar x
c
, yang ditentukan oleh:
x
c
=
x
c
+x
b
2
(3.3)
3. Lakukan evaluasi berikut untuk menentukan interval akar:
a. Jika (x
u
)(x
c
) <0 .berarti akar pada sub-interval bawah (x
a
,x
c
), kemudian set
x
a
=x
c
dan kembali lakukan langkah 2
b. Jika (x
u
)(x
c
) >0 .berarti akar pada sub-interval atas(x
a
,x
c
), kemudian set x
b
=x
c

dan kembali lakukan langkah 2
c. Jika (x
u
)(x
c
) =0 akarnya adalah x
c
, perhitungan dihentikan.
METODE BISECTION
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 3


Dengan metode ini ditentukan titik tengah interval, dan interval akan dibagi menjadi dua sub-
interval, yang salah satunya pasti mengandung akar. Berikutnya yang ditinjau adalah sub-interval
yang mengandung akar. Proses diulangi dengan membagi sub-interval tersebut dan memeriksa
separo sub-interval mana yang mengandung akar. Pembagiduaan sub-sub interval ini dilanjutkan
sampai lebar interval yang ditinjau cukup kecil.

Gambar 3.1: Metode bisection

Kriteria penghentian komputasi dan kesalahan estimasi pendekatan, adalah bijaksana untuk
selalu disertakan didalam setiap kasus pencarian akar. Kesalahan relatif e
r
cukup representatif
untuk kasus dimana nilai akar sebenarnya telah diketahui. Pada situasi aktual biasanya nilai akar
sebenarnya tidak diketahui, sehingga diperlukan kesalahan relatif pendekatan, e
ra
, yaitu:

c
u
=
x
r
bcru
-x
r
lcmc
x
r
bcru
100% (3.4)




Metode regulasi falsi disebut juga metode posisi palsu karena metode ini memberikan posisi
palsu akar x
3
berdasarkan titik perpotongan garis lurus yang melalui (x
1
, f(x
1
)) dan (x
2
, f(x
2
))
dengan tanda berbeda dan kontinu. Dari titik tersebut dilakukan interpolasi linier, sehingga
metoda ini disebut juga interpolasi linier. Kelebihan metode ini adalah diperlukannya iterasi
METODE REGULASI FALSI
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 4

yang lebih sedikit untuk menemukan akar dari fungsi sehingga lebih efektif dibandingkan
metode bisection.


Gambar 3.2: Metode regulasi falsi

Berdasarkan kurva gambar 3.2 diatas, diperoleh
(3.5)
Sehingga diperoleh
(3.6)

Berikut langkah-langkah komputasi aktual dengan metode regulasi falsi:
1. Tentukan nilai awal x
1
yang lebih rendah dan x
2
yang lebih tinggi, sehingga fungsi
berubah tanda melalui interval. Ini bisa dicek dengan menghitung
2. Estimasikan akar x
3
, yang ditentukan oleh persamaan (3.6)
3. Lakukan evaluasi berikut untuk menentukan interval akar:
a. Jika .berarti akar pada sub-interval bawah (x
1
,x
3
), kemudian set
x
1
=x
3
dan kembali lakukan langkah 2
b. Jika .berarti akar pada sub-interval atas (x
2
,x
3
), kemudian set x
2
=x
3

dan kembali lakukan langkah 2
c. Jika akarnya adalah x
3
, perhitungan dihentikan.


METODE NEWTON-RAPHSON
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 5


Metode Newton Raphson adalah metode iterasi lain untuk memecahkan persamaan f(x)=0,
dengan f diasumsikan mempunyai turunan kontinu f. Secara geometri metode ini menggunakan
garis singgung sebagai hampiran fungsi pada suatu selang. Gagasan dasarnya adalah grafik f
dihampiri dengan garis-garis singgung yang sesuai. Dengan menggunakan suatu nilai x
i
sebagai
tebakan awal yang diperoleh dengan melokalisasi akar-akar dari f(x) terlebih dahulu, kemudian
ditentukan x
i+1
sebagai titik potong antara sumbu x dan garis singgung pada kurva f di titik (x
i
,f(x
i
)). Prosedur yang sama diulang, menggunakan nilai terbaru sebagai nilai coba untuk iterasi
seterusnya.


Gambar 3.3: Metode Newton-Rephson

Algoritma metode ini diperoleh dari perhitungan gradient garis singgung dari kurva dengan
menggunakan ekspansi deret Taylor fungsi f(x
i
+1) disekitar x
i
. Pendekatan beda hingga turunan
pada fungsi f(x
i
+1) adalah

(3.7)

J ika x
i+1
adalah akar dari f(x)=0, maka persamaan diatas menjadi

(3.8)

KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 6

Sehingga diperoleh

x
+1
=x


](x
i
)
]i(x
i
)
(3.9)
Berikut langkah-langkah komputasi aktual dengan metode regulasi falsi:
1. Menentukan f(x) dari f(x).
2. Menentukan nilai xi pada sembarang titik.
3. Menghitung x
i+1
sesuai persamaan (3.9)
4. Membuat estimasi nilai x
i+1
dengan kriteria:
a. Jika nilai kecil atau mendekati nol, maka x
i+1
adalah akar dari persamaan, sehingga
perhitungan selesai.
b. Jika nilai belum kecil, perhitungan dilanjutkan dengan x
i+1
=x
i
*, kemudian dicari
x
i+1
* langkah 3 sampai diperoleh f(x*) kecil atau mendekati nol.



Pada dasarnya metode ini sama dengan metode Newton-Raphson, perbedaannya hanya terletak
pada pendekatan untuk turunan pertama dari f saja. Pendekatan f' pada metode Secant didekati
dengan ungkapan beda hingga yang didasarkan pada taksiran akar sebelumnya (beda mundur),
yaitu

i(x
i
)
=
](x)
x
=
](x
i
)-](x
i-1
)
(x
i
)-(x
i-1
)
(3.10)
Selanjutnya, persamaan beda hingga (3.10) tersebut disubstitusi ke skema Newton-Raphson (3.9)
sehingga diperoleh
x
+1
=x


](x
i
)
](x
i
)-](x
i-1
)
(x

x
-1
) (3.11)

J ika kita perhatikan, ungkapan (3.11) ini identik dengan metode Regula Falsi seperti yang telah
dibahas di pasal yang lalu. Perbedaannya adalah metode Regula Falsi selalu menggantikan salah
satu dari dua taksiran akar sehingga akar selalu dalam keadaan terkurung dan titik-titik lama
selalu diupdate menjadi titik yang baru.
METODE SECANT
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 7


Gambar 3.4: Metode Secant
Sedangkan metode Secant tidak memerlukan dua taksiran awal yang harus mengurung akar
persamaan. Gambaran secara grafis metode Secant yang sedang mencari akar persamaan terlihat
pada gambar 3.4.

Berikut langkah-langkah komputasi aktual dengan metode Secant:
1. Berikan dua terkaan awal x
a
dan x
b

2. Hitung x
c
dengan cara sesuai persamaan (3.11)
3. Set x
a
=x
b
, f
a
=f
b
dan x
b
=x
c
, f
b
=f
c

4. Ulangi poin 2 dan 3 sampai x
c
tidak berubah secara signifikan.


Sebuah muatan Q
1
=+4 C berjarak 10 m dari sebuah muatan Q
2
=+9 C. Di titik
manakah pada garis yang menghubungkan dua muatan tersebut yang medan listriknya sama
dengan nol?

Solusi:

Medan listrik di titik P akan sama dengan 0, dengan syarat E
1
(x) =E
2
(x).

APLIKASI DALAM FISIKA
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 8

1
4ns
0

1
x
2
x =
1
4ns
0

2
(I-x)
2
x (3.12)

J ika didnyatakan dalam bentuk persamaan kuadrat, maka diperoleh fungsi:

(x) =(
2

1
)x
2
+2
1
lx
1
l
2
=0 (3.13)

Dalam metode pencarian akar, dibutuhkan nilai akar awal pertama (x
1
) dan kedua (x
2
) sebagai
nilai kurung untuk membatasi pencarian akar. Kedua nilai tersebut ditentukan dengan perkiraan,
akan tetapi dapat digunakan statement if dan for seperti berikut:



Metode Bisection Cara I:
Berikut adalah script bisection_medan_nol.m
cl c
cl ear
cl ose

%Pr ogr amMenghi t ung Akar Met ode Bi sect i on
%By Mada Sanj aya WS

di sp( ' ' )
di sp( ' ' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 9

di sp( ' +++++++++MENGHI TUNG AKAR PERSAMAAN+++++++++++' )
di sp( ' ============METODE BI SECTI ON=================' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' ' )
di sp( ' ' )
q1=i nput ( ' Masukan besar muat an q1 =' ) ;
q2=i nput ( ' Masukan besar muat an q2 =' ) ;
l =i nput ( ' Masukan j ar ak q1 dan q2=' ) ;
x1=i nput ( ' Masukan akar awal per t ama=' ) ; %t ebakan akar per t ama
x2=i nput ( ' Masukan akar awal kedua=' ) ; %t ebakan akar kedua

%Ni l ai f ungsi per samaan masi ng- masi ng t ebakan akar

f 1=( q2- q1) *x1^2+2*q1*l *x1- q1*l ^2;
f 2=( q2- q1) *x2^2+2*q1*l *x2- q1*l ^2;

t 1=( x1+x2) / 2;
f t 1=( q2- q1) *t 1^2+2*q1*l *t 1- q1*l ^2;

%i nput j uml ah i t er asi
M=i nput ( ' Masukan j uml ah i t er asi =' ) ;

%t empat menyi mpan dat a x1
X1=zer os( M, 1) ;
X2=X1; %t empat menyi mpan x2
T=X1; %t empat menyi mpan t 1
FX1=X1; FX2=X1; FT=X1;

X1( 1) =x1; X2( 1) =x2; T( 1) =t 1;
FX1( 1) =f 1; FX2( 1) =f 2; FT( 1) =f t 1;

f or m=2: M
i f FT( m- 1) <0
X1( m) =T( m- 1) ;
X2( m) =X2( m- 1) ;
el se
X1( m) =X1( m- 1) ;
X2( m) =T( m- 1) ;
end
FX1( m) =( q2- q1) *X1( m) ^2+2*q1*l *X1( m) - q1*l ^2;
FX2( m) =( q2- q1) *X2( m) ^2+2*q1*l *X2( m) - q1*l ^2;
T( m) =( X1( m) +X2( m) ) / 2;
FT( m) =( q2- q1) *T( m) ^2+2*q1*l *T( m) - q1*l ^2;
end
I t =( 1: M) ' ;
di sp( ' ' )
di sp( ' AKAR AKAR PERSAMAAN METODE BI SECTI ON
' ) %TABEL OUTPUT
di sp( ' +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++' )
di sp( ' I t er asi ke- Xm Xm+1 t F( Xm) F( Xm+1) F( t ) ' )
di sp( ' +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++' )
di sp( [ I t X1 X2 T FX1 FX2 FT] ) %mengi si t abl e



KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 10

















Output pada command window

Gambar 3.5: Output metode bisection cara I

Metode Bisection Cara II:
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 11


Gambar 3.6: Fungsi kuadrat medan listrik dua muatan

%Pr ogr amMenghi t ung Akar Met ode Bi sect i on car a I I
%By Mada Sanj aya WS
di sp( ' ' )
di sp( ' ' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' +++++++++MENGHI TUNG AKAR PERSAMAAN+++++++++++' )
di sp( ' ============METODE BI SECTI ON=================' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' ' )
di sp( ' ' )
q1=i nput ( ' Masukan besar muat an q1 =' ) ;
q2=i nput ( ' Masukan besar muat an q2 =' ) ;
l =i nput ( ' Masukan j ar ak q1 dan q2=' ) ;
x1=i nput ( ' Masukan akar awal per t ama=' ) ; %t ebakan akar per t ama
x2=i nput ( ' Masukan akar awal kedua=' ) ; %t ebakan akar kedua
di sp( ' - - - - - - - - - - - - - - - - - - - - - - - - - ' )
di sp( ' xm f m ' ) %xmadal ah r at a- r at a x1 dan x2
di sp( ' - - - - - - - - - - - - - - - - - - - - - - - - - ' )
f or k=1: 10;
f 1=r umus_medan( q1, q2, l , x1) ; f 2=r umus_medan( q1, q2, l , x2) ;
xm=( x1+x2) / 2; f m=r umus_medan( q1, q2, l , xm) ;
f pr i nt f ( ' %9. 6f %13. 6f \ n' , xm, f m) %Unt uk memuncul kan xmdan f mdal am1 bar i s
i f ( f 1*f m<0)
x2=xm;
el se
x1=xm;
end
end

KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 12


Gambar 3.7: Output metode bisection cara II

Metode Regulasi Falsi Cara I:

%Pr ogr amMenghi t ung Akar Met ode Regul asi Fal si
%By Mada Sanj aya WS
di sp( ' ' )
di sp( ' ' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' +++++++++MENGHI TUNG AKAR PERSAMAAN+++++++++++' )
di sp( ' ==============REGULASI FALSI =================' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' ' )
di sp( ' ' )
q1=i nput ( ' Masukan besar muat an q1 =' ) ;
q2=i nput ( ' Masukan besar muat an q2 =' ) ;
l =i nput ( ' Masukan j ar ak q1 dan q2=' ) ;
x1=i nput ( ' Masukan akar awal per t ama=' ) ; %t ebakan akar per t ama
x2=i nput ( ' Masukan akar awal kedua=' ) ; %t ebakan akar kedua

%Ni l ai f ungsi per samaan masi ng- masi ng t ebakan akar

f 1=( q2- q1) *x1^2+2*q1*l *x1- q1*l ^2;
f 2=( q2- q1) *x2^2+2*q1*l *x2- q1*l ^2;

w1=x2- ( f 2/ ( f 2- f 1) ) *( x2- x1) ;

f w1=( q2- q1) *w1^2+2*q1*l *w1- q1*l ^2;
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 13


%i nput j uml ah i t er asi

M=i nput ( ' Masukan j uml ah i t er asi =' ) ;

%t empat menyi mpan dat a x1
X1=zer os( M, 1) ;
X2=X1; %t empat menyi mpan x2
W=X1; %t empat menyi mpan t 1
FX1=X1; FX2=X1; FW=X1;

X1( 1) =x1; X2( 1) =x2; W( 1) =w1;
FX1( 1) =f 1; FX2( 1) =f 2; FW( 1) =f w1;

f or m=2: M
i f FW( m- 1) <0
X1( m) =W( m- 1) ;
X2( m) =X2( m- 1) ;
el se
X1( m) =X1( m- 1) ;
X2( m) =W( m- 1) ;
end
FX1( m) =( q2- q1) *X1( m) ^2+2*q1*l *X1( m) - q1*l ^2;
FX2( m) =( q2- q1) *X2( m) ^2+2*q1*l *X2( m) - q1*l ^2;
W( m) =X2( m) - ( FX2( m) / ( FX2( m) - FX1( m) ) ) *( X2( m) - X1( m) ) ;
FW( m) =( q2- q1) *W( m) ^2+2*q1*l *W( m) - q1*l ^2;
end
I t =1: M;
di sp( ' ' )
di sp( ' AKAR AKAR PERSAMAAN METODE REGULASI FALSI
' ) %TABEL OUTPUT
di sp( ' +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++' )
di sp( ' I t er asi ke- Xm Xm+1 w F( Xm) F( Xm+1) F( w) ' )
di sp( ' +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++' )
di sp( [ I t ' X1 X2 WFX1 FX2 FW] ) %mengi si t abel

Output pada command window

KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 14


Gambar 3.8: Output metode regulasi falsi cara I

Metode Regulasi Falsi Cara II:
%Pr ogr amMenghi t ung Akar Met ode Rel asi f al si car a I I
%By Mada Sanj aya WS
di sp( ' ' )
di sp( ' ' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' +++++++++MENGHI TUNG AKAR PERSAMAAN+++++++++++' )
di sp( ' ===========METODE REGULASI FALSI =============' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' ' )
di sp( ' ' )
q1=i nput ( ' Masukan besar muat an q1 =' ) ;
q2=i nput ( ' Masukan besar muat an q2 =' ) ;
l =i nput ( ' Masukan j ar ak q1 dan q2=' ) ;
x1=i nput ( ' Masukan akar awal per t ama=' ) ; %t ebakan akar per t ama
x2=i nput ( ' Masukan akar awal kedua=' ) ; %t ebakan akar kedua
di sp( ' - - - - - - - - - - - - - - - - - - - - - - - - - ' )
di sp( ' xm f m ' ) %xmadal ah r at a- r at a x1 dan x2
di sp( ' - - - - - - - - - - - - - - - - - - - - - - - - - ' )
f or k=1: 10;
f 1=r umus_medan( q1, q2, l , x1) ; f 2=r umus_medan( q1, q2, l , x2) ;
xm=x2- ( f 2/ ( f 2- f 1) ) *( x2- x1) ; f m=r umus_medan( q1, q2, l , xm) ;
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 15

f pr i nt f ( ' %9. 6f %13. 6f \ n' , xm, f m) %Unt uk memuncul kan xmdan f mdal am1 bar i s
i f ( f 1*f m<0)
x2=xm;
el se
x1=xm;
end
end


Gambar 3.9: Output metode regulasi falsi cara II

Metode Newton-Raphson:

%Pr ogr amMenghi t ung Akar Met ode Newt on- Raphson
%By Mada Sanj aya WS

di sp( ' ' )
di sp( ' ' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' +++++++++MENGHI TUNG AKAR PERSAMAAN+++++++++++' )
di sp( ' ===========METODE NEWTON- RAPHSON=============' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' ' )
di sp( ' ' )
q1=i nput ( ' Masukan besar muat an q1 =' ) ;
q2=i nput ( ' Masukan besar muat an q2 =' ) ;
l =i nput ( ' Masukan j ar ak q1 dan q2=' ) ;
x=i nput ( ' Masukan akar awal per t ama=' ) ; %t ebakan akar per t ama

KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 16

%Ni l ai f ungsi per samaan t ebakan akar
f =( q2- q1) *x^2+2*q1*l *x- q1*l ^2;

%Tur unan per samaan f yai t u f ' di t ul i s sebagai ber i kut
df =2*( q2- q1) *x+2*q1*l ;

%i nput j uml ah i t er asi
M=i nput ( ' Masukan j uml ah i t er asi =' ) ;

%t empat menyi mpan dat a x1
X=zer os( M, 1) ;
FX=X; dFX=X;

X( 1) =x;
FX( 1) =f ; dFX( 1) =df ;

f or m=2: M
X( m) =X( m- 1) - ( FX( m- 1) / dFX( m- 1) ) ;
FX( m) =( q2- q1) *X( m) ^2+2*q1*l *X( m) - q1*l ^2;
dFX( m) =2*( q2- q1) *X( m) +2*q1*l ;
end
I t =1: M;
di sp( ' ' )
di sp( ' AKAR AKAR PERSAMAAN METODE NEWTON- RAPHSON' ) %TABEL OUTPUT
di sp( ' +++++++++++++++++++++++++++++++++++++++++' )
di sp( ' I t er asi ke- Xm F( X) F( X+1) ' )
di sp( ' +++++++++++++++++++++++++++++++++++++++++' )
f or mat shor t
di sp( [ I t ' X FX dFX] ) %mengi si t abel

Output pada command window

Gambar 3.10: Output metode Newton-Raphson

Metode Secant:
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 17


%Pr ogr amMenghi t ung Akar Met ode Secant
%By Mada Sanj aya WS

di sp( ' ' )
di sp( ' ' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' +++++++++MENGHI TUNG AKAR PERSAMAAN+++++++++++' )
di sp( ' ==============METODE SECANT =================' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' ' )
di sp( ' ' )
q1=i nput ( ' Masukan besar muat an q1 =' ) ;
q2=i nput ( ' Masukan besar muat an q2 =' ) ;
l =i nput ( ' Masukan j ar ak q1 dan q2=' ) ;
x1=i nput ( ' Masukan akar awal per t ama=' ) ; %t i t i k si nggung 1
x2=i nput ( ' Masukan akar awal kedua=' ) ; %t i t i k si nggung 2

%Ni l ai f ungsi per samaan masi ng- masi ng t i t i k si nggung

f 1=( q2- q1) *x1^2+2*q1*l *x1- q1*l ^2;
f 2=( q2- q1) *x2^2+2*q1*l *x2- q1*l ^2;
s1=x2- ( f 2*( x2- x1) / ( f 2- f 1) ) ;
f s1=( q2- q1) *s1^2+2*q1*l *s1- q1*l ^2;

%i nput j uml ah i t er asi
M=i nput ( ' Masukan j uml ah i t er asi =' ) ;
%t empat menyi mpan dat a x1
X1=zer os( M, 1) ;
X2=X1; %t empat menyi mpan x2
S=X1; %t empat menyi mpan t 1
FX1=X1; FX2=X1; FS=X1;
X1( 1) =x1; X2( 1) =x2; S( 1) =s1;
FX1( 1) =f 1; FX2( 1) =f 2; FS( 1) =f s1;

f or m=2: M
i f FS( m- 1) <0
X1( m) =S( m- 1) ;
X2( m) =X2( m- 1) ;
el se
X1( m) =X1( m- 1) ;
X2( m) =S( m- 1) ;
end
FX1( m) =( q2- q1) *X1( m) ^2+2*q1*l *X1( m) - q1*l ^2;
FX2( m) =( q2- q1) *X2( m) ^2+2*q1*l *X2( m) - q1*l ^2;
S( m) =X2( m) - ( FX2( m) *( X2( m) - X1( m) ) / ( FX2( m) - FX1( m) ) ) ;
FS( m) =( q2- q1) *S( m) ^2+2*q1*l *S( m) - q1*l ^2;
end
I t =1: M;
di sp( ' ' )
di sp( ' AKAR AKAR PERSAMAAN METODE SECANT ' ) %
TABEL OUTPUT
di sp( ' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++' )
di sp( ' I t er asi ke- Xm- 1 Xm S F( Xm- 1) F( Xm) F( S) ' )
di sp( ' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++' )
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 18

di sp( [ I t ' X1 X2 S FX1 FX2 FS] ) %mengi si t abel

Output pada command window


Gambar 3.11: Output metode secant




Berbagai fungsi matematis bisa dievaluasi dan dianalisis dengan berbagai command yang ada di
MATLAB. Salah satu fungsi matematis yang sering digunakan, yaitu polinomial, penanganan
dan evaluasinya akan dibahas pula dalam bagian ini.

Suatu polinomial, p(x), berderajat n dinyatakan sebagai sebuah vektor baris p berukuran n+1.
Elemen vektor menunjukkan koefisien dari polinomial yang diurutkan dari orde tertinggi ke
terendah.

p(x) =o
n
x
n
+o
n-1
x
n-1
++o
1
x +o
0
(3.14)

POLINOMIAL DALAM MATLAB
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 19

Dinyatakan sebagai
p =(o
n
o
n-1
o
1
o
0
) (3.15)
Command berikut digunakan untuk menangani polinomial:

Tabel 3.1: Fungsi built in MATLAB untuk polinomial
No Nama fungsi Keterangan
1 polyval(p,x) mengevaluasi polinonial p pada nilai x, dengan
x bisa berupa skalar maupun vektor
2 poly(x) menghitung vektor sepanjang n+1 yang
mewakili suatu polinomial orde-n. Vektor x
sepanjang n berisi akar-akar dari polinom
tersebut
3 roots(p) menghitung vektor berisi akar-akar dari
polinomial p
4 conv(p,q) menghitung produk (hasil perkalian) dari
polinomial p dan q. Bisa juga dianggap sebagai
konvolusi antara p dan q
5 [k,r] = deconv(p,q) membagi polinomial p dengan q. Hasil
pembagian disimpan dalam polinom k dan sisa
pembagian dalam polinom r. Bisa juga
dianggap sebagai dekonvolusi antara p dan q
6 polyder(p) menghitung vektor sepanjang n berisi turunan
pertama dari polinom p

Fungsi dalam MATLAB untuk mencari akar suatu fungsi, ditampilkan dalam table berikut

Tabel 3.2: Fungsi built in MATLAB untuk iterasi suatu fungsi
No Nama fungsi Keterangan
1 fplot(fcn,lim,string) memplot fungsi fcn pada interval lim dengan
property yang didefinisikan oleh string. fcn
berupa M-file yang berisi definisi fungsi. lim
berupa vektor 2 elemen berisi batas interval
xmin dan xmax.
2 fzero(fcn,x0) menghitung nol dari fungsi fcn dengan nilai
tebakan awal x0.
3 fzero(fcn,x0,tol) menghitung nol dari fungsi fcn dengan nilai
tebakan awal x0.
tol menentukan toleransi error dari perhitungan
pendekatan
yang diinginkan

KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 20

Contoh 1

Berikut adalah fasilitas Matlab untuk mencari akar posisi medan listrik nol sebagaimana telah di
buat solusinya menggunakan beberapa metode numerik.
(x) =(
2

1
)x
2
+2
1
lx
1
l
2
=0 (3.13)

Metode I

Gambar 3.12: Fungsi roots untuk mencari akar persamaan polinomial
Metode II

Gambar 3.13: Script fungsi kuadrat medan listrik dua muatan

KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 21


Gambar 3.14: Fungsi fzero untuk mencari akar suatu fungsi.

Contoh 2

Gambar 3.15: Aliran fluida pada sebuah pipa kecil
Sesuai Hukum Bernoulli, maka diperoleh

(3.16)

Dengan,
Q =1.2m
3
/s =volume aliran fluida tiap satuan waktu
g =9.81 m/s
2
=percepatan gravitasi
b =1.8m =lebar pipa
h
0
=0.6m =ketinggian maksimum air
H =0.075m =tinggi pelebaran pipa
h =ketinggian air
Dengan menggunakan pendekatan numerik, tentukan besar h.

KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 22



Solusi:
Besar h dapat ditentukan dengan mencari akar persamaan bernoulli, dapat dipilih sebagian atau
seluruh metode yang telah dijelaskan diatas. Berikut solusi dengan menggunakan beberapa
metode pencarian akar.
Metode Bisection Cara II


%Pr ogr amMenghi t ung Akar Bi sect i on
%By Mada Sanj aya WS

di sp( ' ' )
di sp( ' ' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' ++++++++++HUKUM BERNOULLI +++++++++' )
di sp( ' ========METODE BI SECTI ON I I =======' )
di sp( ' ' )
di sp( ' ' )
Q=i nput ( ' Masukan besar debi t Q =' ) ;
g=i nput ( ' Masukan besar per cepat an gr avi t asi g =' ) ;
b=i nput ( ' Masukan l ebar pi pa b =' ) ;
h0=i nput ( ' Masukan t i nggi maksi mumh0 =' ) ;
H=i nput ( ' Masukan t i nggi pel ebar an pi pa H =' ) ;
h1=i nput ( ' Masukan akar awal per t ama=' ) ; %t ebakan akar per t ama
h2=i nput ( ' Masukan akar awal kedua=' ) ; %t ebakan akar kedua
di sp( ' - - - - - - - - - - - - - - - - - - - - - - - - - ' )
di sp( ' hm f m' ) %hmadal ah r at a- r at a h1 dan h2
di sp( ' - - - - - - - - - - - - - - - - - - - - - - - - - ' )
f or k=1: 10;
f 1=ber noul l i ( Q, g, b, h0, H, h1) ; f 2=ber noul l i ( Q, g, b, h0, H, h2) ;
hm=( h1+h2) / 2; f m=ber noul l i ( Q, g, b, h0, H, hm) ;
f pr i nt f ( ' %9. 6f %13. 6f \ n' , hm, f m) %Unt uk memuncul kan hmdan f mdal am1 bar i s
i f ( f 1*f m<0)
h2=hm;
el se
h1=hm;
end
end


KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 23




Output

File Untuk Menentukan Akar Awal Pertama dan kedua
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 24


Metode Regulasi Falsi Cara I
%Pr ogr amMenghi t ung Akar Met ode Regul asi Fal si I
%By Mada Sanj aya WS

di sp( ' ' )
di sp( ' ' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' +++++++++MENGHI TUNG AKAR PERSAMAAN+++++++++++' )
di sp( ' =============REGULASI FALSI I ================' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' ' )
di sp( ' ' )
Q=i nput ( ' Masukan besar debi t Q =' ) ;
g=i nput ( ' Masukan besar per cepat an gr avi t asi g =' ) ;
b=i nput ( ' Masukan l ebar pi pa b =' ) ;
h0=i nput ( ' Masukan t i nggi maksi mumh0 =' ) ;
H=i nput ( ' Masukan t i nggi pel ebar an pi pa H =' ) ;
h1=i nput ( ' Masukan akar awal per t ama=' ) ; %t ebakan akar per t ama
h2=i nput ( ' Masukan akar awal kedua=' ) ; %t ebakan akar kedua
%Ni l ai f ungsi per samaan masi ng- masi ng t ebakan akar
f 1=h0^2*( Q^2/ 2*g*b^2+h1^3+H*h1) - h1^2*( Q^2/ 2*g*b^2+h0^3) ;
f 2=h0^2*( Q^2/ 2*g*b^2+h2^3+H*h2) - h2^2*( Q^2/ 2*g*b^2+h0^3) ;
w1=h2- ( f 2/ ( f 2- f 1) ) *( h2- h1) ;
f w1=h0^2*( Q^2/ 2*g*b^2+w1^3+H*w1) - w1^2*( Q^2/ 2*g*b^2+h0^3) ;
%i nput j uml ah i t er asi
M=i nput ( ' Masukan j uml ah i t er asi =' ) ;
%t empat menyi mpan dat a h1
X1=zer os( M, 1) ;
X2=X1; %t empat menyi mpan h2
W=X1; %t empat menyi mpan t 1
FX1=X1; FX2=X1; FW=X1;
X1( 1) =h1; X2( 1) =h2; W( 1) =w1;
FX1( 1) =f 1; FX2( 1) =f 2; FW( 1) =f w1;
f or m=2: M
i f FW( m- 1) <0
X1( m) =W( m- 1) ;
X2( m) =X2( m- 1) ;
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 25

el se
X1( m) =X1( m- 1) ;
X2( m) =W( m- 1) ;
end
FX1( m) =h0^2*( Q^2/ 2*g*b^2+X1( m) ^3+H*X1( m) ) - X1( m) ^2*( Q^2/ 2*g*b^2+h0^3) ;
FX2( m) =h0^2*( Q^2/ 2*g*b^2+X2( m) ^3+H*X2( m) ) - X2( m) ^2*( Q^2/ 2*g*b^2+h0^3) ;
W( m) =X2( m) - ( FX2( m) / ( FX2( m) - FX1( m) ) ) *( X2( m) - X1( m) ) ;
FW( m) =h0^2*( Q^2/ 2*g*b^2+W( m) ^3+H*W( m) ) - W( m) ^2*( Q^2/ 2*g*b^2+h0^3) ;
end
I t =1: M;
di sp( ' ' )
di sp( ' AKAR AKAR PERSAMAAN METODE REGULASI FALSI ' ) %TABEL OUTPUT
di sp( ' +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++' )
di sp( ' I t er asi ke- Xm Xm+1 w F( Xm) F( Xm+1) F( w) ' )
di sp( ' +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++' )
di sp( [ I t ' X1 X2 WFX1 FX2 FW] ) %mengi si t abel

Output

Metode Regulasi Falsi Cara II
%Pr ogr amMenghi t ung Akar Met ode Rel asi f al si car a I I
%By Mada Sanj aya WS
di sp( ' ' )
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 26

di sp( ' ' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' +++++++++MENGHI TUNG AKAR PERSAMAAN+++++++++++' )
di sp( ' ==========METODE REGULASI FALSI I I ===========' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' ' )
di sp( ' ' )
Q=i nput ( ' Masukan besar debi t Q =' ) ;
g=i nput ( ' Masukan besar per cepat an gr avi t asi g =' ) ;
b=i nput ( ' Masukan l ebar pi pa b =' ) ;
h0=i nput ( ' Masukan t i nggi maksi mumh0 =' ) ;
H=i nput ( ' Masukan t i nggi pel ebar an pi pa H =' ) ;
h1=i nput ( ' Masukan akar awal per t ama=' ) ; %t ebakan akar per t ama
h2=i nput ( ' Masukan akar awal kedua=' ) ; %t ebakan akar kedua
di sp( ' - - - - - - - - - - - - - - - - - - - - - - - - - ' )
di sp( ' hmf m' ) %xmadal ah r at a- r at a h1 dan h2
di sp( ' - - - - - - - - - - - - - - - - - - - - - - - - - ' )
f or k=1: 10;
f 1=ber noul l i ( Q, g, b, h0, H, h1) ; f 2=ber noul l i ( Q, g, b, h0, H, h2) ;
hm=( h1+h2) / 2; f m=ber noul l i ( Q, g, b, h0, H, hm) ;
f pr i nt f ( ' %9. 6f %13. 6f \ n' , hm, f m) %Unt uk memuncul kan hmdan f mdal am1 bar i s
i f ( f 1*f m<0)
h2=hm;
el se
h1=hm;
end
end

Output
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 27


Metode Fzero

Output
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 28



Berdasarkan hasil perhitungan pencarian akar dengan menggunakan beberapa metode
diatas diperoleh nilai akar yang hampir sama yaitu 0.6006. Hal ini mengisyaratkan bahwa
metode pencarian akar memiliki tingkat akurasi yang sama. Penggunaan beberapa metode ini
bertujuan agar hasil pencarian akar dari metode yang satu dapat menjadi pembanding bagi
metode yang lain.

Contoh 3

Prinsip kerja propulsi roket merupakan penerapan dari hukum ketiga Newton dan kekalan
momentum. Prinsip kerja pada roket ini sama dengan yang dipakai cumi-cumi atau gurita untuk
mendorong diri mereka. Mereka mengeluarkan air dari tubuh mereka dengan gaya yang sangat
besar, dan air yang dikeluarkan mengerjakan gaya yang sama dan berlawanan pada cumi-cumi
atau gurita, mendorongnya ke depan. Sebuah roket mendapatkan sebuah dorongan dengan
membakar bahan bakar dan membuang gas yang terbentuk lewat belakang. Roket mengerjakan
gaya pada gas buang, dan dari hukum Newton III, gas mengerjakan gaya yang sama dan
berlawanan pada roket.

Dengan menggunakan analis perubahan momentum system maka diperoleh persamaan propulsi
roket, secara matematis dapat ditulis sebagai

eks keluar
F
dt
dm
u
dt
dv
m (3.17)
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 29

dimana
keluar
u adalah kecepatan semburan gas, m adalah massa roket dan air di dalamnya, dan
F
eks
adalah gaya eksternal dari berat roket. Gaya dorong roket merupakan gaya yang bekerja
pada roket akibat gas yang dikeluarkannya. Sesuai persamaan diatas, maka diperoleh

dt
dm
u F
keluar dorong
(3.18)

Karena gaya eksternal (F
eks
=-mg) bernilai negative, agar roket dapat dipercepat keatas maka
gaya dorong harus lebih besar dari gaya eksternal tersebut. Setelah kita mensubstitusi F
eks
dan
membagi dengan m diperoleh

g
dt
dm
m
u
dt
dv
keluar
(3.19)


Gambar 3.16: (a) momentum roket sebelum bergerak, (b) momentum roket setelah bergerak

Dengan mengintegralkan persamaan (3.19), maka diperoleh kelajuan gerak roket yang dapat
ditulis sebagai
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 30


gt
m
m
u v v
f
i
keluar i f
ln . (3.20)
Sedangkan untuk kelajuan roket yang bergerak dalam ruang bebas tanpa gaya eksternal,
persamaan (3.20) menjadi

f
i
keluar i f
m
m
u v v ln (3.21)
dimana v
f
dan v
i
adalah kelajuan akhir dan awal roket, m
f
dan m
i
adalah massa akhir dan roket
roket.
Kecepatan roket Saturn V dalam arah vertical v terhadap permukaan bumi dapat diaproksimasi
dengan sedikit perubahan pada persamaan (3.20) menjadi

: =u ln
M
0
M
0
-mt
gt (3.22)

dengan
u =2510 m/s =kecepatan pada saat bahan bakar dikeluarkan relatif terhadap roket
M
0
=2.8 10
6
kg =massa awal roket pada saat t=0.
m =13.3 10
3
kg/s =laju pemakaian bahan bakar
g =9.81 m/s
2
=percepatan gravitasi
t =waktu diukur terhadap t=0.
Tentukan waktu yang diperlukan agar roket dapat mencapai kecepatan suara 335 m/s.

Solusi :

Metode Bisection Cara II
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 31







%Pr ogr amMenghi t ung Akar Bi sect i on
%By Mada Sanj aya WS

di sp( ' ' )
di sp( ' ' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' ++++++++++++GERAK ROKET+++++++++++' )
di sp( ' ========METODE BI SECTI ON I I =======' )
di sp( ' ' )
di sp( ' ' )
v=i nput ( ' Masukan besar kecepat an =' ) ;
u=i nput ( ' Masukan besar kecepat an saat bahan bakar kel uar =' ) ;
m0=i nput ( ' Masukan besar massa awal r oket =' ) ;
m=i nput ( ' Masukan l aj u pemakai an bahan bakar =' ) ;
g=i nput ( ' Masukan per cepat an gr avi t asi =' ) ;
t 1=i nput ( ' Masukan akar awal per t ama=' ) ; %t ebakan akar per t ama
t 2=i nput ( ' Masukan akar awal kedua=' ) ; %t ebakan akar kedua
di sp( ' - - - - - - - - - - - - - - - - - - - - - - - - - ' )
di sp( ' t m f m' ) %hmadal ah r at a- r at a h1 dan h2
di sp( ' - - - - - - - - - - - - - - - - - - - - - - - - - ' )
f or k=1: 10;
f 1=r oket ( u, m0, m, g, t 1, v) ; f 2=r oket ( u, m0, m, g, t 2, v) ;
t m=( t 1+t 2) / 2; f m=r oket ( u, m0, m, g, t m, v) ;
f pr i nt f ( ' %9. 6f %13. 6f \ n' , t m, f m) %Unt uk memuncul kan hmdan f mdal am1 bar i s
i f ( f 1*f m<0)
t 2=t m;
el se
t 1=t m;
end
end

File Untuk Menentukan Akar Awal Pertama dan Kedua
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 32


Output


Metode Newton-Raphson
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 33

cl c
cl ear
cl ose

%Pr ogr amMenghi t ung Akar Met ode Newt on- Raphson
%By Mada Sanj aya WS
di sp( ' ' )
di sp( ' ' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' +++++++++MENGHI TUNG AKAR PERSAMAAN+++++++++++' )
di sp( ' ===========METODE NEWTON- RAPHSON=============' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' ' )
di sp( ' ' )
v=i nput ( ' Masukan besar kecepat an =' ) ;
u=i nput ( ' Masukan besar kecepat an saat bahan bakar kel uar =' ) ;
m0=i nput ( ' Masukan besar massa awal r oket =' ) ;
m=i nput ( ' Masukan l aj u pemakai an bahan bakar =' ) ;
g=i nput ( ' Masukan per cepat an gr avi t asi =' ) ;
t =i nput ( ' Masukan akar awal per t ama=' ) ; %t ebakan akar per t ama
%Ni l ai f ungsi per samaan t ebakan akar
f =u*l og( m0*( m0- m*t ) ^- 1) - g*t - v;
df =u*1/ ( m0*( m0- m*t ) ^- 1) *( m0*m*( m0- m*t ) ^- 1) - g;
%i nput j uml ah i t er asi
M=i nput ( ' Masukan j uml ah i t er asi =' ) ;
%t empat menyi mpan dat a x1
X=zer os( M, 1) ;
FX=X; dFX=X;
X( 1) =t ;
FX( 1) =f ; dFX( 1) =df ;
f or m=2: M
X( m) =X( m- 1) - ( FX( m- 1) / dFX( m- 1) ) ;
FX( m) =u*l og( m0*( m0- m*X( m) ) ^- 1) - g*X( m) - v; %Tur unan per samaan f yai t u f ' di t ul i s
sebagai ber i kut
dFX( m) =u*1/ ( m0*( m0- m*X( m) ) ^- 1) *( m0*m*( m0- m*X( m) ) ^- 1) - g;
end
I t =1: M;
di sp( ' ' )
di sp( ' AKAR AKAR PERSAMAAN METODE NEWTON- RAPHSON' ) %TABEL OUTPUT
di sp( ' +++++++++++++++++++++++++++++++++++++++++' )
di sp( ' I t er asi ke- XmF( X) F( X+1) ' )
di sp( ' +++++++++++++++++++++++++++++++++++++++++' )
f or mat l ong
di sp( [ I t ' X FX dFX] ) %mengi si t abel

Output
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 34


Metode Regulasi Falsi Cara I
%Pr ogr amMenghi t ung Akar Met ode Regul asi Fal si
%By Mada Sanj aya WS
di sp( ' ' )
di sp( ' ' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' +++++++++MENGHI TUNG AKAR PERSAMAAN+++++++++++' )
di sp( ' ==============REGULASI FALSI I ===============' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' ' )
di sp( ' ' )
v=i nput ( ' Masukan besar kecepat an =' ) ;
u=i nput ( ' Masukan besar kecepat an saat bahan bakar kel uar =' ) ;
m0=i nput ( ' Masukan besar massa awal r oket =' ) ;
m=i nput ( ' Masukan l aj u pemakai an bahan bakar =' ) ;
g=i nput ( ' Masukan per cepat an gr avi t asi =' ) ;
t 1=i nput ( ' Masukan akar awal per t ama=' ) ; %t ebakan akar per t ama
t 2=i nput ( ' Masukan akar awal kedua=' ) ; %t ebakan akar kedua
%Ni l ai f ungsi per samaan masi ng- masi ng t ebakan akar
f 1=u*l og( m0/ ( m0- m*t 1) ) - g*t 1- v;
f 2=u*l og( m0/ ( m0- m*t 2) ) - g*t 2- v; %Tur unan per samaan f yai t u f ' di t ul i s sebagai
ber i kut
w1=t 2- ( f 2/ ( f 2- f 1) ) *( t 2- t 1) ;
f w1=u*l og( m0/ ( m0- m*w1) ) - g*w1- v; %Tur unan per samaan f yai t u f ' di t ul i s sebagai
ber i kut
%i nput j uml ah i t er asi
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 35

M=i nput ( ' Masukan j uml ah i t er asi =' ) ;
%t empat menyi mpan dat a x1
X1=zer os( M, 1) ;
X2=X1; %t empat menyi mpan x2
W=X1; %t empat menyi mpan t 1
FX1=X1; FX2=X1; FW=X1;
X1( 1) =t 1; X2( 1) =t 2; W( 1) =w1;
FX1( 1) =f 1; FX2( 1) =f 2; FW( 1) =f w1;
f or m=2: M
i f FW( m- 1) <0
X1( m) =W( m- 1) ;
X2( m) =X2( m- 1) ;
el se
X1( m) =X1( m- 1) ;
X2( m) =W( m- 1) ;
end
FX1( m) =u*l og( m0/ ( m0- m*X1( m) ) ) - g*X1( m) - v; %Tur unan per samaan f yai t u f ' di t ul i s
sebagai ber i kut
FX2( m) =u*l og( m0/ ( m0- m*X2( m) ) ) - g*X2( m) - v;
W( m) =X2( m) - ( FX2( m) / ( FX2( m) - FX1( m) ) ) *( X2( m) - X1( m) ) ;
FW( m) =u*l og( m0/ ( m0- m*W( m) ) ) - g*W( m) - v;
end
I t =1: M;
di sp( ' ' )
di sp( ' AKAR AKAR PERSAMAAN METODE REGULASI FALSI ' ) %TABEL OUTPUT
di sp( ' +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++' )
di sp( ' I t er asi ke- Xm Xm+1 w F( Xm) F( Xm+1) F( w) ' )
di sp( ' +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++' )
f or mat shor t
di sp( [ I t ' X1 X2 WFX1 FX2 FW] ) %mengi si t abel
Output
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 36



Metode Fzero

Output

KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 37

Berdasarkan hasil pencarian akar di atas diperoleh waktu yang dibutuhkan roket untuk mencapai
suatu kecepatan yang sebanding dengan kecepatan suara yaitu 335 m/s
2
. Roket akan mencapai
kecepatan tersebut pada saat t =70.53 sekon.

Contoh 4

Contoh aplikasi gesekan udara adalah penerjun payung yang menggunakan parasut. Model kasus
ini diturunkan dari pernyataan percepatan sebagai perubahan kecepatan pada selang waktu
(dv/dt)
d
dt
=
P
m
(3.23)

Gaya (F) terdiri dari dua gaya berlawanan, yaitu yang cenderung kebawah karena tarikan
gravitasi F
D
dan gaya tarik keatas oleh resistansi udara F
U
:

F =F

+F
0
(3.24)

jika gaya kebawah ditandai positif, maka F
D
= mg, dimana g =percepatan gravitasi 9,8 m/s
2
.
resistansi udara bisa diformulasikan dengan bermacam variasi. Pendekatan sederhana adalah
diasumsikan bahwa gaya ini berbanding linier dengan kecepatan, dan arahnya keatas, sehingga
F
U
= cv, dimana c =konstanta pembanding disebut koefisien tarik (kg/s).

Dengan subtitusi (3.24) dan formulasi F
D
dan F
U
, persamaan (3.23) berubah menjadi

d
dt
=
mg-c
m
(3.25)

Atau disederhanakan menjadi

d
dt
=g
c
m
: (3.26)

KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 38

Persamaan (3.26) adalah persamaan diferensial, dimana solusi eksak untuk kecepatan jatuh
penerjun tidak bisa ditentukan dengan manipulasi aljabar sederhana. Selebihnya, teknik yang
lebih lanjut pada kalkulus harus digunakan untuk menentukan solusi analitik atau eksaknya. J ika
keadaan awal penerjun diam (v=0 pada t =0) persamaan (3.26) menjadi

:(t) =
gm
c
[1 c
-[
c
m
t
(3.27)

Persamaan (3.27) dinamakan solusi analitik atau eksak karena secara eksak memenuhi
persamaan diferensial biasa.

Tentukan koefisien tarik (drag coeffisient) c yang diperlukan sebuah parasut bermassa m=68,1 kg
sehingga kecepatannya 40 m/s setelah terjun bebas selama t=10 sekon.

Dapat kita lihat bahwa tidak seperti kecepatan parasut secara eksplisit dapat diisolasi pada satu
sisi dan sebagai fungsi waktu. Dalam kasus ini koefisien drag adalah implisit. Kasus ini bisa
diselesaikan dengan metode numerik dengan cara mengurangi variabel takbebas v pada kedua
sisi persamaan, sehingga:
(c) =
gm
c
[1c
-[
c
m
t
: (3.28)

Nilai c yang membuat f(c)=0 , selanjutnya disebut akar persamaan, yang juga representasi dari
koefisien drag sebagai solusi dari kasus.

Solusi:

Metode Bisection Cara II

KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 39

cl c
cl ear
cl ose

%Pr ogr amMenghi t ung Akar Bi sect i on
%By Hal i mat ussadi yah

di sp( ' ' )
di sp( ' ' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' ++++++++++++GERAK ROKET+++++++++++' )
di sp( ' ========METODE BI SECTI ON I I =======' )
di sp( ' ' )
di sp( ' ' )
m=i nput ( ' Masukan besar massa par asut =' ) ;
v=i nput ( ' Masukan besar kecepat an =' ) ;
t =i nput ( ' Masukan besar wakt u t er j un bebas =' ) ;
g=i nput ( ' Masukan per cepat an gr avi t asi =' ) ;
c1=i nput ( ' Masukan akar awal per t ama=' ) ; %t ebakan akar per t ama
c2=i nput ( ' Masukan akar awal kedua=' ) ; %t ebakan akar kedua
di sp( ' - - - - - - - - - - - - - - - - - - - - - - - - - ' )
di sp( ' cm f m' ) %hmadal ah r at a- r at a h1 dan h2
di sp( ' - - - - - - - - - - - - - - - - - - - - - - - - - ' )
f or k=1: 10;
f 1=pegas( m, g, c1, v, t ) ; f 2=pegas( m, g, c2, v, t ) ;
cm=( c1+c2) / 2; f m=pegas( m, g, cm, v, t ) ;
f pr i nt f ( ' %9. 6f %13. 6f \ n' , cm, f m) %Unt uk memuncul kan hmdan f mdal am1 bar i s
i f ( f 1*f m<0)
c2=cm;
el se
c1=cm;
end
end
Output

KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 40

File Untuk Mencari Akar Awal Pertama dan Kedua


Metode Fzero

Output



KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 41

Contoh 5

Sebuah peluru bermassa m ditembakan dari puncak gedung yang tingginya h
0
dengan kecepatan
awal v
0
dan sudut elevasi .



Gambar 3.19: Gerak proyektil

Dengan pendekatan metode numerik tentukan waktu yang diperlukan peluru untuk sampai pada
ketinggian maksimum dan sampai di tanah.

Solusi:

Metode bisection cara II


cl c
cl ear
cl ose

%Pr ogr amMenghi t ung Akar Bi sect i on
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 42

%By Hal i mat ussadi yah

di sp( ' ' )
di sp( ' ' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' ++++++++++HUKUM BERNOULLI +++++++++' )
di sp( ' ==========METODE BI SECTI ON I I =====' )
di sp( ' ' )
di sp( ' ' )
v0=i nput ( ' Masukan v0 =' ) ;
t h=i nput ( ' Masukan t h =' ) ;
g=i nput ( ' Masukan g =' ) ;
t 1=i nput ( ' Masukan akar awal per t ama=' ) ; %t ebakan akar per t ama
t 2=i nput ( ' Masukan akar awal kedua=' ) ; %t ebakan akar kedua
di sp( ' - - - - - - - - - - - - - - - - - - - - - - - - - ' )
di sp( ' hm f m' ) %hmadal ah r at a- r at a h1 dan h2
di sp( ' - - - - - - - - - - - - - - - - - - - - - - - - - ' )
f or k=1: 10;
f 1=el evasi ( v0, t h, g, t 1) ; f 2=el evasi ( v0, t h, g, t 2) ;
t m=( t 1+t 2) / 2; f m=el evasi ( v0, t h, g, t m) ;
f pr i nt f ( ' %9. 6f %13. 6f \ n' , t m, f m) %Unt uk memuncul kan hmdan f mdal am1 bar i s
i f ( f 1*f m<0)
t 2=t m;
el se
t 1=t m;
end
end

output


KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 43





File Untuk Mencari Akar Awal Pertama dan Kedua



KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 44

Metode Regulasi Falsi

di sp( ' ' )
di sp( ' ' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' +++++++++MENGHI TUNG AKAR PERSAMAAN+++++++++++' )
di sp( ' ==============REGULASI FALSI =================' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' ' )
di sp( ' ' )
v0=i nput ( ' Masukan v0 =' ) ;
t h=i nput ( ' Masukan t h =' ) ;
g=i nput ( ' Masukan g =' ) ;
t 1=i nput ( ' Masukan akar awal per t ama=' ) ; %t ebakan akar per t ama
t 2=i nput ( ' Masukan akar awal kedua=' ) ; %t ebakan akar kedua
%Ni l ai f ungsi per samaan masi ng- masi ng t ebakan akar
f 1=( 2. *v0. *si n( t h) / g) - t 1;
f 2=( 2. *v0. *si n( t h) / g) - t 2
w1=t 2- ( f 2/ ( f 2- f 1) ) *( t 2- t 1) ;
f w1=( 2. *v0. *si n( t h) / g) - w1;
%i nput j uml ah i t er asi
M=i nput ( ' Masukan j uml ah i t er asi =' ) ;
%t empat menyi mpan dat a t 1
X1=zer os( M, 1) ;
X2=X1; %t empat menyi mpan t 2
W=X1; %t empat menyi mpan t 1
FX1=X1; FX2=X1; FW=X1;
X1( 1) =t 1; X2( 1) =t 2; W( 1) =w1;
FX1( 1) =f 1; FX2( 1) =f 2; FW( 1) =f w1;
f or m=2: M
i f FW( m- 1) <0
X1( m) =W( m- 1) ;
X2( m) =X2( m- 1) ;
el se
X1( m) =X1( m- 1) ;
X2( m) =W( m- 1) ;
end
FX1( m) =( 2. *v0. *si n( t h) / g) - X1( m) ;
FX2( m) =( 2. *v0. *si n( t h) / g) - X2( m) ;
W( m) =X2( m) - ( FX2( m) / ( FX2( m) - FX1( m) ) ) *( X2( m) - X1( m) ) ;
FW( m) =( 2. *v0. *si n( t h) / g) - W( m) ;
end
I t =1: M;
di sp( ' ' )
di sp( ' AKAR AKAR PERSAMAAN METODE REGULASI FALSI ' ) %TABEL OUTPUT
di sp( ' +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++++++++' )
di sp( ' I t er asi ke- Xm Xm+1 w F( Xm) F( Xm+1)
F( w) ' )
di sp( ' +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++++++++' )
f or mat shor t
di sp( [ I t ' X1 X2 WFX1 FX2 FW] ) %mengi si t abel

KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 45

Output


Metode Newton-Raphson
cl c
cl ear
cl ose

di sp( ' ' )
di sp( ' ' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' +++++++++MENGHI TUNG AKAR PERSAMAAN+++++++++++' )
di sp( ' ===========METODE NEWTON- RAPHSON=============' )
di sp( ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' )
di sp( ' ' )
di sp( ' ' )
v0=i nput ( ' Masukan v0 =' ) ;
t h=i nput ( ' Masukan t h =' ) ;
g=i nput ( ' Masukan g =' ) ;
t =i nput ( ' Masukan akar awal per t ama=' ) ; %t ebakan akar per t ama
%Ni l ai f ungsi per samaan t ebakan akar
f =( 2*v0*si n( t h) / g) - t ;
df =- 1;
%i nput j uml ah i t er asi
M=i nput ( ' Masukan j uml ah i t er asi =' ) ;
%t empat menyi mpan dat a t 1
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 46

X=zer os( M, 1) ;
FX=X; dFX=X;
X( 1) =t ;
FX( 1) =f ; dFX( 1) =df ;
f or m=2: M
X( m) =X( m- 1) - ( FX( m- 1) / dFX( m- 1) ) ;
FX( m) =( 2*v0*si n( t h) / g) - X( m) ; %Tur unan per samaan f yai t u f ' di t ul i s sebagai
ber i kut
dFX( m) =1;
end
I t =1: M;
di sp( ' ' )
di sp( ' AKAR AKAR PERSAMAAN METODE NEWTON- RAPHSON' ) %TABEL OUTPUT
di sp( ' +++++++++++++++++++++++++++++++++++++++++' )
di sp( ' I t er asi ke- Xm F( X) F( X+1) ' )
di sp( ' +++++++++++++++++++++++++++++++++++++++++' )
f or mat shor t
di sp( [ I t ' X FX dFX] ) %mengi si t abel












Output

KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 47



Metode FZero






Output

KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 48



Dari hasil pencarian akar di atas diperoleh waktu yang diperlukan peluru untuk sampai pada
ketinggian maksimum dan sampai di tanah sebesar 1.77 sekon. Waktu tersebut dibutuhkan
peluru untuk bergerak secara parabola dari keadaan awalnya sampai peluru tersebut menyentuh
tanah.



Berikut adalah beberapa studi kasus pemanfaatan materi pendahuluan fisika komputasi.
,


Gambar 3.17: Osilasi sistem pegas
PROBLEM 1. OSILASI PEGAS
STUDI KASUS BEBERAPA APLIKASI MATLAB UNTUK SISTEM FISIKA
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 49

Terdapat dua buah benda bermassa m yang dihubungkan oleh pegas dan piston. Konstanta pegas
adalah k, dan c adalah koefisien redaman piston. Ketika sistem diberi simpangan dan dilepaskan
maka sistem akan berosilasi dalam bentuk

x
t
(t) =A
k
c
o
r
t
cos(

t +
k
) ,k =1,2 (3.29)
Dengan A
k
dan
k
adalah konstanta, dan =

adalah akar dari


4
+2
c
m

3
+3
k
m

2
+
c
m
k
m
+[
k
m

2
=0 (3.30)

Tentukan dua kombinasi yang mungkin dari

dan

dan tentukan kapan simpangan x


k
(t)=0,
jika k/m =1500 s
-1
dan c/m=12 s
-1
.



Rangkaian Seri RLC


Gambar 3.18: Rangkaian RLC

Dari rangkaian RLC seri diatas, kapasitor sebelumnya telah terisi penuh dengan muatan sebesar
Q
0
. setelah saklar tertutup maka arus mulai mengalir. Maka daya yang hilang pada resistor
sebesar

d0
dt
=I
2
R (3.31)
Sehingga persamaan umum untuk rangkaian seri RLC adalah

PROBLEM 2. OSILASI TEREDAM RANGKAIAN RLC
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 50

C
d
dt
+II
dI
dt
=I
2
R (3.32)

Karena besarnya arus sebanding dengan penurunan muatan kapasitor maka

I
d
2

dt
2
+R
d
dt
+

C
=0 (3.33)

Dengan solusi umumnya adalah

(t) =
0
c
-yt
cos(

t +) (3.34)
dimana
y =
R
2L
(1.27)
adalah faktor redaman.
dan

=
0
2
y
2
(3.35)

Adalah frekuensi angular osilasi teredam.

Dan
0
Q dan ditentukan oleh kondisi awal. J ika R =0, maka frekuensi angular kembali
menjadi frekuensi osilasi harmonik sebesar.

0
=
1
LC
(3.36)

Terdapat tiga kondisi terkait osilasi teredam yaitu under damped, critically damped dan over
damped dengan kriteria sebagai berikut
Untuk under damping,
R
2
<
4L
C
(3.37)
Untuk critically damping,
KOMPUTASI SISTEM FISIKA BERBASIS MATLAB 2011

Created @ 2011 by Mada Sanjaya WS 51

Jadilah seperti elang, berani
sendirian dan terbang lebih tinggi
dari yang lain
R
2
=
4L
C
(3.38)
Untuk over damping,
R
2
>
4L
C
(3.39)

Dengan menggunakan persamaan (3.34) serta metode numerik dalam mencari akar, tentukan
waktu yang diperlukan sampai muatan tidak berosilasi lagi untuk masing-masing kriteria diatas.

Anda mungkin juga menyukai