Skip to content

hugopstackhouse/phys3888-solarcells-2020

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 

Repository files navigation

Simulation of perovskite solar cells in MATLAB. Herewith be the solar cells code for PHYS3888, 2021 (not 2020, despite what the name says).

This is a much cleaner and presentable fork of https://github.com/ajef8473/phys3888-solarcells-2020, look there for some extra experimental data and a lot of outdated models, however it is poorly documented, and you do so at your own risk ⚠️. This repo contains all useful models and data for your thin cell perovskite needs.

computational_model_single_cell contains a model of a thin, perovskite solar cell at equilibrium implemented in MATLAB. It calculates the short circuit current, exciton concentraion, free charge concentration, occupied trap concentration, and quantum efficiency across a range of intensity values (defaults to the range [1,1000]). Rate constants and material specific parameters are sourced from literature, as listed in aj_constants_fun. By default the model used is curr_model.m, the most advanced at present, (and what you need for almost any application). Other older models are included for completeness but would not be run-able without minor code modifications - this is intentional, as they were non-physical and replaced by the current model during the project.

  • simple_model.m: An equilibrium current model which calculates exciton and free charge carrier concentrations using rate constants. Primarily based off of previous models of organic solar cells, however misses several of the main effects due to both the lack of trapping and the thin film assumption.

  • trap_model.m: Same as the previous, however it also incorporates electron traps via a monomolecular (linear) trapping model. It does not account for loss of charge carriers due to current flow in an external circuit.

  • curr_model.m: Includes all the features of the previous two, however it also accounts for decreases in charge carriers caused by current flow, and is the what you should use if you wish to model short circuit current.

  • phase.m: A phase diagram which investigates the altering trapping/detrapping and exciton formation/dissociation rates influences short cicuit current. may be generated using phase.m, which is a just a quick script which makes running phase_diagram.m with nice parameters simpler. Note that this process can take sometime, so we've included some cached data, which is what is plotted by default. Be sure to set:

makeNew = true; (set to true by default)

if you wish to generate a new plot, (which will override the cached data). The phase diagram is generated by scaling the literature values by set amounts to generate a logarithmically spaced data set, which is helped by the phase_constants function. By default it runs curr_model.m.

About

Simulation of perovskite solar cells in MATLAB.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages