2D DDCC
2D DDCC is named from two dimensional Drift-diffusion Charge Control solver. This is 2D finite element based Poisson and drift-diffusion solver developed by Dr. Yuh-Renn Wu. This solver initially developed with the thermal solver. Then the Poisson and drift-diffusion solver was added into this project. This solver was initially developed to solves AlGaN/GaN HEMT structure. Therefore, the 1D Schrodinger cross section solver was added into the program for obtaining the confined state information. The electric field distribution was then used in Monte Carlo program for high field transport. After Dr. Wu returned NTU, the program was then modified to solve LED based current spreading problem. The mesh algorithm was then improve gradually in order to deal with certain problem. After years development, the 2D FEM based Schrodinger eigen solver was added. It also accept additional module to read in the optical field from 2D FD-TD program so that it can consider the solar cell problem. Then the 2D ray tracing program was added into this project to solve the light extraction problem. This solver now can solve many different problems such as trap problem, Gaussian shape tail state models, field dependent mobility, thermal, light extraction. Recently, localization landscape model was also added into this program so that it can calculate the effective quantum potential very efficiently. This code is written with Fortran language.
Command Manual
目錄
- 1 parameters assigned command
- 2 time dependent ion move
- 3 Ray Tracing parameters assigned command
- 4 2D RCWA commands
- 5 phasing out commands
- 6 Mesh setting input command
- 7 External function
- 8 Execution files
- 9 output file format
- 10 output file format (Ray Tracing)
- 11 output file format (RCWA)
- 12 Frequently used global variables used in the program
parameters assigned command
$totalregion
$ranges
$gmshlineboundary
$gmshsurfparameter
$triregionnumber
$triregiontype
$triranges
$assignparbyfunc
$parameters
$usecylindricalrz
$opertemp
$Schottky
$gatebias
$drainbias
$sourcebias
$addrefbias
$basebias
$2ndgateaddbarrier
$affinity
$gatewithworkfunc
$adddrainworkfunc
$addsourceworkfunc
$addbaseSB
$addvrefSB
$addbaseworkfunc
$addvrefworkfunc
$addsourceSB
$adddrainSB
$addbaseSB
$addvrefSB
$infile
$checkmesh
$outfile
$maxiterations
$errors
$call2Dexciton
$2Dexcitonpar
$solveeigenvalue
$solveeigenbias
$eigensetting
$usefeast
$eigencalEl
$assignsumrange
$DoEalloyfluc 2D
$polcharge
$affinity
$usefieldmufunc
$gaussiantraps
$traps (2D)
$multitraps
$fieldenhancetraps
$fieldenhancemultitraps
$landscape2D
$landscapeDOS (2D)
$landshiftEcv
$generation
$usegenfunc
$usegenspecfunc
$usespecgen
$ifimpact_ion
$ifschockley
$ifuseconstvb
$iftrialmod
$usepardiso
$useevprofile
$xend
$yend
$useevversusT
$usedynataunrfunc
$useemufunc
$useemunfunc
$useemupfunc
$useemuTfunc
$useconstantmu
$useresistor
$useconstIg
$useconstId
$outputwave
$ifgainwithpol
$ifcalculategain
$ifcalcgth
$modelgainQWregion
$thermaldiff
$heatiterative
$heatbndistance
$maxTlimit
$heatsolvebytime
$heatsource
$timeevolve
$usechannelaveT
$solvetimestep2D
$savetimestep2D
$usetaunrbyfunc
$usemubydopeT
$callpoissonexternal
$call2DNEGF
$Trapmemorymode
$RandomizedR
$usenonRAugRasheat
$activateStimEL
$minoutput
$call2DRCWA
$only2DRCWA
$additionalefmass
$solvecavitymode
$ifonlysolvecavity
$iffarfield
$solveRE
$useBTBT
$usenewBTBT
$adddiffusivedope
$LowTmode
time dependent ion move
Ray Tracing parameters assigned command
$element_total/$photon_element_pass
$trifilename
$fetfilename
$totalparameterregion
$ranges (RayTracing)
$parameters (RayTracing)
$pattern_tri_region
$pattern_tri_period
$Metalregion
$setradseparately
$tracephase
$Metaltri
$diffusortype
gmsh setting
$setradseparate
$gmshfilename
$gmshdiffusor
$gmshparameterregion
Output setting
$Light_intensity_region_TBLR
$photon_total
$initialanglerange
$consider3dipoles
$TETMratio
$setcountedexitlength
$traceraypath
2D RCWA commands
$RCWAtotallayer
$RCWAfourier
$RCWAanglelength
$RCWAangle2
$RCWAwidth
$RCWAoxide2
$RCWAperiod
$RCWAlamdalength
$RCWAsourcelength
$RCWAsourceposition
$RCWAsourceintensereal
$RCWAsourceintenseimage
$RCWAlamda2
$RCWAxdiv
$RCWAxnode
$RCWAzdiv
$RCWArefractiveindexreal
$RCWArefractiveindex
$RCWAabsorption2
$RCWAabsorption
$RCWAdielectric
$RCWAdielecabsorption
$RCWAoxidedielectric
$RCWAoxideabsorption
$RCWAthickness
$RCWAcavitystart
$RCWAcavityend
$$RCWArcaa
$ifRCWAsparse
$ifRCWAzgbsv
phasing out commands
$usedvprofile
$fermitable
$ifpulsemode
$ifdynarecombine
$initial
$ifshiftef
$ifshiftgateef
$ifshiftallef
Mesh setting input command
$xsecysecmaxob
$xnode
$ynode
$xdiv
$ydiv
$ygradualdiv
$xgradualdiv
$xd
$contact
$bottomcontactnum
$areacontact
$emptysection
$emptyperiodshape
$emptyperiodtriangle
$deformboundary
$deformperiod
$deformafter
$deformbeforemod
$emptytriangle
$emptysineregion
$emptysinesum
External function
function getmunbyET(ind,Ex,Ey,T,xp,yp)
function getmupbyET(ind,Ex,Ey,T,xp,yp)
function usefielddependent_n(indEl, matind ,Ex,Ey,T,xp,yp)
function usefielddependent_p(indEl, matind, Ex, Ey, T, xp, yp)
subroutine parameter_mod
subroutine updatetaunp
subroutine callgeneration(x,y,z,generation,ind)
subroutine callspecgeneration(nnode,x,y,eg,generation)
subroutine callspecgen(Annode,x,y,Eg,generation)
subroutine exciton2Dquench( )
Execution files
2D-ddcc-win64.exe & 2D-ddcc-win32.exe
2D-ddcc.exe (Linux version)
2D-ddcc-dyna.exe (Linux version with all dynamic link modules
raytrace2D-win64.exe | raytrace2D.exe
ddcc_2d.m & ddcc_2d.fig
resultopen.m resultopen.fig
Material.mat
load_gmsh.m
createTable.m
libiomp5md.dll and libiomp5md.lib
output file format
*.tri
*.fet
*.stimP
*.e
*.jn
*.iv (2D)
*.QE
*.stimsum
*.overlap
*.wv & *.wvp
*.timeiv
*.IQEALL
*.Nsum
*.time_ion
*.cavTE
*.fftri
*.cavffTE
*.lightextract
*.1dgainQW
*.modelgain
*.modelgainpeak
*.trans
*.NtSpt
*.ratecalEL
*.ratecalLIV
*_generation.dat
*_gensummary.txt
*TE_rcwaEy.dat
*TE_rcwaHx.dat
*TM_rcwaHy.dat
*TM_rcwaEx.dat
*TM_rcwaEz.dat
output file format (Ray Tracing)
*.photon.out
*.window.out
*.raytrace.out
*.angle.out
*.absorption.out
*.info.out
*raypathsave.way
*.phasesaved
*.angle.4surf.out
*.E-field-phasesum.out
output file format (RCWA)
*.rcwa2d.dat
*.rcwatopreflectivity.dat
*.rcwatoptransmission.dat
*.rcwabottomreflectivity.dat
*.rcwabottomtransmission.dat
*.rcwatopemmision.dat
*.rcwabottomemmision.dat
*.rcwaef2d.dat
*.rcwaEy.dat
*.rcwaHy.dat
*.x.dat
*.z.dat
*.degree.dat
*.farfield.dat
Frequently used global variables used in the program
Region based variables
par%xxxx
affinitypar(:)
Node based variables
sprsvc(:)
sprst(:)
sprsefn(:)
sprsefp(:)
gaussiantrapNt(:,:)
gaussiantrapEt(:,:)
gaussiantrapdegenercy(:,:)
gaussiantraptaun(:,:)
gaussiantraptaup(:,:)
gaussiantrapsigma(:,:)
Element based variables