Skip to content

advanced solid state physics calculations with tight binding models

License

Notifications You must be signed in to change notification settings

Sinan81/shut-up-and-calculate

Repository files navigation

This project is about plotting various standard properties of 2-dimensional tight-binding hamiltonians.

Keywords: computational condensed matter physics, Fermi surface, tight binding approximation, energy bands, cuprates, two-dimensional systems, many body physics

Our guiding principles are:

  • "Keep it simple stupid!" (KISS) Avoid clever programming stuff, and reduce the barrier to get started and contribute!
  • "Shut up and calculate!" Richard Feynman?

Create a virtual python environment

Due to tkinter dependency for plotting, using a conda environment is preferred. Install miniconda: https://docs.conda.io/en/latest/miniconda.html Then create a conda environment like:

conda env create -f ./conda_environment.yml
conda env activate fermi

Usage

import warnings
warnings.filterwarnings('ignore')
from tba import *
get_list_of_models()
x = System(model=cuprate_single_band)
x.plot_bands()
x.plot_Fermi_surface_contour()
x.filling_vs_energy()
# calculate charge susceptibility \chi_c
x.chic.plot_vs_q()

References

The following references are recommended for topics discussed in this repository:

  • Piers Coleman, Introduction to Many Body Physics, 2015, Cambridge University Press
  • Ashcroft & Mermin, Solid State Physics

List of Topics

Notation basics

Energy bands, Fermi Surface, Density of States

Susceptibility

Random Phase Approximation (RPA)

To-Do

  • Multiband susceptibility
  • Extended RPA (with ladder diagrams and non-local interactions)
  • Adaptive susceptibility plots using python adaptive or scikit-optimize
  • Mean field and broken symmetry calculations, and coexisting orders
  • pytests etc

Example Visuals


About

advanced solid state physics calculations with tight binding models

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages