Drift Diffusion

From Flooxs
Revision as of 20:26, 28 January 2010 by Nrowsey (talk | contribs) (created page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

FLOODS uses the the sgrad() operator (the Scharfetter-Gummel discretization scheme for the grad() operator) to model Drift-Diffusion. Do this for each material and species you want drift-diffusion in (i.e. for each species that is charged and mobile). The example below is the drift-diffusion model of electrons (Elec) and holes (Hole) in silicon (Silicon).

Set error tolerances, define constants

pdbSetDouble Silicon Elec Abs. Error 1.0e-5
pdbSetDouble Silicon Elec Rel. Error 1.0e-2
pdbSetDouble Silicon Hole Abs. Error 1.0e-5
pdbSetDouble Silicon Hole Rel. Error 1.0e-2

set MOB 350.0;# mobility
set Vt 0.025;# kT/q

if you are using Boltzmann statistics (equivalent to Gamma_n,p=1)

set eqnE "ddt(Elec)-$MOB*$Vt*sgrad((Elec), +DevPsi/$Vt)";#if your species is negatively charged:
set eqnH "ddt(Hole)-$MOB*$Vt*sgrad((Hole), -DevPsi/$Vt)";#if your species is positively charged:

if you are using Fermi-Dirac statistics

set eqnE "ddt(Elec)-$MOB*$Vt*sgrad((Elec), +DevPsi/Vt-log(Gamma_n))";#if your species is negatively charged:
set eqnH "ddt(Hole)-$MOB*$Vt*sgrad((Hole), -DevPsi/Vt+log(Gamma_p))";#if your species is positively charged:

Store the transport equations in the pdb

pdbSetString Silicon Elec Equation $eqnE;#store the transport equation in the pdb
pdbSetString Silicon Hole Equation $eqnH;#store the transport equation in the pdb