/EmpiricalPseudopotential.jl

Band structure calculator for smiconductor by emprical pseudo potential

Primary LanguageJuliaMIT LicenseMIT

EmpiricalPseudopotential

Build Status Codecov

EmpiricalPseudopotential.jl

This repo aims to calculate band structure for semiconductor by using empirical pseudo potential

Emprical Pseudopotential

Installation

using Pkg
Pkg.add(https://github.com/funabashi800/EmpiricalPseudopotential.jl.git)

using EmpiricalPseudopotential
const p = EmpiricalPseudopotential

Usage

Bulk

# Define material
InSb = p.Material("InSb", "fcc")

# Calculate pseudo potential
E = p.EigenEnergy(InSb)

# Plot band structure
p.BandStructure(E, fielname="InSb")

# Calculate band gap
p.BandGap(E

Strain effect(Biaxial strain)

# Define material
InSb = p.Material("InSb", "fcc")
# calculate strained lattice constant
# e.g. strain(Material, percent=0.1%) or strain(Material, by=6.379e-10)
p.strain(InSb, percent=0.5)

# Calculate pseudo potential
band = p.EigenEnergy(InSb, 500)

# Plot band structure
p.BandPlot(band, title="InSb")

# Calculate band gap
gap = p.BandGap(band)

# Calculate Effective Mass
mass = p.EffectiveMass(band, 200, 300)

Ternary Material

# Define materials
InSb = p.Material("InSb", "fcc")
GaSb = p.Material("GaSb", "fcc")

# Generate ternary material from above two materials with each alloy
InGaSb = p.mix("InGaSb", InSb, 0.4, GaSb, 0.6)

# Calculate pseudo potential
E = p.EigenEnergy(InGaSb)

# Plot band structure
p.BandPlot(E, title="InGaSb")

# Calculate band gap
p.BandGap(E)

Reference

Pseudo potential

浜口智尋, "半導体物理", 朝倉書店, 2001

Band Parameter

I. Vurgaftman, J.R. Meyer and L.R. Ram-Mohan, J. Appl. Phys.,89, 5815(2001).