Detailed notes on the functions included in the DMRjulia library are included here. This discussion of how to program functions for a tensor network library are intended to be a supplement to the other documentation dedicated to explaining the high level concepts. The chosen language used here is the high-level julia language that is intended to provide an introduction to provide a concise introduction and show transparently some best practices for the functions. This document is best used as a supplement to both the internal code notes and introductions to the subject to both inform the user about other functions available and also to clarify some design choices and future directions. This document presently covers the implementation of the functions in the tensor network library for dense tensors. The algorithms implemented here is the density matrix renormalization group. The document will be updated periodically with new features to include the latest developments.
Detailed notes on the functions included in the DMRjulia library are included here. This discussion of how to program functions for a tensor network library are intended to be a supplement to the other documentation dedicated to explaining the high level concepts. The chosen language used here is the high-level julia language that is intended to provide an introduction to provide a concise introduction and show transparently some best practices for the functions. This document is best used as a supplement to both the internal code notes and introductions to the subject to both inform the user about other functions available and also to clarify some design choices and future directions. This document presently covers the implementation of the functions in the tensor network library for dense tensors. The algorithms implemented here is the density matrix renormalization group. The document will be updated periodically with new features to include the latest developments.
An introduction to the density matrix renormalization group is contained here, including coding examples. The focus of this code is on basic operations involved in tensor network computations, and this forms the foundation of the DMRjulia library. Algorithmic complexity, measurements from the matrix product state, convergence to the ground state, and other relevant features are also discussed. The present document covers the implementation of operations for dense tensors into the Julia language. The code can be used as an educational tool to understand how tensor network computations are done in the context of entanglement renormalization or as a template for other codes in low level languages. A comprehensive Supplemental Material is meant to be a "Numerical Recipes" style introduction to the core functions and a simple implementation of them. The code is fast enough to be used in research and can be used to make new algorithms.
Abstract The physical properties of a quantum many-body system can, in principle, be determined by diagonalizing the respective Hamiltonian, but the dimensions of its matrix representation scale exponentially with the number of degrees of freedom. Hence, only small systems that are described through simple models can be tackled via exact diagonalization. To overcome this limitation, numerical methods based on the renormalization group paradigm that restrict the quantum many-body problem to a manageable subspace of the exponentially large full Hilbert space have been put forth. A striking example is the density-matrix renormalization group (DMRG), which has become the reference numerical method to obtain the low-energy properties of one-dimensional quantum systems with short-range interactions. Here, we provide a pedagogical introduction to DMRG, presenting both its original formulation and its modern tensor-network-based version. This colloquium sets itself apart from previous contributions in two ways. First, didactic code implementations are provided to bridge the gap between conceptual and practical understanding. Second, a concise and self-contained introduction to the tensor-network methods employed in the modern version of DMRG is given, thus allowing the reader to effortlessly cross the deep chasm between the two formulations of DMRG without having to explore the broad literature on tensor networks. We expect this pedagogical review to find wide readership among students and researchers who are taking their first steps in numerical simulations via DMRG. Graphic abstract
The full-density-matrix numerical renormalization group has evolved as a systematic and transparent setting for the calculation of thermodynamical quantities at arbitrary temperatures within the numerical renormalization group (NRG) framework. It directly evaluates the relevant Lehmann representations based on the complete basis sets introduced by Anders and Schiller [Phys. Rev. Lett. 95, 196801 (2005)]. In addition, specific attention is given to the possible feedback from low-energy physics to high energies by the explicit and careful construction of the full thermal density matrix, naturally generated over a distribution of energy shells. Specific examples are given in terms of spectral functions (fdmNRG), time-dependent NRG (tdmNRG), Fermi-golden-rule calculations (fgrNRG) as well as the calculation of plain thermodynamic expectation values. Furthermore, based on the very fact that, by its iterative nature, the NRG eigenstates are naturally described in terms of matrix product states, the language of tensor networks has proven enormously convenient in the description of the underlying algorithmic procedures. This paper therefore also provides a detailed introduction and discussion of the prototypical NRG calculations in terms of their corresponding tensor networks.
These notes provide an introduction to tensor-network methods in quantum many-body physics, with an emphasis on matrix-product states (MPS). They develop the basic tensor-network language, including graphical notation, virtual indices, bond dimensions, gauge freedom, canonical forms, QR and singular-value decompositions, and the role of entanglement in controlling the efficiency of the representation. The main MPS algorithms are then introduced, including contractions, correlation functions, matrix-product operators, DMRG, and time-evolution methods. The notes also briefly discuss projected entangled-pair states (PEPS) as a higher-dimensional generalization of MPS, together with the basic ideas behind approximate PEPS contraction. Finally, tensor-network representations of mixed states, quantum channels, and Lindblad dynamics are presented, with applications to thermal states and open quantum systems. The presentation is accompanied by short Julia code examples based on ITensor, ITensorMPS, and TensorMixedStates. These notes were written for the 9th Les Houches Summer School on Computational Physics: Open Quantum Systems, held in June 2026.
Renormalization group theory of tensor network states provides a powerful tool for studying quantum many-body problems and a new paradigm for understanding entangled structures of complex systems. In recent decades the theory has rapidly evolved into a universal framework and language employed by researchers in fields ranging from condensed matter theory to machine learning. This book presents a pedagogical and comprehensive introduction to this field for the first time. After an introductory survey on the major advances in tensor network algorithms and their applications, it introduces step-by-step the tensor network representations of quantum states and the tensor-network renormalization group methods developed over the past three decades. Basic statistical and condensed matter physics models are used to demonstrate how the tensor network renormalization works. An accessible primer for scientists and engineers, this book would also be ideal as a reference text for a graduate course in this area.
Current descriptions of the ab initio density matrix renormalization group (DMRG) algorithm use two superficially different languages: an older language of the renormalization group and renormalized operators, and a more recent language of matrix product states and matrix product operators. The same algorithm can appear dramatically different when written in the two different vocabularies. In this work, we carefully describe the translation between the two languages in several contexts. First, we describe how to efficiently implement the ab initio DMRG sweep using a matrix product operator based code, and the equivalence to the original renormalized operator implementation. Next we describe how to implement the general matrix product operator/matrix product state algebra within a pure renormalized operator-based DMRG code. Finally, we discuss two improvements of the ab initio DMRG sweep algorithm motivated by matrix product operator language: Hamiltonian compression, and a sum over operators representation that allows for perfect computational parallelism. The connections and correspondences described here serve to link the future developments with the past and are important in the efficient implementation of continuing advances in ab initio DMRG and related algorithms.