Thursday, September 16, 2021

(updated) perovskite solar cell


Silvaco code:-

go atlas

mesh auto


x.m l=0.0 s=1


x.m l=1.0 s=1


y.m l=0.175 s=0.01


y.m l=0.375 s=0.01


y.m l=0.4 s=.01


y.m l=0.9 s=.1


y.m l=1.4 s=.1


y.m l=1.6 s=.1



region num=1 mat=ITO x.min=0 x.max=1.0 y.min=.175 y.max=0.375


region num=2 user.material=graphene x.min=0 x.max=1.0 y.min=0.375 y.max=0.4


region num=3 user.material=perovskite x.min=0 x.max=1.0 y.min=.4 y.max=.9


region num=4 user.material=spiro x.min=0 x.max=1.0 y.min=.9 y.max=1.6



elec num=1 name=anode x.min=0.0 x.max=1.0 y.min=0.175 y.max=0.175


elec num=2 name=cathode x.min=0 x.max=1.0 y.min=1.6 y.max=1.7 mat=gold




material material=air real.index=1.0 imag.index=0


material material=ITO sopra=Ito2.nk


material material=graphene eg300=0.25 affinity=4.1 permittivity=25 NC300=2e18 NV300=1.8e18 MUN=1.8e4 MUP=1.4e4 user.group=conductor user.default=sio2


material material=pervoskite eg300=1.55 affinity=3.93 permittivity=100 NC300=3.97e19 NV300=3.97e17 MUN=2 MUP=2 user.group=conductor user.default=sio2


material material=spiro eg300=3.0 affinity=2.45 permittivity=3 NC300=2e18 NV300=2e19 MUN=0.02 MUP=0.02 user.group=conductor user.default=sio2


doping uniform n.type conc=1e15 x.min=0 x.max=1.0 y.min=.375 y.max=.4


doping uniform p.type conc=1e19 x.min=0 x.max=1.0 y.min=.4 y.max=.9




contact name=anode


contact name=cathode workfun=5.2




save outf= struc.str


tonyplot struc.str




#############


go atlas


mesh infile = struc.str



models conmob fldmob srh optr chuang print

method newton autonr trap maxtrap=10



output con.band val.band band.par e.mobility e.velocity



beam num=1 am1.5 x.o=.5 y.o=-.5 angle=90 wavel.start=0.305 wavel.end=3.455 wavel.num=100 \

power.file=C:/sedatools/examples/solar/solarex09.spec



solve init


solve prev


solve b1=0


log outf=mie.log


solve b1=1 beam=1 lambda=0.3 wstep=0.025 wfinal=1.0




extract init infile="mie.log"


extract name="EQE1" curve(elect."optical wavelength",-(i."anode")/(elect."source photo current")) outf="EQE1_0.dat"

extract name="EQE2" curve(elect."optical wavelength",-(i."anode")/elect."source photo current"*elect."Absorption") outf="EQE1_1.dat"


tonyplot -overlay EQE1_0.dat EQE1_1.dat

solve init

solve prev

solve b1=0

log outfile=DARK.log

solve name=anode vanode=-.1 vstep=0.01 vfinal=.2

log off

tonyplot DARK.log




Solve init

solve prev

solve b1=1

log outf=illumination.log

solve name=anode vanode=-.1 vstep=0.01 vfinal=.2


log off

tonyplot -overlay DARK.log illumination.log


#parameters


extract init infile="illumination.log"

extract name="Jsc" max(curve(v."anode", i."cathode"))

extract name="JscmAcm2" $Jsc*1e08*1e03

extract name="Voc" x.val from curve(v."anode",i."cathode") where y.val=0.0

extract name="Pm" max(curve(v."anode", (v."anode" *i."cathode")))

extract name="Vm" x.val from curve(v."anode",(v."anode"*i."cathode") ) \

where y.val=$"Pm"

extract name="Im" $"Pm"/$"Vm"

extract name="FF" ($"Pm"/($"Jsc"*$"Voc"))*100

extract name="Opt_int" max(beam."1")

extract name="Eff" (1e8*$Pm/$Opt_int)*100

extract name="Power" curve(v."anode", (v."anode" * i."anode" *(-1))) outf="Power_a.dat"




tonyplot Power_a.dat


save outf= finalstrucre.str


tonyplot finalstrucre.str




quit


result:-










No comments:

Post a Comment

telegram me at t.me/KST1729 if you need any help (sorry for older one this is new one)

 sorry for older one this is new one