Plug in a surface generation rate G₀ (cm⁻³s⁻¹) and a doping profile. The engine derives the equilibrium n(x)/p(x), the excess-carrier profile Δn(x) = G₀·τ·exp(-x/L_n), and the 1-D Poisson E(x), V(x). Decoupled from the generation mechanism (light, impact, surface traps — anything that gives a G₀).