[an error occurred while processing this directive]

FC Coding is
One step from 1st Principles to Solution!


Increased Productivity Example #7

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:

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.)

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:
Charge Carrier Charge Carrier= 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= Dye molecules, the electrons of those are excited at incident light of certain wavelengths

Semi Conductor= The nanostructured semi conductor, most used is TiO2, the electrons diffuse in this medium towards the back contact.

Back Surface= back contact (x=0), where the electrons go to get to outer circuit, anode.

End of Film= end of the nanostructured film, x=8*10^(-6)

Entrance Location= the 'entrance' for the electrons from outer circuit, the cathode.

We start with the species in the solar cell
S+ = excited dye         S = dye             I- = Iodine       I3- = three iodine
I0 = iodine radical       I02- = di iodine radical

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.

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)

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).

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

So far, this is a initial value problem with six coupled nonlinear differential equations.


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 Productivity Example #7 Source 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 radical
C I- = Ioidine I3- = three iodine I0 = iodine radical
C we have some reaktions between the species during simulation with
C reaction rates k1...k6:
C ----------------
C {S+} + {e-} -> {S} k1
C {S+} + {I-} -> {I0} k2
C {I0} + {I-} -> {I02-} k3
C 2{I02-} -> {I3-} + {I-} k4
C {I02-} + {e-} -> 2{I-} k5
C {I3-} + 2{e-} -> 3{I-} k6
C 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 reactions
C with the diffusion constants: Di, De, Dw, Dq, Dz and mobility
C 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, xEsum

C @show('plot')
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

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.

HTML code for linking to this page:

<a href=""><img style="float:left; width:100px" src="https://goal-driven.net/image/solar-pic1.png"/> <strong>Math Modeling & Simulating a Nanostructured Solar Cell</strong> </a>, Energy Solar, Higher Efficiency Solar Cells.

< < Back

Next > >

Valid CSS! Calculus (level) Problem-Solving for Engineers & Scientists

Textbooks - Parameter Estimation 4 ODE/PDE - Signal Analysis / Spectral Estimation - Body Plasma - Solar Cell
Increasing Productivity Examples: AC Motor Design - Matched Filters - Pulse Slimming / InterSymbol Interference - Pilot (safe) Ejection - PharmacoKinetics Simulation - Business Strategies & War Gaming - BVP - Implicit Equations