Complete Interactive Learning Platform for Density Functional Theory
Explore the three pillars of DFT calculations: Basis Sets, Pseudopotentials, and XC Functionals through stunning visualizations and comprehensive comparisons.
pip install -r requirements.txtpython3 download_basis_cache.pyThis downloads metadata for 500+ basis sets locally for fast access.
New Multi-Page App (Recommended):
streamlit run app.pyLegacy Single-Page App:
streamlit run basis_visualizer_app.pyOpen http://localhost:8501 in your browser.
- 748 basis sets from basis-set-exchange
- 3D orbital visualization with interactive rotation
- Comparison mode for side-by-side analysis
- Shell analysis and zeta level determination
- Export to any software (Gaussian, ORCA, PySCF, etc.)
- 432 pseudopotentials from PseudoDojo
- 3 functionals: PBE, LDA, PW
- 2 accuracies: Standard (soft) and Stringent (hard)
- Visual comparison of Coulomb vs Pseudopotential
- Core radius analysis and smoothing visualization
- 18+ functionals (LDA, GGA, Hybrid, meta-GGA)
- Jacob's Ladder visualization
- Enhancement factor plots for mathematical understanding
- Functional comparison with difference analysis
- Use case recommendations for each functional
- Consistency checker – Ensures compatible selections
- Session state – Selections persist across modules
- Educational content – Learn as you explore
- Fast caching – Optimized performance
The app helps you understand:
- What is a basis set? Mathematical functions describing electron orbitals
- Single vs Double vs Triple-ζ: More functions = more accuracy but slower
- Polarization: d and f functions for better bonding description
- STO vs GTO: Slater vs Gaussian type orbitals
- Why some are expensive: More primitives = more calculations
The cache shows its age in the sidebar. To update:
python3 download_basis_cache.pyRecommended: Update monthly to get new basis sets.
DFT_TOOLS/
├── basis_visualizer_app.py # Main application
├── download_basis_cache.py # Cache downloader
├── basis_cache/ # Local cache directory
│ └── metadata.json # Cached basis set info
├── requirements.txt # Python dependencies
└── README.md # This file
"Cache not found" error:
python3 download_basis_cache.pyApp is slow:
- Make sure cache is downloaded
- Reduce grid points in visualization (edit line 177)
Element not available:
- Some basis sets don't support all elements
- Try a different basis set (e.g., STO-3G, 6-31G)
- Start with simple basis sets (STO-3G, 3-21G) to understand concepts
- Use comparison mode to see differences between similar basis sets
- Read the educational tooltips (? icons)
- Export basis sets for your quantum chemistry calculations
- STO-3G: Minimal, fast, educational
- 6-31G: Classic double-zeta
- 6-31G:* With polarization
- cc-pVDZ: Correlation-consistent double-zeta
- cc-pVTZ: Triple-zeta, more accurate
- Built with Streamlit + Plotly
- Uses Basis Set Exchange (BSE) library
- 3D visualization with isosurfaces
- Gaussian-type orbital (GTO) rendering
- Basis Set Exchange: https://www.basissetexchange.org/
- Data from the MolSSI BSE project
Made for learning quantum chemistry! 🧪✨