lambda-lanczos 2.1.1
Loading...
Searching...
No Matches
common.hpp File Reference
#include <cassert>
#include <cmath>
#include <complex>
#include <functional>
#include <limits>
#include <map>
#include <numeric>
#include <sstream>
#include <vector>

Go to the source code of this file.

Classes

class  lambda_lanczos::util::TupleViewIterator< I, container_type >
 Iterator for a container of tuples to iterate over the I-th tuple elements. More...
class  lambda_lanczos::util::MapValueIterable< map_type >
struct  lambda_lanczos::util::realTypeMap< T >
 Template class to map specific types. See real_t<T> for usage. More...
struct  lambda_lanczos::util::realTypeMap< std::complex< T > >
struct  lambda_lanczos::util::TypedConjugate< T >
 Complex conjugate template. More...
struct  lambda_lanczos::util::TypedConjugate< std::complex< T > >

Namespaces

namespace  lambda_lanczos
namespace  lambda_lanczos::util

Typedefs

template<typename map_type>
using lambda_lanczos::util::MapValueIterator = TupleViewIterator<1, map_type>
 Iterator for a map to iterate over its values.
template<typename T>
using lambda_lanczos::util::real_t = typename realTypeMap<T>::type
 Type mapper from T to real type of T.

Functions

template<typename T>
lambda_lanczos::util::typed_conj (const T &val)
 Complex conjugate with type. This function returns the argument itself for real type, and returns its complex conjugate for complex type.
template<typename T>
void lambda_lanczos::util::sort_eigenpairs (std::vector< real_t< T > > &eigenvalues, std::vector< std::vector< T > > &eigenvectors, bool sort_eigenvector, const std::function< bool(real_t< T >, real_t< T >)> predicate=std::less< real_t< T > >())
 Sorts eigenvalues and eigenvectors with respect to given predicate.
template<typename T>
constexpr int lambda_lanczos::util::sig_decimal_digit ()
 Returns the significant decimal digits of type T.
template<typename T>
constexpr T lambda_lanczos::util::minimum_effective_decimal ()
template<typename T>
lambda_lanczos::util::sgn (T val)
 Return the sign of given value.
template<typename T>
std::string lambda_lanczos::util::vectorToString (const std::vector< T > &vec, std::string delimiter=" ")
 Returns string representation of given vector.