Numerical techniques
9This guide provides a comprehensive look at how to access and select elements, subregions, and patterns within arrays and
ContractionAt a Glance
Creating and Manipulating Arrays and MatricesThis guide introduces the core containers provided by the Linear Algebra module, how to inspect them, and the day-to-day
Linear AlgebraLinear Algebra is the fundamental package for numerical computing. At the core of the Linear Algebra package are the array and matrix objects. These encapsulate n-dimensional arrays of homogeneous data types, with many operations being performed in optimized compiled C++ code for performance. While Aleph is already documented at its core, Linear Algebra serves as the specialized linear algebra and array computation module, much like how NumPy extends Python's capabilities for scientific computing.
Matrix times vector: dense vs. sparse vs. symbolicIntroduction
Mid-spectrum calculations with Chebyshev filtersThe eigenspectrum of a Hamiltonian operator encodes fundamental properties of a quantum system. While the ground state and low-lying excitations are often the primary focus – governing low-temperature physics and phase transitions – many problems require access to the interior of the spectrum. For instance, studying thermalization, many-body localization, or excited state quantum phase transitions often necessitates computing eigenstates in the middle of the spectrum.
Numerical MethodsThis section covers numerical methods for simulating quantum systems, including exact diagonalization, time evolution, and tensor network techniques. We provide code examples that can be run in the Workshop to help you understand how to implement these methods and apply them to various quantum models.
Operator function & Krylov time evolutionEvolving quantum states is a common routine in numerical methods. There are many ways to do this, the most common and accessible being full exact diagonalization and evolving an initial state using knowledge of the full spectrum of a Hamiltonian ,
QuickstartArray vs Matrix: Understanding the Difference