The flat companion of the 3D cut-away. Cross-section: photons, electron-hole pairs and energy bands. I-V plane: the curves with the maximum power point. Same physics module as the 3D version.
Each button simulates whole days or a measured curve with the current settings and compares it with theory.
The science
Photon to electron. A photon has energy E = hc/λ. Above the silicon band gap (1.12 eV, wavelength below about 1100 nm) it lifts an electron across the gap and leaves a hole; the excess energy becomes heat. The p-n junction field separates the pair, so the cell is a current source with photocurrent Iph ∝ G.
Single-diode model. I = Iph − I0(e(V+I Rs)/a − 1) − (V+I Rs)/Rsh, a = n Ns kT/q (n = 1.1, 60 cells). It is solved in closed form with the Lambert W function and checked against bisection below. I0 is fixed from datasheet-style STC values (Isc 9.8 A, Voc 38.4 V; illustrative numbers, not a specific product) and scales with temperature through the band gap; Voc drops about 0.1 V per 10 K.
Sun and sky. Declination δ = 23.45° sin(360(284+n)/365), cos θz = sin φ sin δ + cos φ cos δ cos ω; clear-sky global irradiance by Haurwitz 1098 cos θz e−0.057/cos θz, cloud factor 1 − 0.75 c3.4, beam/diffuse split by the Erbs correlation, isotropic sky plus 20 % ground reflection on the tilted plane. Cell temperature Tc = Ta + (NOCT − 20)/800 · G.
System. Inverter 96 % efficient, clipping at 1/1.15 of the array rating; surplus charges the battery (92 % round trip, 10 to 100 % window, power limit), then the grid; a deficit comes from the battery, then the grid. The energy ledger closes to machine precision (check below).
Simplifications. Identical modules, no mismatch or wiring loss, no spectral or angle-of-incidence effects, no ageing; the dirt slider is a uniform photocurrent loss (real partial shade is non-linear). The band strip and photon paths are schematic diagrams, not simulations of carrier transport. Spot-check: Haurwitz, Erbs and Kasten-Czeplak coefficients, NOCT formula, the Voc temperature slope against a datasheet.