SmoQyDQMC

Documentation for SmoQyDQMC.jl. This package implements the determinant quantum Monte Carlo (DQMC) method for Hubbard, and electron-phonon interactions, including both Holstein and Su-Schrieffer-Heeger (SSH) style electron-phonon coupling.

Funding

Initial development of the v1.0 version of this package was supported by the U.S. Department of Energy, Office of Science, Basic Energy Sciences, under Award Number DE-SC0022311. Further development of the v2.0 version of this package was supported by the National Science Foundation under grant No. OAC-2410280 and the Simons Foundation under a Scientific Software Research Faculty award.

Installation

To install the SmoQyDQMC.jl, simply open the Julia REPL and run the commands

julia> ]
pkg> add SmoQyDQMC

or equivalently via Pkg do

julia> using Pkg; Pkg.add("SmoQyDQMC")

Updating

To update SmoQyDQMC.jl try the following:

julia> ]
pkg> update SmoQyDQMC

However, sometimes this fails to update required dependencies. If issues arise, we recommend first removing and then reinstalling SmoQyDQMC.jl:

julia> ]
pkg> remove SmoQyDQMC
pkg> add SmoQyDQMC

Publication List

This sections lists of some of the publications that report results generated using the SmoQyDQMC.jl package.

[1]
C. McCabe, J. Boyd, K. Wang, M. Lebrat, C. Regal, A. Kaufman, A. M. Rey and L. Homeier. Realizing multi-orbital Emery models with ultracold atoms, arXiv preprint arXiv:2604.22955 (2026).
[2]
F. Correia, K. Corbett and E. Khatami. Finite-Temperature Ferromagnetic Correlations of the Kagome Lattice Hubbard Model, arXiv preprint arXiv:2604.26827 (2026).
[3]
C. Jordan, G. Issa, E. Khatami, R. Scalettar, B. Cohen-Stead and S. Johnston. Charge order in the half-filled bond-Holstein model. Phys. Rev. B 113, 235101 (2026).
[4]
[5]
[6]
J. Nys and J. Carrasquilla. Fermionic neural Gibbs states, arXiv preprint arXiv:2512.04663 (2025).
[7]
[8]
M. Naamneh, E. C. O'Quinn, E. Paris, D. McNally, Y. Tseng, W. R. Pudełko, D. J. Gawryluk, J. Shamblin, B. Cohen-Stead, M. Shi, M. Radovic, M. K. Lang, T. Schmitt, S. Johnston and N. C. Plumb. Persistence of small polarons into the superconducting doping range of $\text{Ba}_{1\text{-}x}\text{K}_{x}\text{BiO}_{3}$. Phys. Rev. Res. 7, 043082 (2025).
[9]
[10]
[11]
Y. Su, R. Xiao, J. Xiong, H. Li, H. Huang and D. Li. Nonpertubative Many-Body Theory for the Two-Dimensional Hubbard Model at Low Temperature: From Weak to Strong Coupling Regimes, arXiv preprint arXiv:2503.12468 (2025).
[12]
Y. Zhang, P. M. Dee, B. Cohen-Stead, T. A. Maier, S. Johnston and R. Scalettar. Optimizing the critical temperature and superfluid density of a metal-superconductor bilayer. Phys. Rev. B 112, 064510 (2025).
[13]
[14]
[15]
[16]
J. Neuhaus, N. S. Nichols, D. Banerjee, B. Cohen-Stead, T. A. Maier, A. D. Maestro and S. Johnston. SmoQyDEAC.jl: A differential evolution package for the analytic continuation of imaginary time correlation functions. SciPost Phys. Codebases, 39 (2024).
[17]
[18]
[19]
[20]
[21]
A. Tanjaroon Ly, B. Cohen-Stead, S. Malkaruge Costa and S. Johnston. Comparative study of the superconductivity in the Holstein and optical Su-Schrieffer-Heeger models. Phys. Rev. B 108, 184501 (2023).

Notable Package Dependencies

This section reviews some notable package dependencies.

Re-exported Packages

The SmoQyDQMC.jl re-exports certain packages using the Reexport.jl package in order to simplify the installation process.

  • LatticeUtilties.jl: Used to represent arbitrary lattice geometries.
  • JDQMCFramework.jl: Implements and exports the basic framework for running a DQMC simulation.
  • JDQMCMeasurements.jl: Implements various global, local and correlation measurements for a DQMC simulation.
  • MuTuner.jl: Impelments and exports an algorithm for tuning the chemical potential to achieve a target density in grand canonical Monte Carlo simulations.

External Dependencies

  • StableLinearAlgebra.jl: Implements optimized numerical stabilizaiton methods required by DQMC simulations.
  • Checkerboard.jl: Implements and exports the checkerboard method for approximating exponentiated hopping matrices by a sparse matrix.
  • JLD2.jl: Package used to write data to binary files in an HDF5 compatible format. It is also recommended this package be used at the scripting level to implement checkpointing in a simulation.

Citation

If you found this library to be useful in the course of academic work, please consider citing us:

@Article{SmoQyDQMC.jl,
	title={{SmoQyDQMC.jl: A flexible implementation of determinant quantum Monte Carlo for Hubbard and electron-phonon interactions}},
	author={Benjamin Cohen-Stead and Sohan Malkaruge Costa and James Neuhaus and Andy Tanjaroon Ly and Yutan Zhang and Richard Scalettar and Kipton Barros and Steven Johnston},
	journal={SciPost Phys. Codebases},
	pages={29},
	year={2024},
	publisher={SciPost},
	doi={10.21468/SciPostPhysCodeb.29},
	url={https://scipost.org/10.21468/SciPostPhysCodeb.29},
}

Contact Us

For question and comments regarding this package, please email either Dr. Benjamin Cohen-Stead at bcohenst@utk.edu or Professor Steven Johnston at sjohn145@utk.edu.