plll
1.0
|
Operator instantiations for matrices and vectors. More...
Go to the source code of this file.
Namespaces | |
plll | |
Contains the plll library. | |
plll::linalg | |
Contains the matrix and vector library as long as other linear algebra functionality. | |
Functions | |
Swap functions. | |
template<typename T , int R, int C, typename ST , bool MO> | |
void | plll::linalg::swap (base_matrix< T, R, C, ST, MO > &A, base_matrix< T, R, C, ST, MO > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_INLINE |
Swaps matrices A and B efficiently. More... | |
template<typename T , int R1, int C1, int R2, int C2, typename ST , bool MO1, bool MO2> | |
void | plll::linalg::swap (base_matrix< T, R1, C1, ST, MO1 > &A, base_matrix< T, R2, C2, ST, MO2 > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_INLINE |
Swaps matrices A and B efficiently. More... | |
template<template< typename AData > class AOp, typename AData , template< typename BData > class BOp, typename BData > | |
void | plll::linalg::swap (const implementation::expressions::expr< AOp, AData > &A, const implementation::expressions::expr< BOp, BData > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::do_swap(A, B))) |
Swaps matrices A and B componentwise. More... | |
template<template< typename AData > class AOp, typename AData , typename BT , int BRows, int BCols, typename BST , bool BMO> | |
void | plll::linalg::swap (const implementation::expressions::expr< AOp, AData > &A, base_matrix< BT, BRows, BCols, BST, BMO > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(linalg::swap(A, implementation::expressions::make_matrix_expression(B)))) |
Swaps matrices A and B componentwise. More... | |
template<typename AT , int ARows, int ACols, typename AST , bool AMO, template< typename BData > class BOp, typename BData > | |
void | plll::linalg::swap (base_matrix< AT, ARows, ACols, AST, AMO > &A, const implementation::expressions::expr< BOp, BData > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(linalg::swap(implementation::expressions::make_matrix_expression(A), B))) |
Swaps matrices A and B componentwise. More... | |
template<typename T , int ARows, int ACols, typename AST , bool AMO, int BRows, int BCols, typename BST , bool BMO> | |
void | plll::linalg::swap (base_matrix< T, ARows, ACols, AST, AMO > &A, base_matrix< T, BRows, BCols, BST, BMO > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(linalg::swap(implementation::expressions::make_matrix_expression(A), implementation::expressions::make_matrix_expression(B)))) |
Swaps matrices A and B componentwise. More... | |
Assignment functions. | |
template<template< typename SourceData > class SourceOp, typename SourceData , template< typename DestData > class DestOp, typename DestData , bool move> | |
void | plll::linalg::assign (const implementation::expressions::expr< DestOp, DestData > &destination, const implementation::expressions::expr< SourceOp, SourceData > &source, helper::BoolToType< move > ittm) |
Assigns the content of matrix source to matrix destination . Allows to force move. More... | |
template<template< typename SourceData > class SourceOp, typename SourceData , template< typename DestData > class DestOp, typename DestData > | |
void | plll::linalg::assign (const implementation::expressions::expr< DestOp, DestData > &destination, const implementation::expressions::expr< SourceOp, SourceData > &source) |
Assigns the content of matrix source to matrix destination . More... | |
template<typename SourceT , int SourceRows, int SourceCols, typename SourceST , bool SourceMO, template< typename DestData > class DestOp, typename DestData > | |
void | plll::linalg::assign (const implementation::expressions::expr< DestOp, DestData > &destination, const base_matrix< SourceT, SourceRows, SourceCols, SourceST, SourceMO > &source) |
Assigns the content of matrix source to matrix destination . More... | |
template<template< typename SourceData > class SourceOp, typename SourceData , typename DestT , int DestRows, int DestCols, typename DestST , bool DestMO> | |
void | plll::linalg::assign (base_matrix< DestT, DestRows, DestCols, DestST, DestMO > &destination, const implementation::expressions::expr< SourceOp, SourceData > &source) |
Assigns the content of matrix source to matrix destination . More... | |
template<typename SourceT , int SourceRows, int SourceCols, typename SourceST , bool SourceMO, typename DestT , int DestRows, int DestCols, typename DestST , bool DestMO> | |
void | plll::linalg::assign (base_matrix< DestT, DestRows, DestCols, DestST, DestMO > &destination, const base_matrix< SourceT, SourceRows, SourceCols, SourceST, SourceMO > &source) |
Assigns the content of matrix source to matrix destination . More... | |
Transpose functions. | |
template<template< typename SourceData > class SourceOp, typename SourceData , template< typename DestData > class DestOp, typename DestData , bool move> | |
void | plll::linalg::transpose (const implementation::expressions::expr< DestOp, DestData > &destination, const implementation::expressions::expr< SourceOp, SourceData > &source, helper::BoolToType< move > ittm) |
Transposes the content of matrix source and stores the result in the matrix destination . Allows to force move. More... | |
template<template< typename SourceData > class SourceOp, typename SourceData , template< typename DestData > class DestOp, typename DestData > | |
void | plll::linalg::transpose (const implementation::expressions::expr< DestOp, DestData > &destination, const implementation::expressions::expr< SourceOp, SourceData > &source) |
Transposes the content of matrix source and stores the result in the matrix destination . More... | |
template<typename SourceT , int SourceRows, int SourceCols, typename SourceST , bool SourceMO, template< typename DestData > class DestOp, typename DestData > | |
void | plll::linalg::transpose (const implementation::expressions::expr< DestOp, DestData > &destination, const base_matrix< SourceT, SourceRows, SourceCols, SourceST, SourceMO > &source) |
Transposes the content of matrix source and stores the result in the matrix destination . More... | |
template<template< typename SourceData > class SourceOp, typename SourceData , typename DestT , int DestRows, int DestCols, typename DestST , bool DestMO> | |
void | plll::linalg::transpose (base_matrix< DestT, DestRows, DestCols, DestST, DestMO > &destination, const implementation::expressions::expr< SourceOp, SourceData > &source) |
Transposes the content of matrix source and stores the result in the matrix destination . More... | |
template<typename SourceT , int SourceRows, int SourceCols, typename SourceST , bool SourceMO, typename DestT , int DestRows, int DestCols, typename DestST , bool DestMO> | |
void | plll::linalg::transpose (base_matrix< DestT, DestRows, DestCols, DestST, DestMO > &destination, const base_matrix< SourceT, SourceRows, SourceCols, SourceST, SourceMO > &source) |
Transposes the content of matrix source and stores the result in the matrix destination . More... | |
Operators. | |
template<typename T , int Rows, int Cols, typename ST , typename MT > | |
implementation::BinaryMatrixOperationImpl < base_matrix< T, Rows, Cols, ST, true >, MT > ::Mul_ReturnType | plll::linalg::operator* (const base_matrix< T, Rows, Cols, ST, true > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::BinaryMatrixOperationImpl< base_matrix< T, Rows, Cols, ST, true >, MT >::multiply(A, B))) |
Computes the product of A with B . More... | |
template<typename T , int Rows, int Cols, typename ST > | |
implementation::BinaryMatrixOperationImpl < T, base_matrix< T, Rows, Cols, ST, true > >::Mul_ReturnType | plll::linalg::operator* (const T &A, const base_matrix< T, Rows, Cols, ST, true > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::BinaryMatrixOperationImpl< T, base_matrix< T, Rows, Cols, ST, true > >::multiply(A, B))) |
Computes the product of A with B . More... | |
template<typename T , int Rows, int Cols, typename ST , typename MT > | |
implementation::BinaryMatrixOperationImpl < base_matrix< T, Rows, Cols, ST, true >, MT > ::Div_ReturnType | plll::linalg::operator/ (const base_matrix< T, Rows, Cols, ST, true > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::BinaryMatrixOperationImpl< base_matrix< T, Rows, Cols, ST, true >, MT >::divide(A, B))) |
Computes the componentwise division of A with the scalar B . More... | |
template<typename T , int Rows, int Cols, typename ST , typename MT > | |
implementation::BinaryMatrixOperationImpl < base_matrix< T, Rows, Cols, ST, true >, MT > ::Mod_ReturnType | plll::linalg::operator% (const base_matrix< T, Rows, Cols, ST, true > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::BinaryMatrixOperationImpl< base_matrix< T, Rows, Cols, ST, true >, MT >::modulo(A, B))) |
Computes the componentwise modulo of A with the scalar B . More... | |
template<typename T , int Rows, int Cols, typename ST , typename MT > | |
implementation::BinaryMatrixOperationImpl < base_matrix< T, Rows, Cols, ST, true >, MT > ::CwMul_ReturnType | plll::linalg::componentwise_mul (const base_matrix< T, Rows, Cols, ST, true > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::BinaryMatrixOperationImpl< base_matrix< T, Rows, Cols, ST, true >, MT >::componentwise_mul(A, B))) |
Computes the componentwise multiplication of A with B . More... | |
template<typename T , int Rows, int Cols, typename ST , typename MT > | |
implementation::BinaryMatrixOperationImpl < base_matrix< T, Rows, Cols, ST, true >, MT > ::CwDiv_ReturnType | plll::linalg::componentwise_div (const base_matrix< T, Rows, Cols, ST, true > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::BinaryMatrixOperationImpl< base_matrix< T, Rows, Cols, ST, true >, MT >::componentwise_div(A, B))) |
Computes the componentwise division of A with B . More... | |
template<typename T , int Rows, int Cols, typename ST , typename MT > | |
implementation::BinaryMatrixOperationImpl < base_matrix< T, Rows, Cols, ST, true >, MT > ::CwMod_ReturnType | plll::linalg::componentwise_mod (const base_matrix< T, Rows, Cols, ST, true > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::BinaryMatrixOperationImpl< base_matrix< T, Rows, Cols, ST, true >, MT >::componentwise_mod(A, B))) |
Computes the componentwise modulo of A with B . More... | |
template<typename T , int Rows, int Cols, typename ST , typename MT > | |
implementation::BinaryMatrixOperationImpl < base_matrix< T, Rows, Cols, ST, true >, MT > ::Add_ReturnType | plll::linalg::operator+ (const base_matrix< T, Rows, Cols, ST, true > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::BinaryMatrixOperationImpl< base_matrix< T, Rows, Cols, ST, true >, MT >::add(A, B))) |
Computes the sum of A and B . More... | |
template<typename T , int Rows, int Cols, typename ST , typename MT > | |
implementation::BinaryMatrixOperationImpl < base_matrix< T, Rows, Cols, ST, true >, MT > ::Sub_ReturnType | plll::linalg::operator- (const base_matrix< T, Rows, Cols, ST, true > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::BinaryMatrixOperationImpl< base_matrix< T, Rows, Cols, ST, true >, MT >::sub(A, B))) |
Computes the difference of A and B . More... | |
template<typename T , int Rows, int Cols, typename ST > | |
implementation::UnaryMatrixOperationImpl < base_matrix< T, Rows, Cols, ST, true > >::Neg_ReturnType | plll::linalg::operator- (const base_matrix< T, Rows, Cols, ST, true > &A) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::UnaryMatrixOperationImpl< base_matrix< T, Rows, Cols, ST, true > >::negate(A))) |
Computes the negation of A . More... | |
template<template< typename DataType > class Operator, typename Data , typename MT > | |
implementation::BinaryMatrixOperationImpl < implementation::expressions::expr < Operator, Data >, MT > ::Mul_ReturnType | plll::linalg::operator* (const implementation::expressions::expr< Operator, Data > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::BinaryMatrixOperationImpl< implementation::expressions::expr< Operator, Data >, MT >::multiply(A, B))) |
template<template< typename DataType > class Operator, typename Data > | |
implementation::BinaryMatrixOperationImpl < typename implementation::MatrixInfo < implementation::expressions::expr < Operator, Data > >::Type, implementation::expressions::expr < Operator, Data > >::Mul_ReturnType | plll::linalg::operator* (const typename implementation::MatrixInfo< implementation::expressions::expr< Operator, Data > >::Type &A, const implementation::expressions::expr< Operator, Data > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::BinaryMatrixOperationImpl< typename implementation::MatrixInfo< implementation::expressions::expr< Operator, Data > >::Type, implementation::expressions::expr< Operator, Data > >::multiply(A, B))) |
template<template< typename DataType > class Operator, typename Data , typename MT > | |
implementation::BinaryMatrixOperationImpl < implementation::expressions::expr < Operator, Data >, MT > ::Div_ReturnType | plll::linalg::operator/ (const implementation::expressions::expr< Operator, Data > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::BinaryMatrixOperationImpl< implementation::expressions::expr< Operator, Data >, MT >::divide(A, B))) |
template<template< typename DataType > class Operator, typename Data , typename MT > | |
implementation::BinaryMatrixOperationImpl < implementation::expressions::expr < Operator, Data >, MT > ::Mod_ReturnType | plll::linalg::operator% (const implementation::expressions::expr< Operator, Data > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::BinaryMatrixOperationImpl< implementation::expressions::expr< Operator, Data >, MT >::modulo(A, B))) |
template<template< typename DataType > class Operator, typename Data , typename MT > | |
implementation::BinaryMatrixOperationImpl < implementation::expressions::expr < Operator, Data >, MT > ::CwMul_ReturnType | plll::linalg::componentwise_mul (const implementation::expressions::expr< Operator, Data > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::BinaryMatrixOperationImpl< implementation::expressions::expr< Operator, Data >, MT >::componentwise_mul(A, B))) |
template<template< typename DataType > class Operator, typename Data , typename MT > | |
implementation::BinaryMatrixOperationImpl < implementation::expressions::expr < Operator, Data >, MT > ::CwDiv_ReturnType | plll::linalg::componentwise_div (const implementation::expressions::expr< Operator, Data > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::BinaryMatrixOperationImpl< implementation::expressions::expr< Operator, Data >, MT >::componentwise_div(A, B))) |
template<template< typename DataType > class Operator, typename Data , typename MT > | |
implementation::BinaryMatrixOperationImpl < implementation::expressions::expr < Operator, Data >, MT > ::CwMod_ReturnType | plll::linalg::componentwise_mod (const implementation::expressions::expr< Operator, Data > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::BinaryMatrixOperationImpl< implementation::expressions::expr< Operator, Data >, MT >::componentwise_mod(A, B))) |
template<template< typename DataType > class Operator, typename Data , typename MT > | |
implementation::BinaryMatrixOperationImpl < implementation::expressions::expr < Operator, Data >, MT > ::Add_ReturnType | plll::linalg::operator+ (const implementation::expressions::expr< Operator, Data > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::BinaryMatrixOperationImpl< implementation::expressions::expr< Operator, Data >, MT >::add(A, B))) |
template<template< typename DataType > class Operator, typename Data , typename MT > | |
implementation::BinaryMatrixOperationImpl < implementation::expressions::expr < Operator, Data >, MT > ::Mul_ReturnType | plll::linalg::operator- (const implementation::expressions::expr< Operator, Data > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::BinaryMatrixOperationImpl< implementation::expressions::expr< Operator, Data >, MT >::sub(A, B))) |
template<template< typename DataType > class Operator, typename Data > | |
implementation::UnaryMatrixOperationImpl < implementation::expressions::expr < Operator, Data > >::Neg_ReturnType | plll::linalg::operator- (const implementation::expressions::expr< Operator, Data > &A) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::UnaryMatrixOperationImpl< implementation::expressions::expr< Operator, Data > >::negate(A))) |
Functional versions of operators. | |
template<typename T , int Rows, int Cols, typename ST , typename MT1 , typename MT2 > | |
void | plll::linalg::mul (base_matrix< T, Rows, Cols, ST, true > &result, const MT1 &A, const MT2 &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(assign(result, implementation::BinaryMatrixOperationImpl< MT1, MT2 >::multiply(A, B)))) |
Computes the product of A and B and stores the result in result . More... | |
template<typename T , int Rows, int Cols, typename ST , typename MT1 , typename MT2 > | |
void | plll::linalg::div (base_matrix< T, Rows, Cols, ST, true > &result, const MT1 &A, const MT2 &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(assign(result, implementation::BinaryMatrixOperationImpl< MT1, MT2 >::divide(A, B)))) |
Computes the componentwise division of A by B and stores the result in result . More... | |
template<typename T , int Rows, int Cols, typename ST , typename MT1 , typename MT2 > | |
void | plll::linalg::mod (base_matrix< T, Rows, Cols, ST, true > &result, const MT1 &A, const MT2 &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(assign(result, implementation::BinaryMatrixOperationImpl< MT1, MT2 >::modulo(A, B)))) |
Computes the componentwise modulo of A by B and stores the result in result . More... | |
template<typename T , int Rows, int Cols, typename ST , typename MT1 , typename MT2 > | |
void | plll::linalg::componentwise_mul (base_matrix< T, Rows, Cols, ST, true > &result, const MT1 &A, const MT2 &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(assign(result, implementation::BinaryMatrixOperationImpl< MT1, MT2 >::componentwise_mul(A, B)))) |
Computes the componentwise product of A and B and stores the result in result . More... | |
template<typename T , int Rows, int Cols, typename ST , typename MT1 , typename MT2 > | |
void | plll::linalg::componentwise_div (base_matrix< T, Rows, Cols, ST, true > &result, const MT1 &A, const MT2 &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(assign(result, implementation::BinaryMatrixOperationImpl< MT1, MT2 >::componentwise_div(A, B)))) |
Computes the componentwise division of A by B and stores the result in result . More... | |
template<typename T , int Rows, int Cols, typename ST , typename MT1 , typename MT2 > | |
void | plll::linalg::componentwise_mod (base_matrix< T, Rows, Cols, ST, true > &result, const MT1 &A, const MT2 &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(assign(result, implementation::BinaryMatrixOperationImpl< MT1, MT2 >::componentwise_mod(A, B)))) |
Computes the componentwise modulo of A by B and stores the result in result . More... | |
template<typename T , int Rows, int Cols, typename ST , typename MT1 , typename MT2 > | |
void | plll::linalg::add (base_matrix< T, Rows, Cols, ST, true > &result, const MT1 &A, const MT2 &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(assign(result, implementation::BinaryMatrixOperationImpl< MT1, MT2 >::add(A, B)))) |
Computes the sum of A and B and stores the result in result . More... | |
template<typename T , int Rows, int Cols, typename ST , typename MT1 , typename MT2 > | |
void | plll::linalg::sub (base_matrix< T, Rows, Cols, ST, true > &result, const MT1 &A, const MT2 &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(assign(result, implementation::BinaryMatrixOperationImpl< MT1, MT2 >::sub(A, B)))) |
Computes the difference of A and B and stores the result in result . More... | |
template<typename T , int Rows, int Cols, typename ST , typename MT > | |
void | plll::linalg::neg (base_matrix< T, Rows, Cols, ST, true > &result, const MT &A) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(assign(result, implementation::UnaryMatrixOperationImpl< MT >::negate(A)))) |
Computes the negation of A and stores the result in result . More... | |
template<template< typename DataType > class Operator, typename Data , typename MT1 , typename MT2 > | |
void | plll::linalg::mul (const implementation::expressions::expr< Operator, Data > &result, const MT1 &A, const MT2 &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(assign(result, implementation::BinaryMatrixOperationImpl< MT1, MT2 >::multiply(A, B)))) |
template<template< typename DataType > class Operator, typename Data , typename MT1 , typename MT2 > | |
void | plll::linalg::div (const implementation::expressions::expr< Operator, Data > &result, const MT1 &A, const MT2 &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(assign(result, implementation::BinaryMatrixOperationImpl< MT1, MT2 >::divide(A, B)))) |
template<template< typename DataType > class Operator, typename Data , typename MT1 , typename MT2 > | |
void | plll::linalg::mod (const implementation::expressions::expr< Operator, Data > &result, const MT1 &A, const MT2 &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(assign(result, implementation::BinaryMatrixOperationImpl< MT1, MT2 >::modulo(A, B)))) |
template<template< typename DataType > class Operator, typename Data , typename MT1 , typename MT2 > | |
void | plll::linalg::componentwise_mul (const implementation::expressions::expr< Operator, Data > &result, const MT1 &A, const MT2 &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(assign(result, implementation::BinaryMatrixOperationImpl< MT1, MT2 >::componentwise_mul(A, B)))) |
template<template< typename DataType > class Operator, typename Data , typename MT1 , typename MT2 > | |
void | plll::linalg::componentwise_div (const implementation::expressions::expr< Operator, Data > &result, const MT1 &A, const MT2 &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(assign(result, implementation::BinaryMatrixOperationImpl< MT1, MT2 >::componentwise_div(A, B)))) |
template<template< typename DataType > class Operator, typename Data , typename MT1 , typename MT2 > | |
void | plll::linalg::componentwise_mod (const implementation::expressions::expr< Operator, Data > &result, const MT1 &A, const MT2 &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(assign(result, implementation::BinaryMatrixOperationImpl< MT1, MT2 >::componentwise_mod(A, B)))) |
template<template< typename DataType > class Operator, typename Data , typename MT1 , typename MT2 > | |
void | plll::linalg::add (const implementation::expressions::expr< Operator, Data > &result, const MT1 &A, const MT2 &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(assign(result, implementation::BinaryMatrixOperationImpl< MT1, MT2 >::add(A, B)))) |
template<template< typename DataType > class Operator, typename Data , typename MT1 , typename MT2 > | |
void | plll::linalg::sub (const implementation::expressions::expr< Operator, Data > &result, const MT1 &A, const MT2 &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(assign(result, implementation::BinaryMatrixOperationImpl< MT1, MT2 >::sub(A, B)))) |
template<template< typename DataType > class Operator, typename Data , typename MT > | |
void | plll::linalg::neg (const implementation::expressions::expr< Operator, Data > &result, const MT &A) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(assign(result, implementation::UnaryMatrixOperationImpl< MT >::negate(A)))) |
Assignment-operation operators. | |
template<typename T , int Rows, int Cols, typename ST , typename MT > | |
base_matrix< T, Rows, Cols, ST, true > & | plll::linalg::operator+= (base_matrix< T, Rows, Cols, ST, true > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::expressions::make_matrix_expression(A)+=B)) |
Adds B to the current matrix. More... | |
template<typename T , int Rows, int Cols, typename ST , typename MT > | |
base_matrix< T, Rows, Cols, ST, true > & | plll::linalg::operator-= (base_matrix< T, Rows, Cols, ST, true > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::expressions::make_matrix_expression(A)-=B)) |
Subtracts B from the current matrix. More... | |
template<typename T , int Rows, int Cols, typename ST , typename MT > | |
base_matrix< T, Rows, Cols, ST, true > & | plll::linalg::operator*= (base_matrix< T, Rows, Cols, ST, true > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::expressions::make_matrix_expression(A)*=B)) |
Multiplies the current matrix with B and stores the result in the current matrix. More... | |
template<typename T , int Rows, int Cols, typename ST , typename MT > | |
base_matrix< T, Rows, Cols, ST, true > & | plll::linalg::operator/= (base_matrix< T, Rows, Cols, ST, true > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::expressions::make_matrix_expression(A)/=B)) |
Divides the current matrix by the scalar B and stores the result in the current matrix. More... | |
template<typename T , int Rows, int Cols, typename ST , typename MT > | |
base_matrix< T, Rows, Cols, ST, true > & | plll::linalg::operator%= (base_matrix< T, Rows, Cols, ST, true > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::expressions::make_matrix_expression(A)%=B)) |
Takes the current matrix modulo the scalar B and stores the result in the current matrix. More... | |
template<template< typename DataType > class Op, typename Data , typename MT > | |
const implementation::expressions::expr < Op, Data > & | plll::linalg::operator+= (const implementation::expressions::expr< Op, Data > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::AssignmentMatrixOperationImpl< implementation::expressions::expr< Op, Data >, MT >::add_assign(A, B))) |
template<template< typename DataType > class Op, typename Data , typename MT > | |
const implementation::expressions::expr < Op, Data > & | plll::linalg::operator-= (const implementation::expressions::expr< Op, Data > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::AssignmentMatrixOperationImpl< implementation::expressions::expr< Op, Data >, MT >::sub_assign(A, B))) |
template<template< typename DataType > class Op, typename Data , typename MT > | |
const implementation::expressions::expr < Op, Data > & | plll::linalg::operator*= (const implementation::expressions::expr< Op, Data > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::AssignmentMatrixOperationImpl< implementation::expressions::expr< Op, Data >, MT >::mul_assign(A, B))) |
template<template< typename DataType > class Op, typename Data , typename MT > | |
const implementation::expressions::expr < Op, Data > & | plll::linalg::operator/= (const implementation::expressions::expr< Op, Data > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::AssignmentMatrixOperationImpl< implementation::expressions::expr< Op, Data >, MT >::div_assign(A, B))) |
template<template< typename DataType > class Op, typename Data , typename MT > | |
const implementation::expressions::expr < Op, Data > & | plll::linalg::operator%= (const implementation::expressions::expr< Op, Data > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::AssignmentMatrixOperationImpl< implementation::expressions::expr< Op, Data >, MT >::mod_assign(A, B))) |
Other operations. | |
template<typename RetType , typename T , int Rows, int Cols, typename ST > | |
void | plll::linalg::sum (RetType &result, const base_matrix< T, Rows, Cols, ST, true > &A) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::SumImpl< base_matrix< T, Rows, Cols, ST, true > >::sum(result, A))) |
Computes the sum of all entries of A and stores the result in result . More... | |
template<typename T , int Rows, int Cols, typename ST > | |
implementation::SumImpl < base_matrix< T, Rows, Cols, ST, true > >::RetValue | plll::linalg::sum (const base_matrix< T, Rows, Cols, ST, true > &A) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::SumImpl< base_matrix< T, Rows, Cols, ST, true > >::sum(A))) |
Computes the sum of all entries of A and returns the result. More... | |
template<typename RetType , template< typename DataType > class Operator, typename Data > | |
void | plll::linalg::sum (RetType &result, const implementation::expressions::expr< Operator, Data > &A) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::SumImpl< implementation::expressions::expr< Operator, Data > >::sum(result, A))) |
template<template< typename DataType > class Operator, typename Data > | |
implementation::SumImpl < implementation::expressions::expr < Operator, Data > >::RetValue | plll::linalg::sum (const implementation::expressions::expr< Operator, Data > &A) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::SumImpl< implementation::expressions::expr< Operator, Data > >::sum(A))) |
template<typename RetType , typename T , int Rows, int Cols, typename ST , typename MT > | |
void | plll::linalg::dot (RetType &result, const base_matrix< T, Rows, Cols, ST, true > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::DotImpl< base_matrix< T, Rows, Cols, ST, true >, MT >::dot(result, A, B))) |
Computes the dot product of A and B and stores the result in result . More... | |
template<typename T , int Rows, int Cols, typename ST , typename MT > | |
implementation::DotImpl < base_matrix< T, Rows, Cols, ST, true >, MT >::RetValue | plll::linalg::dot (const base_matrix< T, Rows, Cols, ST, true > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::DotImpl< base_matrix< T, Rows, Cols, ST, true >, MT >::dot(A, B))) |
Computes the dot product of A and B and returns the result. More... | |
template<typename RetType , template< typename DataType > class Operator, typename Data , typename MT > | |
void | plll::linalg::dot (RetType &result, const implementation::expressions::expr< Operator, Data > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::DotImpl< implementation::expressions::expr< Operator, Data >, MT >::dot(result, A, B))) |
template<template< typename DataType > class Operator, typename Data , typename MT > | |
implementation::DotImpl < implementation::expressions::expr < Operator, Data >, MT > ::RetValue | plll::linalg::dot (const implementation::expressions::expr< Operator, Data > &A, const MT &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::DotImpl< implementation::expressions::expr< Operator, Data >, MT >::dot(A, B))) |
template<typename RetType , typename T , int Rows, int Cols, typename ST > | |
void | plll::linalg::normSq (RetType &result, const base_matrix< T, Rows, Cols, ST, true > &A) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::NormSqImpl< base_matrix< T, Rows, Cols, ST, true > >::normSq(result, A))) |
Computes the squared norm of A , i.e. the sum of the squares of all entries of A , and stores the result in result . More... | |
template<typename T , int Rows, int Cols, typename ST > | |
implementation::NormSqImpl < base_matrix< T, Rows, Cols, ST, true > >::RetValue | plll::linalg::normSq (const base_matrix< T, Rows, Cols, ST, true > &A) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::NormSqImpl< base_matrix< T, Rows, Cols, ST, true > >::normSq(A))) |
Computes the squared norm of A , i.e. the sum of the squares of all entries of A , and returns the result. More... | |
template<typename RetType , template< typename DataType > class Operator, typename Data > | |
void | plll::linalg::normSq (RetType &result, const implementation::expressions::expr< Operator, Data > &A) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::NormSqImpl< implementation::expressions::expr< Operator, Data > >::normSq(result, A))) |
template<template< typename DataType > class Operator, typename Data > | |
implementation::NormSqImpl < implementation::expressions::expr < Operator, Data > >::RetValue | plll::linalg::normSq (const implementation::expressions::expr< Operator, Data > &A) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::NormSqImpl< implementation::expressions::expr< Operator, Data > >::normSq(A))) |
template<typename T , int Rows, int Cols, typename ST , typename T1 , typename T2 > | |
void | plll::linalg::addmul (base_matrix< T, Rows, Cols, ST, true > &A, const T1 &B, const T2 &C) |
Computes A += B * C . More... | |
template<typename T , int Rows, int Cols, typename ST , typename T1 , typename T2 > | |
void | plll::linalg::submul (base_matrix< T, Rows, Cols, ST, true > &A, const T1 &B, const T2 &C) |
Computes A -= B * C . More... | |
template<template< typename DataType > class Op, typename Data , typename T1 , typename T2 > | |
void | plll::linalg::addmul (const implementation::expressions::expr< Op, Data > &A, const T1 &B, const T2 &C) |
template<template< typename DataType > class Op, typename Data , typename T1 , typename T2 > | |
void | plll::linalg::submul (const implementation::expressions::expr< Op, Data > &A, const T1 &B, const T2 &C) |
Comparisons. | |
template<template< typename AData > class AOp, typename AData , template< typename BData > class BOp, typename BData > | |
int | plll::linalg::compare (const implementation::expressions::expr< AOp, AData > &A, const implementation::expressions::expr< BOp, BData > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::comparison_impl< implementation::expressions::expr< AOp, AData >, implementation::expressions::expr< BOp, BData > >::compare(A, B))) |
template<template< typename AData > class AOp, typename AData , typename BT , int BRows, int BCols, typename BST , bool BMO> | |
int | plll::linalg::compare (const implementation::expressions::expr< AOp, AData > &A, const base_matrix< BT, BRows, BCols, BST, BMO > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(compare(A, implementation::expressions::make_matrix_expression(B)))) |
template<typename AT , int ARows, int ACols, typename AST , bool AMO, template< typename BData > class BOp, typename BData > | |
int | plll::linalg::compare (const base_matrix< AT, ARows, ACols, AST, AMO > &A, const implementation::expressions::expr< BOp, BData > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(compare(implementation::expressions::make_matrix_expression(A), B))) |
template<typename AT , int ARows, int ACols, typename AST , bool AMO, typename BT , int BRows, int BCols, typename BST , bool BMO> | |
int | plll::linalg::compare (const base_matrix< AT, ARows, ACols, AST, AMO > &A, const base_matrix< BT, BRows, BCols, BST, BMO > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(compare(implementation::expressions::make_matrix_expression(A), implementation::expressions::make_matrix_expression(B)))) |
Lexicographically compares the matrices A and B . More... | |
template<template< typename AData > class AOp, typename AData , template< typename BData > class BOp, typename BData > | |
bool | plll::linalg::operator== (const implementation::expressions::expr< AOp, AData > &A, const implementation::expressions::expr< BOp, BData > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::comparison_impl< implementation::expressions::expr< AOp, AData >, implementation::expressions::expr< BOp, BData > >::eq(A, B))) |
template<template< typename AData > class AOp, typename AData , typename BT , int BRows, int BCols, typename BST , bool BMO> | |
bool | plll::linalg::operator== (const implementation::expressions::expr< AOp, AData > &A, const base_matrix< BT, BRows, BCols, BST, BMO > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(A==implementation::expressions::make_matrix_expression(B))) |
template<typename AT , int ARows, int ACols, typename AST , bool AMO, template< typename BData > class BOp, typename BData > | |
bool | plll::linalg::operator== (const base_matrix< AT, ARows, ACols, AST, AMO > &A, const implementation::expressions::expr< BOp, BData > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::expressions::make_matrix_expression(A)==B)) |
template<typename AT , int ARows, int ACols, typename AST , bool AMO, typename BT , int BRows, int BCols, typename BST , bool BMO> | |
bool | plll::linalg::operator== (const base_matrix< AT, ARows, ACols, AST, AMO > &A, const base_matrix< BT, BRows, BCols, BST, BMO > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::expressions::make_matrix_expression(A)==implementation::expressions::make_matrix_expression(B))) |
Tests A and B for equality. More... | |
template<template< typename AData > class AOp, typename AData , template< typename BData > class BOp, typename BData > | |
bool | plll::linalg::operator!= (const implementation::expressions::expr< AOp, AData > &A, const implementation::expressions::expr< BOp, BData > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::comparison_impl< implementation::expressions::expr< AOp, AData >, implementation::expressions::expr< BOp, BData > >::neq(A, B))) |
template<template< typename AData > class AOp, typename AData , typename BT , int BRows, int BCols, typename BST , bool BMO> | |
bool | plll::linalg::operator!= (const implementation::expressions::expr< AOp, AData > &A, const base_matrix< BT, BRows, BCols, BST, BMO > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(A!=implementation::expressions::make_matrix_expression(B))) |
template<typename AT , int ARows, int ACols, typename AST , bool AMO, template< typename BData > class BOp, typename BData > | |
bool | plll::linalg::operator!= (const base_matrix< AT, ARows, ACols, AST, AMO > &A, const implementation::expressions::expr< BOp, BData > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::expressions::make_matrix_expression(A)!=B)) |
template<typename AT , int ARows, int ACols, typename AST , bool AMO, typename BT , int BRows, int BCols, typename BST , bool BMO> | |
bool | plll::linalg::operator!= (const base_matrix< AT, ARows, ACols, AST, AMO > &A, const base_matrix< BT, BRows, BCols, BST, BMO > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::expressions::make_matrix_expression(A)!=implementation::expressions::make_matrix_expression(B))) |
Tests A and B for inequality. More... | |
template<template< typename AData > class AOp, typename AData , template< typename BData > class BOp, typename BData > | |
bool | plll::linalg::operator< (const implementation::expressions::expr< AOp, AData > &A, const implementation::expressions::expr< BOp, BData > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::comparison_impl< implementation::expressions::expr< AOp, AData >, implementation::expressions::expr< BOp, BData > >::less(A, B))) |
template<template< typename AData > class AOp, typename AData , typename BT , int BRows, int BCols, typename BST , bool BMO> | |
bool | plll::linalg::operator< (const implementation::expressions::expr< AOp, AData > &A, const base_matrix< BT, BRows, BCols, BST, BMO > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(A< implementation::expressions::make_matrix_expression(B))) |
template<typename AT , int ARows, int ACols, typename AST , bool AMO, template< typename BData > class BOp, typename BData > | |
bool | plll::linalg::operator< (const base_matrix< AT, ARows, ACols, AST, AMO > &A, const implementation::expressions::expr< BOp, BData > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::expressions::make_matrix_expression(A)< B)) |
template<typename AT , int ARows, int ACols, typename AST , bool AMO, typename BT , int BRows, int BCols, typename BST , bool BMO> | |
bool | plll::linalg::operator< (const base_matrix< AT, ARows, ACols, AST, AMO > &A, const base_matrix< BT, BRows, BCols, BST, BMO > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::expressions::make_matrix_expression(A)< implementation::expressions::make_matrix_expression(B))) |
Tests A and B lexicographically for A being less than B . More... | |
template<template< typename AData > class AOp, typename AData , template< typename BData > class BOp, typename BData > | |
bool | plll::linalg::operator<= (const implementation::expressions::expr< AOp, AData > &A, const implementation::expressions::expr< BOp, BData > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::comparison_impl< implementation::expressions::expr< AOp, AData >, implementation::expressions::expr< BOp, BData > >::less_eq(A, B))) |
template<template< typename AData > class AOp, typename AData , typename BT , int BRows, int BCols, typename BST , bool BMO> | |
bool | plll::linalg::operator<= (const implementation::expressions::expr< AOp, AData > &A, const base_matrix< BT, BRows, BCols, BST, BMO > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(A<=implementation::expressions::make_matrix_expression(B))) |
template<typename AT , int ARows, int ACols, typename AST , bool AMO, template< typename BData > class BOp, typename BData > | |
bool | plll::linalg::operator<= (const base_matrix< AT, ARows, ACols, AST, AMO > &A, const implementation::expressions::expr< BOp, BData > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::expressions::make_matrix_expression(A)<=B)) |
template<typename AT , int ARows, int ACols, typename AST , bool AMO, typename BT , int BRows, int BCols, typename BST , bool BMO> | |
bool | plll::linalg::operator<= (const base_matrix< AT, ARows, ACols, AST, AMO > &A, const base_matrix< BT, BRows, BCols, BST, BMO > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::expressions::make_matrix_expression(A)<=implementation::expressions::make_matrix_expression(B))) |
Tests A and B lexicographically for A being less than or equal to B . More... | |
template<template< typename AData > class AOp, typename AData , template< typename BData > class BOp, typename BData > | |
bool | plll::linalg::operator> (const implementation::expressions::expr< AOp, AData > &A, const implementation::expressions::expr< BOp, BData > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::comparison_impl< implementation::expressions::expr< AOp, AData >, implementation::expressions::expr< BOp, BData > >::greater(A, B))) |
template<template< typename AData > class AOp, typename AData , typename BT , int BRows, int BCols, typename BST , bool BMO> | |
bool | plll::linalg::operator> (const implementation::expressions::expr< AOp, AData > &A, const base_matrix< BT, BRows, BCols, BST, BMO > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(A > implementation::expressions::make_matrix_expression(B))) |
template<typename AT , int ARows, int ACols, typename AST , bool AMO, template< typename BData > class BOp, typename BData > | |
bool | plll::linalg::operator> (const base_matrix< AT, ARows, ACols, AST, AMO > &A, const implementation::expressions::expr< BOp, BData > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::expressions::make_matrix_expression(A) > B)) |
template<typename AT , int ARows, int ACols, typename AST , bool AMO, typename BT , int BRows, int BCols, typename BST , bool BMO> | |
bool | plll::linalg::operator> (const base_matrix< AT, ARows, ACols, AST, AMO > &A, const base_matrix< BT, BRows, BCols, BST, BMO > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::expressions::make_matrix_expression(A) > implementation::expressions::make_matrix_expression(B))) |
Tests A and B lexicographically for A being greater than B . More... | |
template<template< typename AData > class AOp, typename AData , template< typename BData > class BOp, typename BData > | |
bool | plll::linalg::operator>= (const implementation::expressions::expr< AOp, AData > &A, const implementation::expressions::expr< BOp, BData > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::comparison_impl< implementation::expressions::expr< AOp, AData >, implementation::expressions::expr< BOp, BData > >::greater_eq(A, B))) |
template<template< typename AData > class AOp, typename AData , typename BT , int BRows, int BCols, typename BST , bool BMO> | |
bool | plll::linalg::operator>= (const implementation::expressions::expr< AOp, AData > &A, const base_matrix< BT, BRows, BCols, BST, BMO > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(A >=implementation::expressions::make_matrix_expression(B))) |
template<typename AT , int ARows, int ACols, typename AST , bool AMO, template< typename BData > class BOp, typename BData > | |
bool | plll::linalg::operator>= (const base_matrix< AT, ARows, ACols, AST, AMO > &A, const implementation::expressions::expr< BOp, BData > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::expressions::make_matrix_expression(A) >=B)) |
template<typename AT , int ARows, int ACols, typename AST , bool AMO, typename BT , int BRows, int BCols, typename BST , bool BMO> | |
bool | plll::linalg::operator>= (const base_matrix< AT, ARows, ACols, AST, AMO > &A, const base_matrix< BT, BRows, BCols, BST, BMO > &B) PLLL_INTERNAL_NOTHROW_POSTFIX_CONDITIONAL(noexcept(implementation::expressions::make_matrix_expression(A) >=implementation::expressions::make_matrix_expression(B))) |
Tests A and B lexicographically for A being greater than or equal to B . More... | |
Operator instantiations for matrices and vectors.
This header contains instantiations of the abstract templates in matrix-ops.hpp
. They provide implementations to essentially all operations on matrices.
Definition in file matrix-ops2.hpp.