idindrakusuma /
my-awesome-tools
Repositori ini dibuat untuk mendokumentasikan berbagai tools yang saya gunakakan untuk menunjang produktifitas dalam menulis code.
25/100 healthLoading repository data…
khazzahraputri / repository
Repositori ini dibuat sebagai pemenuhan tugas akhir kelompok praktikum pemodelan oseanografi 2022. Repositori ini berisi 4 modul yang dipelajari selama praktikum pemodelan oseanografi yang terdiri dari script, hasil pemodelan dan pembahasan atau penjelasn hasilnya. pemrograman python yang dapat dilakukan pada beberapa platform seperti Google Colaboratory dan Jupyter Notebook. Sedangkan untuk library yang digunakan kali ini adalah Numpy, Matplotlib,
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
Repositori ini dibuat sebagai pemenuhan tugas akhir kelompok praktikum pemodelan oseanografi 2022. Repositori ini berisi 4 modul yang dipelajari selama praktikum pemodelan oseanografi yang terdiri dari script, hasil pemodelan dan pembahasan atau penjelasn hasilnya. pemrograman python yang dapat dilakukan pada beberapa platform seperti Google Colaboratory dan Jupyter Notebook. Sedangkan untuk library yang digunakan kali ini adalah Numpy, Matplotlib, Sys, Siphon. Semoga pembuatan reposirtori ini dapat bermanfaat.
Persamaan Adveksi-Difusi adalah persamaan matematis yang didesain untuk mempelajari fenomena transport polutan. Persamaan transpor merupakan salah satu persamaan differensial yang merepresentasikan sirkulasi aliran air di estuari dengan variabel C (Konsentrasi garam) sebagai fungsi ruang dan waktu.
Adveksi merupakan mekanisme perpindahan massa suatu materi dari suatu titik ke titik lainnya. Persamaan Gelombang Linear orde satu dan termasuk dalam persamaan diferensial hiperbolik yang menggambarkan mekanisme transportasi suatu gas atau zat cair dengan arah tertentu

FTCS
Metode FTCS merupakan gabungan dari selisih maju terhadap waktu dan selisih pusat terhadap ruang. Persamaan matematis metode FTCS dinyatakan dalam persamaan berikut.

Leapfrog
Metode Leapfrog merupakan perluasan dari metode beda tengah terhadap ruang dan waktu. Skema Leapfrog didapat dari turunan dari deret taylor, sehingga skema ini bersifat konsisten. Persamaan matematis metode Leapfrog dinyatakan dalam persamaan berikut.

Upstream
Metode Upstream merupakan skema yang digunakan untuk melengkapi ketidaksempurnaan dari metode Leapfrog. Karena nilai konsentrasi dalam komputer menjadi negatif, walaupun konsentrasinya positif. Untuk itu metode ini dibuat untuk model positif dari konsentrasi di alam yang merujuk kelaut. Persamaan matematis metode FTCS dinyatakan dalam persamaan berikut.
Selected from shared topics, language and repository description—not editorial ratings.
idindrakusuma /
Repositori ini dibuat untuk mendokumentasikan berbagai tools yang saya gunakakan untuk menunjang produktifitas dalam menulis code.
25/100 healthyayan04 /
Repositori ini dibuat untuk mempermudah tugas akhir dari Aplikasi Web Sistem Pendukung Keputusan Penentuan Jenis Tanaman Menggunakan Metode Simple Additive Weighting (SAW)
24/100 healthnanaml1 /
Ini adalah repositori qowek-6 yang dibuat secara otomatis.
37/100 health
Difusi adalah sebuah proses di mana suatu zat bergerak dari konsentrasi tinggi ke rendah

Proses penyebaran polutan terjadi melalui dua proses utama yaitu difusi dan adveksi, dan dapat dianggap dua mekanisme yang terpisah. Adveksi adalah proses perpindahan panas sebagai akibat dari adanya aliran. Difusi adaalah proses perpindahan panas berupa rambatan dari air dengan temperatur tinggi ke air dengan temperatur yang lebih rendah.
Dasar dalam membangun model 2D untuk transpor adveksi adalah persamaan matematis sebagai berikut.

Sedangkan dalam membangun model 2D untuk transpor dengan mekanisme difusi, dibangun dari persamaan matematis sebagai berikut.

Persamaan adveksi dan difusi di atas merupakan persamaan umum yang menggambarkan proses adveksi serta difusi yang terjadi pada suatu materi sehingga untuk membentuk suatu persamaan model 2D yang mendekati proses kejadian di alam maka perlu adanya diskritisasi terhadap persamaan tersebut.
Diskritisasi merupakan suatu metode untuk mencari solusi persamaan secara numerik dari suatu persamaan matematika sehingga dapat dinyatakan baik dalam dimensi ruang ataupun waktu. Proses diksritisasi model 2D pada suku adveksi umumnya menggunakan metode eksplisit upstream. Metode yang sama juga berlaku untuk deskritisasi suku difusi. Metode eksplisit upstream merupakan metode dimana persamaan beda hingga menggunakan pendekatan beda maju untuk turunan waktu, sedangkan untuk turunan terhadap ruang dilakukan dengan melihat arah kecepatan u. Jika u > 0 maka turunan terhadap ruang menggunakan pendekatan beda mundur, sebaliknya jika u < 0 digunakan pendekatan beda maju.
Persamaan dari metode diskritisasi untuk suku adveksi 2D adalah sebagai berikut.

Model 2D untuk mekanisme transpor difusi dapat menggunakan pendekatan beda maju untuk turunan waktu dan beda pusat untuk turunan ruang. Indeks n untuk waktu, indeks i untuk ruang, dan koefisiesn difusi AD dianggap konstan terhadap ruang dan waktu.
Persamaan diskritisasi untuk model 2D difusi adalah sebagai berikut.

Persamaan diskritisasi adveksi dan difusi di atas jika digabungkan menjadi persamaan berikut.

Syarat batas merupakan suatu kondisi yang menggambarkan kondisi di batas baik ruang maupun waktu dari model yang dibangun.
Syarat batas dari metode eksplisit upstream diberikan pada nilai awal (hulu) dan nilai akhir (hilir).

Suatu metode untuk menentukan seberapa besar nilai stabilitas dari model yang dibangun.
Kriteria kestabilan yang digunakan untuk menyelesaikan pemodelan 2D adveksi difusi ini adalah sebagai berikut.

Pemodelan adveksi difusi umumnya digunakan dalam pemodelan suatu cemaran pada suatu perairan, seperti tumpahan minyak pada area perairan maupun limbah panas dari suatu pembangkit listrik pada area sekitar perairan.
Pemodelan distribusi sedimen yang terjadi pada suatu perairan yang biasa dilakukan oleh para surveyor.
import matplotlib.pyplot as plt
import numpy as np
import sys
def percentage(part, whole):
percentage = 100 * float(part)/float(whole)
return str(round(percentage,2)) + "x"
#Masukan Parameter Awal
C = 1.90
ad = 1.90
#arah arus
theta = 90
#theta = 150
#theta = 225
#theta = 405
#paramter lanjutan
q = 0.95 #kriteria kestabilan
x = 500 #jumlah grid horizontal
y = 500 #jumlah grid vertikal
dx = 5
dy = 5
#lama simulasi
Tend = 109
dt = 0.5
#Polutan
px = 250 #polutan pada grid x
py = 239 #polutan pada grid y
Ic = 1090 #jumah polutan
#Perhitungan U dan V
u = C * np.sin(theta*np.pi/180)
v = C * np.cos(theta*np.pi/180)
dt_count = 1/((abs(u)/(q*dx))+(abs(v)/(q*dy))+(2*ad/(q*dx**2))+(2*ad/(q*dy*2)))
Nx = int(x/dx) #number of mesh in x direction
Ny = int(y/dy) #number of mesh in y direction
Nt = int(Tend/dt) #number of timestep
#perhitungan titik polutan di buang
px1 = int(px/dx)
py1 = int(py/dy)
#fungsi disederhanakan
lx = u*dt/dx
ly = v*dt/dy
ax = ad*dt/dx**2
ay = ad*dt/dy**2
cfl = (2*ax + 2*ay + abs(lx) + abs(ly)) #syarat kestabilan CFL
#perhitungan cfl
if cfl >= q:
print('CFL Violated, please use dt :'+str(round(dt_count,4)))
sys.exit ()
#pembuatan grid
x_grid = np.linspace(0-dx, x+dx, Nx+2) #ghostnode boundary
y_grid = np.linspace(0-dx, y+dy, Ny+2) #ghostnode boundary
t = np.linspace(0, Tend, Nt+1)
x_mesh, y_mesh = np.meshgrid(x_grid,y_grid)
F = np.zeros((Nt+1, Ny+2, Nx+2))
#kondisi awal
F[0,py1,px1]=Ic
#Iterasi
for n in range (0, Nt):
for i in range (1,Ny+1):
for j in range (1, Nx+1):
F[n+1,i,j]=((F[n,i,j]*(1-abs(lx)-abs(ly))) + \
(0.5*(F[n,i-1,j]*(ly+abs(ly)))) + \
(0.5*(F[n,i+1,j]*(abs(ly)-ly))) + \
(0.5*(F[n,i,j-1]*(lx+abs(lx)))) + \
(0.5*(F[n,i,j+1]*(abs(lx)-lx))) + \
(ay*(F[n,i+1,j]-2*(F[n,i,j])+F[n,i-1,j])) +\
(ax*(F[n,i,j+1]-2*(F[n,i,j])+F[n,i,j-1])))
#syarat batas (boundary condition)
F[n+1,0,:] = 0 #bc bawah
F[n+1,:,0] = 0 #bc kiri
F[n+1,Ny+1,:] = 0 #bc atas
F[n+1,:,Nx+1] = 0 #bc kanan
#Output Gambar
plt.clf()
plt.pcolor(x_mesh, y_mesh, F[n+1, :, :], cmap = 'jet',shading='auto',edgecolor='k')
cbar=plt.colorbar(orientation='vertical',shrink=0.95,extend='both')
cbar.set_label(label='Concentration',size = 8)
#plt.clim(0,100)
plt.title('NAMA_NIM \n t='+str(round(dt*(n+1),3))+ ', Initial condition='+str(Ic),fontsize=10)
plt.xlabel('x_grid',fontsize=9)
plt.ylabel('y_grid',fontsize=9)
plt.axis([0, x, 0, y])
#plt.pause(0.01)
plt.savefig(str(n+1)+'.jpg', dpi=300)
plt.pause(0.01)
plt.close()
print('running timestep ke:' +str(n+1) + ' dari:' +str(Nt) + '('+ percentage(n+1,Nt)+')')
print('Nilai CFL:' +str(cfl) + ' dengan arah: ' +str(theta))



Dari hasil pemodelan dapat diketahui bahwa seiring dengan waktu berjalan, polutan akan bergerak mengikuti arus, yang sekaligus berdifusi, dan mengalami pengurangan nilai konsentrasi. Arah polutan ini dipengaruhi oleh vektor kecepatan u dan v. Polutan mengalami difusi juga adveksi, mengalami difusi dapat dilihat dari polutan yang seiring dengan bertambahnya waktu, polutan semakin menyebar dan konsentrasi semakin berkurang. Sementara dapat dikatakan mengalami adveksi karena polutan mengalami pergerakan atau perpindahan tempat.
Jika C=1 dan ad = 0, polutan mengalami pergerakan sesuai dengan arah theta, karena kecepatan polutan tidak sama dengan nol, atau memiliki kecepatan. Meskipun mengalami pergerakan, tetapi persebarannya tidak kesegala arah peresebarannya hanya secara horizontal saja (mengikuti pergerakan polutan), hal ini karena koefisien difusi
Jaegyeonn /
Ini adalah repositori amkd-18 yang dibuat secara otomatis.
37/100 healthJaegyeonn /
Ini adalah repositori adni-4 yang dibuat secara otomatis.
37/100 healthnanaml1 /
Ini adalah repositori nahhu-8 yang dibuat secara otomatis.
37/100 health