💥1 概述
文献来源:
改进了著名的Scharfetter-Gummmel(SG)方案,用于半导体和气体放电等离子体的对流主导问题。考虑了一维对流-扩散方程。结果表明,如果两个相邻节点之间的电位降远小于电子温度,则原始SG方案是准确的。为了满足此条件,在相邻节点之间插入了一对附加节点。这些“虚拟”节点之间的距离可以选择得足够小,以高精度获得细胞结合处的通量。虚拟节点上的数字密度是通过插值法找到的。测试表明,该方案的精度与FCT技术相当,但相比之下,它不会对快速变化的功能产生“楼梯”干扰。
原文摘要:
A well-known Scharfetter-Gummel (SG) scheme for convection-dominated problems of semiconductor and gas discharge plasmas is improved. A one-dimensional convection-diffusion equation is considered. It is shown that the original SG scheme is accurate if the potential drop between two adjacent nodes is much less than the electron temperature. To satisfy this condition a pair of additional nodes between adjacent nodes are inserted. The distance between these "virtual" nodes can be choosen small enough to obtain flux at the cell bound with the high accuracy. The number densities at virtual nodes are found by interpolation. Tests have shown that the accuracy of this scheme is comparable to the FCT technique, but in contrast it does not produce a "staircase" disturbance on rapidly changing functions.
📚2 运行结果
【漂移-扩散通量重建 FV 方案】用于半导体和气体放电模拟的电子传输的更准确的 Sharfetter-Gummel 算法(Matlab代码实现)_哔哩哔哩_bilibili
部分代码:
% Constants from original paper mue = 1.0; De = 1.0; A = 1.0e+4; epsilon = 0.01; % Linear field E = A*x; h(1:N-1) = x(2:N)-x(1:(N-1)); h(N) = h(N-1); h(N+1) = h(N); for k=1:(N-1) % Distance between virtual nodes h_v (see (21)) h_v = sqrt(2.0*epsilon*De*h(k)/mue/abs(E(k+1)-E(k))); % If h_v>=h then use SG scheme if (h_v >= h(k)) if 0.5*abs(E(k+1)+E(k))> eps alpha = mue*h(k)/De*0.5*(E(k+1)+E(k)); I0 = ( exp(alpha) - 1.0 )/alpha; j(k+1) = De/h(k)*(u(k) - exp(alpha)*u(k+1))/I0; else
🎉3 参考文献
部分理论来源于网络,如有侵权请联系删除。