|
pomerol
2.2
|
The main namespace of the library. More...
Namespaces | |
| LatticePresets | |
| This namespace encloses factory functions for various terms most commonly used to write a lattice Hamiltonian. | |
| Operators | |
| Expressions of quantum-mechanical operators. | |
Data Structures | |
| struct | ComputableObject |
| A base class for computable objects. More... | |
| class | DensityMatrix |
| Many-body Gibbs density matrix. More... | |
| class | DensityMatrixPart |
| Part of a many-body Gibbs density matrix. More... | |
| class | EnsembleAverage |
| Canonical ensemble average of a monomial operator. More... | |
| class | FieldOperatorContainer |
| Container for instances of CreationOperator and AnnihilationOperator. More... | |
| class | GFContainer |
| Container for instances of GreensFunction. More... | |
| class | GreensFunction |
| Fermionic single-particle Matsubara Green's function. More... | |
| class | GreensFunctionPart |
| Part of a fermionic single-particle Matsubara Green's function. More... | |
| class | Hamiltonian |
| Hamiltonian of a quantum system. More... | |
| class | HamiltonianPart |
| Part of a Hamiltonian of a quantum system. More... | |
| class | HilbertSpace |
| Hilbert space of a quantum system. More... | |
| struct | IndexCombination2 |
| A tuple-like combination of two single-particle indices. More... | |
| struct | IndexCombination4 |
| A tuple-like combination of four single-particle indices. More... | |
| class | IndexClassification |
| Contiguous list of operator index tuples. More... | |
| class | IndexContainer2 |
| Base class for sparse container types whose elements are addressable by two single-particle indices. More... | |
| struct | ElementWithPermFreq |
| A decorator that permutes indices of Matsubara frequencies in calls to operator(). More... | |
| class | IndexContainer4 |
| Base class for sparse container types whose elements are addressable by four single-particle indices. More... | |
| class | MatsubaraContainer4 |
| Container for functions of three Matsubara frequencies. More... | |
| struct | Permutation3 |
| Permutation of 3 elements. More... | |
| struct | Permutation4 |
| Permutation of 4 elements. More... | |
| class | MonomialOperator |
| Monomial quantum operator. More... | |
| class | FieldOperator |
| A special case of a monomial operator: A single fermion creation or annihilation operator \(\hat F_i\). More... | |
| class | CreationOperator |
| A special case of a monomial operator: A single fermion creation operator \(c^\dagger_i\). More... | |
| class | AnnihilationOperator |
| A special case of a monomial operator: A single fermion annihilation operator \(c_i\). More... | |
| class | QuadraticOperator |
| class | QuarticOperator |
| class | MonomialOperatorPart |
| Part of a monomial quantum operator. More... | |
| class | StatesClassification |
| Classification of many-body basis states into bases of invariant subspaces. More... | |
| class | Susceptibility |
| Dynamical susceptibility. More... | |
| class | SusceptibilityPart |
| Part of a dynamical susceptibility. More... | |
| class | TermList |
| A list of terms contributing to the Lehmann representation of a correlation function. More... | |
| struct | Thermal |
| Base class for objects whose definition depends on the temperature. More... | |
| class | ThreePointSusceptibility |
| 3-point fermion-boson susceptibility in the Matsubara representation. More... | |
| class | ThreePointSusceptibilityContainer |
| Container for instances of ThreePointSusceptibility. More... | |
| class | ThreePointSusceptibilityPart |
| Part of a 3-point susceptibility. More... | |
| class | TwoParticleGF |
| Fermionic two-particle Matsubara Green's function. More... | |
| class | TwoParticleGFContainer |
| Container for instances of TwoParticleGF. More... | |
| class | TwoParticleGFPart |
| Part of a fermionic two-particle Matsubara Green's function. More... | |
| class | Vertex4 |
| Irreducible two-particle vertex. More... | |
Typedefs | |
| using | RealType = double |
| Real floating point type. More... | |
| using | ComplexType = std::complex< double > |
| Complex floating point type. More... | |
| using | ParticleIndex = unsigned int |
| Index of a single particle degree of freedom. More... | |
| using | QuantumState = libcommute::sv_index_type |
| Index of a many-body state. More... | |
| using | ComplexMatrixType = Eigen::Matrix< ComplexType, Eigen::Dynamic, Eigen::Dynamic, Eigen::AutoAlign|Eigen::RowMajor > |
| Dense complex matrix. More... | |
| template<bool Complex> | |
| using | MelemType = typename std::conditional< Complex, ComplexType, RealType >::type |
| template<typename ScalarType > | |
| using | LOperatorType = libcommute::loperator< ScalarType, libcommute::fermion, libcommute::boson > |
| template<bool Complex> | |
| using | LOperatorTypeRC = libcommute::loperator< MelemType< Complex >, libcommute::fermion, libcommute::boson > |
| template<bool Complex> | |
| using | MatrixType = Eigen::Matrix< MelemType< Complex >, Eigen::Dynamic, Eigen::Dynamic, Eigen::AutoAlign|Eigen::RowMajor > |
| using | ComplexVectorType = Eigen::Matrix< ComplexType, Eigen::Dynamic, 1, Eigen::AutoAlign > |
| Dense complex vector. More... | |
| using | RealVectorType = Eigen::Matrix< RealType, Eigen::Dynamic, 1, Eigen::AutoAlign > |
| Dense real vector. More... | |
| template<bool Complex> | |
| using | VectorType = Eigen::Matrix< MelemType< Complex >, Eigen::Dynamic, 1, Eigen::AutoAlign > |
| template<bool Complex> | |
| using | ColMajorMatrixType = Eigen::SparseMatrix< MelemType< Complex >, Eigen::ColMajor > |
| template<bool Complex> | |
| using | RowMajorMatrixType = Eigen::SparseMatrix< MelemType< Complex >, Eigen::RowMajor > |
| using | BlockMapping = std::pair< BlockNumber, BlockNumber > |
| A pair of invariant subspace indices. More... | |
| using | BlockNumber = int |
| Index of a subspace (block) within a full many-body Hilbert space. More... | |
| using | InnerQuantumState = libcommute::sv_index_type |
| Index of a state within a block. More... | |
| using | FreqTuple2 = std::tuple< ComplexType, ComplexType > |
| Duplet of complex frequencies. More... | |
| using | FreqVec2 = std::vector< FreqTuple2 > |
| List of complex frequency duplets. More... | |
| using | FreqTuple3 = std::tuple< ComplexType, ComplexType, ComplexType > |
| Triplet of complex frequencies. More... | |
| using | FreqVec3 = std::vector< FreqTuple3 > |
| List of complex frequency triplets. More... | |
Enumerations | |
| enum | Channel : int { PP , PH , xPH } |
| Channel, in which a susceptibility function is defined. More... | |
Functions | |
| template<bool Complex> | |
| bool | chaseIndices (typename RowMajorMatrixType< Complex >::InnerIterator &index1_iter, typename ColMajorMatrixType< Complex >::InnerIterator &index2_iter) |
| Make the lagging index catch up or outrun the leading index. More... | |
| template<typename ScalarType , typename... IndexTypes> | |
| HilbertSpace< IndexTypes... > | MakeHilbertSpace (IndexClassification< IndexTypes... > const &IndexInfo, Operators::expression< ScalarType, IndexTypes... > const &H, unsigned int bits_per_boson=1) |
| template<typename ScalarType , typename... IndexTypes> | |
| HilbertSpace< IndexTypes... > | MakeHilbertSpace (IndexClassification< IndexTypes... > const &IndexInfo, Operators::expression< ScalarType, IndexTypes... > const &H, std::map< std::tuple< IndexTypes... >, unsigned int > const &bits_per_boson_map) |
| template<typename ScalarType , typename... IndexTypes> | |
| IndexClassification< IndexTypes... > | MakeIndexClassification (Operators::expression< ScalarType, IndexTypes... > const &H) |
| std::ostream & | operator<< (std::ostream &os, Channel channel) |
| std::size_t | hash_binned_real (double x, double bin_size) |
Variables | |
| static ComplexType const | I = ComplexType(0.0, 1.0) |
| Imaginary unit \(i\). More... | |
| std::array< Permutation3, 6 > const | permutations3 |
| An array of all 3! = 6 permutations of 3 elements. More... | |
| std::array< Permutation4, 24 > const | permutations4 |
| An array of all 4! = 24 permutations of 4 elements. More... | |
| constexpr BlockNumber | INVALID_BLOCK_NUMBER = -1 |
| A special value that stands for a non-existent subspace (block). More... | |
The main namespace of the library.
|
inline |
Make the lagging index catch up or outrun the leading index.
Definition at line 30 of file ChaseIndices.hpp.