Two Dimensional Heat Conduction - Explicit & Implicit Transient Solvers
The Two Dimensional Heat Conduction Equation is given by
`(delT)/(delt) - alpha ((delT^2)/(delx^2) + (delT^2)/(dely^2)) = 0`
The purpose of the project was to implement Transient, Explicit and Implicit Solvers for the given equation.
The geometry chosen was a unit square and consisted of an equal number of grid points in both the axes.
The boundary conditions were as follows
- LEFT - 400 K
- Right - 800 K
- Top - 600 K
- Bottom - 900 K
The absolute error criteria was selected to be `1e^-4`
For explicit solver, I implemented Jacobi, Gauss-Seidel and Successive Overrelaxation methods. For the implicit solver, I implemented Crank-Nicolson method and computed the final solution by performing matrix inversion.
Transient Explicit
Jacobi
`dt = 27`
The solution was obtained after 208 iterations. Increase in the value of `dt` beyond 27 led the solution to blow up.
Gauss-Seidel
`dt = 27`
The Solution is obtained in 106 iterations. Though this is not the fastest Gauss-Seidel Solution.
The fastest solution is in 31 iterations for `dt = 39`. An increment in `dt` from this value led to increasing iterations and eventual blow-up.
Successive Overrelaxation
`dt= 27`
The solution is obtained at 47 iterations. The fastest was for `dt = 24`.
The solution converged quickly for `alpha*dt/dx^2` values of less around 0.23. Above and below which the solution was achieved with increased iterations. For values of greater than 0.3, the solution was blown.
Transient Implicit
The solution is achieved in 21 iterations. It is overall the fastest solution achieved.
For `dt = 800`.
The solution is stable for a large range of `dt`. For very large values of `dt`, the solution converges but loses accuracy.