2.1.2 The Drift-Diffusion Equations
The current continuity equations relate the electron (hole) current density \(J_{n(p)}(x)\) to the generation (\(G(x)\)) and recombination (\(R(x)\)) rates. In steady-state (\(\mathtt{\require{color}{\color[rgb]{0.000000000000000,0.500000000000000,0.500000000000000} SimSS}}\)), one has
whereas \(\mathtt{\require{color}{\color[rgb]{0.000000000000000,0.500000000000000,0.500000000000000} ZimT}}\) solves the transient equations
and
The flow of current is driven by gradients in the carrier densities and the potential as described by the drift-diffusion equations. Provided there are no heterojunctions—so the conduction and valence band edges and the effective densities of states remain constant—then one has for electrons
and for holes, one has
In the case of a heterojunction, the accompanying changes in the band edges and the effective densities of states modify the drift-diffusion equations. This can be accounted for by replacing the potential \(V(x)\) in Eqs (??) and (??) with generalised potentials \(V_{gn}(x)\) and \(V_{gp}(x)\) for electrons and holes, respectively. This is detailed in section 2.3.
The total current density is then given by
where \(J_D(x)\) is the displacement current, and \(J_{\rm n(p)ion}(x)\) are the negative (positive) ion currents. In steady-state, the last three terms in Eq. (??) are zero. 1 The movement of ions is treated in section 2.7.
Both \(\mathtt{\require{color}{\color[rgb]{0.000000000000000,0.500000000000000,0.500000000000000} SimSS}}\) and \(\mathtt{\require{color}{\color[rgb]{0.000000000000000,0.500000000000000,0.500000000000000} ZimT}}\) iteratively solve a set of discretised equations: the Poisson equation and the continuity equations are discretised and solved iteratively. These discretised equations can be found in Ref. [ 1 ] : In the transient case, these take the form of Eqs (6.1-72, 73, and 74), where the transient equations correspond to Eqs (6.4-32) and (6.4.33) 2 in Ref. [ 1 ] ). In order to improve the convergence behaviour, these equations are linearised, see Ref. [ 3 ] for further details.
The discretization of the drift-diffusion equations requires the use of the Bernoulli function, [ 1 ]
This function is used in every grid point and in every loop, so a fast implementation of this function is of the essence. Moreover, simply using the function as defined in Eq. (??) creates a problem if \(x=0\). To avoid these issues, we use Taylor expansions around \(x=0\) and only use the full expression for very large absolute \(x\)—which is quite rare. Figure 2.2 shows the exact and approximated Bernoulli function and the error of this approximation. As can be seen, the absolute error is smaller than \(3.5 \times 10^{-4}\), which translates into a relative error of less than \(8\times 10^{-4}\).