Git Product home page Git Product logo

pyncband's Introduction

PyNCband

PyNCband (pronounced pink-band) is a software suite in its very early stages of development to predict the bandgaps and photoluminescence energies of core-shell (for now) quantum dots.

Code style: black

For users:

Clone the repo:
git clone https://github.com/Chronum94/PyNCband.git

Run the setup:
python setup.py install

For developers:

I've tried to make the code as self-explanatory and lucid as possible. Nevertheless, I will be adding a contribution readme soon.

Features:

  • Energy calculation of S1 exciton state.
  • Coulomb screening energy calculation.
  • Polarization interaction energy calculation.
  • Internal units consistency.
  • Wavenumbers for Type 1 NQDs.
  • Verification against experimental data.
    • Agreement to ~0.05 eV with Table 1 results in Nano Lett., 2012, 12 (11), pp 5545โ€“5551

Minimal example:

import numpy as np
from scipy.constants import e

from pyncband import Material, CoreShellParticle

# Declare a material with a bandgap of 1.34 eV, conduction band edge offset of 0,
# electron(hole) effective mass of 0.07(0.64), and dielectric constant of 9.6. Optionally,
# give it a name.
InP = Material(1.34, 0, 0.07, 0.64, 9.6, 'InP')

# The conduction band edge is different here. For a core-shell nanocrystal, only the
# relative offset matters.
CdS = Material(2.20, -0.39, 0.21, 0.68, 5.3, 'CdS')

# Create a CoreShellParticle with the two materials, the core and shell thicknesses in nm.
# Optionally, supply a permittivity for the environment of the nanocrystal, if it isn't 1.
csnc = CoreShellParticle(InP, CdS, 1.23, 3.84, 1.5)

# This is a type two, h/e structure. Both of these should be true.
print("Is CSNC type two? h/e?", csnc.type_two, csnc.h_e)

# Calculate energies, in eV
energies = np.array(csnc.calculate_s1_energies())

# Print them out, because why not.
# Should be [0.09009009 0.27527528]
print(energies)

# Calculate the Coulomb screening energy, this is in eV already.
# These methods return both the energy and the uncertainty in the calculation.
col_energy = csnc.coulomb_screening_energy()
# The polarization interaction energy, also in eV already.
pol_energy = csnc.interface_polarization_energy()

# Col: [-1.50293370e-03  5.56435081e-07] Pol: [-1.98701001e-03  4.79341560e-07]
print('Col:', col_energy, 'Pol:', pol_energy)

# The bandgap of the QD.
print("NC bandgap:", csnc.bandgap)
# The excitation energy of the 1S exciton.
print("Net 1S energy:", csnc.bandgap + np.sum(energies) + col_energy[0] + pol_energy[0])

pyncband's People

Contributors

chronum94 avatar jasjeev4 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.