All Projects
M.E. Thesis Project · 2024 – 2025

FEniCS Heat Conduction Web Solver

Finite element solution of the 2-D steady-state heat equation with spatially varying conductivity and all three standard boundary condition types. Full-stack delivery: Python solver back-end with a Django front-end; results plotted inline.

FEniCSFEMPythonDjangoHeat TransferPDE

Governing Equations

Governing PDE
(k(x)T)=0\nabla \cdot (k(\mathbf{x}) \nabla T) = 0
Weak form
ΩkTvdΩ=ΓNqnvdΓ+ΓRh(TT)vdΓ\int_\Omega k \nabla T \cdot \nabla v \, d\Omega = \int_{\Gamma_N} q_n \, v \, d\Gamma + \int_{\Gamma_R} h(T_\infty - T) v \, d\Gamma

Methodology

The core problem is solving ∇·(k(x,y)∇T) = 0 on a 2-D domain with Dirichlet (fixed temperature), Neumann (fixed flux), and Robin (convective) boundary conditions. The FEniCS FEniCSx framework is used to assemble the weak form, define function spaces, and apply boundary conditions programmatically. The solver is wrapped in a Django web application where users specify material parameters, mesh resolution, and boundary condition values through a browser interface — the solver runs server-side and results are plotted inline using Matplotlib.

Simulation Results

Simulation visualisation coming soon