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.1.tar.gz (21.3 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: DPML-1.0.1.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.1.tar.gz
Algorithm Hash digest
SHA256 a41243e16732f2693c80fc513ca9d8104937aa295b2db892b3faa7e4b943d6b3
MD5 b6b4a9691c75db238fdc2d8135dcbf89
BLAKE2b-256 300265a8189bac041d7ebdd56973f4cf02cc451b9ffbb6d9840432849375875e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: DPML-1.0.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 48d445b0fb6ab5e99cf036f59c38225845cebff15c547da7c5cb9b3aa4e13e29
MD5 4340eb2b16f09e014042933a52bee2b1
BLAKE2b-256 a4b5cea3691e32cf7c5b96205f1f0698debc9feafc44ad55b111c83a2bebd1ed

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