Molassembler  3.0.0
Molecule graph and conformer library
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
UpperTriangularMatrix.h File Reference

Matrix-like class that stores only upper triangular part. More...

Include dependency graph for UpperTriangularMatrix.h:
This graph shows which files directly or indirectly include this file:

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.
 

Detailed Description

Matrix-like class that stores only upper triangular part.