Home

# Modeling a Nanostructured Solar Cell

Problem: How to develop solar cells with a new (higher) efficiency; grätzel cells?

There are many things said about what's most important for the solar cell. So what they need is a model to know what's the rate is limits for the whole system. By then they can choose what combination of parameters will give the best solar cell. The model shown is a one-dimensional non-steady state model; a start to compare it with the Laser experiments. The laser experiments are one of the things they use to predict the efficiency.

But without a model, does experiments really tell one anything? This model is only for one excitation from a laser beam and to analyze how the decay of all species are. There is a model done for steady state, but its not really working very good in practice. Simulating the non-steady state model for some time should converge to the steady state solution when there is equilibrium in the system. This means when the change of all species are zero over the film. This could be interesting to compare with other steady-state models.

When we are talking about efficiency, it should be for simulation of the whole system. Then we have to add certain things. There are continuous excitations of electrons which is the starting conditions in this model for the electrons and the excited dye. There are a few more reactions and we have to consider the other part of the solar cell which isn't contained by nano-structured TiO2.

The main thing about the efficiency is that we want as many electrons leaving the back contact which is at x=0. In the reality the electrons will go out in an outer circuit to make a full circuit. But in the Laser experiments this does not happen because the outer circuit is open. In reality we will get out a current dependent on the incident light. There are many ways to measure the efficiency. IPCE(\lambda) incident-photon-to-current efficiency says how much of the incident light was converted to external current.

Short review of the system

We have a dye sensitizer attached to nano-structured Titanium dioxide (TiO2) film. The nano-structured particles are in a dye which transports the electrons from the electrode to the dye sensitizer. Incident light at a certain wavelength excites electrons in the dye sensitizer. So what happens to this electron after the excitation? A very fast process in nanosecond scale injects the electron to the TiO2 and its making a random walk (that's what most people think its doing) to the back contact. A new electron from the dye is put in the place of the injected electron. The electron's goes through the nano-structured film to a back contact to the outer circuit and we have a total circuit.

But there are other reactions involved in the process. The excited electron can travel other ways then to the back contact like reacting with the dye or dye sensitizer. These reactions are limiting the efficiency of the cell.

Thus I thought it would be a good idea for the model to set up rate constants for all these reactions. Make a discretization along x which is the distance to the back contact. And the step through time and see how the kinetics, diffusion and the electric field is changing the concentration of the species along x for different times.

A macroscopic model for the concentration of s ( the dye sensitizer) could look something like this:

kinetics:
ds(x,t)/dt = -k_3*s(x,t)*e(x,t)-k_4*s(x,t)*i(x,t)
(k_3 and k_4 rate constants e = electron concentration, i = iodine conc.)

diffusion:
ds(x,t) / dt = D*d^2(s(x,t))/dx^2
(D = diffusion constant)

electric field E(x,t):
ds(x,t) / dt = my*ds(x,t) /dt*dE(x,t)/dt
(my = mobility for the species)

The electric field we get from integrating concentrations of all the charged species along x.

Explanations of each color:  = the dye which is the charge carrier, giving new electrons to the dyes and get new one at the anode. It is a redox couple of Iodine. It can also react with the excited electrons which gives a less good efficiency. There are also other leakage's that contribute to decline. = Dye molecules, the electrons of those are excited at incident light of certain wavelengths = The nanostructured semi conductor, most used is TiO2, the electrons diffuse in this medium towards the back contact. = back contact (x=0), where the electrons go to get to outer circuit, anode. = end of the nanostructured film, x=8*10^(-6) = the 'entrance' for the electrons from outer circuit, the cathode.

S+ = excited dye         S = dye             I- = Iodine       I3- = three iodine

There are some reactions between the species during simulation with reaction rates k1..k6
{S+} + {e-} -> {S} k_1             {S+} + {I-} -> {I0} k_2           {I0} + {I-} -> {I02-} k_3
2{I02-} -> {I3-} + {I-} k_4       {I02-} + {e-} -> 2{I-} k_5       {I3-} + 2{e-} -> 3{I-} k_6

The concentrations of each species is defined as
s(x,t) = {s+}           i(x,t) = {I-}         e(x,t) = {e-}
w(x,t) = {I02-}      q(x,t) = {I3-}       z(x,t) = {I0}

The starting conditions are ( after a laser pulse there is excitation of the dyes s(x,0) and we look at the relaxation of all species after that)
s(x,0) = 360*10^(-9)*0.34*10^6*0.1*exp(-0.34*10^6*x)
i(x,t) = 0.5         e(x,t) = s(x,0)
w(x,t) = 0.0       q(x,t) = 0.05       z(x,t) = 0.0

The differential equations with electric field diffusion and reactions with the diffusion constants: Di, De, Dw, Dq, Dz; and mobility constants: my_s, my_i, my_e, my_w, my_q we set the constants.

mobility:
my_s, my_i, my_w, my_q = 1.5*10^(-9)*1.602*10^(-19)/(1.38*10^(-23)*273)
my_e = 200*10^(-9)*1.602*10^(-19)/(1.38*10^(-23)*273)

 diffusion: Ds, Di, Dq, Dw = 1.5*10^(-9) De = 200*10^(-9) rate constants: k_1 = 1.0* 10^(-6)     k_2 = 3.0* k_1     k_3 = 4.0* k_1 k_4 = 5.0* k_1           k_5 = 6.0* k_1     k_6 = 9.0* k_1 movement from diffusion: ds(x,t)/dt = 0.0 ( stationary ) di(x,t)/dt = Di*d^2(i(x,t))/dx^2 de(x,t)/dt = De*d^2(e(x,t))/dx^2 dw(x,t)/dt = Dw*d^2(w(x,t))/dx^2 dq(x,t)/dt = Dq*d^2(q(x,t))/dx^2 dz(x,t)/dt = Dz*d^2(z(x,t))/dx^2 movement from electric force: ds(x,t)/dt = my_s*s(x,t)*dE(x,t)/dx + my_s*E(x,t) *ds(x,t)/dx di(x,t)/dt = my_i*i(x,t)*dE(x,t)/dx + my_i*E(x,t) *di(x,t)/dx de(x,t)/dt = my_e*e(x,t)*dE(x,t)/dx + my_e*E(x,t) *de(x,t)/dx dw(x,t)/dt = my_w*w(x,t)*dE(x,t)/dx + my_w*E(x,t) *dw(x,t)/dx dq(x,t)/dt = my_q*q(x,t)*dE(x,t)/dx + my_q*E(x,t) *dq(x,t)/dx dz(x,t)/dt = 0 ( not charged ) ! next comes from Poisson's equation dE(x,t)/dx = 26.19925089*(s(x,t)-i(x,t)-e(x,t)-w(x,t) -q(x,t)) That makes the Electric field E=0 over the whole film at time t=0, (sum of all charges in the simulation cell will always be zero). kinetics: ds(x,t)/dt = - k_1*s(x,t)*e(x,t) -k_2*s(x,t) *i(x,t) di(x,t)/dt = - k_1*s(x,t)*e(x,t) -k_3*i(x,t) *z(x,t) de(x,t)/dt = - k_1*s(x,t)*e(x,t) -k_5*w(x,t) *e(x,t) -k_6*q(x,t) *e(x,t) dw(x,t)/dt = - k_5*w(x,t)*e(x,t) +k_3*i(x,t) *z(x,t) -2*k_4 *w(x,t)^2 dq(x,t)/dt = k_4*w(x,t)^2 -k_6*q(x,t) *e(x,t) dz(x,t)/dt = - k_3*i(x,t)*z(x,t) +k_2*s(x,t) *i(x,t) x will be between 0 and 8*10^(-6) which is the thickness of the film where those reactions are. At the boundaries we need to approximate the derivatives each time step for the diffusion and the electric field. There is no flow of particles out of these boundaries so we could set the concentrations change to zero at the boundaries; i.e. for the boundaries: di(x,t)/dx=0       de(x,t)/dx=0 dw(x,t)/dx=0       dq(x,t)/dx=0 dz(x,t)/dx=0 So far, this is a initial value problem with six coupled nonlinear differential equations. Future: Making a full scaled 3 dimensional model and optimize the parameters for a optimal solar cell. Most of the parameters are adjustable, they are all dependent of the materials used. There are many different things said about what the cell efficiency really depends on. Some even say that the important thing is to have as good a cathode as possible and others say its something completely different. A model is needed to guide the research for a better solar cell.

### Increased ProductivityExample #7Source Code:


Problem SolarCel    include 'SolarCel.inc'C  Ok we start with the species in the solar cell:C ----------------C  S+  = excited dye    S = dye       I02- = di idodine radicalC  I- = Ioidine         I3- = three iodine      I0 = iodine radicalC we have some reaktions between the species during simulation withC reaction rates k1...k6:C ----------------C  {S+} + {e-}    ->  {S}                  k1C  {S+} + {I-}    ->  {I0}                 k2C  {I0} + {I-}    ->  {I02-}               k3C  2{I02-}        ->  {I3-} + {I-}         k4C  {I02-} + {e-}  ->  2{I-}                k5C  {I3-} + 2{e-}  ->  3{I-}                k6C  the concentrations of each species is defined as:C ----------------C  s(x,t)  =  {s+}       i(x,t)  =  {I-}      e(x,t)  =  {e-}C  w(x,t)  =  {I02-}     q(x,t)  =  {I3-}     z(x,t)  =  {I0}C  The differential equations with electric field diffusion and reactionsC  with the diffusion constants: Di, De, Dw, Dq, Dz and mobilityC  constants: mys, myi, mye, myw, myq we set the constants:C  diffusion:
constDs = 1.5*1.e-9  :   constDe = 200*1.e-9
constDi = constDs    :   constDq = constDs  :  constDw = constDs
print *,'Const.',constDs,constDi,constDe,constDw,constDq,constDz
C  mobility:

mys = 1.5*1.e-9*1.602*1.e-19/(1.38*1.e-23*273)
myi = mys:   myw = mys:        myq = mys
mye = 200*1.e-9*1.602*1.e-19/(1.38*1.e-23*273)
print *, 'My.', mys, myi, mye, myw, myq, myz
C  rate constants:
k1 = 1.0 * 1.e-6:    k2 = 3 * k1:    k3 = 4 * k1:    k4 = 5 * k1
k5 = 6 * k1:      k6 = 9 * k1
print *, 'Ks.', k1, k2, k3, k4, k5, k6
C  x will be between 0 and 8*1.e-6 which is the thickness of the
C  film where those reactions are:
xfinal = 8*1.e-6:  xprint = xfinal / 100:  dx = xprint / 10
tfinal = 1.e2:   tprint = tfinal / 100:     dt = tprint / 10
C  At the boundaries I suppose we need to approximate the
C  derivativeseach time step for the diffusion and the electric field.
C  There is no flow of particles out of these boundaries
C  so we could set the concentrations change to zero at
C  the boundaries; i.e for the boundaries.
didx=0:     dedx=0:     dwdx=0:     dqdx=0:     dzdx=0
C  the starting conditions are ( after a laser pulse there is
C  excitation of the dyes s(x,0) and we look at the relaxation
C  of all species after that):
initiate JANUS; for distance; equations
*    dsdx/s, d2idx/didx, didx/i, d2edx/dedx, dedx/e, d2wdx/dwdx,
*    dwdx/w, d2qdx/dqdx, dqdx/q, d2zdx/dzdx, dzdx/z, dEsumdx/Esum;
*    of x;  step dx; to xf;
print *,'  TIME     DSDT        S       DIDT        I'
xf=xprint
do while (xf .le. xfinal)
integrate distance; by JANUS
print '(7(1pg13.5))', x, s, i, e, w, q, z
C         @curves('plot')
xf=xf+xprint
end do
C       @show('plot')
end
model distance
include 'SolarCel.inc'
s  = 360*1.e-9*0.34*10**6*0.1*exp(-0.34*10**6*x)
i  = 0.5   :    e  = s  :   w  = 0.  :  q  = 0.05  :  z  = 0.
C  movement from diffusion:
dsdt = 0.        ! stationary
didt = constDi * d2idx     :    dedt = constDe * d2edx
dwdt = constDw * d2wdx     :    dqdt = constDq * d2qdx
dzdt = constDz * d2zdx
initiate ATHENA; for ide; equations dsdt/s, didt/i,
*    dedt/e, dwdt/w, dqdt/q, dzdt/z; of t;  step dt; to tf;
print *,' X     TIME     DSDT      S        DIDT      I'
tf=tp
do while (tf .le. tfinal)
integrate ide; by ATHENA
print '(6(1pg13.5))', x, t, dsdt, s, didt, i
tf=tf+tp
end do
Find dsdx, didx, dedx, dwdx, dqdx, dzdx, dEsumdx;     *    in eForce; by AJAX( cntrl1);     *    to match xs, xi, xe, xw, xq, xz, xEsumC         @show('plot')      end      model ide   ! Implicit Differential Equations        include 'SolarCel.inc'        Find dsdt, didt, dedt, dwdt, dqdt, dzdt;     *    in kinetics; by AJAX( cntrl1);     *    to match ts, ti, te, tw, tq, tz      end      model kinetics        include 'SolarCel.inc'C  kinetics:

ts = dsdt - (- k1 * s * e  - k2 * s * I)
ti = didt - (- k1 * s * e  - k3 * i * z)
te = dedt - (- k1 * s * e  - k5 * w * e -k6 * q * e)
tw = dwdt - (- k5 * w * e + k3 * i * z - 2 * k4 * w**2)
tq = dqdt - (  k4 * w**2  - k6 * q * e)
tz = dzdt - (- k3 * i * z + k2 * s * i)
end
model eForce
include 'SolarCel.inc'
C  movement from electric force:
xs = dsdt - (mys * s * dEsumdx + mys * Esum * dsdx)
xi = didt - (myi * i * dEsumdx + myi * Esum * didx)
xe = dedt - (mye * e * dEsumdx + mye * Esum * dedx)
xw = dwdt - (myw * w * dEsumdx + myw * Esum * dwdx)
xq = dqdt - (myq * q * dEsumdx + myq * Esum * dqdx)
xz = dzdt - 0                  ! not charged
! next comes from Poisson's equation
xEsum = dEsumdx - (s + i + e + w + q)  ! is Objective xEsum = 0 ?
C  I guess this is a initial value problem with six coupled nonlinear
C  differential equations.         /Jarl
end
controller cntrl1( AJAX)
summary=0
end


This Solar Cell problem is another increased productivity example do to using Calculus (level) programming. Calculus-level Problem-Solving for Engineers & Scientists