go Athena
line x loc=0.00 spac=0.05
line x loc=0.25 spac=0.05
line x loc=0.5 spac=0.05
line x loc=0.75 spac=0.05
line x loc=1 spac=0.05
line x loc=1.25 spac=0.05
line x loc=1.5 spac=0.05
line x loc=1.75 spac=0.05
line x loc=2 spac=0.05
line x loc=2.25 spac=0.05
line x loc=2.5 spac=0.05
line x loc=3 spac=0.05
line x loc=3.25 spac=0.05
line x loc=3.5 spac=0.05
line x loc=3.75 spac=0.05
line x loc=4 spac=0.05
line x loc=4.25 spac=0.05
line x loc=4.5 spac=0.05
line x loc=4.75 spac=0.05
line x loc=5 spac=0.05
line y loc=0.05 spac=0.05
line y loc=0.85 spac=0.05
line y loc=0.9 spac=0.05
line y loc=0.95 spac=0.05
line y loc=1.05 spac=0.05
line y loc=1.1 spac=0.05
line y loc=1.6 spac=0.05
#
init oxide
etch start x=0 y=0.05
etch cont x=0.25 y=0.05
etch cont x=0.5 y=0.2
etch cont x=0.75 y=0.2
etch cont x=1 y=0.05
etch cont x=1.25 y=0.05
etch cont x=1.5 y=0.2
etch cont x=1.75 y=0.2
etch cont x=2 y=0.05
etch cont x=2.25 y=0.05
etch cont x=2.5 y=0.2
etch cont x=2.75 y=0.2
etch cont x=3 y=0.05
etch cont x=3.25 y=0.05
etch cont x=3.5 y=0.2
etch cont x=3.75 y=0.2
etch cont x=4 y=0.05
etch cont x=4.25 y=0.05
etch cont x=4.5 y=0.2
etch cont x=4.75 y=0.2
etch done x=5 y=0.05
save outf=abc.str
go Atlas
mesh infile=abc.str
x.mesh loc=0.00 spac=0.05
x.mesh loc=1 spac=0.05
x.mesh loc=2 spac=0.05
x.mesh loc=3 spac=0.05
x.mesh loc=4 spac=0.05
x.mesh loc=5 spac=0.05
y.mesh loc=0.05 spac=0.05
y.mesh loc=0.85 spac=0.05
y.mesh loc=0.9 spac=0.05
y.mesh loc=0.95 spac=0.05
y.mesh loc=1.05 spac=0.05
y.mesh loc=1.1 spac=0.05
y.mesh loc=1.6 spac=0.05
region num=1 user.material=CH3NH3PbI3 x.min=0 x.max=5 y.min=0.05 y.max=1.05
region num=2 material=air x.min=0 x.max=1 y.min=0.85 y.max=1.05
region num=3 material=air x.min=2 x.max=3 y.min=0.85 y.max=1.05
region num=4 material=air x.min=4 x.max=5 y.min=0.85 y.max=1.05
region num=5 user.material=NiOx x.min=0 x.max=1 y.min=0.85 y.max=0.95
region num=6 user.material=NiOx x.min=2 x.max=3 y.min=0.85 y.max=0.95
region num=7 user.material=NiOx x.min=4 x.max=5 y.min=0.85 y.max=0.95
region num=8 material=air x.min=0.05 x.max=0.95 y.min=0.9 y.max=0.95
region num=9 material=air x.min=2.05 x.max=2.95 y.min=0.9 y.max=0.95
region num=10 material=air x.min=4.05 x.max=4.95 y.min=0.9 y.max=0.95
region num=11 material=Nickel x.min=0.05 x.max=0.95 y.min=0.9 y.max=0.95
region num=12 material=Nickel x.min=2.05 x.max=2.95 y.min=0.9 y.max=0.95
region num=13 material=Nickel x.min=4.05 x.max=4.95 y.min=0.9 y.max=0.95
region num=14 material=Al2O3 x.min=0 x.max=1 y.min=0.95 y.max=1.05
region num=15 material=Al2O3 x.min=2 x.max=3 y.min=0.95 y.max=1.05
region num=16 material=Al2O3 x.min=4 x.max=5 y.min=0.95 y.max=1.05
region num=17 material=ZnO x.min=0 x.max=5 y.min=1.05 y.max=1.1
region num=18 user.material=FTO x.min=0 x.max=5 y.min=1.1 y.max=1.6
region num=19 user.material=glass x.min=0.0 x.max=5 y.min=1.6 y.max=1.63
electrode region=11 name=anode x.min=0.05 x.max=0.95 y.min=0.9 y.max=0.95 material=Nickel
electrode region=12 name=anode x.min=2.05 x.max=2.95 y.min=0.9 y.max=0.95 material=Nickel
electrode region=13 name=anode x.min=4.05 x.max=4.95 y.min=0.9 y.max=0.95 material=Nickel
electrode region=18 name=cathode x.min=0 x.max=5 y.min=1.1 y.max=1.6 material=FTO
struct outfile=solar.str
go atlas
mesh infile=solar.str
doping uniform p.type conc=1e17 reg=1
doping uniform p.type conc=1e18 reg=5
doping uniform p.type conc=1e18 reg=6
doping uniform p.type conc=1e18 reg=7
doping uniform n.type conc=1e19 reg=17
material material=CH3NH3PbI3 user.group=semiconductor user.default=GaAs eg300=1.55 affinity=3.9 permittivity=30 NC300=4.42e17 NV300=8.72e18 MUN=10 MUP=5 index.file=C:/sedatools/lib/atlas/5.28.1.R/common/sopra/PVK2.NK taun0=1e-6 taup0=1e-6 AUGN=0.88e-29 AUGP=0.88e-29 COPT=3.27e-11
material material=NiOx user.group=semiconductor user.default=sio2 eg300=3.75 affinity=1.46 permittivity=10.7 NC300=2.8e19 NV300=1e19 MUN=12 MUP=2.8 index.file=C:/sedatools/lib/atlas/5.28.1.R/common/sopra/NiOx.nk taun0=1e-6 taup0=1e-5
material material=Nickel index.file=C:/sedatools/lib/atlas/5.28.1.R/common/sopra/Ni-index.nk
material material=Al2O3 index.file=C:/sedatools/lib/atlas/5.28.1.R/common/sopra/Al2O3-index.nk
material material=ZnO user.group=semiconductor user.default=sio2 eg300=3.6 affinity=4 permittivity=9 NC300=2.2e18 NV300=1.8e19 MUN=100 MUP=25 index.file=C:/sedatools/lib/atlas/5.28.1.R/common/sopra/SnO2-index.nk taun0=3.4e-7 taup0=3.4e-7
material material=FTO user.group=semiconductor user.default=ITO index.file=C:/sedatools/lib/atlas/5.28.1.R/common/sopra/FTO.NK
material material=glass user.group=insulator user.default=air real.index=1.5168 imag.index=9.7525e-9
###including models in simulations###
models bipolar fermi srh fldmob conmob auger optr print
method newton maxtrap=20
output opt.int band.temp con.band val.band charge polar.charge band.param e.mobility h.mobility u.srh u.radiative u.auger permi
contact name=anode workf=5.1
contact name=cathode workf=4.5
solve init
solve prev
save outf=solar1.str
tonyplot solar1.str
solve init
solve prev
log outf=solar_dark.log
solve vanode=0.0 name=anode vstep=0.01 vfinal=1.3
log off
###SUNLIGHT###
beam num=1 x.orig=2.5 y.orig=-1.7 angle=90 power.file=C:/sedatools/lib/atlas/5.28.1.R/common/Am15-300-900.SPEC min.window=-2.5 max.window=2.5 front.reflect
solve init
Solve prev
Solve b1=0.001
Solve b1=0.01
Solve b1=0.1
Solve b1=1
log outf=solar_light.log
solve vanode=0.0 name=anode vstep=0.01 vfinal=1.3
tonyplot -overlay solar_dark.log solar_light.log
log off
struct outfile=solar2.str
tonyplot solar2.str
###_Post_Processing_###
extract init infile="solar_light.log"
extract name="Jsc" y.val from curve(v."anode", i."cathode") where x.val=0.0
extract name="JscmAcm2" $Jsc*20e06*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="Eff"(20e06*$Pm/(0.1))*100
tonyplot P.dat
go atlas
mesh infile=solar2.str
material material=CH3NH3PbI3 user.group=semiconductor user.default=GaAs eg300=1.55 affinity=3.9 permittivity=30 NC300=4.42e17 NV300=8.72e18 MUN=10 MUP=5 index.file=C:/sedatools/lib/atlas/5.28.1.R/common/sopra/PVK2.NK taun0=1e-6 taup0=1e-6 AUGN=0.88e-29 AUGP=0.88e-29 COPT=3.27e-11
material material=NiOx user.group=semiconductor user.default=sio2 eg300=3.75 affinity=1.46 permittivity=10.7 NC300=2.8e19 NV300=1e19 MUN=12 MUP=2.8 index.file=C:/sedatools/lib/atlas/5.28.1.R/common/sopra/NiOx.nk taun0=1e-6 taup0=1e-5
material material=Nickel index.file=C:/sedatools/lib/atlas/5.28.1.R/common/sopra/Ni-index.nk
material material=Al2O3 index.file=C:/sedatools/lib/atlas/5.28.1.R/common/sopra/Al2O3-index.nk
material material=ZnO user.group=semiconductor user.default=sio2 eg300=3.6 affinity=4 permittivity=9 NC300=2.2e18 NV300=1.8e19 MUN=100 MUP=25 index.file=C:/sedatools/lib/atlas/5.28.1.R/common/sopra/SnO2-index.nk taun0=3.4e-7 taup0=3.4e-7
material material=FTO user.group=semiconductor user.default=ITO index.file=C:/sedatools/lib/atlas/5.28.1.R/common/sopra/FTO.NK
material material=glass user.group=insulator user.default=air real.index=1.5168 imag.index=9.7525e-9
contact name=anode workf=5.1
contact name=cathode workf=4.5
solve init
solve prev
beam num=1 x.orig=2.5 y.orig=-1.7 angle=90 power.file=C:/sedatools/lib/atlas/5.28.1.R/common/Am15-300-900.SPEC min.window=-2.5 max.window=2.5 front.reflect
output opt.int band.temp con.band val.band charge polar.charge band.param e.mobility h.mobility u.srh u.radiative u.auger permi
models bipolar fermi srh fldmob conmob auger optr print
solve init
solve prev
log outf=solar3.log
solve init
solve prev
solve b1=1 beam=1 lambda=0.03 wstep=0.003 wfinal=0.9
tonyplot solar3.log
extract init inf="solar3.log"
extract name="IQE"curve(elect."optical wavelength",-(i."anode")/elect."available photo current") outf="IQE.dat"
extract name="EQE" curve(elect."optical wavelength",-(i."anode")/elect."source photo current") outf="EQE.dat"
extract name="EQE2"\
curve(elect."optical wavelength", -(i."anode")/elect."source photo current"*elect."Absorption") outf="EQE2.dat"
tonyplot-overlay IQE.dat EQE.dat EQE2.dat
quit