Quantum++  v0.6
C++11 quantum computing library
qpp::internal Namespace Reference

Internal utility functions, do not use/modify. More...

Classes

class  IOManipEigen
 
class  IOManipPointer
 
class  IOManipRange
 
class  Singleton
 Singleton policy class, used internally to implement the singleton pattern via CRTP (Curiously recurring template pattern) More...
 

Functions

void _n2multiidx (idx n, idx numdims, const idx *dims, idx *result) noexcept
 
idx _multiidx2n (const idx *midx, idx numdims, const idx *dims) noexcept
 
template<typename Derived >
bool _check_square_mat (const Eigen::MatrixBase< Derived > &A)
 
template<typename Derived >
bool _check_vector (const Eigen::MatrixBase< Derived > &A)
 
template<typename Derived >
bool _check_rvector (const Eigen::MatrixBase< Derived > &A)
 
template<typename Derived >
bool _check_cvector (const Eigen::MatrixBase< Derived > &A)
 
template<typename T >
bool _check_nonzero_size (const T &x) noexcept
 
bool _check_dims (const std::vector< idx > &dims)
 
template<typename Derived >
bool _check_dims_match_mat (const std::vector< idx > &dims, const Eigen::MatrixBase< Derived > &A)
 
template<typename Derived >
bool _check_dims_match_cvect (const std::vector< idx > &dims, const Eigen::MatrixBase< Derived > &V)
 
template<typename Derived >
bool _check_dims_match_rvect (const std::vector< idx > &dims, const Eigen::MatrixBase< Derived > &V)
 
bool _check_eq_dims (const std::vector< idx > &dims, idx dim) noexcept
 
bool _check_subsys_match_dims (const std::vector< idx > &subsys, const std::vector< idx > &dims)
 
template<typename Derived >
bool _check_qubit_matrix (const Eigen::MatrixBase< Derived > &A) noexcept
 
template<typename Derived >
bool _check_qubit_cvector (const Eigen::MatrixBase< Derived > &V) noexcept
 
template<typename Derived >
bool _check_qubit_rvector (const Eigen::MatrixBase< Derived > &V) noexcept
 
template<typename Derived >
bool _check_qubit_vector (const Eigen::MatrixBase< Derived > &V) noexcept
 
bool _check_perm (const std::vector< idx > &perm)
 
template<typename Derived1 , typename Derived2 >
dyn_mat< typename Derived1::Scalar > _kron2 (const Eigen::MatrixBase< Derived1 > &A, const Eigen::MatrixBase< Derived2 > &B)
 
template<typename Derived1 , typename Derived2 >
dyn_mat< typename Derived1::Scalar > _dirsum2 (const Eigen::MatrixBase< Derived1 > &A, const Eigen::MatrixBase< Derived2 > &B)
 
template<typename T >
void variadic_vector_emplace (std::vector< T > &)
 
template<typename T , typename First , typename... Args>
void variadic_vector_emplace (std::vector< T > &v, First &&first, Args &&...args)
 

Detailed Description

Internal utility functions, do not use/modify.

Function Documentation

template<typename Derived >
bool qpp::internal::_check_cvector ( const Eigen::MatrixBase< Derived > &  A)
bool qpp::internal::_check_dims ( const std::vector< idx > &  dims)
template<typename Derived >
bool qpp::internal::_check_dims_match_cvect ( const std::vector< idx > &  dims,
const Eigen::MatrixBase< Derived > &  V 
)
template<typename Derived >
bool qpp::internal::_check_dims_match_mat ( const std::vector< idx > &  dims,
const Eigen::MatrixBase< Derived > &  A 
)
template<typename Derived >
bool qpp::internal::_check_dims_match_rvect ( const std::vector< idx > &  dims,
const Eigen::MatrixBase< Derived > &  V 
)
bool qpp::internal::_check_eq_dims ( const std::vector< idx > &  dims,
idx  dim 
)
noexcept
template<typename T >
bool qpp::internal::_check_nonzero_size ( const T &  x)
noexcept
bool qpp::internal::_check_perm ( const std::vector< idx > &  perm)
template<typename Derived >
bool qpp::internal::_check_qubit_cvector ( const Eigen::MatrixBase< Derived > &  V)
noexcept
template<typename Derived >
bool qpp::internal::_check_qubit_matrix ( const Eigen::MatrixBase< Derived > &  A)
noexcept
template<typename Derived >
bool qpp::internal::_check_qubit_rvector ( const Eigen::MatrixBase< Derived > &  V)
noexcept
template<typename Derived >
bool qpp::internal::_check_qubit_vector ( const Eigen::MatrixBase< Derived > &  V)
noexcept
template<typename Derived >
bool qpp::internal::_check_rvector ( const Eigen::MatrixBase< Derived > &  A)
template<typename Derived >
bool qpp::internal::_check_square_mat ( const Eigen::MatrixBase< Derived > &  A)
bool qpp::internal::_check_subsys_match_dims ( const std::vector< idx > &  subsys,
const std::vector< idx > &  dims 
)
template<typename Derived >
bool qpp::internal::_check_vector ( const Eigen::MatrixBase< Derived > &  A)
template<typename Derived1 , typename Derived2 >
dyn_mat<typename Derived1::Scalar> qpp::internal::_dirsum2 ( const Eigen::MatrixBase< Derived1 > &  A,
const Eigen::MatrixBase< Derived2 > &  B 
)
template<typename Derived1 , typename Derived2 >
dyn_mat<typename Derived1::Scalar> qpp::internal::_kron2 ( const Eigen::MatrixBase< Derived1 > &  A,
const Eigen::MatrixBase< Derived2 > &  B 
)
idx qpp::internal::_multiidx2n ( const idx midx,
idx  numdims,
const idx dims 
)
inlinenoexcept
void qpp::internal::_n2multiidx ( idx  n,
idx  numdims,
const idx dims,
idx result 
)
inlinenoexcept
template<typename T >
void qpp::internal::variadic_vector_emplace ( std::vector< T > &  )
template<typename T , typename First , typename... Args>
void qpp::internal::variadic_vector_emplace ( std::vector< T > &  v,
First &&  first,
Args &&...  args 
)