Follow a photon from the sun into the silicon, watch the electron and hole it creates, then see the power travel through the inverter into the house and battery. The same single-diode model drives the picture, the I-V curve and the day's energy ledger.
Blue: current; orange: power. Dashed grey: the same module at standard test conditions (1000 W/m2, 25 C cell). White dot: maximum power point; green dot: where the inverter holds the array now.
Each button simulates whole days with the current settings and tabulates the result.
The science
Photon to electron. A photon with energy E = hc/λ above the silicon band gap (1.12 eV, wavelength below about 1100 nm) lifts an electron across the gap, leaving a hole. The built-in field of the p-n junction sweeps electrons into the n layer and holes into the p layer, so the cell becomes a current source: the photocurrent Iph ∝ G. Photons below the gap pass through and photons far above it waste the extra energy as heat; with other losses this caps a single junction near 33 % (Shockley-Queisser) and commercial modules at roughly 20 %.
Single-diode model. I = Iph − I0 (e(V + I Rs)/a − 1) − (V + I Rs)/Rsh, with a = n Ns kT/q (n = 1.1, 60 cells), Rs = series and Rsh = shunt resistance. The implicit equation has the closed form I = [Rsh(Iph + I0) − V]/(Rs + Rsh) − (a/Rs) W(·) with the Lambert W function. I0 is fixed at standard test conditions from the datasheet-style Isc = 9.8 A and Voc = 38.4 V and scales with temperature as I0 ∝ T³ exp(−Egq/(nk) (1/T − 1/Tref)); Iph rises 0.05 % per kelvin. Hotter cells lose voltage (about −1.9 mV/K per cell) and so lose about 0.4 % of power per kelvin; cell temperature follows Tc = Ta + (NOCT − 20)/800 · G with NOCT = 45 C.
Sun and sky. Declination δ = 23.45° sin(360 (284 + n)/365), cos θz = sin φ sin δ + cos φ cos δ cos ω; clear-sky global horizontal irradiance (Haurwitz) 1098 cos θz e−0.057/cos θz scaled by a cloud factor 1 − 0.75 c3.4 (Kasten-Czeplak form), split into beam and diffuse with the Erbs correlation, then moved onto the tilted plane (Duffie-Beckman incidence angle, isotropic sky, albedo 0.2). These fits are empirical.
System. The inverter (96 % efficient, clipping at 1/1.15 of the module rating) feeds the house first; surplus charges the battery (92 % round trip, 10 to 100 % window, power limit), then goes to the grid; a deficit is taken from the battery, then from the grid. Ledger: Epv + Eimport = Eload + Eexport + ΔEstored + Eloss. The house profile is an invented smooth curve, not a measured household.
Simplifications. Identical modules, no mismatch, wiring or inverter-voltage window; the loss slider stands for dirt or shade as a uniform photocurrent loss (real partial shade is non-linear and activates bypass diodes); no spectral, angle-of-incidence or degradation effects; the whole array sits in one plane; the battery has no ageing. The cut-away is a diagram: layer thicknesses are exaggerated and the carrier paths are schematic. Module numbers are illustrative, not a real product. Assets built with Blender; scene by Three.js.
Spot-check list. Haurwitz, Erbs and Kasten-Czeplak coefficients; NOCT formula; the Voc temperature slope against a datasheet.
Made with Blender and Three.js.