Download - Praktikum Fiskom II
-
Praktikum Fisika Komputasi
1
Uraian deret Taylor disekitar xo dinyatakan dengan f(x) yaitu :
nn
xxn
xfxf )(
!
)()( 0
0
)(
dimana,
0
)( 0)(
xxn
nn
dx
fdxf
)()( 00)0( xfxf
jika x0 = 0 maka persamaan tersebut menjadi deret Mac Laurin yaitu :
nn
xn
fxf
!
)0()(
)(
dimana,
0)( )0( xn
nn
dx
fdf
)0()0()0( ff
Praktikum :
1)Deret MacLaurin dari fungsi sinus yaitu :
...!5!3
)sin(53
xx
xx
Program komputer dari fungsi sinus tersebut jika dinyatakan dalam bahasa Visual C++
adalah :
//*********************************************************
// Menghitung fungsi sinus dengan deret MacLaurin
// Compiler : Visual C++
//*********************************************************
#include
#include
void main()
{
PRAKTIKUM MINGGU 1
DDeerreett TTaayylloorr
-
Praktikum Fisika Komputasi
2
double eps=1e-5;
double x,sinx,pem,pen,s,del;
int i,j,m,k,tanda;
cout > x;
x=x/57.3;
cout
-
Praktikum Fisika Komputasi
3
cout
-
Praktikum Fisika Komputasi
4
2.1 Metode Newton-Rapshon
Penentuan akar-akar suatu persamaan dapat dicari dengan memakai rumus iterasi
Newton Rapshon yang diturunkan dari uraian deret Taylor. Jika hanya dilibatkan sampai
suku dengan turunan pertama maka akan didapatkan iterasi Newton-Rapshon orde-1
yaitu:
)(
)('1
n
nnn
xf
xfxx
sedangkan jika kita melibatkan sampai suku dengan turunan kedua maka akan
menghasilkan iterasi Newton Rapshon orde-2 :
)(2
)()()(
)(
'
''
'
1
n
nn
n
nnn
xf
xfxfxf
xfxx
Praktikum :
1) Program komputer iterasi Newton-Rapshon orde 1, dimana persamaan yang dicari
akarnya adalah :
453911)( 23 xxxxf
//**********************************************************************************
// Menghitung Akar dari Fungsi dengan Metode Newton Rapshon Orde 1
// Iterasi dibatasi hanya sampai 15 kali iterasi
// Compiler : Visual C++
//**********************************************************************************
#include
#include //header untuk fungsi fabs()
#include //header untuk widht,setiosflags,...
void main()
{
double y[100];
double x,fx,dx;
int n;
PRAKTIKUM MINGGU 2
AAkkaarr--aakkaarr ddaarrii PPeerrssaammaaaann
-
Praktikum Fisika Komputasi
5
cout
-
Praktikum Fisika Komputasi
6
#include
void main()
{
double eps=1e-5; //konstanta (epsilon)
double y[100];
double x,fx,dx,selisih;
int n;
cout
-
Praktikum Fisika Komputasi
7
#include
#include
#include
void main()
{
double eps=1e-5;
double y[100];
double x,fx,d1,d2,pen,selisih;
int n;
cout
-
Praktikum Fisika Komputasi
8
}
Latihan :
1) Buatlah program komputer untuk menghitung persoalan gas ideal. Dimana 1 mole gas
ideal yang suhunya 3000 K volumenya diperbesar pada suhu tetap. Berapa liter volume
gas tersebut ketika tekanannya 15 atmosfir (tetapan gas universal 0,0823 l.atm/mole0 K).
Petunjuk :
pV = nRT
Dimana, n=1 mole, R=0.0823 l.atm/mole0K, dan T=300
0K. Sehingga :
p = 24.69/V
untuk menentukan berapa volume gas pada saat tekanannya 15 atmosfir maka persamaan
tersebut akan menjadi :
p = 24.69/V -15
Atau jika p disubstitusi menjadi y dan V menjadi x maka :
y = 24.69/x 15
Dengan menggunakan iterasi Newton-Rapshon maka akan dapat ditentukan solusinya.
Buatlah program komputer dari masalah ini.
2) Buatlah program komputer untuk masalah difraksi pada celah. Dimana suatu celah
dengan lebar 0.4 mm disinari dengan cahaya dengan panjang gelombang 5900 A. Pola
difraksi yang terjadi ditangkap oleh sebuah layar yang jaraknya 70 cm dari celah tsb.
Hitung jarak dari tengah-tengah terang pusat sampai intensitas cahaya tinggal nya.
Petunjuk :
Pola difraksi pada celah dinyatakan dengan :
2
2
0
SinII
dimana, I0 intensitas cahaya yang datang dan sin2
1kb . Jika kita mensubstitusikan
I/I0 menjadi y dan menjadi x maka persamaan tersebut akan menjadi
2
2sin
x
xy
untuk mendapatkan nilai dimana I/I0 = 0.5 maka persamaan tersebut diubah menjadi :
5.0sin
2
2
x
xy
Dengan memakai iterasi Newton-Rapshon maka solusi persamaan ini akan dapat dicari.
Buatlah programnya!.
-
Praktikum Fisika Komputasi
9
2.2 Pembagian Sintetik
Penentuan nilai dan turunan dari suatu persamaan (Polinom) dapat ditentukan
dengan cara Pembagian Sintetik. Misalkan polinom orde-n dinyatakan dalam bentuk
persamaan seperti berikut ini :
...)( 322
2
1
1
n
n
n
n
n
n
n
n xaxaxaxaxf
misal n=3 maka didapatkan polinom orde-3 :
322
2
1
1)(
n
n
n
n
n
n
n
n xaxaxaxaxf
Untuk mencari nilai fungsi dan turunannya pada suatu nilai x tertentu maka dapat
ditentukan dengan Pembagian Sintetik. Adapun caranya adalah :
321 nnnn aaaax
)()()( 21 xbxbxb nnn
321 nnnn bbbb
dimana,
nn ab
xbab nnn 11
xbab nnn 122
xbab nnn 233
Nilai 3nb merupakan nilai dari fungsi f(x) pada x yang bersangkutan. Sedangkan untuk
menentukan nilai dari turunan dari fungsi f(x) tersebut adalah dengan meneruskan
pembagian sintetik dimana nilai 321 ,,, nnnn aaaa diganti dengan nilai 21, , nnn bbb .
21 nnn bbbx
)()( 1xcxc nn
21 nnn ccc
dimana,
nn bc
xcbc nnn 11
xcbc nnn 122
+
+
-
Praktikum Fisika Komputasi
10
Nilai dari 2nc merupakan nilai turunan dari persamaan f(x) pada x yang bersangkutan.
Sebagai salah satu contoh misalkan kita memiliki persamaan polinom orde 3 yaitu :
453911)( 23 xxxxf
Jika kita ingin mencari nilai persamaan dan turunannya pada x=2 dengan Pembagian
Sintetik maka hasilnya adalah :
2 1 -11 39 -45
2 -18 42
1 -9 21 -3
2 1 -9 21
2 14
1 -7 7
Jadi didapatkan nilai f(x) pada x=2 adalah 3, sedangkan nilai turunannya adalah 7.
Tugas selanjutnya adalah bagaimana kita membuat program komputer dari
Pembagian Sintetik ini. Adapun implementasi dari program komputer untuk metode
Pembagian Sintetik ini dinyatakan seperti berikut ini :
//*************************************************************
//Menentukan nilai fungsi dan turunan dengan Metode
//pembagian Sintetik
//Compiler : Visual C++
//*************************************************************
#include
#include
void pemsin(double a[100],int n,double x,double b[100]);
void main()
{
double a[100];
double b[100];
double c[100];
double x;
int i,orde;
cout orde;
for (i=orde; i>=0; i--)
{
cout
-
Praktikum Fisika Komputasi
11
}
cout
-
Praktikum Fisika Komputasi
12
}
else
{
cout
-
Praktikum Fisika Komputasi
13
double b[100];
double c[100];
double y[100];
double x,fx,dx;
int i,n,orde;
cout orde;
for (i=orde; i>=0; i--)
{
cout
-
Praktikum Fisika Komputasi
14
1) Buatlah program komputer untuk menyelesaikan masalah gerak peluru. Dimana sebuah
peluru ditembakkan dengan kecepatan awal V0 = 100 m/s dan sudut elevasi = 450. Per
cepatan grafitasi g = 9,8 m/dt 2 .Tentukan berapa jauh peluru akan melayang di udara.
Petunjuk :
Persamaan lintasan peluru dinyatakan dengan :
xxv
gy )(tan
)cos(2
2
2
0
atau bisa ditulis menjadi polinom orde-2 yaitu :
xxay 22
dimana,
132
0
2 10.1)cos(2
mv
ga
1tan1 a
00 a
Dengan memakai iterasi Newton-Rapshon yang dikombinasikan dengan metode
pembagian Sintetik maka solusi permasalahan diatas akan dapat dicari. Buat program
komputernya.
-
Praktikum Fisika Komputasi
15
IIIIII IINNTTEEGGRRAALL DDAANN TTUURRUUNNAANN
3.1 INTEGRAL
Nilai Integral I dari suatu fungsi f(x) menyatakan luas bidang dibawah fungsi f(x)
antara x=a dan x=b atau ditulis :
b
a
dxxfI )(
Ada beberapa metode yang dapat dipakai untuk menghitung integral diantaranya : metode
persegi panjang, metode trapesium, metode Simpson, metode Romberg dll. Berikut ini
akan dijelaskan beberapa metode tersebut.
3.1.1 Metode Persegi Panjang
Dalam metode ini luas bidang dibawah kurva f(x) antara x = a dan x = b dapat
dicari dengan membagi bidang tersebut menjadi n buah pita yang berbentuk persegi
panjang, yang panjangnya f(xi) dan lebarnya x , sehingga
luas masing-masing pita dapat dinyatakan :
xxfL ii )(
Karena antara x = a dan x = b terdapat n buah pita maka luas seluruhnya menjadi :
n
i
xxifL1
)(
3.1.2 Metode Trapesium
f(x)
a b
y
x
Gambar 3.1 Metode Persegi Panjang
Pita ke-1
Pita ke-n
Pita ke-i
x
PRAKTIKUM MINGGU 3
IInntteeggrraall ddaann TTuurruunnaann
-
Praktikum Fisika Komputasi
16
Dalam metode trapesium ini luas bidang di bawah fungsi f(x) antara x = a dan x =
b dapat dicari dengan membagi bidang antara x = a dan x = b menjadi n buah pita yang
berbentuk trapesium yang masing-masing lebarnya x seperti diperlihatkan dalam
gambar 3.2 .
Dari gambar 3.2 maka luas pita ke-i adalah :
)]()([2
11 iii xfxfxA
Sehingga untuk n buah pita maka luas seluruhnya menjadi :
)]()([2
1...)]()([
2
1)]()([
2
113221 nn xfxfxxfxfxxfxfxA
karena f(x1) = f(a) dan f(xn+1) = f(b) maka persamaan tersebut menjadi :
)]()(2...)(2)(2)(2)([2
1432 bfxfxfxfxfafxA n
PRAKTIKUM :
1) Membuat program komputer untuk menghitung integral dengan metode Trapesium.
Dimana fungsi yang akan dicari integralnya adalah :
f(x) = 6 6x5
Adapun program komputernya adalah seperti berikut ini :
//*******************************************************
//Menghitung integral dengan metode Trapesium
//Compiler : Visual C++
//*******************************************************
f(x)
a b
y
x
Gambar 3.2 Metode Trapesium
x
xi xi+1
f(xi) f(xi+1)
Pita ke-i
Pita ke-1 Pita ke-n
-
Praktikum Fisika Komputasi
17
#include
#include
#include
void main()
{
double eps=1e-5;
double trap[100];
double x,x1,x2,delt,delx,pita,fx;
int i;
cout >x1;
cout >x2;
cout
-
Praktikum Fisika Komputasi
18
cout
-
Praktikum Fisika Komputasi
19
2) Coba buat program komputer untuk menghitung integral dari fungsi :
f(x) = 1/x
Coba eksekusi program tersebut dengan batas-batas integrasi adalah x=0.01 dan x=0.09.
Jika programnya benar maka anda akan mendapatkan harga integrasi = 2.19723
3.1.3 Metode Simpson
Jika pada metode Persegi panjang dan Trapesium kita menggunakan kurva yang
berbentuk garis lurus maka pada metode Simpson kita akan memakai kurva yang
berbentuk parabola atau polinom orde dua :
f(x) = a2x2 + a1x + a0
Untuk menurunkan rumus integrasi maka dimisalkan xi+1 ditempatkan di x = 0, xi
ditempatkan di x = -x dan xi+2 di x = x. Sehingga nilai integral di bawah kurva f(x)
yaitu :
dxaxaxaA
x
x
i
)( 012
21
selanjutnya dengan penurunan secara matematik akan didapatkan bahwa :
)]()(4([3
1211 iiii xfxfxfxA
Maka luas semua pasangan pita adalah :
)]()(4([3
1321 xfxfxfxA
...)]()(4([3
1543 xfxfxfx
)]()(4([3
112 nnn xfxfxfx
atau
...)(4)(4)(4)([3
18621 xfxfxfxfxA
)](...)(2)(2)(2 753 nxfxfxfxf
PRAKTIKUM :
1) Membuat program komputer untuk menghitung integral dengan metode Simpson.
Dimana fungsi yang akan dicari integralnya adalah :
f(x) = 6 6x5
Adapun program komputernya adalah seperti berikut ini :
-
Praktikum Fisika Komputasi
20
//*******************************************************
//Menghitung integral dengan metode Simpson
//Compiler : Visual C++
//*******************************************************
#include
#include
#include
void main()
{
double eps=1e-5;
double simp[100];
double x,x1,x2,delt,delx,pita,fx;
int i,j;
cout >x1;
cout >x2;
cout
-
Praktikum Fisika Komputasi
21
simp[i]=simp[i]+4*fx;
if (x>x1 && x
-
Praktikum Fisika Komputasi
22
3.2 TURUNAN
Uraian deret Taylor di sekitar x dinyatakan dengan f(x+h) dan f(x-h). Dimana
masing-masing dinyatakan dengan persamaan :
...)(6
1)(
2
1)()()( '''3''2' xfhxfhxhfxfhxf
...)(6
1)(
2
1)()()( '''3''2' xfhxfhxhfxfhxf
Jika kita mengambil selisih antara kedua persamaan tersebut maka akan didapatkan :
...)(6
1
2
)()()( '''2'
xfh
h
hxfhxfxf
jika kita mengambil h yang sangat kecil maka suku-suku dengan h pangkat 2 atau lebih
bisa diabaikan. Sehingga akan didapatkan persamaan Turunan Pertama dari suatu fungsi
f(x) yaitu :
h
hxfhxfxf
2
)()()('
Untuk mendapatkan Turunan Kedua dari fungsi f(x) maka kita menjumlahkan kedua
persamaan f(x+h) dan f(x-h). Sehingga didapatkan persamaan yaitu :
...)(12
1)()(2)()( 2
2
''
xfhh
hxfxfhxfxf iv
Bila h sangat kecil maka suku dengan h pangkat 2 atau lebih bisa diabaikan. Sehingga
akan didapatkan persamaan Turunan Kedua dari f(x) yaitu :
2
'' )()(2)()(h
hxfxfhxfxf
Kedua metode untuk mencari turunan diatas disebut dengan metode Beda Sentral.
PRAKTIKUM :
1) Membuat program komputer untuk menghitung Turunan Pertama dari fungsi. Dimana
fungsi yang dicari turunannya adalah :
PRAKTIKUM MINGGU 4
IInntteeggrraall ddaann TTuurruunnaann ((llaannjjuuttaann))
-
Praktikum Fisika Komputasi
23
f(x) = x2 5x
Adapun implementasi program komputernya adalah seperti berikut ini :
//*********************************************************************************** //Menghitung Turunan pertama suatu fungsi dengan metode beda sentral //compiler : Visual C++ //*********************************************************************************** #include #include #include void main() { double eps=1e-5; double z[10]; double fx,del,dx,zz,x,y,h; int i,n; cout >y; cout
-
Praktikum Fisika Komputasi
24
Coba jalankan (eksekusi) program tersebut. Jika anda masukkan nilai x =1 maka akan
didapatkan hasil turunan pertama adalah 3. Cobalah untuk memasukkan nilai x yang lain
dan lihat hasilnya. Bandingkan dengan perhitungan secara manual.
2) Membuat program komputer untuk menghitung Turunan kedua dari fungsi. Dimana
fungsi yang dicari turunannya adalah :
f(x) = x3 5x
Adapun implementasi program komputernya adalah seperti berikut ini :
//****************************************************************** //Menghitung Turunan pertama suatu fungsi dengan metode beda sentral //compiler : Visual C++ //****************************************************************** #include #include #include void main() { double eps=1e-5; double z[10]; double fx,del,dx,zz,x,y,h; int i,n; cout >y; cout
-
Praktikum Fisika Komputasi
25
z[i]=fx; } dx=(z[1]-2*z[2]+z[3])/(h*h); del=zz-dx; cout.width(15); cout
-
Praktikum Fisika Komputasi
26
4.1 Solusi Persamaan Diferensial dengan syarat awal
Misalkan kita memiliki persamaan diferensial seperti di bawah ini :
02
2
kmdt
dxr
dt
xdm
secara analisis maka solusi dari persamaan tersebut adalah :
kmruntuktAex t 4,)sin( 0
kmruntuketBBx t 4,)( 21
kmruntukeCeCxtt
4,21 21
Sedangkan secara numerik kita tidak akan mendapatkan solusi seperti diatas, tetapi kita
akan mencari solusi pada suatu waktu tertentu. Sehingga diperlukan suatu syarat awal
agar solusi dapat dicari yaitu misalkan pada waktu mula-mula solusi melalui suatu titik
tertentu. Syarat semacam ini diperlukan karena solusi persamaan diferensial dapat
berbeda-beda karena adanya suatu konstanta. Andaikan kita mempunyai persamaan
diferensial :
54)(' xxf
solusi secara analisis matematik dari persamaan ini adalah :
54)(
xdx
xdf
Cxxdxxxf 5254)(2
dapat dilihat bahwa solusinya tidak hanya satu tetapi tergantung dari nilai C. Sedangkan
solusi secara numerik kita menentukan suatu syarat awal terhadap fungsi tersebut
misalnya bahwa solusi persamaan tersebut melalui titik (1,1). Sehingga akan didapatkan
hanya sebuah solusi yaitu :
652)( 2 xxxf
misal kita masukkan nilai x = 2 maka solusi dari persamaan diferensial tersebut adalah :
12)2( f
Jadi dapat disimpulkan bahwa solusi dari persamaan diferensial 54)(' xxf di x = 2
dan syarat awal (1,1) adalah 12. Ada beberapa metode yang dapat diterapkan untuk
mencari solusi dari persamaan diferensial yaitu : metode Euler, Runge-Kutta dll.
4.2 Metode Euler
PRAKTIKUM MINGGU 5
PPeerrssaammaaaann DDiiffeerreennssiiaall BBiiaassaa
-
Praktikum Fisika Komputasi
27
Solusi persamaan diferensial biasa dengan syarat awal dapat dilakukan dengan
meninjau uraian deret Taylor dari f(x+h) disekitar x yaitu :
hxfxfhxf )()()( '
dimana persamaan diferensial biasa dapat ditulis menjadi :
),()(' yxfxf
sehingga persamaan diatas menjadi :
hyxfxfhxf ),()()(
persamaan ini bisa ditulis dalam bentuk iterasi :
hyxfyy ii ),(1
persamaan ini sering disebut dengan iterasi Euler orde 1. Jika kita menentukan syarat
awal adalah titik (x0,y0) dan kita menginginkan solusi persamaan diferensial di titik xp
maka kita harus membagi selang antara x0 dan xp menjadi n buah pita yang masing-
masing lebarnya h sehingga diperoleh titik-titik x0, x1, x2, xp.
Dari syarat awal yaitu titik (x0,y0) maka dengan rumus iterasi Euler kita dapat
menentukan y1 dengan absis x1 = x0 + h. Selanjutnya dari titik (x1,y1) kita dapat
menentukan y2 dengan absis x2 = x1 + h. Demikian seterusnya sampai didapatkan yp yang
absisnya adalah xp. Dengan demikian nilai yp merupakan solusi dari persamaan diferensial
pada titik xp.
PRAKTIKUM :
1) Membuat program komputer untuk mencari solusi persamaan diferensial biasa dengan
iterasi Euler orde-1. Dimana bentuk persamaan diferensial yang dicari solusinya adalah :
f (x) = 4x+5
Adapun implementasi program komputernya adalah seperti berikut ini :
//**************************************************************************** //Menghitung Persamaan Diferensial dengan metode Euler orde satu //compiler : Visual C++ //**************************************************************************** #include #include #include void main() { double eps=1e-3; double x,x1,x2,y,y1,y2,fx,delx,delt,pita; int n; cout >x1>>y1; cout >x2; cout
-
Praktikum Fisika Komputasi
28
while (fabs(delt)>eps) //iterasi selama delt lebih besar dari eps { n+=1; pita=pow(2,n); //2^n delx=(x2-x1)/pita; x=x1; y=y1; while (x
-
Praktikum Fisika Komputasi
29
1) Membuat program komputer untuk mencari solusi persamaan diferensial biasa dengan
iterasi Euler orde-2. Dimana bentuk persamaan diferensial yang dicari solusinya adalah :
f (x) = 4x+5
Adapun implementasi program komputernya adalah seperti berikut ini :
//*************************************************************************** //Menghitung Persamaan Difrensial dengan metode Euler orde dua //compiler : Visual C++ //*************************************************************************** #include #include #include void main() { double eps=1e-3; double x,x1,x2,y,y1,y2,fx,dx,delx,delt,pita; int n; cout >x1>>y1; cout >x2; cout
-
Praktikum Fisika Komputasi
30
} cout
-
Praktikum Fisika Komputasi
31
4.3 Metode Runge-Kutta
Persamaan umum iterasi Runge-Kutta adalah :
),,(1 hyxfyy nnnn
dimana
mmnn kakakahyxf ...),,( 2211
nn xxh 1
dengan
),(1 nn yxhfk
11112 ,( kqyhpxhfk nn
),( 22212123 kqkqyhpxhfk nn
.........
11,122,111,11 ...,( mmmmmnmnm kqkqkqyhpxhfk
4.3.1 Runge-Kutta orde 1
Jika diambil m = 1 maka akan menghasilkan iterasi Runge-Kutta orde 1 yaitu :
111 kayy nn
),(11 nnnn yxhfayy 1
karena 11),,( kahyxf nn dan ),(1 nn yxhfk . Dengan mengambil 11 a maka persamaan
ini sama dengan persamaan iterasi Euler orde-1.
4.3.1 Runge-Kutta orde 2
Jika diambil m = 2 maka akan memberikan iterasi Runge-Kutta orde 2 yaitu :
22111 kakayy nn
dimana
),(1 nn yxhfk
),( 11112 kqyhpxhfk nn
jadi dalam hal ini kita perlu menentukan nilai-nilai dari 11121 dan,,, qpaa . Dengan
melakukan perhitungan matematis maka didapatkan nilai dari konstanta tersebut seperti
dijelaskan di bawah ini.
a) Metode Heun
PRAKTIKUM MINGGU 6
PPeerrssaammaaaann DDiiffeerreennssiiaall BBiiaassaa ((llaannjjuuttaann))
-
Praktikum Fisika Komputasi
32
Dalam metode ini diambil nilai dari konstanta :
21
21 aa
1111 qp
Sehingga persamaan iterasi Runge-Kutta orde 2 menjadi :
221
121
1 kkyy nn
dimana
),(1 nn yxhfk
),( 12 kyhxhfk nn
b) Metode Raltson
Dalam metode ini diambil nilai dari konstanta :
31
1 a 32
2 a
43
111 qp
Sehingga persamaan iterasi Runge-Kutta orde 2 menjadi :
)2( 2131
1 kkyy nn
dimana
),(1 nn yxhfk
),( 143
43
2 kyhxhfk nn
c) Metode Poligon
Dalam metode ini diambil nilai dari konstanta :
01 a 12 a
21
111 qp
Sehingga persamaan iterasi Runge-Kutta orde 2 menjadi :
21 kyy nn
dimana
),(1 nn yxhfk
),( 121
21
2 kyhxhfk nn
PRAKTIKUM :
1) Membuat program komputer untuk mencari solusi persamaan diferensial biasa dengan
iterasi Runge-Kutta orde 2 berdasarkan metode Heun. Dimana bentuk persamaan
diferensial yang dicari solusinya adalah :
f (x) = 4x+5
-
Praktikum Fisika Komputasi
33
Adapun implementasi program komputernya adalah seperti berikut ini :
//******************************************************************************************** //Menghitung Persamaan Diferensial dengan metode Runge-kutta orde dua-Heun //compiler : Visual C++ //******************************************************************************************** #include #include #include void main() { double eps=1e-3; double k[4]; double xx,x,x1,x2,yy,y,y1,y2,fx,delx,delt,pita; int i,n; cout >x1>>y1; cout >x2; cout
-
Praktikum Fisika Komputasi
34
else { delt=yy-y2; cout.width(15); cout
-
Praktikum Fisika Komputasi
35
xx=x1; yy=y1; while (xx
-
Praktikum Fisika Komputasi
36
3) Membuat program komputer untuk mencari solusi persamaan diferensial biasa dengan
iterasi Runge-Kutta orde 2 berdasarkan metode Poligon. Dimana bentuk persamaan
diferensial yang dicari solusinya adalah :
f (x) = 4x+5
Adapun implementasi program komputernya adalah seperti berikut ini :
//****************************************************************** //Menghitung Persamaan Diferensial dengan metode Runge-kutta orde dua-Poligon //compiler : Visual C++ //****************************************************************** #include #include #include void main() { double eps=1e-3; double k[4]; double xx,x,x1,x2,yy,y,y1,y2,fx,delx,delt,pita; int i,n; cout >x1>>y1; cout >x2; cout
-
Praktikum Fisika Komputasi
37
if (n==1) { cout.width(15); cout
-
Praktikum Fisika Komputasi
38
//************************************************************************************** #include #include #include void main() { double eps=1e-3; double k[4]; double xx,x,x1,x2,yy,y,y1,y2,fx,delx,delt,pita; int i,n; cout >x1>>y1; cout >x2; cout
-
Praktikum Fisika Komputasi
39
{ cout.width(15); cout
-
Praktikum Fisika Komputasi
40
//compiler : Visual C++ //****************************************************************** #include #include #include void main() { double eps=1e-3; double k[4]; double xx,x,x1,x2,yy,y,y1,y2,fx,delx,delt,pita; int i,n; cout >x1>>y1; cout >x2; cout
-
Praktikum Fisika Komputasi
41
cout.width(15); cout