Utilities necessary for the QC Hamiltonian. More...
#include <algorithm>
#include <cassert>
#include <cstdint>
#include <functional>
#include <vector>
Classes | |
struct | Toolkit::pair_less< Pair, priorityPos > |
Functions | |
void | Toolkit::align (int &i, int &j) noexcept |
void | Toolkit::align (int &i, int &j, int &k, int &l) noexcept |
template<typename Type , class Compare = std::less<Type>> | |
std::vector< int > | Toolkit::argsort (const std::vector< Type > &v, Compare comp=Compare()) |
template<typename Type , class Compare = std::less<Type>> | |
std::vector< int > | Toolkit::argsort (const Type *begin, int size, Compare comp=Compare()) |
std::uint64_t | Toolkit::index (std::uint64_t i, std::uint64_t j) noexcept |
std::uint64_t | Toolkit::index (std::uint64_t i, std::uint64_t j, std::uint64_t k, std::uint64_t l) noexcept |
template<typename Type > | |
std::vector< Type > | Toolkit::reordered (const std::vector< Type > &data, const std::vector< int > &order) |
void | Toolkit::unpackIndex (std::uint64_t idx, int &i, int &j) noexcept |
void | Toolkit::unpackIndex (std::uint64_t idx, int &i, int &j, int &k, int &l) noexcept |
Utilities necessary for the QC Hamiltonian.