matematika teknik

36
Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN 1 PRINSIP DASAR PEMODELAN dan MODEL MATEMATIS 1.1. Prinsip Dasar Pemodelan Secara fundamental, pemodelan di dalam kajian-kajian proses teknik kimia dan proses adalah : Penggambaran kinerja suatu aktivitas, sistem atau proses Membangun persamaan matematis yang dapat menggambar-kan kinerja suatu proses (secara fisik) 1.2. Persamaan Matematis Didalam aktivitas pemodelan di dalam permasalahan teknik kimia dan proses, umumnya dihasilkan suatu bentuk atau sistem persamaan matematis. Secara garis besar, bentuk-bentuk persamaan yang mungkin terbentuk adalah : 1. Persamaan Aljabar : manakala proses berlangsung secara tunak atau penggambaran kinerja proses statik. – Hubungan antar variabel : linier atau non-linier (PAL atau PANL) – Jumlah persamaan (variabel anu) : tunggal atau jamak/serempak (PA atau SPA) – Pengungkapan : eksplisit atau implisit. 2. Persamaan Diferensial : bila proses yang digambar-kan berlangsung secara dinamis (unsteady state process, time dependent proses) : Hubungan antar variabel : linier atau non-linier Jumlah persamaan (jumlah variabel terikat yang dideferensialkan) : tunggal atau jamak Dimensi perubahan (dinamisasi variabel) : biasa (PDB) atau parsial (PDP) Property of Setijo Bismo Halaman (1)

Upload: exel-dua-cincin

Post on 02-Dec-2015

220 views

Category:

Documents


14 download

DESCRIPTION

model matematika teknik

TRANSCRIPT

Page 1: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

1 PRINSIP DASAR PEMODELAN dan MODEL MATEMATIS

1.1. Prinsip Dasar Pemodelan

Secara fundamental, pemodelan di dalam kajian-kajian proses teknik kimia dan proses adalah :

• Penggambaran kinerja suatu aktivitas, sistem atau proses

• Membangun persamaan matematis yang dapat menggambar-kan kinerja suatu proses (secara fisik)

1.2. Persamaan Matematis

Didalam aktivitas pemodelan di dalam permasalahan teknik kimia dan proses, umumnya dihasilkan suatu bentuk atau sistem persamaan matematis. Secara garis besar, bentuk-bentuk persamaan yang mungkin terbentuk adalah :

1. Persamaan Aljabar : manakala proses berlangsung secara

tunak atau penggambaran kinerja proses statik. – Hubungan antar variabel : linier atau non-linier (PAL atau PANL) – Jumlah persamaan (variabel anu) : tunggal atau jamak/serempak (PA atau

SPA) – Pengungkapan : eksplisit atau implisit.

2. Persamaan Diferensial : bila proses yang digambar-kan

berlangsung secara dinamis (unsteady state process, time

dependent proses) :

– Hubungan antar variabel : linier atau non-linier – Jumlah persamaan (jumlah variabel terikat yang dideferensialkan) : tunggal

atau jamak – Dimensi perubahan (dinamisasi variabel) : biasa (PDB) atau parsial (PDP)

Property of Setijo Bismo Halaman (1)

Page 2: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

– Pengungkapan : eksplisit atau implisit.

Persamaan Aljabar Persamaan Diferensial

• xyK =

• λ +Δ= mTcmq p

• ⎩⎨⎧

−⋅=+=

22212

211 2xxxy

xxy

• )x(Ckdtxd A,AA −⋅⋅= 10

• ( ) CCRRC YVRXFXNdtd

−+=

• ⎩⎨⎧

=θ−⋅=θ

2132

2222111

ykddyykyykddy

1.3. Strategi Pemahaman Suatu Model Matematis Secara konseptual, diperlukan pemahaman yang mendasar

tentang persamaan-persamaan model yang terbentuk, sebagai berikut :

A. Tidak mungkin semua variabel tidak diketahui (harganya) dan tidak

mungkin semua variabel/ besaran diketahui (dull equation).

B. Persamaan Tunggal : hanya satu variabel yang harus dihitung, simbol

atau besaran lainnya disebut konstanta atau paramater (yang

diketahui harganya).

C. Persamaan Jamak (n buah) : hanya n buah variabel yang harus

dihitung, teliti dan pelajari parameter/ besaran lain yang berperan

sebagai konstanta. Penyelesaian model ini umumnya memerlukan

harga awal atau tebakan, dilakukan secara iteratif dan serempak.

D. Jika pembentukan model telah sesuai dengan kaidah dan sistematika

yang benar : solusi dapat terarah (konvergen).

1.4. Penalaran atau Aliran Logika Pemodelan

Model matematis yang terbentuk disyaratkan harus memenuhi

aliran logika, baik yang bersifat fisika maupun matematis. Pada Property of Setijo Bismo Halaman (2)

Page 3: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

dasarnya, model matematis tersebut harus mampu menggambarkan

diagram aliran informasi dasar dari permasalahan yang dimaksudkan.

Di bawah ini, secara sederhana diberikan suatu bentuk

persamaan atau model matematis sebagai berikut :

{ } CCRRC YVRXFXNdtd

−+=

Sebagai Persamaan Diferensial Biasa Eksplisit, persamaan di

atas memiliki 2 kelompok posisi variabel/parameter/ konstanta, yaitu

satu fihak di RUAS KIRI (N dan XC) dan di fihak lain berada pada

RUAS KANAN (FR, XCR, R, V dan YC).

Bila diinginkan mencari atau menyelesaikan persamaan di atas,

maka perlu difahami diagram aliran logika berikut :

R

N

V, YC

FR, XCRXC{ } CCRRC YVRXFXN

dtd

−+=

Property of Setijo Bismo Halaman (3)

Page 4: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

BEBERAPA CONTOH MODEL

Kasus #1 :

Z ZF2

F1

Z0

Mempunyai DIAGRAM ALIR INFORMASI DASAR sbb :

ZdZdt

F1, F2

A

KeluaranPersamaan-persamaan SistemMasukan

Blok Diagram Informasi Dasar

A dZdt

F F= −1 2 dtdtdZZ ∫ ⎭

⎬⎫

⎩⎨⎧=

Secara lebih ringkas, diagram alir kerja MODEL dari Kasus #1 ini adalah sbb :

KeluaranPersamaan SistemMasukan

Model Kasus #1

ZF1, F2

AA dZ

dtF F= −1 2

Property of Setijo Bismo Halaman (4)

Page 5: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

Kasus # 2 :

CBA kk ⎯⎯→⎯⎯⎯→⎯ 21

RA = ACk1 , RB = BA CkCk 21 −

Secara sistematik, diagram kerja MODEL dari Kasus #2 ini adalah sbb :

KeluaranPersamaan SistemMasukan

Model Kasus #2

CA, CBCA,0, CB,0

k1, k2

AA Ck

dtdC

1=

BAB CkCk

dtdC

21 −=

Dalam mencari solusi (jawab) dari Kasus #2 ini sebagai fungsi dari waktu, baik secara analitis maupun numeris diperlukan sejumlah HARGA AWAL (initial values), sbb :

1. CA,0 2. CB,0 dan sejumlah TETAPAN (laju reaksi), sbb :

1. k1 2. k2

SOLUSI “PDB” dengan “HARGA AWAL”

Property of Setijo Bismo Halaman (5)

Page 6: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

2 SOLUSI PERSAMAAN DIFERENSIAL BIASA dengan HARGA AWAL dalam PEMODELAN

dan MODEL MATEMATIS

2.1. Solusi Persamaan Diferensial Biasa Secara umum, problem persamaan diferensial biasa selalu

melibat-kan harga awal, yang dapat ditulis sebagai berikut :

00 )(),,(' yxyyxfy ==

Nxxx ≤≤0

Secara numerik, solusi yang seringkali diterapkan dalam problem

ini adalah dengan metode eksplisit. Dalam hal ini, solusi dari problem

di atas adalah berada dalam interval [ ]Nxx ,0 yang dibagi secara tetap

(equidistance) sebanyak N buah panel :

Nxxh N 0−

=

sehingga : Nihixxi ,,2,1,0,0 …=+=

Jika )(xy adalah “solusi eksak” dari PDB di atas, maka dengan

melakukan ekspansi dengan “deret Taylor” dengan sisanya akan

diperoleh

:

1

21

11 2+

+++

≤ξ≤

ξ−

+−+= (y

iii

iii

iiiii

xx

),("y!

)xx()x('y)xx()x)x(y

Property of Setijo Bismo Halaman (6)

Page 7: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

substitusi dari PDB di atas dan dengan pendekatan metode eksplisit pada persamaan di atas akan didapatkan :

))(y,('f!

h))x(y,x(fh)x(y)x(y iiiiii ξξ++=+ 2

21

2.1. Metode EULER

Metode yang paling sederhana dalam menterjemahkan deret

Taylor diatas, yaitu dengan dengan cara “pemotongan” term kedua

(atau di atasnya). Dan bila dinotasikan )( ii xyu ≈ , maka :

1101 −=+=+ N,,,i),u,x(fhuu iiii …

00 yu =

Dari persamaan di atas, dapat diketahui bahwa untuk menghitung

diperlukan informasi tentang harga-harga 1+iu ix dan , yang disebut

sebagai harga awal. Akurasi dari metode ini adalah dalam “order satu”

(first-order approximation) :

iu

)h(ei1

1 0=+

Property of Setijo Bismo Halaman (7)

Page 8: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

Gambar 1. Representasi METODE EULER.

Untuk memperkecil “galat pemotongan lokal” pada setiap tahap

(panel), ukuran h dapat dibuat sekecil mungkin.

2.3. Metode RUNGE-KUTTA

Metode ini termasuk algoritma eksplisit yang melibatkan evaluasi

fungsi f di antara ix dan 1+ix . Formula umum dari metode ini adalah

sebagai berikut :

∑ν

=+ ω+=

11

jjjii Kuu

dengan :

),(1

1∑−

=++=

j

lljlijij KauhcxfhK

01 =c

Perlu dicatat, bila 1=ν , 1=ω , dan ),(1 ii uxfhK = maka

formula yang akan diperoleh adalah : METODE EULER. Hal ini berarti bahwa metode EULER adalah order terendah dari METODE RUNGE-KUTTA.

Untuk mendapatakan formula dengan akurasi yang lebih tinggi, parameter-parameter , , dan a dapat diubah dengan tetap melakukan ekspansi solusi eksak melalui deret Taylor.

ω c

Sebagai contoh, bila kita inginkan 2=ν , maka pertama kali kita

ekspansikan solusi eksak di atas dengan deret Taylor :

Property of Setijo Bismo Halaman (8)

Page 9: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

)h())x(y,x('f!

h))x(y,x(fh)x(y)x(y iiiiii3

21 0

2+++=+

sedangkan ))(,(' ii xyxf dapat dituliskan sebagai :

iyxxx

iii )fff(dxdy

yf

xf

dxdf

i

+=∂∂

+∂∂

==

Jika persamaan terakhir disubstitusikan kedalam persamaan di atasnya dengan pemotongan term di atasnya, maka akan diperoleh :

iyxiii )fff(!

hfhuu +++=+ 2

21

Untuk ekspansi formula pada posisi ke-i , perlu dicatat bahwa

harga

jK

1K merupakan bentuk paling sederhana, sebagai berikut :

iii fhuxfhK == ),(1

sehingga harga 2K dapat dihitung melalui formula berikut :

),( 12122 KauhcxfhK ii ++=

Jika diketahui bahwa sembarang dua fungsi η dan φ yang

lokasinya berturut-turut berdekatan dengan ix dan , maka akan

diperoleh :

iu

)u,x(f)u()u,x(f)x()u,x(f,f iiyiiiiii −φ+−η+≈φη )(

Dengan menggunakan persamaan di atas untuk 2K , maka akan didapatkan bentuk persamaan untuk menghitung 2K :

Property of Setijo Bismo Halaman (9)

Page 10: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

)fKafhcf(hK yxi 12122 ++=

atau

iyxi )ffafc(hhfK 2122

2 ++=

Bila disubstitusikan persamaan terakhir dan persamaan 1K di atas

kedalam formula dasar Runge-Kutta ( 1+iu ) di atas, maka akan

diperoleh :

iyixiiii )ff(ha)f(chfhfhuu 22212

22211 ω+ω+ω+ω+=+

Jika dibandingkan persamaan 1+iu yang terakhir ini dengan

persaamaan sebelumnya, maka akan diperoleh : 1+iu

0121 ,=ω+ω

5022 ,c =ω

50212 ,a =ω

Algoritma METODE RUNGE-KUTTA dilengkapi dengan cara memilih salah satu di antara paramater-parameter 1ω , , atau

, sedangkan parameter lainnya ditetapkan dengan menggunakan

formula-formula di atas.

2ω 2c21a

Jika dipilih , maka skema metode RK menjadi

METODE TITIK TENGAH (midpoint method) adalah :

5,02 =c

11050501 −=+++=+ N,,,i),fh,u,h,x(fhuu iiiii …

00 yu =

Property of Setijo Bismo Halaman (10)

Page 11: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

Dari persamaan di atas, dapat diketahui bahwa untuk menghitung ‘harga baru’, , diperlukan besaran-besaran 1+iu ix dan : iu

• ix dan iu merupakan ‘harga awal’

• harga if dihitung sebagai fungsi dari ix dan iu : )( iii u,xff =

• h adalah ‘lebar panel’ atau jarak antara iu 1+iu

Representasi grafik dari formula metode titik tengah di atas adalah sebagai berikut :

Gambar 2. Representasi METODE TITIK TENGAH.

Sedangkan jika dipilih 12 =c , maka akan diperoleh formulasi

kelandaian rata-rata (average slope) dari metode Runge-Kutta order-2 :

Property of Setijo Bismo Halaman (11)

Page 12: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

[ ] 11021 −=++++=+ N,,,i,)fhu,hx(ffhuu iiiiii …

00 yu =

Representasi grafik dari metode kelandaian rata-rata di atas dapat

disajikan seperti pada halaman berikut :

Gambar 2. Representasi METODE Kelandaian rata-rata RUNGE-KUTTA order-2.

Kedua skema Metode RK di atas memiliki akurasi order-2, karena

pemotongan deret Taylor dilakukan setelah . )(0 2h

Jika diinginkan akurasi pada order-p, maka harus diambil harga ν yang sebesar mungkin. Namun hal ini hampir tidak mungkin atau memerlukan usaha/ pekerjaan yang besar (?).

Tabel 1. hubungan order-p dengan ν .

p 2 3 4 5 6 … ν 2 3 4 6 8 …

Property of Setijo Bismo Halaman (12)

Page 13: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

2.3.1. Peranan harga h dalam solusi numerik

Untuk metode RK order-2, harga h sangat berpengaruh dalam

peroleh atau solusi numeris dari model yang dimaksudkan, seperti

dapat dilihat pada gambar berikut :

2.3.2. Ketelitian beberapa metode numeris

Ketelitian dari beberapa metode numeris yang umum digunakan

dapat dilihat pada gambar berikut :

Property of Setijo Bismo Halaman (13)

Page 14: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

2.4. Metode RUNGE-KUTTA order tinggi

1. Metode RUNGE-KUTTA-GILL: Metode Runge-Kutta-Gill (RKG) tergolong dalam keluarga metode RK order-4, yang memiliki 4 (empat) buah ‘konstanta perhitungan antara’ yang dikombinasikan dengan konstanta-konstanta lain (a, b, c, dan d) sebagai keluarga bilangan emas (golden numbers). Algoritma ringkas dari metode RKG ini dapat dituliskan seperti di bawah ini :

)()( 3231

4161

1 KdKbKKuu ii ++++=+

),(1 ii uxfhK =

),( 12 21

21 KuhxfhK ii ++=

),( 213 21 KbKauhxfhK ii +++=

),( 324 KdKcuhxfhK ii +++=

222

212 , −− == ba

22

22 1, +=−= dc

untuk : i = 0, 1, 2,…,N-1 dan

harga awal : 00 yu =

Property of Setijo Bismo Halaman (14)

Page 15: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

2. Metode RUNGE-KUTTA-MERSON : Metode Runge-Kutta-Merson (RKM) tergolong dalam keluarga metode Runge-Kutta order-4, namun memiliki ketelitian sampai order-5. Keistimewaan ini dimungkinkan karena metode RKM memiliki 5 (lima) buah ‘konstanta perhitungan antara’ yang berperan untuk memprediksi harga solusi yang diinginkan pada 2 (dua) keadaan sedemikian rupa sehingga ‘galat pembulatan’ dapat diminimisasi sampai order-5. Formulasi ringkas dari metode RKM ini dapat dituliskan seperti di bawah ini :

4323

121

1 2 KKKuu ii +−+=+

561

432

161

1 KKKuu ii +++=+

),(1 ii uxfhK =

),( 12 31

31 KuhxfhK ii ++=

),( 213 61

61

31 KKuhxfhK ii +++=

)KKu,hx(fhK ii 314 83

81

21 +++=

)KKKu,hx(fhK ii 42315 23

21 +−++=

untuk : i = 0, 1, 2,…,N-1 dan

harga kondisi awal : 00 yu =

Property of Setijo Bismo Halaman (15)

Page 16: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

3. Metode RUNGE-KUTTA-FEHLBERG : Sama halnya dengan metode RKM, metode Runge-Kutta-Fehlberg (RKF45) juga tergolong dalam keluarga metode Runge-Kutta order-4, namun memiliki ketelitian sampai order-5. Ketelitian yang tinggi ini dimungkinkan karena metode RKF45 memiliki 6 (enam) buah ‘konstanta perhitungan antara’ yang berperan untuk meng-update solusi sampai order-5. Formulasi ringkas dari metode RKM ini adalah :

),(1 ii uxfhK =

),( 12 41

41 KuhxfhK ii ++=

),( 213 329

323

83 KKuhxfhK ii +++=

),( 3214 21977296

21977200

21971932

1312 KKKuhxfhK ii +−++=

)8,( 43215 4104845

5133680

216439 KKKKuhxfhK ii −+−++=

)2,( 543216 4011

41041859

25653544

278

21 KKKKKuhxfhK ii −+−+−+=

• Formula ‘update’ order-4 :

551

441042197

325651408

121625

1 KKKKuu ii −+++=+

• Formula order-5 :

6552

5509

45643728561

3128256656

113516

1ˆ KKKKKuu ii +−+++=+

• Galat ‘pembabatan’ order-4 :

6552

5501

4752402197

34275128

13601

11ˆ KKKKKuu ii ++−−=− ++

untuk : i = 0, 1, 2,…,N-1 dan 00 yu =

Property of Setijo Bismo Halaman (16)

Page 17: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

Contoh-contoh Integrasi Numerik :

Persamaan Tunggal :

ydtdy 25−=

Solusi Eksak (Analitis) :

tey 25−=

Tabel 2. Hasil perhitungan persamaan tunggal dengan metode

RK order-2.

Hasil Perhitungan Numerik (ui+1) x

Nilai Solusi Eksak

( y ) Contoh 1 (RKSR) Contoh 2 (RKMP) Contoh 3 (RKG)

0.00 1.0000E+00 1.0000E+00 1.0000E+00 1.0000E+00

0.20 6.7379E-03 6.7415E-03 6.7415E-03 6.7379E-03

0.40 4.5400E-05 4.5448E-05 4.5448E-05 4.5400E-05

0.60 3.0590E-07 3.0639E-07 3.0639E-07 3.0590E-07

0.80 2.0612E-09 2.0655E-09 2.0655E-09 2.0612E-09

1.00 1.3888E-11 1.3925E-11 1.3925E-11 1.3888E-11

Property of Setijo Bismo Halaman (17)

Page 18: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

Contoh 1 : {Program Solusi Persamaan Diferensial Biasa dengan Metode RUNGE-KUTA 'Slope Rata-rata'} Type Real = Extended; Real01 = Array [0..1] of Real; Procedure F(x,Y : Real; Var DY : Real); Begin DY := -25*Y; End; Procedure DRK2SR(XV : Real01; YI : Real; Var YF : Real; NP : Integer; Eps : Real); {----------------------------------------------------- PROGRAM : 2-nd ORDER 'MEAN SLOPE' RUNGE-KUTTA METHOD FOR ORDINARY DIFFERENTIAL EQUATION (M.E. Davis, p13) F : Function F(x,y) to be integrated N : Number of differential equations XV : Vector of xv[0]=initial and xv[1]=final YI,YF : Values of Y-initial and Y-final H : Step length -----------------------------------------------------} Var H,X,YP : Real; K1,K2 : Real; Begin H := (xv[1] - xv[0])/NP; X := XV[0]; YF := YI; Repeat YP := YF; F(X,YP,K1); YF := YP + H*K1; F(X+H,YF,K2); YF := YP + H*(K1 + K2)/2; X := X + H; Until (ABS(XV[1]-X) <= EPS); End; Var I,NP : Integer; XV : Real01; Yi,Yf,Eps,h : Real; Begin Eps := 1.0E-6; NP := 200; xv[0] := 0; xv[1] := 0.2; Yi := 1.0; Writeln(xv[0]:0:4,' ',Yi:13,' ',exp(-25*xv[0]):13); For I := 1 to 5 do Begin DRK2SR(xv,Yi,Yf,NP,Eps); Writeln(xv[1]:0:4,' ',Yf:13,' ',exp(-25*xv[1]):13); xv[0] := xv[1]; xv[1] := xv[1] + 0.2; Yi := Yf; End; Readln; End.

Property of Setijo Bismo Halaman (18)

Page 19: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

Property of Setijo Bismo Halaman (19)

Contoh 2 : {Program Solusi Persamaan Diferensial Biasa dengan Metode RUNGE-KUTTA 'Midpoint'} Type Real = Extended; Real01 = Array [0..1] of Real; Real50 = Array [1..50] of Real; Procedure F(x,Y : Real; Var DY : Real); Begin DY := -25*Y; End; Procedure DRK2MP(XV : Real01; YI : Real; Var YF : Real; NP : Integer; Eps : Real); {----------------------------------------------------- PROGRAM : 2-nd ORDER 'MIDPOINT' RUNGE-KUTTA METHOD FOR ORDINARY DIFFERENTIAL EQUATION (M.E. Davis, p13) F : Function F(x,y) to be integrated XV : Vector of xv[0]=initial and xv[1]=final YI,YF : Value of Y-initial and Y-final NP : Number of panels H : Step length -----------------------------------------------------} Var H,X,YP : Real; I : Integer; K1,K2 : Real; Begin H := (xv[1] - xv[0])/NP; X := XV[0]; YF := YI; Repeat YP := YF; F(X,YP,K1); YF := YP + H*K1/2; F(X+H/2,YF,K2); YF := YP + H*K2; X := X + H; Until (ABS(XV[1]-X) <= EPS); End; Var I,NP : Integer; XV : Real01; Yi,Yf : Real; Eps : Real; Begin Eps := 1.0E-6; NP := 200; xv[0] := 0; xv[1] := 0.2; Yi := 1.0; Writeln(xv[0]:0:4,' ',Yi:13,' ',exp(-25*xv[0]):13); For I := 1 to 5 do Begin DRK2MP(xv,Yi,Yf,NP,Eps); Writeln(xv[1]:0:4,' ',Yf:13,' ',exp(-25*xv[1]):13); xv[0] := xv[1]; xv[1] := xv[1] + 0.2; Yi := Yf; End; Readln; End.

Page 20: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

Contoh 3 : {Program Solusi Persamaan Diferensial Biasa dengan Metode RUNGE-KUTA-GILL} Type Real = Extended; Real01 = Array [0..1] of Real; Procedure F(x,Y : Real; Var DY : Real); Begin DY := -25.0*Y; End; Procedure DRKGIL(XV : Real01; YI : Real; Var YF : Real; NP : Integer; Eps : Real); {----------------------------------------------------- PROGRAM : 4-th ORDER RUNGE-KUTTA-GILL METHOD FOR ORDINARY DIFFERENTIAL EQUATION (M.E. Davis, p13) F : Function F(x,y) to be integrated N : Number of differential equations XV : Vector of xv[0]=initial and xv[1]=final YI,YF : Value of Y-initial and Y-final H : Step length -----------------------------------------------------} Var a,b,c,d,H,X,YP : Real; I : Integer; K1,K2,K3,K4 : Real; Begin a := (Sqrt(2)-1)/2; b := (2-Sqrt(2))/2; c := -Sqrt(2)/2; d := 1 + Sqrt(2)/2; H := (xv[1] - xv[0])/NP; X := XV[0]; YF := YI;

Repeat YP := YF; F(X,YP,K1); YF := YP + H*K1/2; F(X+H/2,YF,K2); YF := YP + H*(a*K1+b*K2); F(X+H/2,YF,K3); YF := YP + H*(c*K2+d*K3); F(X+H,YF,K4); X := X + H; YF := YP + H*((K1+K4)/6 + (b*K2+d*K3)/3); Until (ABS(XV[1]-X) <= EPS); End; Var I,NP : Integer; XV : Real01; Yi,Yf : Real; Eps : Real; Begin Eps := 1.0E-6; NP := 200; xv[0] := 0; xv[1] := 0.2; Yi := 1.0; Writeln(xv[0]:0:3,' ',Yi:13,' ',exp(-25*xv[0]):13); For I := 1 to 5 do Begin DRKGIL(xv,Yi,Yf,NP,Eps); Writeln(xv[1]:0:3,' ',Yf:13,' ',exp(-25*xv[1]):13); xv[0] := xv[1]; xv[1] := xv[1] + 0.2; Yi := Yf; End; Readln; End.

Property of Setijo Bismo Halaman (20)

Page 21: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

Persamaan Jamak (Sistem PDB) :

yT,exp,

dxdT

yT,exp,

dxdy

*

*

*

⎥⎦⎤

⎢⎣⎡=

⎥⎦⎤

⎢⎣⎡−=

213069840

21317440

Tabel 3. Hasil perhitungan persamaan jamak dengan metode RK order-2.

Hasil Perhitungan Numerik untuk Sistem PDB : Contoh 4 : RK-Slope rata2 Contoh 5 : RK-Midpoint

x

y T y T

0.000 1.000000 1.000000 1.000000 1.000000

0.100 0.700397 1.119979 0.700430 1.119966

0.200 0.529232 1.188523 0.529259 1.188512

0.300 0.413765 1.234763 0.413787 1.234754

0.400 0.329942 1.268331 0.329959 1.268324

0.500 0.266512 1.293732 0.266525 1.293726

0.600 0.217224 1.313469 0.217235 1.313465

0.700 0.178223 1.329088 0.178232 1.329084

0.800 0.146954 1.341610 0.146961 1.341607

0.900 0.121638 1.351748 0.121644 1.351745

1.000 0.100989 1.360017 0.100993 1.360015

Property of Setijo Bismo Halaman (21)

Page 22: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

Contoh 4 :

{Program Solusi Sistem Persamaan Diferensial Biasa dengan Metode RUNGE-KUTA 'Slope Rata-rata'} Type Real = Extended; Real01 = Array [0..1] of Real; Real50 = Array [1..50] of Real; Procedure F(N : Integer; x : Real; Y : Real50; Var DY : Real50); Begin DY[1] := -0.1744*exp(3.21/Y[2])*Y[1]; DY[2] := 0.06984*exp(3.21/Y[2])*Y[1]; End; {$I DRK2SR} Var I,N,NP : Integer; XV : Real01; Yi,Yf : Real50; Eps : Real; Begin Eps := 1.0E-6; N := 2; NP := 20; xv[0] := 0; xv[1] := 0.1; Yi[1] := 1.0; Yi[2] := 1.0; Writeln(xv[0]:0:3,' ',Yi[1]:0:6,' ',Yi[2]:0:6); For I := 1 to 10 do Begin DRK2SR(N,xv,Yi,Yf,NP,Eps); Writeln(xv[1]:0:3,' ',Yf[1]:0:6,' ',Yf[2]:0:6); xv[0] := xv[1]; xv[1] := xv[1] + 0.1; Yi := Yf; End; Readln; End.

Property of Setijo Bismo Halaman (22)

Page 23: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

Contoh 5 :

{Program Solusi Sistem Persamaan Diferensial Biasa dengan Metode RUNGE-KUTTA 'Midpoint'} Type Real = Extended; Real01 = Array [0..1] of Real; Real50 = Array [1..50] of Real; Procedure F(N : Integer; x : Real; Y : Real50; Var DY : Real50); Begin DY[1] := -0.1744*exp(3.21/Y[2])*Y[1]; DY[2] := 0.06984*exp(3.21/Y[2])*Y[1]; End; {$I DRK2MP} Var I,N,NP : Integer; XV : Real01; Yi,Yf : Real50; Eps : Real; Begin Eps := 1.0E-6; N := 2; NP := 20; xv[0] := 0; xv[1] := 0.1; Yi[1] := 1.0; Yi[2] := 1.0; Writeln(xv[0]:0:3,' ',Yi[1]:0:6,' ',Yi[2]:0:6); For I := 1 to 10 do Begin DRK2MP(N,xv,Yi,Yf,NP,Eps); Writeln(xv[1]:0:3,' ',Yf[1]:0:6,' ',Yf[2]:0:6); xv[0] := xv[1]; xv[1] := xv[1] + 0.1; Yi := Yf; End; Readln; End.

Property of Setijo Bismo Halaman (23)

Page 24: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

Tabel 4. Perbandingan hasil perhitungan sistem PDB jamak antara metode-metode order-4 : RK-Gill dan RK-Merson.

Hasil Perhitungan Numerik untuk Sistem PDB : Contoh 6 : RK-Gill Contoh 7 : RK-Merson

x y T y T

0.000 1.000000 1.000000 1.000000 1.000000

0.100 0.700372 1.119989 0.700372 1.119989

0.200 0.529209 1.188532 0.529209 1.188532

0.300 0.413745 1.234771 0.413746 1.234771

0.400 0.329925 1.268337 0.329925 1.268337

0.500 0.266497 1.293738 0.266497 1.293738

0.600 0.217212 1.313474 0.217212 1.313474

0.700 0.178213 1.329092 0.178213 1.329092

0.800 0.146945 1.341613 0.146945 1.341613

0.900 0.121631 1.351751 0.121631 1.351751

1.000 0.100982 1.360020 0.100982 1.360020

Property of Setijo Bismo Halaman (24)

Page 25: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

Contoh 6 :

{Program Solusi Sistem Persamaan Diferensial Biasa dengan Metode RUNGE-KUTA-GILL} Type Real = Extended; Real01 = Array [0..1] of Real; Real50 = Array [1..50] of Real; Procedure F(N : Integer; x : Real; Y : Real50; Var DY : Real50); Begin DY[1] := -0.1744*exp(3.21/Y[2])*Y[1]; DY[2] := 0.06984*exp(3.21/Y[2])*Y[1]; End; {$I DRKGIL} Var I,N,NP : Integer; XV : Real01; Yi,Yf : Real50; Eps : Real; Begin Eps := 1.0E-6; N := 2; NP := 10; xv[0] := 0; xv[1] := 0.1; Yi[1] := 1.0; Yi[2] := 1.0; Writeln(xv[0]:0:3,' ',Yi[1]:0:6,' ',Yi[2]:0:6); For I := 1 to 10 do Begin DRKGIL(N,xv,Yi,Yf,NP,Eps); Writeln(xv[1]:0:3,' ',Yf[1]:0:6,' ',Yf[2]:0:6); xv[0] := xv[1]; xv[1] := xv[1] + 0.1; Yi := Yf; End; Readln; End.

Property of Setijo Bismo Halaman (25)

Page 26: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

Contoh 7 :

{Program Solusi Sistem Persamaan Diferensial Biasa dengan Metode RUNGE-KUTA-MERSON} Type Real = Extended; Real01 = Array [0..1] of Real; Real02 = Array [0..2] of Real; Real50 = Array [1..50] of Real; Procedure F(N : Integer; x : Real; Y : Real50; Var DY : Real50); Begin DY[1] := -0.1744*exp(3.21/Y[2])*Y[1]; DY[2] := 0.06984*exp(3.21/Y[2])*Y[1]; End; {$I DRKMER} Var I,MSG,N,NP : Integer; xv : Real01; s : Real02; Yi,Yf : Real50; Eps : Real; Begin Eps := 1.0E-4; N := 2; NP := 100; xv[0] := 0; xv[1] := 0.1; s[0] := (xv[1] - xv[0])/NP; s[1] := s[0]/64; Yi[1] := 1.0; Yi[2] := 1.0; Writeln(xv[0]:0:3,' ',Yi[1]:0:6,' ',Yi[2]:0:6); For I := 1 to 10 do Begin DRKMER(N,xv,Yi,Yf,s,Eps,MSG); Writeln(xv[1]:0:3,' ',Yf[1]:0:6,' ',Yf[2]:0:6,' ',MSG); xv[0] := xv[1]; xv[1] := xv[1] + 0.1; Yi := Yf; End; Readln; End.

Property of Setijo Bismo Halaman (26)

Page 27: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

Tabel 5. Perbandingan hasil perhitungan sistem PDB jamak antara metode-metode order-4 : RK-Gill dan RK-Fehlberg.

Hasil Perhitungan Numerik untuk Sistem PDB : Contoh 6 : RK-Gill Contoh 8 : RK-Fehlberg

x y T y T

0.000 1.000000 1.000000 1.000000 1.000000

0.100 0.700372 1.119989 0.700372 1.119989

0.200 0.529209 1.188532 0.529209 1.188532

0.300 0.413745 1.234771 0.413745 1.234771

0.400 0.329925 1.268337 0.329925 1.268337

0.500 0.266497 1.293738 0.266497 1.293738

0.600 0.217212 1.313474 0.217212 1.313474

0.700 0.178213 1.329092 0.178213 1.329092

0.800 0.146945 1.341613 0.146945 1.341613

0.900 0.121631 1.351751 0.121631 1.351751

1.000 0.100982 1.360020 0.100982 1.360020

Property of Setijo Bismo Halaman (27)

Page 28: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

Contoh 8 : {Program Solusi Sistem Persamaan Diferensial Biasa dengan Metode RUNGE-KUTA-FEHLBERG} Type Real = Extended; Real01 = Array [0..1] of Real; Real02 = Array [0..2] of Real; Real50 = Array [1..50] of Real; Procedure F(N : Integer; x : Real; Y : Real50; Var DY : Real50); Begin DY[1] := -0.1744*exp(3.21/Y[2])*Y[1]; DY[2] := 0.06984*exp(3.21/Y[2])*Y[1]; End; {$I DRKF45} Var I,MSG,N,NP : Integer; xv : Real01; s : Real02; Yi,Yf : Real50; Eps : Real; Begin Eps := 1.0E-5; N := 2; NP := 100; xv[0] := 0; xv[1] := 0.1; s[0] := (xv[1] - xv[0])/NP; s[1] := s[0]/64; Yi[1] := 1.0; Yi[2] := 1.0; Writeln(xv[0]:0:3,' ',Yi[1]:0:6,' ',Yi[2]:0:6); For I := 1 to 10 do Begin DRKF45(N,xv,Yi,Yf,s,Eps,MSG); Writeln(xv[1]:0:3,' ',Yf[1]:0:6,' ',Yf[2]:0:6); xv[0] := xv[1]; xv[1] := xv[1] + 0.1; Yi := Yf; End; Readln; End.

Property of Setijo Bismo Halaman (28)

Page 29: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

Solusi PDB Order-2 menggunakan Metode RKG dan

RKM dengan ‘Teknik Shooting’ :

Persamaan Diferensial Biasa Order-2 non-linier berikut :

0(1)dan01)(

11 22

2

==−

+−−=

yy

y)x(dx

yd

PDB di atas memiliki informasi tentang harga-harga fungsi pada 1−=x dan 1=x , akan tetapi tidak memiliki informasi yang memadai tentang harga-harga awalnya untuk turunan pertama dan kedua (karena merupakan PDB order-2).

Salah satu solusi yang mungkin dilakukan adalah dengan metode ‘trial and error’, sehingga PDB order-2 di atas dapat diubah menjadi Sistem PDB berikut :

⎪⎩

⎪⎨

=−

=−

⎪⎪⎩

⎪⎪⎨

+−−=

=

input1)(

01)(

11 2

1

122

21

y

y

y)x(dxdy

ydxdy

Strategi solusi PDB yang mungkin dilakukan dapat dijelaskan sebagai berikut :

• Karena PDB tunggal di atas berbentuk order-2, maka dimisalkan suatu sistem PDB baru dengan 2 (dua) buah variabel terikat, yaitu dalam 1y dan 2y ,

Property of Setijo Bismo Halaman (29)

Page 30: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

• Harga awal (kondisi awal) dari 1y diketahui, namun untuk 2y tidak sehingga dalam hal ini perlu diberikan dengan cara ‘trial and error’

• Integrasi PDB dapat dilakukan untuk informasi yang diketahui, dalam hal ini antara 1−=x sampai 1=x .

Tabel 6. Perbandingan hasil perhitungan sistem PDB order-2 dengan ‘teknik shooting’ antara metode RK-Gill dan RK-Merson.

Contoh 9 : Metode RKG Contoh 10 : Metode RKM x y1 y2 y1 y2

-1.00 0.000000 1.736465 0.000000 1.736465 -0.90 0.168104 1.620549 0.168104 1.620549 -0.80 0.323231 1.478228 0.323231 1.478228 -0.70 0.463112 1.316726 0.463112 1.316726 -0.60 0.586136 1.141981 0.586136 1.141981 -0.50 0.691223 0.958637 0.691223 0.958637 -0.40 0.777693 0.770133 0.777693 0.770133 -0.30 0.845157 0.578843 0.845157 0.578843 -0.20 0.893419 0.386258 0.893419 0.386258 -0.10 0.922394 0.193192 0.922394 0.193192 0.00 0.932054 -0.000000 0.932054 -0.000000 0.10 0.922394 -0.193192 0.922394 -0.193192 0.20 0.893419 -0.386259 0.893419 -0.386259 0.30 0.845157 -0.578843 0.845157 -0.578843 0.40 0.777693 -0.770133 0.777693 -0.770133 0.50 0.691223 -0.958637 0.691223 -0.958637 0.60 0.586136 -1.141981 0.586136 -1.141981 0.70 0.463112 -1.316727 0.463112 -1.316727 0.80 0.323231 -1.478228 0.323231 -1.478228 0.90 0.168104 -1.620549 0.168104 -1.620549 1.00 -0.000000 -1.736465 -0.000000 -1.736465

Property of Setijo Bismo Halaman (30)

Page 31: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

Property of Setijo Bismo Halaman (31)

Page 32: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

Contoh 9 : {Program Solusi Sistem PDB 'turunan kedua' (order 2) dengan 'Shooting' menggunakan Metode RUNGE-KUTA-GILL PDB order 2 : d2Y/dx2 = -1 - (x^2 + 1)*Y x(-1) = 0 dan x(1) = 0} Type Real = Extended; Real01 = Array [0..1] of Real; Real50 = Array [1..50] of Real; Procedure F(N : Integer; x : Real; Y : Real50; Var DY : Real50); Begin DY[1] := Y[2]; DY[2] := -1 - (Sqr(x) + 1)*Y[1]; End; {$I DRKGIL} Var I,N,NP : Integer; XV : Real01; Yi,Yf : Real50; Eps : Real; Begin Eps := 1.0E-6; N := 2; NP := 10; xv[0] := -1; xv[1] := -0.9; Yi[1] := 0.0; Yi[2] := 1.736465; Writeln(xv[0]:0:3,' ',Yi[1]:0:6,' ',Yi[2]:0:6); For I := 1 to 20 do Begin DRKGIL(N,xv,Yi,Yf,NP,Eps); Writeln(xv[1]:0:3,' ',Yf[1]:0:6,' ',Yf[2]:0:6); xv[0] := xv[1]; xv[1] := xv[1] + 0.1; Yi := Yf; End; Readln; End.

Property of Setijo Bismo Halaman (32)

Page 33: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

Contoh 10 :

{Program Solusi Sistem PDB 'turunan kedua' (order 2) dengan 'Shooting' menggunakan Metode RUNGE-KUTA-MERSON PDB order 2 : d2Y/dx2 = -1 - (x^2 + 1)*Y x(-1) = 0 x(1) = 0} Type Real = Extended; Real01 = Array [0..1] of Real; Real02 = Array [0..2] of Real; Real50 = Array [1..50] of Real; Procedure F(N : Integer; x : Real; Y : Real50; Var DY : Real50); Begin DY[1] := Y[2]; DY[2] := -1 - (Sqr(x) + 1)*Y[1]; End; {$I DRKMER} Var I,MSG,N,NP : Integer; xv : Real01; s : Real02; Yi,Yf : Real50; Eps : Real; Begin Eps := 1.0E-4; N := 2; NP := 10; xv[0] := -1.0; xv[1] := -0.9; s[0] := (xv[1] - xv[0])/NP; s[1] := s[0]/64; Yi[1] := 0.0; Yi[2] := 1.736465; Writeln(xv[0]:0:3,' ',Yi[1]:0:6,' ',Yi[2]:0:6); For I := 1 to 20 do Begin DRKMER(N,xv,Yi,Yf,s,Eps,MSG); Writeln(xv[1]:0:3,' ',Yf[1]:0:6,' ',Yf[2]:0:6); xv[0] := xv[1]; xv[1] := xv[1] + 0.1; Yi := Yf; End; Readln; End.

Property of Setijo Bismo Halaman (33)

Page 34: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

Aplikasi Solusi PDB tunggal Order-2 dengan ‘Teknik

Substitusi Variabel’ (Rice & Duong Do, hal. 229-230) menggunakan Metode Runge-Kutta-Gill :

Persamaan Diferensial Biasa Order-2 non-linier berikut :

1(0)0)0(

)()(=′=

+−=′+′′

y;y

xcosxsinyy

Harga-harga (kondisi) awal dari PDB tunggal di atas dapat memadai, jika persamaan tersebut dikonversikan menjadi formula baku permisalan Sistem PDB berikut (untuk order-2) :

⎪⎪⎪

⎪⎪⎪

=

=

=

⎪⎪

⎪⎪

=

=

=⇒=

⎪⎪⎪

⎪⎪⎪

+−=

=

=

1(0)

0(0)

0(0)1

)()(

1

3

2

1

23

2

11

3113

32

1

y

y

y

dxdyy

yydxdyxy

y-ycosysindxdy

ydxdydxdy

Langkah-langkah permisalan di atas dapat dilakukan berdasarkan algoritma berikut :

• Permisalan dimulai pada ‘variabel bebas’ x , untuk 1y sehingga diketahui harga turunannya (lihat kolom tengah),

• Permisalan kedua adalah untuk ‘variabel terikat’ y , untuk 2y ,

• Permisalan ketiga (yang terakhir) adalah untuk ‘turunan variabel terikat’ ( dxdydxdy 2= ) sebagai 3y ,

• Sistem PDB baru yang diperoleh adalah dengan cara menyusun turunan-turunan dari variabel-variabel permisalan di atas ( 1y dan 2y ) yang digabungkan dengan penyusunan ulang PDB tunggal di atas untuk

dxdy3 (lihat kolom kiri)

Property of Setijo Bismo Halaman (34)

Page 35: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

• Harga-harga atau kondisi awal dari sistem PDB di atas berturut-turut

merupakan harga-harga pada 0=x (dalam hal ini (0)1y ), variabel terikat pada saat 0=x (dalam hal ini (0)2y ), dan turunan pertama variabel terikat pada saat 0=x (dalam hal ini (0)3y ).

• Solusi yang diinginkan adalah harga-harga 2y sebagai fungsi x .

Perbandingan harga-harga solusi numerik dengan metode RKG dari PDB di atas ( 2y ) dengan solusi eksak disajikan pada tabel di bawah ini :

Tabel 7. Perbandingan solusi numerik sistem PDB order-2 dengan metode RK-Gill dengan solusi analitis.

Metode Runge-Kuta-Gill (Contoh 11) : Solusi Eksakx

y1 y2 y3 y 0.000 0.000000 0.000000 1.000000 0.000000 0.157 0.157080 0.156434 0.987688 0.156434 0.314 0.314159 0.309017 0.951057 0.309017 0.471 0.471239 0.453990 0.891007 0.453990 0.628 0.628319 0.587785 0.809017 0.587785 0.785 0.785398 0.707107 0.707107 0.707107 0.942 0.942478 0.809017 0.587785 0.809017 1.100 1.099557 0.891007 0.453990 0.891007 1.257 1.256637 0.951057 0.309017 0.951057 1.414 1.413717 0.987688 0.156434 0.987688 1.571 1.570796 1.000000 -0.000000 1.000000 1.728 1.727876 0.987688 -0.156434 0.987688 1.885 1.884956 0.951057 -0.309017 0.951057 2.042 2.042035 0.891007 -0.453990 0.891007 2.199 2.199115 0.809017 -0.587785 0.809017 2.356 2.356194 0.707107 -0.707107 0.707107 2.513 2.513274 0.587785 -0.809017 0.587785 2.670 2.670354 0.453990 -0.891007 0.453990 2.827 2.827433 0.309017 -0.951057 0.309017 2.985 2.984513 0.156434 -0.987688 0.156434 3.142 3.141593 -0.000000 -1.000000 0.000000

Property of Setijo Bismo Halaman (35)

Page 36: matematika teknik

Seri Mata Kuliah : PEMODELAN dan MATEMATIKA TERAPAN

Property of Setijo Bismo Halaman (36)

Contoh 11 :

{Program Solusi Sistem PDB 'turunan kedua' (order 2) dengan 'konversi' atau 'substitusi variabel' menggunakan Metode RUNGE-KUTA-GILL PDB order 2 : y" + y' = - sin(x) + cos(x) y1(0) = 0 y2(0) = 0 dan y3(0) = 1} Type Real = Extended; Real01 = Array [0..1] of Real; Real50 = Array [1..50] of Real; Procedure F(N : Integer; x : Real; Y : Real50; Var DY : Real50); Begin DY[1] := 1; DY[2] := Y[3]; DY[3] := -Sin(Y[1]) + Cos(Y[1]) - Y[3]; End; {$I DRKGIL} Var I,N,NP : Integer; XV : Real01; Yi,Yf : Real50; Eps,Pi : Real; Begin Pi := 4*ArcTan(1); Eps := 1.0E-6; N := 3; NP := 20; xv[0] := 0; xv[1] := Pi/20; Yi[1] := 0.0; Yi[2] := 0.0; Yi[3] := 1.0; Writeln(xv[0]:0:3,' ',Yi[1]:0:6,' ',Yi[2]:0:6, ' ',Yi[3]:0:6,' ',Sin(xv[0]):0:6); For I := 1 to 20 do Begin DRKGIL(N,xv,Yi,Yf,NP,Eps); Writeln(xv[1]:0:3,' ',Yf[1]:0:6,' ',Yf[2]:0:6, ' ',Yf[3]:0:6,' ',Sin(xv[1]):0:6); xv[0] := xv[1]; xv[1] := xv[1] + Pi/20; Yi := Yf; End; Readln; End.