Official Resources
- Homepage: https://github.com/g1257/dmrgpp
- Documentation: GitHub repository and manual
- Source Repository: https://github.com/g1257/dmrgpp
- License: BSD 2-Clause License
Overview
DMRG++ is a C++ implementation of the Density Matrix Renormalization Group algorithm developed at Oak Ridge National Laboratory. The code emphasizes performance, flexibility, and correct implementation of DMRG for lattice models and quantum systems. DMRG++ provides efficient algorithms for ground states, time evolution, and spectral functions of quantum many-body systems, with particular focus on condensed matter physics applications.
Scientific domain: DMRG, lattice models, condensed matter physics
Target user community: Condensed matter physicists, DMRG practitioners, lattice model researchers
Theoretical Methods
- Density Matrix Renormalization Group (DMRG)
- Finite and infinite systems
- Time evolution (Krylov-based)
- Dynamical DMRG
- Spectral functions
- Matrix Product States (MPS)
- Correction vector method
- Continued fraction expansion
Capabilities (CRITICAL)
Category: Open-source DMRG code
- DMRG for lattice models
- Finite and infinite systems
- Ground state calculations
- Time evolution
- Dynamical properties
- Spectral functions
- Built-in models (Hubbard, Heisenberg, t-J, etc.)
- Custom Hamiltonians
- Conserved quantum numbers
- SU(2) symmetry
- Parallelization
- Production quality
Sources: GitHub repository, ORNL, publications
Key Strengths
Performance:
- Optimized C++
- Efficient algorithms
- Production-ready
- HPC-capable
- Parallel execution
Lattice Models:
- Condensed matter focus
- Various built-in models
- Custom Hamiltonians
- Research flexibility
- Physics applications
Dynamical Properties:
- Spectral functions
- Time evolution
- Correction vector
- Continued fractions
- Response functions
ORNL Development:
- National lab quality
- Research-driven
- Active development
- Scientific rigor
- Production focus
Inputs & Outputs
-
Input formats:
- Input configuration files
- Model specifications
- Lattice definitions
- DMRG parameters
-
Output data types:
- Ground state energies
- Wavefunctions (MPS)
- Observables
- Spectral functions
- Time-evolved states
Interfaces & Ecosystem
Models:
- Hubbard model
- Heisenberg model
- t-J model
- Kondo lattice
- Custom models
Analysis:
- Post-processing tools
- Spectral function analysis
- Observable extraction
- Data management
Workflow and Usage
Installation:
# Clone repository
git clone https://github.com/g1257/dmrgpp.git
cd dmrgpp/src
# Compile
make -j8
Input File Example:
TotalNumberOfSites=16
NumberOfTerms=2
DegreesOfFreedom=1
GeometryKind=chain
GeometryOptions=ConstantValues
Connectors 1 1
hubbardU 4 0 4 0 4 0 4 0 4 0 4 0 4 0 4 0
potentialV 16 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
Model=HubbardOneBand
SolverOptions=none
Version=version
OutputFile=data.txt
InfiniteLoopKeptStates=100
FiniteLoops 4
7 100 0 -7 100 0 -7 100 0 -7 100 0
TargetElectronsUp=8
TargetElectronsDown=8
Run DMRG:
# Execute
./dmrg input.inp
Spectral Functions:
# Setup for dynamical calculations
# Use correction vector method
# Extract spectral functions
Advanced Features
Time Evolution:
- Krylov-based methods
- Real-time dynamics
- Imaginary-time evolution
- Efficient algorithms
- Large systems
Symmetries:
- U(1) charge conservation
- SU(2) spin symmetry
- Custom quantum numbers
- Computational efficiency
- Proper implementation
Dynamical DMRG:
- Spectral functions
- Correction vector
- Continued fractions
- Green's functions
- Response properties
Performance Characteristics
- Speed: Optimized C++
- Accuracy: DMRG precision
- System size: 100s sites (1D)
- Purpose: Production condensed matter
- Typical: Workstation to HPC
Computational Cost
- System-dependent
- Bond dimension scaling
- Efficient implementations
- Production capable
- HPC suitable
Limitations & Known Constraints
- 1D focus: Primarily one-dimensional
- Learning curve: Input file format
- Documentation: GitHub-based
- 2D systems: Limited
- User interface: Command-line focused
Comparison with Other DMRG Codes
- vs ITensor: DMRG++ condensed matter focus, ITensor general
- vs TeNPy: DMRG++ C++, TeNPy Python
- vs Block: DMRG++ lattice models, Block quantum chemistry
- Unique strength: ORNL development, dynamical properties, spectral functions, lattice models
Application Areas
Condensed Matter Physics:
- 1D quantum systems
- Hubbard model
- Spin chains
- Quantum magnetism
- Strongly correlated
Spectroscopy:
- Spectral functions
- Dynamical properties
- Response functions
- Excitation spectra
- Green's functions
Research:
- Lattice models
- Method development
- Quantum many-body
- Algorithm testing
- Benchmark calculations
Best Practices
Input Files:
- Follow examples
- Understand format
- Parameter choices
- Model definitions
- Validation
DMRG Parameters:
- Appropriate bond dimension
- Convergence criteria
- Truncation errors
- Sweeping strategy
- Testing
Dynamical Calculations:
- Correction vector setup
- Frequency resolution
- Convergence checks
- Spectral analysis
- Broadening
Community and Support
- Open-source (BSD 2-Clause)
- Oak Ridge National Laboratory
- GitHub repository
- Issue tracking
- Active development
- Scientific publications
Educational Resources
- GitHub documentation
- Manual
- Example inputs
- Scientific papers
- DMRG literature
Development
- Oak Ridge National Laboratory
- Gonzalo Alvarez (lead)
- Active development
- Research-driven
- Production focus
- Community contributions
Research Impact
DMRG++ enables efficient calculations of ground states and dynamical properties for lattice models, contributing to condensed matter physics research with production-quality implementations.
Verification & Sources
Primary sources:
- GitHub: https://github.com/g1257/dmrgpp
- ORNL
- Publications: Comp. Phys. Comm. 180, 1572 (2009)
Secondary sources:
- DMRG literature
- User publications
- Lattice model papers
Confidence: VERIFIED - ORNL DMRG code
Verification status: ✅ VERIFIED
- GitHub: ACCESSIBLE
- Institution: Oak Ridge National Laboratory
- License: BSD 2-Clause (open-source)
- Category: Open-source DMRG code
- Status: Actively developed
- Specialized strength: Efficient C++ DMRG implementation, lattice models, dynamical properties, spectral functions, correction vector method, condensed matter physics, ORNL development, production quality, time evolution, SU(2) symmetry