Report Tugas Kelompok 7 : Metode Numerik 2 2019
Metode Runge Kutta Orde 4
Runge Kutta merupakan metode untuk pendekatan suatu nilai persamaan yaitu dengan melakukan segmentasi-segmentasi dengan suatu garis-garis lurus dari suatu titik ke titik berikutnya mengikuti segmentasi yang dibuat. Runge Kutta terdiri dari beberapa orde, diantanya adalah orde 2, orde 3, dan orde 4. Perbedaan dari beberapa orde tersebut adalah: Runge Kutta Orde 4 lebih akurat dari Orde 3, sedangkan Runge Kutta Orde 3 lebih akurat dari Orde 2.
Dalam tugas kali ini kami akan membuat Runge Kutta Orde 4 untuk menyelesaikan suatu permasalahan pegas. Secara umum persamaan Runge Kutta Orde 4 adalah sebagai berikut:
π¦_(π+1)=π¦_π+1/6 (π_1+2π_2+2π_3+π_4 )β
Dengan :
π_1=π(π₯_π,π¦_π )
π_2=π(π₯_π+1/2 β,π¦_π+1/2 π_1 β)
π_3=π(π₯_π+1/2 β,π¦_π+1/2 π_2 β)
π_4=π(π₯_π+1/2 β,π¦_π+1/2 π_3 β)
Selanjutnya akan langsung ke pendefinisian soal yaitu sebagai berikut:
Penyelesaian masalah ini adalah dengan algoritma sebagai berikut:
1. Awalnya fungsi yang ada pada soal tersebut adalah suatu fungsi percepatan sehingga harus diubah terlebih dahulu menjadi suatu fungsi turunan dari fungsi jarak yaitu fungsi kecepatan. Perubahan itu adalah dengan menggunakan integral satu kali terhadap waktu sehingga mendapatkan fungsi kecepatan. Setelah itu didefinisikan suatu persamaan pada tiap keadaannya yaitu pada keadaan t kurang dari 2 dan t lebih dari sama dengan 2.
2. Fungsi kecepatan merupakan suatu fungsi jarak terhadap waktu yang nantinya akan dipakai untuk mencari nilai jarak terhadap fungsi waktu yang diminta pada soal. Hal ini dengan cara menentukan atau mendefinisikan nilai t = 0 yaitu y = 0, dan karena metode ini membutuhkan suatu step size yang disebut increment maka kami memutuskan untuk menggunakan increment (h) dengan kenaikan 0,01.
3. Runge kutta dikerjakan seperti pada persamaan yang telah disampaikan di awal.
π¦_(π+1)=π¦_π+1/6 (π_1+2π_2+2π_3+π_4 )β
Dengan :
π_1=π(π₯_π,π¦_π )
π_2=π(π₯_π+1/2 β,π¦_π+1/2 π_1 β)
π_3=π(π₯_π+1/2 β,π¦_π+1/2 π_2 β)
π_4=π(π₯_π+1/2 β,π¦_π+1/2 π_3 β)
4. Hasil dari persamaan tersebut lalu di plot antara t atau waktu yang diberikan dan hasil y atau osilasi yang dilakukan
Alur untuk menyelesaikan masalah berikut adalah dengan flowchart seperti berikut ini:
Dan diselesaikan dengan persamaan phyton berikut ini:
# Pendefinisian nilai awal atau initial value dan increment yang akan digunakan (h). Kita menggunakan h = 0.01. x0 = 0 y = 0 h = 0.01 x = float(input("Masukkan nilai t: ")) if 0 <= x < 2: def dydx(x, y): return (2*x**2 - 30*x*y) #nilai fungsi sudah diintegralkan sekali, dan dimasukkan nilai K dan m nya sehingga membentuk fungsi tersebut def rungeKutta(x0, y0, x, h): n = (int)((x - x0)/h) #untuk mengetahui jumlah iterasi yang akan dilakukan maka panjangnya harus dibagi dengan increment yang telah ditentukan (h=0,01) y = y0 for i in range(1, n + 1): k1 = h * dydx(x0, y) k2 = h * dydx(x0 + 0.5 * h, y + 0.5 * k1) k3 = h * dydx(x0 + 0.5 * h, y + 0.5 * k2) k4 = h * dydx(x0 + h, y + k3) y = y + (1.0 / 6.0)*(k1 + 2 * k2 + 2 * k3 + k4) x0 = x0 + h return y print("Nilai y pada t =", x, "adalah", rungeKutta(x0, y, x, h)) elif x >= 2: # Ketika x >= 2, sesuai dengan soal maka nilai P(t) konstan pada 20N def dydx(x, y): return (8 - 30*x*y) #hasil dari pengintegralan dan memasukkan nilai P(t) konstan pada 20N def rungeKutta(x0, y0, x, h): n = (int)((x - x0)/h) y = y0 for i in range(1, n + 1): k1 = h * dydx(x0, y) k2 = h * dydx(x0 + 0.5 * h, y + 0.5 * k1) k3 = h * dydx(x0 + 0.5 * h, y + 0.5 * k2) k4 = h * dydx(x0 + h, y + k3) y = y + (1.0 / 6.0)*(k1 + 2 * k2 + 2 * k3 + k4) x0 = x0 + h return y print("Nilai y pada t =", x, "adalah", rungeKutta(x0, y, x, h)) else:#untuk nilai lainnya yaitu nilai t saat negatif print("Mohon masukkan nilai t positif.")
Dalam penyelesaian ini kami belum mampu membuat kode untuk plot, nantinya akan kami kembangkan lagi sehingga dapat menjawab pertanyaan yang ada
Analisis Gaya Drag Mobil pada CFDSOF-NG (Progress 13/11/2019)
Dasar Teori
Drag force merupakan gaya kebelakang yang mendorong mundur dan drag force ini disebabkan karena gangguan aliran udara pada bodi kendaraan dan parallel dengan arah angin. Drag force adalah jumlah semua gaya eksternal dalam aliran fluida yang melawan arah gerak objek dan disebabkan oleh aliran turbulen di sekitar benda yang melawan gerak maju objek melalui fluida (gas atau cairan).
Drag force dapat dimanfaatkan menjadi salah satu cara yang efisien untuk meningkatkan kecepatan kendaraan serta menghemat penggunaan bahan bakar. Hal ini dapat terjadi karena jika koefisien drag semakin kecil, maka hambatan udara terhadap mobil semakin kecil, sehingga mobil dapat melaju dengan tenaga dari mesin yang lebih sedikit dan pada akhirnya akan mengurangi pemakaian atau konsumsi bahan bakar mesin mobil.
Secara teori, jika koefisien drag semakin berkurang, maka kecepatan akan semakin meningkat, sesuai dengan persamaan gaya drag yang di mana koefisien drag berbanding terbalik dengan kecepatan. Oleh karena itu, pengaruh tahanan udara yang paling besar terjadi ketika laju kendaraan pada kecepatan yang paling rendah.
Faktor yang sangat penting dalam menentukan kualitas simulasi CFD salah satunya adalah meshing atau griding. Meshing merupakan proses dikritisasi domain fluida yang kontinu yang menjadi domain komputasi yang diskrit sehingga dapat diselesaikan persamaan-persamaan didalamnya dan menghasilkan solusi.
Iterasi dengan Menggunakan CFDSOF dan plotting Menggunakan Excel
Parameter yang kami gunakan untuk iterasi pada CFDSOF:
Parameter untuk Mesh
Hasil dan Pengecekan Meshing
Parameter Fluida yang digunakan
Kemudian hasil tersebut kami plotting di excel, dan dicari plot yang paling tepat untuk merepresentasikan hubungan antara drag force dan kecepatan. Plotting tersebut menggunakan:
Pada opsi tersebut terdapat banyak pilihan plotting yang tersedia, namun menurut kelompok kami yang kurvanya paling cocok / merepresentasikan data tersebut adalah kurva polinomial. Kemudian kami mencoba untuk menambah jumlah derajat menjadi 3 derajat:
Pada derajat polinomial 3, dapat dilihat bahwa konstanta polinomial ke 3 sangatlah kecil sehingga kami menyimpulkan untuk menggunakan derajat polinomial pangkat 2.
Hasil Iterasi dan Plotting
Iterasi yang kami lakukan merupakan kenaikan kecepatan sebesar 2,5 m/s dari kecepatan awal 0 m/s sampai 80 m/s. Hasil ini merupakan integral dari gaya drag pada tiap kecepatan mobil yang nantinya akan di-plotting dan dilakukan curve fitting
Hasil curve fitting yang kami lakukan di excel menunjukkan bahwa kurva antara kecepatan terhadap gaya drag menunjukkan hubungan berupa persamaan polinomial dalam hal ini merupakan polinomial pangkat 2. Menurut kami hasil curve fitting ini cukup akurat, hal ini ditunjukkan oleh nilai R kuadrat yang cukup tinggi (mendekati 1). R Kuadrat merupakan suatu ukuran kemiripan plot data dengan kurva dengan nilai maksimal 1.
Kami menyimpulkan bahwa hubungan antara gaya drag terhadap kecepatan pada kasus ini sesuai dengan persamaan berikut (dengan y = Drag Force , x = kecepatan):
Sehingga