• Tidak ada hasil yang ditemukan

BAB 3 PERANCANGAN PROGRAM APLIKASI. Perancangan program aplikasi ini terbagi menjadi beberapa bagian yaitu :

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 3 PERANCANGAN PROGRAM APLIKASI. Perancangan program aplikasi ini terbagi menjadi beberapa bagian yaitu :"

Copied!
15
0
0

Teks penuh

(1)

29

BAB 3

PERANCANGAN PROGRAM APLIKASI

3.1 Spesifikasi Rumusan Rancangan

Perancangan program aplikasi ini terbagi menjadi beberapa bagian yaitu : a. Proses input persamaan

Input persamaan Sistem Sturm-Liouville oleh user dilakukan dengan menginput persamaan p(x), q(x) dan r(x), serta persamaan syarat batasnya. Bentuk persamaan yang diinput adalah dalam bentuk persamaan polinomial dengan orde maksimal dua. User juga harus menginput batas bawah dan batas atas, dan jika batas bawah lebih besar nilainya dari batas atas maka pada saat tombol OK diklik, maka program aplikasi ini akan me-reset kembali semua input dan user harus menginput ulang dari awal. Hal ini juga berlaku jika ada satu bagian saja yang tidak diinput oleh user. Proses pemeriksaan benar tidaknya inputan oleh user hanya akan diketahui setelah tombol OK diklik.

b. Proses mencari variabel yang memenuhi persamaan fungsi eigen dari persamaan nilai eigen

Dari proses input persamaan Sistem Sturm-Liouville, akan diperoleh bentuk persamaan nilai eigennya. Nilai eigen dicari dengan menghitung

persamaan

= b a 2 b a b a 2 dx r(x)y(x) dx q(x)y(x) (x)dx p(x)y'

(2)

30 bawah, batas atas persamaan p(x), q(x) dan r(x) atau dengan kata lain, nilai eigen tidak dapat dihitung jika user salah dalam memberikan inputan. Nantinya persamaan nilai eigen ini akan menjadi persamaan dengan satu peubah saja, yakni salah satu dari peubah pada persamaan asumsi, misalnya peubah A1. Nilai eigen akan, mencapai minimum pada saat

1 A

λ

pada persamaan nilai eigen dengan peubah A1 bernilai nol. Jika nilai eigen bernilai mininum pada A1 maka nilai peubah A1 akan digunakan untuk mencari nilai peubah-peubah lain pada persamaan asumsi.

Pada listing program, pencarian nilai eigen dibagi ke dalam beberapa langkah atau tahap sebagai berikut.

1.Untuk input dengan nilai a2, b2 = 0.

Buat fungsi

y1(x) = y(a + x(b – a))

= A0 + A1(a + x(b – a)) + A2(a + x(b – a))2 +A3(a + x(b – a))3 = B0 + B1x + B2x2 + B3x3

dengan

B0 = A0 + A1a + A2a2 + A3a3,

B1 = A1(b – a) + A2(2a(b – a)) + A3(3a2(b – a)), B2 = A2(b – a)2 + A3(3a(b – a)2),

B3 = A3(b – a)3

Maka syarat batas a1y(a) = 0 dan a2y(b) = 0 menjadi y1(a) = 0 dan y1(b) = 0. Dari syarat batas di atas maka B0 = 0, B3 = – (B1 + B2) shg y1 = B1(x – x3) +

(3)

31 B2(x2 – x3),

′ − = b a b a b a dx ry dx qy dx y p 2 1 2 1 2 1

λ f=…(hitung secara analitik) =

2 2 2 1 2 1 2 2 2 1 2 1 22 12 11 22 12 11 B y B B y B y B x B B x B x + + + +

(x11, x12, x22, y11, y12, y22 sama seperti pada program, detail ada pada worksheet Maple terlampir Æ kalikan kedua ruas pembilang dan penyebut

dengan 2520 agar angka-angka koefisiennya bulat semua dan mudah diimplementasikan, koefisien-koefisien sebelum dan sesudah kedua ruas dikalikan 2520 ada pada worksheet terlampir)

Dengan membagi pembilang dan penyebut dengan B22 dan substitusi

2 1 B B B= , didapat 22 12 11 22 12 11 2 2 y B y B y x B x B x + + + + = λ .

λ mencapai minimum pada saat dλ/dB = 0 Æ d((2x11B + x12)(y11B2 + y12B + y22) – (2y11B + y12)(x11B2 + x12B + x22))/dB = 0 Æ (x11y12 – x12y11)B2 + (2x11y22 – 2x22y11)B + (x12y22 – x22y12) = 0 ...(1)

Nilai B yang dipakai adalah akar terbesar dari persamaan (1) di atas.

(Implementasi pada program: zaB2 + zbB + zc = 0 Æ za = x11y12 – x12y11, zb = 2x11y22 – 2x22y11, zc = x12y22 – x22y12)

(4)

32 Dengan memasukkan 2 1 B B B= ke persamaan y1, Maka y1 = B1(x – x3) + B2(x2 – x3) = B2(B(x – x3) + (x2 – x3)) = B2(Bx + x2 – (B + 1)x3)

Persamaan y bisa didapatkan dengan substitusi x dari persamaan di atas dengan

(

b a

)

y

(

a x a

) ( )

y x a b a x a b a y a b a x a b y a b a x a b ⎟⎟= + − = ⎞ ⎜⎜ ⎝ ⎛ ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ − − − + = ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ − − − → − − − 1 1 1 1

(

)

⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ − − − + − ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ − − − + ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ − − − = 3 2 2 1 1 1 1 a b a x a b B a b a x a b a b a x a b B B y ( ) ( ) ( ) ( ( ) ) ( ) ( ( ) ) ( ) (( )) ⎟⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ − + + − + − − + ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ − + − − − − + ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ − + + − + − + − = 2 2 2 3 2 2 3 3 3 2 3 3 2 1 1 3 2 1 3 1 1 a b B a a b a a b aB x a b B a a b a a b B x a b B a a b x a b B B

2. Untuk input dengan nilai a2, b2≠ 0.

Pertama² hitung

′ − = b a b a b a dx ry dx qy dx y p 2 2 2

λ = … (hitung secara analitik)

Maka akan didapatkan bentuk

2 3 33 3 2 23 2 2 22 3 1 13 2 1 12 2 1 11 3 0 03 2 0 02 1 0 01 2 0 00 2 3 33 3 2 23 2 2 22 3 1 13 2 1 12 2 1 11 3 0 03 2 0 02 1 0 01 2 0 00 A y A A y A y A A y A A y A y A A y A A y A A y A y A x A A x A x A A x A A x A x A A x A A x A A x A x + + + + + + + + + + + + + + + + + + = λ

(5)

33 (x00…x33 dan y00…y33 sama seperti pada program, detail ada pada worksheet Maple terlampir)

Dalam worksheet Maple p(x) = p2x2 + p1x + p0, q(x) = q2x2 + q1x + q0, r(x) = r2x2 + r1x + r0

a1y(a) + a2y’(a) = a3Æ a1A0 + (a1a + a2)A1 + (a1a2 + 2a2a)A2 + (a1a3 + 3a2a2)A3 = 0 b1y(b) + b2y’(b) = b3Æ b1A0 + (b1b + b2)A1 + (b1b2 + 2b2b)A2 + (b1b3 + 3b2b2)A3 = 0 Dengan men-set nilai A2 = 1 didapatkan

a1A0 + (a1a + a2)A1 + (a1a3 + 3a2a2)A3 = – (a1a2 + 2a2a) ...(1) b1A0 + (b1b + b2)A1 + (b1b3 + 3b2b2)A3 = – (b1b2 + 2b2b) ...(2)

(Implementasi pada program: x0A0 + x1A1 + x3A3 = –x2, y0A0 + y1A1 + y3A3 = –y2 sehingga x0 mewakili a1, x1 mewakili a1a + a2, x2 mewakili a1a2 + 2a2a, x3 mewakili a1a3 + 3a2a2, y0 mewakili b1, y1 mewakili b1a + b2, y2 mewakili b1b2 + 2b2b, y3 mewakili b1b3 + 3b2b2)

Dengan cara memanipulasi (1) dan (2) diperoleh A0 = ß – αA1, A3= δγA1, A1 = A1 ...(3) di mana δ β γ α δ γ 0 3 0 2 , 0 3 0 1 , 0 3 0 2 , 0 3 0 1 0 3 0 2 0 3 0 1 x x x x x x x x y y y y y y y y x x x x x x xx = = − + − = − − = (Pada program: aa = α, bb = ß, cc = γ, dd = δ)

Mensubstitusikan (3) ke dalam persamaan λ menghasilkan

10 11 12 00 01 02 1 2 1 1 2 1 z A z A z z A z A z + + + + = λ ...(4) dengan

(6)

34 2 2 2 2 2 2 2 2 33 13 11 03 01 00 12 33 2 23 13 12 03 03 02 01 00 2 11 33 23 22 03 02 00 10 33 13 11 03 01 00 02 33 2 23 13 12 03 03 02 01 00 2 01 33 23 22 03 02 00 00 γ γ αγ α α γδ γ δ αδ βγ α β αβ δ δ βδ β β γ γ αγ α α γδ γ δ αδ βγ α β αβ δ δ βδ β β y y y y y y z y y y y y y y y y z y y y y y y z x x x x x x z x x x x x x x x x z x x x x x x z + − + + − = − − + + − − − + − = + + + + + = + − + + − = − − + + − − − + − = + + + + + =

λ mencapai nilai minimumnya pada saat 1 dA dλ pada (4) bernilai 0

(

)

(

)

(

)

(

)

(

)

(

)

(

)

(

)

program) (pada 0 ...(5) 0 00 11 10 01 12 00 2 10 02 2 12 01 11 02 0 10 11 12 00 01 02 11 12 2 10 11 12 01 02 2 1 2 1 1 2 1 2 1 2 1 1 2 1 1 1 2 1 1 = + + ↔ = − + − + − ↔ = + + + + + − + + + ↔ zc zbA zaA z z z z A z z z z A z z z z z A z A z z A z A z z A z z A z A z z A z

dimana za mewakili z02z11 – z01z12, zb mewakili 2z02z10 – 2z00z12, zc mewakili z01z10 – z11z00

Nilai A1 dapat dicari dengan menyelesaikan solusi persamaan (5) di atas, setelah itu nilai A0 dan A3 dapat ditentukan dengan menggunakan (3). (Fungsi yang didapatkan dari metode ini memiliki nilai A2 yang diset = 1).

Untuk sistem dengan nilai fungsi r(x) = 0, digunakan cara sbb: =

′ −

b a b a dx qy dx y p 2 2 λ 2 3 33 3 2 23 2 2 22 3 1 13 2 1 12 2 1 11 3 0 03 2 0 02 1 0 01 2 0 00A x A A x A A x A A x A x AA x AA x A x A A x A x + + + + + + + + + =

a1y(a) + a2y’(a) = a3Æ a1A0 + (a1a + a2)A1 + (a1a2 + 2a2a)A2 + (a1a3 + 3a2a2)A3 = a3 b1y(b) + b2y’(b) = b3Æ b1A0 + (b1b + b2)A1 + (b1b2 + 2b2b)A2 + (b1b3 + 3b2b2)A3 = b3 Dengan menset nilai A2 = 1 didapatkan

(7)

35 b1A0 + (b1b + b2)A1 + (b1b3 + 3b2b2)A3 = b3 – (b1b2 + 2b2b) ...(7)

(Implementasi pada program: x0A0 + x1A1 + x3A3 = –x2, y0A0 + y1A1 + y3A3 = –y2) Dengan cara memanipulasi (6) dan (7) diperoleh

A0 = ß – αA1, A3= δγA1, A1 = A1 ...(8) di mana δ β γ α δ γ 0 3 0 2 , 0 3 0 1 , 0 3 0 2 , 0 3 0 1 0 3 0 2 0 3 0 1 x x x x x x x x y y y y y y y y x x x x x x xx = = − + − = − − =

(Implementasi pada program: aa = α, bb = ß, cc = γ, dd = δ) Mensubstitusikan (8) kedalam persamaan λ menghasilkan

00 01 02A12 z A1 z z + + = λ ...(9) dengan 2 2 2 2 33 13 11 03 01 00 02 33 2 23 13 12 03 03 02 01 00 2 01 33 23 22 03 02 00 00 γ γ αγ α α γδ γ δ αδ βγ α β αβ δ δ βδ β β x x x x x x z x x x x x x x x x z x x x x x x z + − + + − = − − + + − − − + − = + + + + + =

λ mencapai nilai minimumnya pada saat 1 dA dλ pada (9) bernilai 0 02 2 01 , 0 01 02 2 1 1 z z A z A z + = = − → …(10)

Nilai A0 dan A3 dapat dicari dengan memasukkan nilai A1 pada (10) ke dalam (8). (Dalam hal ini nilai A2 diasumsikan = 1).

c. Proses mencari fungsi eigen

Setelah semua nilai peubah pada persamaan asumsi diketahui yakni dengan mengeliminasi beberapa persamaan, maka fungsi eigen aproksimasi dapat diperoleh.

(8)

36 Fungsi eigen aproksimasi diperoleh dengan memasukkan nilai peubah-peubah yang memenuhi persamaan nilai eigen pada persamaan asumsi fungsi eigen sebelumnya. Karena nilai eigen yang dicari adalah nilai eigen yang minimum, maka fungsi eigen aproksimasi yang diari juga merupakan fungsi minimum.

3.2 Perancangan Modul ( Fungsi )

Program aplikasi ini hanya memiliki satu modul, yakni modul utama atau modul tunggal yang mencakup proses input, pencarian nilai eigen dan pencarian fungsi eigen.

Pada bagian input persamaan Sistem Sturm-Liouville terbagi atas tiga bagian (tiga buah fungsi) yakni fungsi input persamaan polinomial p(x), fungsi input persamaan polinomial q(x) dan fungsi input persamaan polinomial r(x) dengan orde maksimalnya adalah dua.

User juga harus menginput nilai batas bawah dan batas atas serta koefisien persamaan syarat batas, yakni persamaan syarat batas untuk batas bawah dan persamaan syarat batas untuk batas atas. Inputnya berupa nilai koefisien untuk fungsi y dan turunan fungsi y pada nilai batas bawah serta nilai koefisien untuk fungsi y dan turunan fungsi y pada nilai batas atas. Input

syarat batas ini mempunyai validasi tersendiri di mana khusus koefisien y(a) harus bernilai satu.

(9)

37 Persamaan nilai eigen diperoleh setelah user menginput persamaan p(x), q(x) dan r(x) dengan benar. Akan diasumsikan persamaan fungsi eigen yang

akan dicari dalam bentuk 3

3 2 2 1 0 Ax A x A x A

y= + + + , di mana nilai A2 adalah tetap, yakni satu. Lalu akan diperoleh persamaan nilai eigen dalamA , 0 A1, A 3 atau hanya dalam dua di antaranya. Lalu persamaan nilai eigen ini akan diubah lagi melalui permisalan sehingga persamaannya hanya dalam peubah sejenis, dalam hal iniA1. Nilai peubah persamaan nilai eigen yang baru akan menentukan nilai eigen, yakni jika

1 A

λ

bernilai nol atau λ bernilai minimum. Nilai peubah yang ini akan kembali dimasukkan atau dieliminasi dalam persamaan peubah A , 0 A1, A sehingga masing-masing peubah akan diperoleh 3 nilainya untuk mencari fungsi eigen aproksimasi dengan memasukkan ke dalam persamaan.

3.2 Form

Program aplikasi ini hanya memiliki satu buah form, yang di dalamnya sudah terdapat bagian input persamaan Sistem Sturm-Liouville yakni fungsi p(x), q(x) dan r(x) dalam bentuk persamaan polinomial atau hanya berupa koefisien, input batas bawah dan batas atas, serta input koefisien persamaan syarat batasnya. Dalam form terdapat tiga buah tombol, yaitu tombol ”OK”, tombol ”Kembali ke awal” dan tombol ”Selesai”. Jika tombol ”OK” diklik, maka program aplikasi ini akan menampilkan persamaan fungsi eigen yang dicari. Untuk keluar dari program ini maka tombol ”Selesai” yang diklik. Tombol ”Kembali ke awal” digunakan untuk

(10)

38 me-reset semua input dan melakukan perhitungan ulang. Berikut ini adalah rancangan layar dari form 1. Rancangan layar ini adalah rancangan layar sebelum diinput atau tampilan awal dan rancangan layar pada saat fungsi eigennya ditampilkan atau layar output.

Gambar 3.3 Rancangan layar input form 1.

3.3 Cara Kerja Program

Pada sub bab ini akan digambarkan secara lebih rinci lagi tentang diagram alir (flowchart) dan gambaran proses kerja yang terjadi yang akan ditampilkan dalam bentuk STD mengenai proses-proses yang terjadi pada setiap modul.

3.4.1 Perancangan Diagram Alir (flowchart)

Diagram alir merupakan alat pantau pemrograman yang biasanya digunakan. Diagram alir (flowchart) membantu programmer dalam

(11)

39 mengorganisasikan pemikiran mereka dalam pemrograman, terutama bila dibutuhkan penalaran tajam dalam logika prosedur suatu program.

(12)

40 Tidak Valid Valid Ya Tidak

Gambar 3.4.1.1 Flowchart perancangan form pada Sistem Sturm-Liouville Mulai

Proses Input Persamaan

Proses Pilih Variabel yang memenuhi persamaan fungsi

eigen dari persamaan nilai eigen

Proses Hitung Fungsi Eigen

Kembali

(13)

41 Ya tidak ya tidak

Gambar 3.4.1.2 Flowchart pencarian variabel fungsi eigen dari persamaan nilai eigen Mulai

a2.b2=0 Cari koefisien nilai eigen bagian pembilang & penyebut

Cari koefisien persamaan turunan pertamanya

Cari akar-akar persamaan nilai eigen

Pilih nilai variabel yang terbesar lalu masukkan ke persamaan asumsi koefisien fungsi eigen Cari koefisien nilai eigen

bagian pembilang

r = 0 Cari koefisien persamaan syarat batas atas dan bawah

Eliminasi kedua persamaaan syarat batas untuk mendapatkan persamaaan nilai eigen baru

Turunkan persamaan nilai eigen yang baru dan dapatkan nilai akarnya

Nilai akar dimasukkan ke dalam persamaan asumsi fungsi eigen

Cari koefisien persamaan nilai eigen bagian penyebut

Cari koefisien

persamaan syarat batas atas dan bawah

Cari koefisien persamaan nilai eigen yang baru

Turunkan persamaan nilai eigen

Cari akar-akar nilai eigen dari persamaan turunan pertamanya

Tentukan variabel yang

(14)

42

3.4.2 Perancangan Diagram Transisi (State Transition Diagram)

Diagram transisi memberikan keterangan kepada sistem tentang apa yang harus dikerjakan (action) dan kondisi (state) tertentu. Kondisi adalah suatu event pada external environment yang dapat dideteksi oleh sistem misalnya sinyal, interrupt atau data. Hal ini akan menyebabkan perubahan terhadap state dari aktivitas x ke aktivitas y. Action adalah hal yang akan dilakukan oleh sistem bila terjadi perubahan state atau data. Action akan menghasilkan output, message display pada layar, menghasilkan kalkulasi dan lain-lain.

(15)

43

Memasukkan persamaan input p(x),q(x) dan r(x), dan syarat batas serta persamaannya

Klik OK Klik Kembali

Klik Selesai

Klik Kembali ke awal

Gambar 3.4.2 STD form Input dan Output

Halaman Form Input dan Output (Semua isi teks dalam keadaan kosong)

Halaman Form Input dan Output (Tanpa Hasil Fungsi Eigen)

Halaman Form Input dan Output (Fungsi

eigen ditampilkan hasilnya)

Gambar

Gambar  3.3 Rancangan layar  input  form 1.
Gambar 3.4.1 .1 Flowchart perancangan form pada Sistem Sturm-Liouville
Gambar 3.4.1.2  Flowchart pencarian variabel fungsi eigen dari persamaan nilai eigen

Referensi

Dokumen terkait

bertanggungjawab dengan penekanan pada otonomi yang lebih merupakan kewajiban daripada hak, maka dalam Undang-undang ini pemberian kewenangan otonomi kepada

Maka dari itu perguruan tinggi terus berupaya untuk lebih meningkatkan kemampuan dan kualitas sumber daya manusia salah satunya dengan menjalin silaturahmi dan ikatan antar

Selanjutnya, hasil penelitian Staehr (2008:144) menujukan bahwa penguasaan kosakata memiliki hubungan yang signifikan dengan keempat keterampilan berbahasa yakni

Penanganan lumber dari kilang penggergajian ke tempat penimbunan untuk kemudian menuju pengeringan (alami/ secara kiln) dilakukan dengan mempertimbangkan jenis (spesies),

Penelitian tentang Analisis Efektivitas Biaya Antara Symbicort® Turbuhaler® (Budesonide- Formoterol) dan Seretide® Diskus® (Salmeterol-Fluticasone) pada Pasien Penyakit Paru

www.IlmuSyari.com | Download kitab & audio kajian Islam... www.IlmuSyari.com | Download kitab & audio

Jumlah Perkara yang Diterima dan Diputuskan Pengadilan Tinggi Agama menurut Jenis Perkara Tahun 2009 Number of Cases Received and Dealt With in Religious Court by Kind of Cases

Muara Baru Ujung Dermaga Timur Transit 16 Jakarta Utara PENANGANAN PRODUK SEGAR Tuna Utuh Segar Beroperasi #N/A 1200.. 31750144 31 75 010 0144 DKI JAKARTA JAKARTA UTARA