Home▸Energy & Thermodynamics▸Shockley–Queisser Photon Utilization Limit (2D)

Shockley–Queisser Photon Utilization Limit (2D)

Interactive 2D solar-cell spectral limit simulator: watch individual sunlight photons sampled from a real Planck blackbody spectrum strike a semiconductor slab, colored by whether they're absorbed, thermalized as heat, or transmitted and lost, and sweep the bandgap to find the theoretical peak conversion efficiency.

Energy & Thermodynamics2DAdvanced60 FPS📱 Mobile-adapted⇄ 3D version
2d-solar-energy-energy ↗ Open standalone

Every solar cell is capped by a hard spectral ceiling long before any engineering losses come into play: a photon carrying more energy than the semiconductor's bandgap wastes the excess as heat, and a photon carrying less energy is not absorbed at all. This 2D cross-section simulator renders individual sunlight photons — sampled from a real Planck blackbody spectrum for the Sun's surface temperature — as they stream toward a semiconductor slab, colored by their fate: absorbed and converted, absorbed but partly thermalized, or transmitted and lost. A live particle-counting efficiency measurement runs alongside a closed-form numerical integration of the Shockley 1961 "ultimate efficiency" formula, so sweeping the bandgap slider shows both the simulated and theoretical curves converge on the same ~44% peak near 1.1 eV — the same spectral sweet spot silicon happens to sit at.

⚙ Under the hood

2D companion to the 3D Shockley-Queisser spectral-limit model: individual sunlight photons sampled from a real Planck blackbody spectrum stream in from the left toward a flat semiconductor slab, colored by whether they're absorbed and converted, absorbed but thermalized as heat, or transmitted through unabsorbed, while a live particle count and a closed-form numerical integral both track the same ultimate photovoltaic efficiency curve as the bandgap slider sweeps.

solar energyphotovoltaicsShockley-Queisser limitsemiconductor physicsPlanck spectrumrenewable energy2d-simulation

2D · HTML5 Canvas 2D · 60 FPS target · runs fully client-side, no install

What did you find?

Add reproduction steps (optional)