Skip to main content

Python project for the extraction of defect parameters from lifetime measurements

Project description

Defect Parameter extraction through Machine Learning

Package containing python source code for machine learning extraction of defect parameters from experimental files. Follow instructions from python files in example folder on how to use the package. More information about the process can be found in the following paper: https://www.nature.com/articles/s41524-020-00410-7

Abstract - The performance of high-efficiency silicon solar cells is limited by the presence of bulk defects. Identification of these defects has the potential to improve cell performance and reliability. The impact of bulk defects on minority carrier lifetime is commonly measured using temperature- and injection-dependent lifetime spectroscopy and the defect parameters, such as its energy level and capture cross-section ratio, are usually extracted by fitting the Shockley-Read-Hall equation. We propose an alternative extraction approach by using machine learning trained on more than a million simulated lifetime curves, achieving coefficient of determinations between the true and predicted values of the defect parameters above 99%. In particular, random forest regressors, show that defect energy levels can be predicted with a high precision of ±0.02 eV, 87% of the time. The traditional approach of fitting to the Shockley-Read-Hall equation usually yields two sets of defect parameters, one in each half bandgap. The machine learning model is trained to predict the half bandgap location of the energy level, and successfully overcome the traditional approach’s limitation. The proposed approach is validated using experimental measurements, where the machine learning predicts defect energy level and capture cross-section ratio within the uncertainty range of the traditional fitting method. The successful application of machine learning in the context of bulk defect parameter extraction paves the way to more complex data-driven physical models which have the potential to overcome the limitation of traditional approaches and can be applied to other materials such as perovskite and thin film.

Figure data from the paper can be found in NPJ Comput. Mater. Data folder

Cite as : Buratti, Y., Le Gia, Q. T., Dick, J., Zhu, Y. & Hameiri, Z. Extracting bulk defect parameters in silicon wafers using machine learning models. npj Computational Materials 6, 1–8 (2020)

Related work: Buratti, Y., Dick, J., Gia, Q. L. & Hameiri, Z. A machine learning approach to defect parameters extraction: using random forests to inverse the Shockley-Read-Hall equation. in 46th IEEE Photovoltaic Specialist Conference 4 (2019)

Requirements

Written in python 3.x Install semiconductor package from https://github.com/MK8J/semiconductor (Download and copy/paste in your lib/site-package) Other packages needed:

  • numpy
  • pandas
  • matplotlib
  • scipy
  • sklearn
  • pickle
  • ruamel_yaml

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

DPML-1.0.2.tar.gz (21.3 kB view details)

Uploaded Source

Built Distribution

DPML-1.0.2-py3-none-any.whl (33.2 kB view details)

Uploaded Python 3

File details

Details for the file DPML-1.0.2.tar.gz.

File metadata

  • Download URL: DPML-1.0.2.tar.gz
  • Upload date:
  • Size: 21.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.6.6

File hashes

Hashes for DPML-1.0.2.tar.gz
Algorithm Hash digest
SHA256 c5591f2a1878256d55fb61b07713a614dc3b4692b4daa55f0e3548c66a1241f5
MD5 2fe9b63f900ada9cb31e2d31277835ae
BLAKE2b-256 a5e36830061856d09a1f2a81ede5d5b900ea78910a99b425e8aeafe41f2f39a8

See more details on using hashes here.

File details

Details for the file DPML-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: DPML-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 33.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.6.6

File hashes

Hashes for DPML-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 1817a9faea7f12ebf4a8b5987cac0c995847a44179e1cf19f33d2195ac37aa4d
MD5 226d1a35963bab9101cfc9900d5a320f
BLAKE2b-256 a62182e2793a11532a87126472524e47ed532c5515db453461372492cd797428

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page