BAB IV PENUTUP
4.2 Saran
Berdasarkan penelitian ini, maka untuk selanjutnya dapat dikembangkan dengan menambahkan suku viskos. Sehingga simulasi persamaan gelombang air dangkal 2D dapat terjadi secara stabil.
36
Abdussakir. 2014. Matematika dalam Al-Qur’an. Malang: UIN-MALIKI PRESS. Camfield, F. 1980. Tsunami Engineering. Belvoir: Coastal Engineering Research
Center.
Candra, R. 2011. Analisis Stabilitas Metode Forward Time Central Space dan Lax Wendroff pada Simulasi Penyelesaian Persamaan Adveksi. Skripsi tidak dipublikasikan. Medan: Universitas Sumatera Utara.
Chapra, S dan Canale P., Raymond. 2010. Numerical Methods for Engineers Sixth. New York: McGrow-Hill Company, Inc.
Eymard, R., Gallou, T., dan Herbin, R. 2006. Finite Volume Method . Marseille: P.G Ciarlet.
Ginting, B.M., Riyanto, B.A., Ginting, H. (20l3), "Numerical Simulation of Dam Break Using FiniteVolume Method Case Study of Situ Gintung", 411' nternational Seminar of HATHI, Proceedings ofInternational Seminar o.n Water RcJatcd Disa!)te:r Solutions, Yogyakarta, September 6111 - 81h 2013, Vo1 : 1 ,ISBN: 978-979-988-5-5-<l, Pages: 209-220.
Ginting, B.M., Natakuswnal1, DK, Harlan, D., Ginting, H (2012), "Application of Finite Volume Cell Center Method with Wet and Dry Treatment in ydrodynamic Flow Modeling", Proceeding of "The Second Intemational Conference on Port, Coa<;tal, and Offshore Engineering, Institut Tcknologi Bandung, Baudung, November 12ili - 13ili 2012, ISBN:978-979-96 1 6 l -2-8.
Ginting, B.M., (20 1 1 ), 'Two Dimensional Flood Propagation Modeling Generated by Dam Break UsingFinite Volume Method ", Master Thesis, Institut Teknologi Bandung.1 1 . Ointing, B.M., Natakusumah, DK, Kusuma, M.S.B., Harlan, D. (20 1 1), "Pemodelan 2 Dimensi PropagasiAliran Banjir Akibat Keruntuhan Bendungan dcngan Mctodc Volume Hingga", Konferensi Nasional PascaSaijana Teknik Sipil, Institut Teknologi Baudung, 20 Desember 20 I I , ISSN: 2098-305 1.
Hapsari, N.R. 2014. Persamaan Gelombang Air Dangkal Satu Dimensi dan Aplikasinya pada Masalah Bendungan Bobol. Skripsi tidak dipublikasikan. Yogyakarta: Universitas Gajah Mada
Jameson, A. (1976) "Numerical Calculation of Transonic Flow with Shock Waves." Symposium Transsonicum II, Gottingen, Springer-Verlag. 15. Jameson, Schmidt, Friedriehshafun (1981), "Numerical Solution of the Euler
Equations by Finite Volume Methods Using Runge-Kutta Time-Stepping Schemes", Springer-Verlag
Jamhuri, Mohammad. 2014. Simulasi Perambatan Tsunami menggunakan Persamaan Gelombang Air-Dangkal. Malang: Universitas Islam Negeri Maulana Malik Ibrahim Malang.
Kampf, J. 2009. Ocean Modelling for Beginners Using Open-Source Software. London: Springer Heildelberg Dordrecht.
LeVeque, R.J. 2002. Finite Volume Methods for Hyperbolic Problems. Cambridge: Cambridge University Press.
Mavriplis, D.J. (1987). "Multigrid Solution of The Two Dimensional Euler Equations on Unstructured Triangular Meshes". AIAA Journal, Vol. 26, No.7.
Mufida, F. 2014. Solusi Numerik Persamaan Poisson Menggunakan Jaringan Fungsi Radial Basis pada Koordinat Polar. Skripsi tidak dipublikasikan. Malang: Universitas Islam Negeri Maulana Malik Ibrahim.
Mungkasi, S dan Robert, S.G. 2012. Anuga Software for Numerical Simulation of Shallow Water Flows. Jurnal Ilmu Komputer dan Informasi. 5(1):1-8. Natakusumah, D.K., Nuradil, C. (2004), "Simulasi Aliran di Pcrairan Dangkal
dengan Menggunakan Metoda Volume Hingga pada Sistem Grid tak Beraturan", Jurnal Teknik Sipil, Volume I I April 2004, No. 2.
Triatmojo, B. 2002. Metode Numerik Dilengkapi dengan Program Komputer. Yogjakarta: Beta Offset.
Shihab, M. Q. 2002. Tafsir Al-Mishbah Volume 10. Jakarta: Lentera Hati.51 Strauss, A. 2007. Partial Differential Equations An Introduction Second Edition.
New York: John Wiley & Sons, Ltd.
Versteeg, H.K dan Malalasekera, W. 2007. An Introduction to Computational Fluid Dynamics the Finite Volume Method. New York: Logman Group. Zauderer, E. 2006. Partial Differential Equations of Applied Mathematics Third
38 dx=float(0.01)
x0=float(0) x1=float(25)
u=arange(x0,x1,dx) # membuat interval nilai x
dy=float(0.0125) y0=float(0) y1=float(25)
v=arange(y0,y1,dy) #membuat interval nilai y
dt=float(0.01) t0=float(0) t1=float(5) t=arange(t0,t1,dt)
c=len(t) #membuat interval nilai t h0=float(1.75) #nilai awal untuk h kestabilan=dt*dx*sqrt(2*g*b)
print(kestabilan) # menentukan kestabilan nilai awal hk=[]
for i in range(c):
h=(-3*(u[i]*dy-v[i]*dx)*h0)/A
hk.append(h) #intruksi untuk menghitung perubahan h sejauh x dan y selama t = 0 sampai t =5
uk=[]
for i in range(c):
u0=((-3)*(((u[i]*dy-v[i]*dx)*u[i]*h0)+((g*((h0)**2)*dy)/2)))/(hk[i]*A) uk.append(u0) #intruksi untuk menghitung perubahan u sejauh x dan y
selama t =0 sampai t = 5 vk=[]
for i in range(c):
v0=((-3)*(((u[i]*dy-v[i]*dx)*v[i]*h0)+((g*((h0)**2)*dx)/2)))/(hk[i]*A) vk.append(v0) #intruksi untuk menghitung perubahan v sejauh x dan y
selama t = 0 sampai t = 5
fig = plt.figure()
ax = plt.axes(projection='3d') U, V = np.meshgrid(uk, vk) ax.plot3D(U, V, hk, 'gray')
plt.savefig('figs/SWE-2D.pdf') #menampilkan gelombang yang dibentuk selama t = 0 sampai t = 5
hk1=[]
for i in range(d):
h=(-3*(u[i]*dy-v[i]*dx)*h0)/A
hk1.append(h) #intruksi untuk menghitung perubahan h sejauh x dan y selama t = 0 sampai t =0,5
for i in range(d):
u0=((-3)*(((u[i]*dy-v[i]*dx)*u[i]*h0)+((g*((h0)**2)*dy)/2)))/(hk[i]*A) uk1.append(u0) #intruksi untuk menghitung perubahan u sejauh x dan y
selama t = 0 sampai t =0,5 vk1=[]
for i in range(d):
v0=((-3)*(((u[i]*dy-v[i]*dx)*v[i]*h0)+((g*((h0)**2)*dx)/2)))/(hk[i]*A) vk1.append(v0) #intruksi untuk menghitung perubahan v sejauh x dan y
selama t = 0 sampai t =0,5 fig = plt.figure()
ax = plt.axes(projection='3d') U1, V1 = np.meshgrid(uk1, vk1) ax.plot3D(U1, V1, hk1, 'blue')
plt.savefig('figs/SWE-2D1.pdf') #menampilkan gelombang yang dibentuk selama t = 0 sampai t = 0,5
hk2=[]
for i in arange(51,100):
h=(-3*(u[i]*dy-v[i]*dx)*h0)/A
hk2.append(h) #intruksi untuk menghitung perubahan h sejauh x dan y selama t = 0,5 sampai t = 1,0
uk2=[]
for i in arange(51,100):
uk2.append(u0) #intruksi untuk menghitung perubahan u sejauh x dan y selama t = 0,5 sampai t =1,0
vk2=[]
for i in arange(51,100):
v0=((-3)*(((u[i]*dy-v[i]*dx)*v[i]*h0)+((g*((h0)**2)*dx)/2)))/(hk[i]*A) vk2.append(v0) #intruksi untuk menghitung perubahan v sejauh x dan y
selama t = 0,5 sampai t = 1,0 fig = plt.figure()
ax = plt.axes(projection='3d') U2, V2 = np.meshgrid(uk2, vk2) ax.plot3D(U2, V2, hk2, 'blue')
plt.savefig('figs/SWE-2D2.pdf') #menampilkan gelombang yang dibentuk selama t = 0,5 sampai t = 1,0
hk3=[]
for i in arange(101,150):
h=(-3*(u[i]*dy-v[i]*dx)*h0)/A
hk3.append(h) #intruksi untuk menghitung perubahan h sejauh x dan y selama t = 1,0 sampai t = 1,5
uk3=[]
for i in arange(101,150):
u0=((-3)*(((u[i]*dy-v[i]*dx)*u[i]*h0)+((g*((h0)**2)*dy)/2)))/(hk[i]*A) uk3.append(u0) #intruksi untuk menghitung perubahan v sejauh x dan y
selama t = 1,0 sampai t = 1,5 vk3=[]
for i in arange(101,150):
v0=((-3)*(((u[i]*dy-v[i]*dx)*v[i]*h0)+((g*((h0)**2)*dx)/2)))/(hk[i]*A) vk3.append(v0) #intruksi untuk menghitung perubahan v sejauh x dan y
selama t = 1,0 sampai t = 1,5 fig = plt.figure()
ax = plt.axes(projection='3d') U3, V3 = np.meshgrid(uk3, vk3) ax.plot3D(U3, V3, hk3, 'blue')
plt.savefig('figs/SWE-2D3.pdf') #menampilkan gelombang yang dibentuk selama t = 1,0 sampai t = 1,5
hk4=[]
for i in range(151,200):
h=(-3*(u[i]*dy-v[i]*dx)*h0)/A
hk4.append(h) #intruksi untuk menghitung perubahan h sejauh x dan y selama t = 1,5 sampai t = 2,0
uk4=[]
for i in range(151,200):
u0=((-3)*(((u[i]*dy-v[i]*dx)*u[i]*h0)+((g*((h0)**2)*dy)/2)))/(hk[i]*A) uk4.append(u0) #intruksi untuk menghitung perubahan u sejauh x dan y
selama t = 1,5 sampai t = 2,0 vk4=[]
for i in range(151,200):
vk4.append(v0) #intruksi untuk menghitung perubahan v sejauh x dan y selama t = 1,5 sampai t = 2,0 fig = plt.figure() ax = plt.axes(projection='3d') U4, V4 = np.meshgrid(uk4, vk4) ax.plot3D(U4, V4, hk4, 'blue')
plt.savefig('figs/SWE-2D4.pdf') #menampilkan gelombang yang dibentuk selama t = 1,5 sampai t = 2,0
hk5=[]
for i in range(201,250):
h=(-3*(u[i]*dy-v[i]*dx)*h0)/A
hk5.append(h) #intruksi untuk menghitung perubahan h sejauh x dan y selama t = 2,0 sampai t = 2,5
uk5=[]
for i in range(201,250):
u0=((-3)*(((u[i]*dy-v[i]*dx)*u[i]*h0)+((g*((h0)**2)*dy)/2)))/(hk[i]*A) uk5.append(u0) #intruksi untuk menghitung perubahan u sejauh x dan y
selama t = 2,0 sampai t = 2,5 vk5=[]
for i in range(201,250):
v0=((-3)*(((u[i]*dy-v[i]*dx)*v[i]*h0)+((g*((h0)**2)*dx)/2)))/(hk[i]*A) vk5.append(v0) #intruksi untuk menghitung perubahan v sejauh x dan y
selama t = 2,0 sampai t = 2,5 fig = plt.figure()
ax = plt.axes(projection='3d') U5, V5 = np.meshgrid(uk5, vk5) ax.plot3D(U5, V5, hk5, 'blue')
plt.savefig('figs/SWE-2D5.pdf') #menampilkan gelombang yang dibentuk selama t = 2,0 sampai t = 2,5
hk6=[]
for i in range(251,300):
h=(-3*(u[i]*dy-v[i]*dx)*h0)/A
hk6.append(h) #intruksi untuk menghitung perubahan h sejauh x dan y selama t = 2,5 sampai t = 3,0
uk6=[]
for i in range(251,300):
u0=((-3)*(((u[i]*dy-v[i]*dx)*u[i]*h0)+((g*((h0)**2)*dy)/2)))/(hk[i]*A) uk6.append(u0) #intruksi untuk menghitung perubahan v sejauh x dan y
selama t = 2,5 sampai t = 3,0 vk6=[]
for i in range(251,300):
v0=((-3)*(((u[i]*dy-v[i]*dx)*v[i]*h0)+((g*((h0)**2)*dx)/2)))/(hk[i]*A) vk6.append(v0) #intruksi untuk menghitung perubahan v sejauh x dan y
selama t = 2,5 sampai t = 3,0 fig = plt.figure()
ax = plt.axes(projection='3d') U6, V6 = np.meshgrid(uk6, vk6) ax.plot3D(U6, V6, hk6, 'blue')
plt.savefig('figs/SWE-2D6.pdf') #menampilkan gelombang yang dibentuk selama t = 2,5 sampai t = 3,0
hk7=[]
for i in range(301,350):
h=(-3*(u[i]*dy-v[i]*dx)*h0)/A
hk7.append(h) #intruksi untuk menghitung perubahan h sejauh x dan y selama t = 3,0 sampai t = 3,5
uk7=[]
for i in range(301,350):
u0=((-3)*(((u[i]*dy-v[i]*dx)*u[i]*h0)+((g*((h0)**2)*dy)/2)))/(hk[i]*A) uk7.append(u0) #intruksi untuk menghitung perubahan u sejauh x dan y
selama t = 3,0 sampai t = 3,5 vk7=[]
for i in range(301,350):
v0=((-3)*(((u[i]*dy-v[i]*dx)*v[i]*h0)+((g*((h0)**2)*dx)/2)))/(hk[i]*A) vk7.append(v0) #intruksi untuk menghitung perubahan v sejauh x dan y
selama t = 3,0 sampai t = 3,5 fig = plt.figure()
ax = plt.axes(projection='3d') U7, V7 = np.meshgrid(uk7, vk7) ax.plot3D(U7, V7, hk7, 'blue')
plt.savefig('figs/SWE-2D7.pdf') #menampilkan gelombang yang dibentuk selama t = 3,0 sampai t = 3,5
for i in range(351,400):
h=(-3*(u[i]*dy-v[i]*dx)*h0)/A
hk8.append(h) #intruksi untuk menghitung perubahan h sejauh x dan y selama t = 3,5 sampai t = 4,0
uk8=[]
for i in range(351,400):
u0=((-3)*(((u[i]*dy-v[i]*dx)*u[i]*h0)+((g*((h0)**2)*dy)/2)))/(hk[i]*A) uk8.append(u0) #intruksi untuk menghitung perubahan u sejauh x dan y
selama t = 3,5 sampai t = 4,0 vk8=[]
for i in range(351,400):
v0=((-3)*(((u[i]*dy-v[i]*dx)*v[i]*h0)+((g*((h0)**2)*dx)/2)))/(hk[i]*A) vk8.append(v0) #intruksi untuk menghitung perubahan v sejauh x dan y
selama t = 3,5sampai t = 4,0 fig = plt.figure()
ax = plt.axes(projection='3d') U8, V8 = np.meshgrid(uk8, vk8) ax.plot3D(U8, V8, hk8, 'blue')
plt.savefig('figs/SWE-2D8.pdf') #menampilkan gelombang yang dibentuk selama t = 3,5 sampai t = 4,0
hk9=[]
for i in range(401,450):
hk9.append(h) #intruksi untuk menghitung perubahan h sejauh x dan y selama t = 4,0 sampai t = 4,5
uk9=[]
for i in range(401,450):
u0=((-3)*(((u[i]*dy-v[i]*dx)*u[i]*h0)+((g*((h0)**2)*dy)/2)))/(hk[i]*A) uk9.append(u0) #intruksi untuk menghitung perubahan u sejauh x dan y
selama t = 4,0 sampai t = 4,5 vk9=[]
for i in range(401,450):
v0=((-3)*(((u[i]*dy-v[i]*dx)*v[i]*h0)+((g*((h0)**2)*dx)/2)))/(hk[i]*A) vk9.append(v0) #intruksi untuk menghitung perubahan v sejauh x dan y
selama t = 4,0 sampai t = 4,5 fig = plt.figure()
ax = plt.axes(projection='3d') U9, V9= np.meshgrid(uk9, vk9) ax.plot3D(U9, V9, hk9, 'blue')
plt.savefig('figs/SWE-2D9.pdf') #menampilkan gelombang yang dibentuk selama t = 4,0 sampai t = 4,5
hk10=[]
for i in range(451,500):
h=(-3*(u[i]*dy-v[i]*dx)*h0)/A
hk10.append(h) #intruksi untuk menghitung perubahan h sejauh x dan y selama t = 4,5 sampai t = 5,0
for i in range(451,500):
u0=((-3)*(((u[i]*dy-v[i]*dx)*u[i]*h0)+((g*((h0)**2)*dy)/2)))/(hk[i]*A) uk10.append(u0) #intruksi untuk menghitung perubahan u sejauh x dan y
selama t = 4,5 sampai t = 5,0 vk10=[]
for i in range(451,500):
v0=((-3)*(((u[i]*dy-v[i]*dx)*v[i]*h0)+((g*((h0)**2)*dx)/2)))/(hk[i]*A) vk10.append(v0) #intruksi untuk menghitung perubahan v sejauh x dan y
selama t = 4,5 sampai t = 5,0 fig = plt.figure()
ax = plt.axes(projection='3d')
U10, V10= np.meshgrid(uk10, vk10) ax.plot3D(U10, V10, hk10, 'blue')
plt.savefig('figs/SWE-2D10.pdf') #menampilkan gelombang yang dibentuk selama t = 4,5 sampai t = 5,0
RIWAYAT HIDUP
Kurniansyah Ade Islami, lahir di kabupaten Buleleng pada tanggal 1 April 1997, biasa dipanggil Ade. Tinggal di Desa Sumberkiam, Kecamatan Gerokgak, Kabupaten Buleleng, Provinsi Bali. Anak kedua dari pasangan Abdul Hamid dengan Yuli Suprapti.
Menempuh pendidikan di SDN 4 Sumberkima lulus pada tahun 2009, melanjutkan ke SMP Unggulan Pondok Pesantren Habibulloh Bnyuwangi dan lulus pada tahun 2012. Kemudian menempuh pendidikan menengan atas di MAN Patas lulus pada tahun 2015. Selanjutnya, di tahun 2015 menempuh kuliah di Jurusan Matematika UIN Maulana Malik Ibrahim Malang.
KEMENTERIAN AGAMA RI UNIVERSITAS ISLAM NEGERI
MAULANA MALIK IBRAHIM MALANG FAKULTAS SAINS DAN TEKNOLOGI Jl. Gajayana No. 50 Dinoyo Malang Telp./Fax.(0341)558933
BUKTI KONSULTASI SKRIPSI
Nama : Kurniansyah Ade Islami
NIM : 15610002
Fakultas/Jurusan : Sains dan Teknologi/Matematika
Judul Skripsi : Simulasi Gelombang Air Dangkal dengan Metode Volume Hingga
Pembimbing I : Heni Widayani, M.Si Pembimbing II : Ari Kusumatuti, MPd, M.Si
No Tanggal Hal Tanda Tangan
1. 24 Mei 2019 Konsultasi Bab I & Bab II 1.
2. 4 November 2019 ACC Seminar Proposal 2. 3. 4 November 2019 konsultasi Kajian Keagamaan 3.
4. 5 Desember 2019 Revisi Seminar Proposal 4. 5. 6 Februari 2020 Konsultasi Bab III 5.
6. 7 Februari 2020 Pembenahan Bab III 6. 7. 7 Februari 2020 Konsultasi Kajian Keagamaan 7.
8. 28 Maret 2020 Revisi Setelah Sidang 8. 9. 8 Juni 2020 Revisi ke-2 Setelah sidang 9.
10. 25 Juni 2020 Revisi Pembimbing 2 10. Malang, 25 Juni 2020 Mengetahui,
Ketua Jurusan Matematika
Dr. Usman Pagalay, M.Si NIP. 19650414 200312 1 001