Official Resources
- Homepage: http://huangli.bitbucket.io/iqist/ (primary), https://github.com/huangli712/iqist (mirror)
- Documentation: http://huangli.bitbucket.io/iqist/
- Source Repository: https://bitbucket.org/huangli712/iqist (primary), https://github.com/iqist/iqist (mirror)
- License: GNU General Public License v3.0
Overview
iQIST (interacting Quantum Impurity Solver Toolkit) is an open-source Fortran package providing multiple continuous-time quantum Monte Carlo (CTQMC) impurity solvers for DMFT calculations. It offers several algorithmic implementations optimized for different physical situations, with emphasis on multi-orbital strongly correlated systems.
Scientific domain: Strongly correlated electron systems, DMFT impurity solvers, many-body physics
Target user community: Researchers performing DMFT and DFT+DMFT calculations on correlated materials
Theoretical Methods
- Continuous-time quantum Monte Carlo (CTQMC)
- Hybridization expansion (CT-HYB)
- Interaction expansion (CT-INT)
- Auxiliary field expansion (CT-AUX)
- Segment representation algorithms
- Good quantum number (GQN) formulation
- Hirsch-Fye quantum Monte Carlo (HF-QMC)
- General multi-orbital Anderson impurity model
- Spin-orbital coupling formulation
- Matrix trace estimator algorithms
Capabilities (CRITICAL)
- Multiple CTQMC solver implementations (azalea, gardenia, narcissus, begonia, lavender, camellia, pansy)
- Multi-orbital impurity problems (up to 5 orbitals tested)
- Particle-hole symmetric and asymmetric cases
- Spin-polarized calculations
- Spin-orbit coupling treatment
- Density-density and general interactions
- Crystal field effects
- Self-energy calculations (Matsubara frequencies)
- Green's functions (imaginary time and frequency)
- Spectral functions via maximum entropy method
- Two-particle Green's functions and vertices
- Occupation numbers and double occupancies
- Magnetic moments and spin-spin correlations
- Efficient sampling algorithms
- MPI parallelization
Sources: Official iQIST documentation (bitbucket.org/huangli712/iqist), verified in multiple source lists
Solver Variants
iQIST provides multiple solver implementations, each optimized for specific situations:
CT-HYB Solvers:
- azalea: Standard CT-HYB, segment representation
- gardenia: CT-HYB with improved sampling
- narcissus: CT-HYB for multiorbital systems
CT-INT Solvers:
- begonia: Interaction expansion algorithm
- lavender: Optimized CT-INT implementation
CT-AUX Solvers:
- camellia: Auxiliary field QMC
- pansy: Improved CT-AUX for general interactions
Each solver optimized for:
- Different interaction types
- Various system sizes
- Specific symmetries
- Computational efficiency trade-offs
Inputs & Outputs
-
Input formats:
- solver.ctqmc.in (main configuration)
- solver.hyb.in (hybridization function)
- solver.eimp.in (impurity levels)
- atom.config.in (atomic configuration for CT-AUX)
- Control parameters via namelist format
-
Output data types:
- solver.green.dat (Green's function)
- solver.sgm.dat (self-energy)
- solver.nmat.dat (occupation matrix)
- solver.hist.dat (Monte Carlo history)
- solver.prob.dat (probability distribution)
- solver.paux.dat (auxiliary field distribution)
- Two-particle correlation functions
Interfaces & Ecosystem
Algorithmic Features
Advanced Sampling:
- Efficient segment representation for CT-HYB
- Improved update algorithms (local/global moves)
- Good quantum number conservation
- Worm sampling for measurement improvement
- Auto-tuning of Monte Carlo parameters
Multi-orbital Treatment:
- Full Coulomb matrix support
- Density-density simplification available
- Kanamori interaction parametrization
- Slater-Condon parametrization
- Spin-flip and pair-hopping terms
Measurement Optimization:
- Improved estimators for Green's functions
- Reduced noise in two-particle quantities
- Efficient measurement of correlation functions
- Binning analysis for error estimation
Performance Characteristics
- MPI parallelization: Efficient distribution across processors
- Memory usage: Optimized for multi-orbital calculations
- Convergence: Typically requires 10^7 to 10^9 Monte Carlo steps
- Sign problem: Minimal for CT-HYB at moderate U; CT-INT more affected
- Scaling: Good scaling to 100+ MPI processes
Workflow and Usage
Typical DMFT Iteration:
- Initialize: Start with guess for self-energy/Green's function
- Generate hybridization: From DMFT self-consistency
- Run solver: Execute appropriate iQIST solver
- Extract observables: Read self-energy and occupations
- Update: Perform DMFT self-consistency update
- Iterate: Repeat until convergence
Solver Selection Guide:
- azalea/gardenia: Standard multiorbital CT-HYB, good starting point
- narcissus: Very large multiorbital systems
- begonia/lavender: Smaller U, different interaction structures
- camellia/pansy: Systems with complex interaction terms
Advanced Features
Two-Particle Quantities:
- Vertex functions in various channels
- Susceptibilities (charge, spin, orbital)
- Particle-particle and particle-hole channels
- Support for BSE kernel calculations
Analytical Continuation:
- Built-in maximum entropy method
- Output for external MaxEnt tools
- Padé approximant support
- Stochastic optimization methods
Finite Temperature:
- Wide temperature range supported
- Automatic frequency grid adjustment
- High-temperature and low-temperature optimizations
Limitations & Known Constraints
- Fortran codebase: Requires Fortran compiler and libraries
- Learning curve: Steep; requires CTQMC and DMFT knowledge
- Documentation: Good but technical; assumes impurity solver familiarity
- Input format: Text-based namelist; requires careful setup
- Sign problem: CT-INT suffers from sign problem in some regimes
- Computational cost: QMC expensive; long equilibration and sampling needed
- Statistical errors: Monte Carlo method; results have error bars
- Analytical continuation: MaxEnt introduces systematic uncertainties
- Platform: Linux/Unix; requires MPI for parallel execution
- Memory: Multi-orbital calculations memory-intensive
- Active development: Development slowed but code stable
Comparison with Other Solvers
- vs TRIQS/cthyb: iQIST offers more solver variants
- vs w2dynamics: iQIST more focused on CT-HYB variants
- vs ALPS/CT-HYB: iQIST more optimized for DMFT workflows
- Complementary: Can compare results between different solvers
Verification & Sources
Primary sources:
- Primary repository: https://bitbucket.org/huangli712/iqist
- Mirror repository: https://github.com/iqist/iqist
- Documentation: http://huangli.bitbucket.io/iqist/
- L. Huang et al., Comput. Phys. Commun. 195, 140 (2015) - iQIST overview paper
- L. Huang, Comput. Phys. Commun. 221, 423 (2017) - iQIST updates
Secondary sources:
- iQIST manual and tutorials
- Published DFT+DMFT applications using iQIST
- CTQMC algorithm references
- Verified in multiple tool lists (confirmed presence in community)
Confidence: VERIFIED - Appears in 3+ independent source lists, confirmed active repository
Verification status: ✅ VERIFIED
- Official homepage: ACCESSIBLE (bitbucket and github)
- Documentation: ACCESSIBLE
- Source code: OPEN (Bitbucket primary, GitHub mirror, GPL v3)
- Community support: Active development team (email contact)
- Academic citations: >50 (main papers)
- Code status: Stable, production-ready
- Benchmark validation: Extensive tests against other CTQMC solvers