Matrix-like class that stores only upper triangular part. More...
Go to the source code of this file.
Data Structures | |
class | Scine::Molassembler::Temple::UpperTriangularMatrix< ValueType, dataSize > |
Strictly upper triangular matrix. More... | |
Namespaces | |
Scine::Molassembler | |
Central library namespace. | |
Scine::Molassembler::Temple | |
Template shorthands, optimizers and constexpr data types. | |
Typedefs | |
template<typename T , size_t size> | |
using | Scine::Molassembler::Temple::UpperTriangularMatrixImpl::ArrayType = std::array< T, size > |
Underlying type of the upper triangular matrix. | |
Functions | |
template<size_t N, typename UnsignedType > | |
PURITY_STRONG constexpr unsigned | Scine::Molassembler::Temple::UpperTriangularMatrixImpl::index_conversion::toSingleIndex (const UnsignedType i, const UnsignedType j) |
Converts from (i, j) matrix indices to the linear k index for the array. | |
template<size_t N, typename UnsignedType > | |
PURITY_STRONG constexpr std::pair< UnsignedType, UnsignedType > | Scine::Molassembler::Temple::UpperTriangularMatrixImpl::index_conversion::toDoubleIndex (const UnsignedType k) |
Converts from the linear array to (i, j) matrix indices. | |
PURITY_STRONG constexpr bool | Scine::Molassembler::Temple::UpperTriangularMatrixImpl::isValidMatrixSize (const size_t dataSize) |
Checks if an array size is a valid size for an upper triangular matrix. | |
PURITY_STRONG constexpr size_t | Scine::Molassembler::Temple::UpperTriangularMatrixImpl::getMatrixSize (const size_t dataSize) |
Calculates the square matrix dimension for a particular array size. | |
template<template< typename, size_t > class ArrayType, typename ValueType , size_t size> | |
constexpr UpperTriangularMatrix < ValueType, size > | Scine::Molassembler::Temple::makeUpperTriangularMatrix (const ArrayType< ValueType, size > &data) |
Helper constructing function that deduces the required type signature. | |
Matrix-like class that stores only upper triangular part.
constexpr
class that stores the data of an upper-triangular matrix via a std::array and provides two-index access.