Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using DifferentialEquations, Plots
- f = (t,x,u) -> [zeros(size(x,1)) zeros(size(x,1))]
- u0_func = (x) -> [float.((abs.(x[:,1]-.5) .< 1e-6) .& (abs.(x[:,2]-.5) .< 1e-6)) float.((abs.(x[:,1]-.5) .< 1e-6) .& (abs.(x[:,2]-.5) .< 1e-6))] # size (x,2), 2 meaning 2 variables
- ## Build the mesh
- T = (0.0,30.0)
- dx = 1//2^(4)
- dt = 1//2^(2)
- fem_mesh = parabolic_squaremesh([0 1 0 1],dx,dt,T,:neumann)
- u0 = u0_func(fem_mesh.node)
- ## Build the problem type
- prob = HeatProblem(u0,f,fem_mesh,D=[.003 .001])
- ## Solve
- sol = solve(prob,alg=FEMDiffEqHeatImplicitEuler(),save_everystep=true,timeseries_steps=1)
- animate(sol,"../assets/diffconsts.gif",zlim=(-0.01,.01),cbar=false)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement