Advertisement
Guest User

Heat Equation Broken

a guest
Mar 20th, 2018
284
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Julia 0.67 KB | None | 0 0
  1. using DifferentialEquations, Plots
  2. f = (t,x,u)  -> [zeros(size(x,1))    zeros(size(x,1))]
  3. 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
  4.  
  5.  
  6. ## Build the mesh
  7. T = (0.0,30.0)
  8. dx = 1//2^(4)
  9. dt = 1//2^(2)
  10. fem_mesh = parabolic_squaremesh([0 1 0 1],dx,dt,T,:neumann)
  11. u0 = u0_func(fem_mesh.node)
  12.  
  13. ## Build the problem type
  14. prob = HeatProblem(u0,f,fem_mesh,D=[.003 .001])
  15.  
  16. ## Solve
  17. sol = solve(prob,alg=FEMDiffEqHeatImplicitEuler(),save_everystep=true,timeseries_steps=1)
  18. animate(sol,"../assets/diffconsts.gif",zlim=(-0.01,.01),cbar=false)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement