Completed · v1.0.0 · Rust · Finite Volume Method
2D Finite-Volume Heat-Conduction Solver
A dependency-free Rust implementation of a two-dimensional steady heat-conduction problem using the cell-centered Finite Volume Method, fixed-temperature boundary conditions, and Gauss-Seidel iteration.
Problem setup
The current case models steady heat conduction through a 0.5 m × 0.5 m square plate. The west wall is fixed at 400 K, while the east, north, and south walls are fixed at 300 K. The temperature difference produces a two-dimensional field inside the plate.
Numerical method
Discretization
Cell-centered finite-volume formulation on a uniform Cartesian grid.
Boundary treatment
Prescribed wall temperatures introduced through finite-volume source terms.
Linear iteration
Gauss-Seidel updates continue until the maximum temperature change falls below the configured tolerance.
Automated software check
The GitHub Actions workflow installs stable Rust, checks the locked Cargo project, builds the release binary, runs the default heat-conduction case, and verifies that all expected result files were generated.
Reproducible outputs
temperature.csvstores the temperature at every control-volume center.residuals.csvstores the convergence history.summary.txtrecords the setup and final solver values.temperature.svgprovides a portable temperature-field visualization.
What the project demonstrates
The solver exposes the full numerical workflow directly: coefficient assembly, boundary source terms, iterative updates, convergence checks, structured output, and visualization. It avoids external numerical or plotting libraries so the implementation remains compact and inspectable.
Scope and limitations
This baseline project is intentionally limited to steady conduction, constant material properties, a uniform grid, fixed-temperature boundaries, one Gauss-Seidel solver, and one demonstration case. Independent analytical or numerical validation was not part of the completed baseline, so the project should be treated as an implementation demonstration rather than a formally validated research result.