01 March 2023 0 7K Report

This is just a p-i-n solar cell, I've already coded. but I am getting error, the code isn't running for some reason. so please help me with the error so that i could submit that by the deadline.

go atlas

mesh space.mult=0.1

# x-axis spacing

x.mesh loc=0.0 spac=0.5

x.mesh loc=2.0 spac=0.5

# y-axis spacing

y.mesh loc=-0.05 spac=0.5

y.mesh loc=0.0 spac=0.5

y.mesh loc=0.05 spac=0.5

y.mesh loc=0.45 spac=0.5

y.mesh loc=0.55 spac=0.5

y.mesh loc=0.65 spac=0.5

y.mesh loc=0.7 spac=0.5

y.mesh loc=2.55 spac=0.5

y.mesh loc=2.7 spac=0.5

y.mesh loc=2.9 spac=0.5

# P-type InGaP region

region number=1 x.min=0.0 x.max=2.0 y.min=-0.05 y.max=0.0 material=InGaP

region number=2 x.min=0.0 x.max=2.0 y.min=0.0 y.max=0.5 material=GaAs

# i-region GaAs 0.1um

region number=3 x.min=0 x.max=2 y.min=0.5 y.max=0.6 material=GaAs

# N-type GaAs region 2um

region number=4 x.min=0.0 x.max=2.0 y.min=0.6 y.max=2.6 material=GaAs

# N-type InGaP region 0.05um

region number=5 x.min=0.0 x.max=2.0 y.min=2.6 y.max=2.65 material=InGaP

# N-type GaAs region 0.25um

region number=6 x.min=0.0 x.max=2.0 y.min=2.65 y.max=2.9 material=GaAs

electrode name=anode number=1 x.min=0.0 x.max=2.0 y.min=0.0 y.max=0.0

electrode name=cathode number=2 x.min=0.0 x.max=2.0 y.min=2.9 y.max=2.9

doping uniform conc=2e18 P-type region=1

doping uniform conc=1e18 P-type region=2

doping uniform conc=1e15 region=3

doping uniform conc=1e17 N-type region=4

doping uniform conc=1e18 N-type region=5

doping uniform conc=1e18 N-type region=6

structure outf=mid.str

beam num=1 x.o=1.0 y.o=-0.5 angle=90.0 wavel.start=0.3 wavel.end=1.0

wavel.num=300

output opt.int

log outfile=mid.log

models srh

solve init

solve b1=1.0

tonyplot mid.log

log outfile=mid.log

solve vanode=0 vstep=0.25 vfinal=1.0 name=anode

log off

tonyplot mid.log

extract init infile="mid.log"

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

extract name="Jsc (mA/cm2)" ($"Isc"*1e08*1e03/9)

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

extract name="Pm" min(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"*100/($"Jsc"*$"Voc")

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

extract name="Power_Eff" (abs($"Pm")/($"Opt_int"*9*1e-4*1e-4))*100

quit

Similar questions and discussions