pomerol  2.1
Data Structures | Namespaces | Macros | Typedefs | Enumerations | Functions | Variables
Misc.hpp File Reference

Declarations of the most basic types and macros. More...

#include <pomerol/Version.hpp>
#include <libcommute/algebra_ids.hpp>
#include <libcommute/loperator/loperator.hpp>
#include <libcommute/loperator/state_vector.hpp>
#include <Eigen/Core>
#include <Eigen/Sparse>
#include <array>
#include <complex>
#include <cstddef>
#include <iostream>
#include <type_traits>
Include dependency graph for Misc.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  Pomerol::Permutation3
 Permutation of 3 elements. More...
 
struct  Pomerol::Permutation4
 Permutation of 4 elements. More...
 

Namespaces

 Pomerol
 The main namespace of the library.
 

Macros

#define POMEROL_DEPRECATED
 
#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 const ComplexType Pomerol::I = ComplexType(0.0, 1.0)
 Imaginary unit \(i\). More...
 
const std::array< Permutation3, 6 > Pomerol::permutations3
 An array of all 3! = 6 permutations of 3 elements. More...
 
const std::array< Permutation4, 24 > Pomerol::permutations4
 An array of all 4! = 24 permutations of 4 elements. More...
 

Detailed Description

Declarations of the most basic types and macros.

Author
Igor Krivenko
Andrey Antipov (andre.nosp@m.y.e..nosp@m.antip.nosp@m.ov@g.nosp@m.mail..nosp@m.com)

Definition in file Misc.hpp.

Macro Definition Documentation

◆ POMEROL_DEPRECATED

#define POMEROL_DEPRECATED

Definition at line 38 of file Misc.hpp.