Planetary Thermal Evolution Simulator

Description
PlanetaryHeatSim is a full-featured one-dimensional planetary thermal evolution simulator built around the spherical heat diffusion equation, layered material models, radiogenic heating, and convection parameterizations. The project combines a flexible numerical backend with a modern desktop GUI, making it possible to move from physical model definition to simulation and visualization in a single environment.
What makes the project especially strong is its combination of physics configurability and numerical breadth. The code supports multiple classes of explicit and implicit ODE solvers, rich YAML-based configuration of planetary structure and constitutive laws, and a comprehensive visualization and export pipeline. Rather than being just a teaching demo, it functions as a compact research-oriented platform for experimenting with thermal evolution scenarios across planetary bodies such as Earth, Mars, the Moon, and Io.
- Implemented a 1D spherical thermal evolution model with layered material properties, radiogenic heating, and convection parameterizations.
- Added a broad solver suite including explicit RK, Adams methods, BDF, IRK, and SDIRK families.
- Built a modern GUI for YAML editing, simulation control, progress tracking, and interactive result browsing.
- Created a full results pipeline with automatic plots, exports, and parallelized temperature-profile visualization.
- Packaged preset planetary configurations for Earth, Mars, Moon, and Io to support comparative thermal studies.
Highlights and Learning Experiences
Layered thermal evolution model
A 1D spherical heat diffusion model with configurable layers, rheology, conductivity laws, and radiogenic heating.
Solver and configuration framework
YAML-driven experiment setup with a unified backend supporting explicit, implicit, multistep, and IRK-based time integration.
Interactive GUI and results pipeline
A desktop interface for editing configurations, running simulations, viewing plots, and exporting numerical data.