Skip to content

Single and Multi-layer Solar Cell Thickness Optimization With Genetic Algorithm (Energies 2020)

License

MIT, BSD-2-Clause licenses found

Licenses found

MIT
LICENSE
BSD-2-Clause
license_cprintf.txt
Notifications You must be signed in to change notification settings

gcunhase/GeneticAlgorithm-SolarCells

Repository files navigation

Paper Paper Conference

About

Repository for paper titled "Application of Genetic Algorithm for More Efficient Multi-layer Thickness Optimization in Solar Cells".

Graphical Abstract

Contents

RequirementsHow to UseResultsHow to Cite

Requirements

  • Windows 7 or Ubuntu 18.04
  • Matlab 2018b or 2019a
    • Toolboxes (Add-Ons > Get Add-Ons)
      • de2bi and bi2de functions:
        • Communication System Toolbox (Matlab 2018b)
        • Communications Toolbox (Matlab 2019a)
      • Parallel Computing Toolbox
      • Trading Toolbox
    • cprintf.m (download link)
  • Lumerical, FDTD solutions software + license (you can get 1 month trial version from their website if you have an organization email)

How to Use

  1. Set up solar cell model
    • With FDTD software
      • Solar cell FDTD file: Evo_alg__P3HT-ICBA.fsp
      • In the file that starts with jsc_FDTD_..., under the comment %Load simulation file, change the file directory to the directory you have saved the solar cell FDTD file in.
    • Without FDTD software (for testing)
      • Use in-built Jsc (fitness function) dictionary by setting testing = 2 in the .m file that starts with Evo_alg_...
  2. Run code with Main_frontend_gui.m
  3. Choose how many runs of each selection method has to perform
    • Each section has a repeat counter of 1000 times, used in order to find the average number of simulations required by the selection method.
    • For real time usage, change the 'repeat_runs' variable value to 1 in the .m file that starts with Evo_alg_...

Results

  • Results are saved in Excel files, with number of sheets equivalent to the number of runs in each selection.
  • Obtain performance graph: evaluation scripts

    Accuracy of 100% (meaning): all the 5000 runs converged to the optimal solution.

ZnO single layer optimization [excel]

ZnO single ZnO single plot

MoOx single layer optimization [excel]

MoOx single MoOx single plot

ZnO+MoOx multi-layer optimization [excel]

ZnO+MoOx ZnO+MoOx

Crossover methods: Uniform vs k-point

Crossover methods

Acknowledgment

Co-First Authors: Premkumar Vincent and Gwenaelle Cunha Sergio had equal contribution

@article{VincentAndCunha2020GASolarCell,
   title={Application of Genetic Algorithm for More Efficient Multi-layer Thickness Optimization in Solar Cells},
   author={{Vincent, P. and Sergio, G. C.} and Jaewon Jang and In Man Kang and Jaehoon Park and Hyeok Kim and Minho Lee and Jin-Hyuk Bae},
   year={2020},
   journal={Energies},
   volume={13},
   issue={7},
   pages={1--14},
   article-number={1726},
   DOI={10.3390/en13071726},
   ISSN={1996-1073},
}

Contact: [email protected] and [email protected]

About

Single and Multi-layer Solar Cell Thickness Optimization With Genetic Algorithm (Energies 2020)

Topics

Resources

License

MIT, BSD-2-Clause licenses found

Licenses found

MIT
LICENSE
BSD-2-Clause
license_cprintf.txt

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages