|
pomerol
2.2
|
Data Structures | |
| struct | Pomerol::Permutation3 |
| Permutation of 3 elements. More... | |
| struct | Pomerol::Permutation4 |
| Permutation of 4 elements. More... | |
Macros | |
| #define | DEBUG(MSG) std::cout << MSG_PREFIX << MSG << '\n' |
| Print a debugging message to the standard output with a source file name and line number annotation. More... | |
| #define | INFO(MSG) std::cout << MSG << '\n' |
| Print a message to the standard output. More... | |
| #define | INFO_NONEWLINE(MSG) std::cout << MSG |
| Print a message without a trailing new line character to the standard output. More... | |
| #define | ERROR(MSG) std::cerr << MSG_PREFIX << MSG << '\n' |
| Print a message to the standard error stream. More... | |
Typedefs | |
| using | Pomerol::RealType = double |
| Real floating point type. More... | |
| using | Pomerol::ComplexType = std::complex< double > |
| Complex floating point type. More... | |
| using | Pomerol::ParticleIndex = unsigned int |
| Index of a single particle degree of freedom. More... | |
| using | Pomerol::QuantumState = libcommute::sv_index_type |
| Index of a many-body state. More... | |
| using | Pomerol::ComplexMatrixType = Eigen::Matrix< ComplexType, Eigen::Dynamic, Eigen::Dynamic, Eigen::AutoAlign|Eigen::RowMajor > |
| Dense complex matrix. More... | |
| template<bool Complex> | |
| using | Pomerol::MelemType = typename std::conditional< Complex, ComplexType, RealType >::type |
| template<typename ScalarType > | |
| using | Pomerol::LOperatorType = libcommute::loperator< ScalarType, libcommute::fermion, libcommute::boson > |
| template<bool Complex> | |
| using | Pomerol::LOperatorTypeRC = libcommute::loperator< MelemType< Complex >, libcommute::fermion, libcommute::boson > |
| template<bool Complex> | |
| using | Pomerol::MatrixType = Eigen::Matrix< MelemType< Complex >, Eigen::Dynamic, Eigen::Dynamic, Eigen::AutoAlign|Eigen::RowMajor > |
| using | Pomerol::ComplexVectorType = Eigen::Matrix< ComplexType, Eigen::Dynamic, 1, Eigen::AutoAlign > |
| Dense complex vector. More... | |
| using | Pomerol::RealVectorType = Eigen::Matrix< RealType, Eigen::Dynamic, 1, Eigen::AutoAlign > |
| Dense real vector. More... | |
| template<bool Complex> | |
| using | Pomerol::VectorType = Eigen::Matrix< MelemType< Complex >, Eigen::Dynamic, 1, Eigen::AutoAlign > |
| template<bool Complex> | |
| using | Pomerol::ColMajorMatrixType = Eigen::SparseMatrix< MelemType< Complex >, Eigen::ColMajor > |
| template<bool Complex> | |
| using | Pomerol::RowMajorMatrixType = Eigen::SparseMatrix< MelemType< Complex >, Eigen::RowMajor > |
Enumerations | |
| enum | Pomerol::Channel : int { Pomerol::PP , Pomerol::PH , Pomerol::xPH } |
| Channel, in which a susceptibility function is defined. More... | |
Functions | |
| std::ostream & | Pomerol::operator<< (std::ostream &os, Channel channel) |
| std::size_t | Pomerol::hash_binned_real (double x, double bin_size) |
Variables | |
| static ComplexType const | Pomerol::I = ComplexType(0.0, 1.0) |
| Imaginary unit \(i\). More... | |
| std::array< Permutation3, 6 > const | Pomerol::permutations3 |
| An array of all 3! = 6 permutations of 3 elements. More... | |
| std::array< Permutation4, 24 > const | Pomerol::permutations4 |
| An array of all 4! = 24 permutations of 4 elements. More... | |
| #define DEBUG | ( | MSG | ) | std::cout << MSG_PREFIX << MSG << '\n' |
| #define ERROR | ( | MSG | ) | std::cerr << MSG_PREFIX << MSG << '\n' |
| #define INFO | ( | MSG | ) | std::cout << MSG << '\n' |
| #define INFO_NONEWLINE | ( | MSG | ) | std::cout << MSG |
| using Pomerol::ColMajorMatrixType = typedef Eigen::SparseMatrix<MelemType<Complex>, Eigen::ColMajor> |
| using Pomerol::ComplexMatrixType = typedef Eigen::Matrix<ComplexType, Eigen::Dynamic, Eigen::Dynamic, Eigen::AutoAlign | Eigen::RowMajor> |
| using Pomerol::ComplexType = typedef std::complex<double> |
| using Pomerol::ComplexVectorType = typedef Eigen::Matrix<ComplexType, Eigen::Dynamic, 1, Eigen::AutoAlign> |
| using Pomerol::LOperatorType = typedef libcommute::loperator<ScalarType, libcommute::fermion, libcommute::boson> |
| using Pomerol::LOperatorTypeRC = typedef libcommute::loperator<MelemType<Complex>, libcommute::fermion, libcommute::boson> |
| using Pomerol::MatrixType = typedef Eigen::Matrix<MelemType<Complex>, Eigen::Dynamic, Eigen::Dynamic, Eigen::AutoAlign | Eigen::RowMajor> |
| using Pomerol::MelemType = typedef typename std::conditional<Complex, ComplexType, RealType>::type |
| using Pomerol::ParticleIndex = typedef unsigned int |
| using Pomerol::QuantumState = typedef libcommute::sv_index_type |
| using Pomerol::RealType = typedef double |
| using Pomerol::RealVectorType = typedef Eigen::Matrix<RealType, Eigen::Dynamic, 1, Eigen::AutoAlign> |
| using Pomerol::RowMajorMatrixType = typedef Eigen::SparseMatrix<MelemType<Complex>, Eigen::RowMajor> |
| using Pomerol::VectorType = typedef Eigen::Matrix<MelemType<Complex>, Eigen::Dynamic, 1, Eigen::AutoAlign> |
| enum Pomerol::Channel : int |
| std::size_t Pomerol::hash_binned_real | ( | double | x, |
| double | bin_size | ||
| ) |
Hash function for real numbers that gives the same hash value for all numbers falling into the same small interval (bin).
| [in] | x | Value to be hashed. |
| [in] | bin_size | Size of the interval. |
| std::ostream& Pomerol::operator<< | ( | std::ostream & | os, |
| Channel | channel | ||
| ) |
|
static |
|
extern |
An array of all 3! = 6 permutations of 3 elements.
|
extern |
An array of all 4! = 24 permutations of 4 elements.