Propiedad_izquierda = phi_0, Propiedad_derecha = phi_L, Conductividad = gamma, Densidad = rho, Velocidad = u, Nodos = N, Volúmenes = nvx, Delta = dx, Paso_de_Tiempo = dt, Tiempo_Máximo = tmax) #---------------------------------------------------------------------------------------- #Object instances #---------------------------------------------------------------------------------------- df1 = fvm.Diffusion1D(nvx, Gamma = gamma, dx = dx) #Difussion Object da1 = fvm.Advection1DCDS(nvx, rho = rho, dx = dx) #Advection Object dt1 = fvm.Temporal1DBackEuler(nvx,rho,dx,dt) #Time Object #---------------------------------------------------------------------------------------- #Time Advective-Diffusive coefficients allocation #---------------------------------------------------------------------------------------- coef = fvm.Coefficients() # Coefficients alias coef.alloc(nvx) # Memory allocation ux = np.zeros(nvx) # Velocity vector allocation ux += u # Velocity vectorization #---------------------------------------------------------------------------------------- #Border conditions definition #----------------------------------------------------------------------------------------
Volúmenes=nvx, Delta=delta) #---------------------------------------------------------------------------------------- #Velocity allocation and vectorization #---------------------------------------------------------------------------------------- ux = np.zeros(nvx - 1) # Domain velocity definition (used in costructor) ux += u #---------------------------------------------------------------------------------------- #Object instances #---------------------------------------------------------------------------------------- df1 = fvm.Diffusion1D(nvx, Gamma=gamma, dx=delta) da1 = fvm.Advection1DCDS(nvx, rho=rho, dx=delta, u=ux) #---------------------------------------------------------------------------------------- #Advective-Diffusive coefficients allocation #---------------------------------------------------------------------------------------- Coefficients.alloc(nvx) # Memory allocation df1.calcCoef() # Diffusice coefficients calculation da1.calcCoef() # Advective coefficients calculation #---------------------------------------------------------------------------------------- #Border conditions definition #---------------------------------------------------------------------------------------- Sol = np.zeros(nvx) # Initial array with zeroes Sol[0] = phi_0 # Left border condition (Dirichlet)