An Open Source Python Package to Simulate Micro Thermoelectric Generators
D. Beretta
TL;DR
The paper tackles the complexity of designing micro thermoelectric generators ($\mu$TEGs) by introducing an open-source Python package that implements a lumped-element, non-linear multi-physics model based on Beretta et al. It solves for the device temperature field using a finite-difference scheme and SciPy's $fsolve$, producing per-unit-area performance metrics such as $p$, $\eta$, $V_{oc}$, and $I_{sc}$ as functions of geometry and material properties. The software emphasizes accessibility, offering a GUI, JSON-based parameter handling, and pip-installability with code hosted on GitHub for transparency and customization. Representative studies compare different thermal couplings to show how optimum thermocouple length and performance depend on heat-transfer conditions, highlighting design trade-offs and the potential for nanoscale implementations under strong coupling. Overall, the tool provides rapid prototyping capabilities that can inform both experimental work and more advanced FEM simulations.
Abstract
This article presents an open-source Python package for simulating micro-thermoelectric generators, based on the work by D. Beretta et al. (Sustainable Energy Fuels, 2017). Featuring a user-friendly graphical user interface and robust computational capabilities, the tool is designed for use by scientists, researchers, and engineers to analyze and optimize device designs. The software calculates key performance metrics such as power, efficiency, electrical resistance, open circuit voltage, and short circuit current per unit of device area, based on the device design and material properties. The full source code is available for download on GitHub, enabling further customization.
