monolish  0.14.0
MONOlithic LIner equation Solvers for Highly-parallel architecture
Namespaces | Functions
matrix_vml.cpp File Reference
#include "../../../include/monolish_vml.hpp"
#include "../../internal/monolish_internal.hpp"
#include "./arithmetic/matadd.hpp"
#include "./arithmetic/matdiv.hpp"
#include "./arithmetic/matmul.hpp"
#include "./arithmetic/matsub.hpp"
#include "./math_1_3op/matmax.hpp"
#include "./math_1_3op/matmin.hpp"
#include "./math_1_3op/matpow.hpp"
#include "./math_2op/matasin.hpp"
#include "./math_2op/matasinh.hpp"
#include "./math_2op/matatan.hpp"
#include "./math_2op/matatanh.hpp"
#include "./math_2op/matceil.hpp"
#include "./math_2op/matfloor.hpp"
#include "./math_2op/matreciprocal.hpp"
#include "./math_2op/matsign.hpp"
#include "./math_2op/matsin.hpp"
#include "./math_2op/matsinh.hpp"
#include "./math_2op/matsqrt.hpp"
#include "./math_2op/mattan.hpp"
#include "./math_2op/mattanh.hpp"

Go to the source code of this file.

Namespaces

 monolish
 
 monolish::vml
 Vector and Matrix element-wise math library.
 

Functions

void monolish::vml::add (const matrix::CRS< double > &A, const double alpha, matrix::CRS< double > &C)
 element by element addition CRS matrix A and CRS matrix B. More...
 
void monolish::vml::add (const matrix::CRS< double > &A, const matrix::CRS< double > &B, matrix::CRS< double > &C)
 element by element addition CRS matrix A and CRS matrix B. More...
 
void monolish::vml::add (const matrix::CRS< float > &A, const float alpha, matrix::CRS< float > &C)
 
void monolish::vml::add (const matrix::CRS< float > &A, const matrix::CRS< float > &B, matrix::CRS< float > &C)
 
void monolish::vml::add (const matrix::Dense< double > &A, const double alpha, matrix::Dense< double > &C)
 element by element addition Dense matrix A and Dense matrix B. More...
 
void monolish::vml::add (const matrix::Dense< double > &A, const matrix::Dense< double > &B, matrix::Dense< double > &C)
 element by element addition Dense matrix A and Dense matrix B. More...
 
void monolish::vml::add (const matrix::Dense< float > &A, const float alpha, matrix::Dense< float > &C)
 
void monolish::vml::add (const matrix::Dense< float > &A, const matrix::Dense< float > &B, matrix::Dense< float > &C)
 
void monolish::vml::asin (const matrix::CRS< double > &A, matrix::CRS< double > &C)
 asin to CRS matrix elements (C[0:nnz] = asin(A[0:nnz])) More...
 
void monolish::vml::asin (const matrix::CRS< float > &A, matrix::CRS< float > &C)
 
void monolish::vml::asin (const matrix::Dense< double > &A, matrix::Dense< double > &C)
 asin to Dense matrix elements (C[0:nnz] = asin(A[0:nnz])) More...
 
void monolish::vml::asin (const matrix::Dense< float > &A, matrix::Dense< float > &C)
 
void monolish::vml::asinh (const matrix::CRS< double > &A, matrix::CRS< double > &C)
 asinh to CRS matrix elements (C[0:nnz] = asinh(A[0:nnz])) More...
 
void monolish::vml::asinh (const matrix::CRS< float > &A, matrix::CRS< float > &C)
 
void monolish::vml::asinh (const matrix::Dense< double > &A, matrix::Dense< double > &C)
 asinh to Dense matrix elements (C[0:nnz] = asinh(A[0:nnz])) More...
 
void monolish::vml::asinh (const matrix::Dense< float > &A, matrix::Dense< float > &C)
 
void monolish::vml::atan (const matrix::CRS< double > &A, matrix::CRS< double > &C)
 atan to CRS matrix elements (C[0:nnz] = atan(A[0:nnz])) More...
 
void monolish::vml::atan (const matrix::CRS< float > &A, matrix::CRS< float > &C)
 
void monolish::vml::atan (const matrix::Dense< double > &A, matrix::Dense< double > &C)
 atan to Dense matrix elements (C[0:nnz] = atan(A[0:nnz])) More...
 
void monolish::vml::atan (const matrix::Dense< float > &A, matrix::Dense< float > &C)
 
void monolish::vml::atanh (const matrix::CRS< double > &A, matrix::CRS< double > &C)
 atanh to CRS matrix elements (C[0:nnz] = atanh(A[0:nnz])) More...
 
void monolish::vml::atanh (const matrix::CRS< float > &A, matrix::CRS< float > &C)
 
void monolish::vml::atanh (const matrix::Dense< double > &A, matrix::Dense< double > &C)
 atanh to Dense matrix elements (C[0:nnz] = atanh(A[0:nnz])) More...
 
void monolish::vml::atanh (const matrix::Dense< float > &A, matrix::Dense< float > &C)
 
void monolish::vml::ceil (const matrix::CRS< double > &A, matrix::CRS< double > &C)
 ceil to CRS matrix elements (C[0:nnz] = ceil(A[0:nnz])) More...
 
void monolish::vml::ceil (const matrix::CRS< float > &A, matrix::CRS< float > &C)
 
void monolish::vml::ceil (const matrix::Dense< double > &A, matrix::Dense< double > &C)
 ceil to Dense matrix elements (C[0:nnz] = ceil(A[0:nnz])) More...
 
void monolish::vml::ceil (const matrix::Dense< float > &A, matrix::Dense< float > &C)
 
void monolish::vml::div (const matrix::CRS< double > &A, const double alpha, matrix::CRS< double > &C)
 element by element division CRS matrix A and CRS matrix B. More...
 
void monolish::vml::div (const matrix::CRS< double > &A, const matrix::CRS< double > &B, matrix::CRS< double > &C)
 element by element division CRS matrix A and CRS matrix B. More...
 
void monolish::vml::div (const matrix::CRS< float > &A, const float alpha, matrix::CRS< float > &C)
 
void monolish::vml::div (const matrix::CRS< float > &A, const matrix::CRS< float > &B, matrix::CRS< float > &C)
 
void monolish::vml::div (const matrix::Dense< double > &A, const double alpha, matrix::Dense< double > &C)
 element by element division Dense matrix A and Dense matrix B. More...
 
void monolish::vml::div (const matrix::Dense< double > &A, const matrix::Dense< double > &B, matrix::Dense< double > &C)
 element by element division Dense matrix A and Dense matrix B. More...
 
void monolish::vml::div (const matrix::Dense< float > &A, const float alpha, matrix::Dense< float > &C)
 
void monolish::vml::div (const matrix::Dense< float > &A, const matrix::Dense< float > &B, matrix::Dense< float > &C)
 
void monolish::vml::floor (const matrix::CRS< double > &A, matrix::CRS< double > &C)
 floor to CRS matrix elements (C[0:nnz] = floor(A[0:nnz])) More...
 
void monolish::vml::floor (const matrix::CRS< float > &A, matrix::CRS< float > &C)
 
void monolish::vml::floor (const matrix::Dense< double > &A, matrix::Dense< double > &C)
 floor to Dense matrix elements (C[0:nnz] = floor(A[0:nnz])) More...
 
void monolish::vml::floor (const matrix::Dense< float > &A, matrix::Dense< float > &C)
 
void monolish::vml::max (const matrix::CRS< double > &A, const matrix::CRS< double > &B, matrix::CRS< double > &C)
 Create a new CRS matrix with greatest elements of two matrices (C[0:nnz] = max(A[0:nnz], B[0:nnz])) More...
 
double monolish::vml::max (const matrix::CRS< double > &C)
 Finds the greatest element in CRS matrix (max(C[0:nnz])) More...
 
void monolish::vml::max (const matrix::CRS< float > &A, const matrix::CRS< float > &B, matrix::CRS< float > &C)
 
float monolish::vml::max (const matrix::CRS< float > &C)
 
void monolish::vml::max (const matrix::Dense< double > &A, const matrix::Dense< double > &B, matrix::Dense< double > &C)
 Create a new Dense matrix with greatest elements of two matrices (C[0:nnz] = max(A[0:nnz], B[0:nnz])) More...
 
double monolish::vml::max (const matrix::Dense< double > &C)
 Finds the greatest element in Dense matrix (max(C[0:nnz])) More...
 
void monolish::vml::max (const matrix::Dense< float > &A, const matrix::Dense< float > &B, matrix::Dense< float > &C)
 
float monolish::vml::max (const matrix::Dense< float > &C)
 
void monolish::vml::min (const matrix::CRS< double > &A, const matrix::CRS< double > &B, matrix::CRS< double > &C)
 Create a new CRS matrix with smallest elements of two matrices (C[0:nnz] = min(A[0:nnz], B[0:nnz])) More...
 
double monolish::vml::min (const matrix::CRS< double > &C)
 Finds the smallest element in CRS matrix (min(C[0:nnz])) More...
 
void monolish::vml::min (const matrix::CRS< float > &A, const matrix::CRS< float > &B, matrix::CRS< float > &C)
 
float monolish::vml::min (const matrix::CRS< float > &C)
 
void monolish::vml::min (const matrix::Dense< double > &A, const matrix::Dense< double > &B, matrix::Dense< double > &C)
 Create a new Dense matrix with smallest elements of two matrices (C[0:nnz] = min(A[0:nnz], B[0:nnz])) More...
 
double monolish::vml::min (const matrix::Dense< double > &C)
 Finds the smallest element in Dense matrix (min(C[0:nnz])) More...
 
void monolish::vml::min (const matrix::Dense< float > &A, const matrix::Dense< float > &B, matrix::Dense< float > &C)
 
float monolish::vml::min (const matrix::Dense< float > &C)
 
void monolish::vml::mul (const matrix::CRS< double > &A, const double alpha, matrix::CRS< double > &C)
 element by element multiplication CRS matrix A and CRS matrix B. More...
 
void monolish::vml::mul (const matrix::CRS< double > &A, const matrix::CRS< double > &B, matrix::CRS< double > &C)
 element by element multiplication CRS matrix A and CRS matrix B. More...
 
void monolish::vml::mul (const matrix::CRS< float > &A, const float alpha, matrix::CRS< float > &C)
 
void monolish::vml::mul (const matrix::CRS< float > &A, const matrix::CRS< float > &B, matrix::CRS< float > &C)
 
void monolish::vml::mul (const matrix::Dense< double > &A, const double alpha, matrix::Dense< double > &C)
 element by element multiplication Dense matrix A and Dense matrix B. More...
 
void monolish::vml::mul (const matrix::Dense< double > &A, const matrix::Dense< double > &B, matrix::Dense< double > &C)
 element by element multiplication Dense matrix A and Dense matrix B. More...
 
void monolish::vml::mul (const matrix::Dense< float > &A, const float alpha, matrix::Dense< float > &C)
 
void monolish::vml::mul (const matrix::Dense< float > &A, const matrix::Dense< float > &B, matrix::Dense< float > &C)
 
void monolish::vml::pow (const matrix::CRS< double > &A, const double alpha, matrix::CRS< double > &C)
 power to CRS matrix elements by scalar value (C[0:N] = pow(A[0:N], alpha)) More...
 
void monolish::vml::pow (const matrix::CRS< double > &A, const matrix::CRS< double > &B, matrix::CRS< double > &C)
 power to CRS matrix elements CRS matrix (C[0:N] = pow(A[0:N], B[0:N])) More...
 
void monolish::vml::pow (const matrix::CRS< float > &A, const float alpha, matrix::CRS< float > &C)
 
void monolish::vml::pow (const matrix::CRS< float > &A, const matrix::CRS< float > &B, matrix::CRS< float > &C)
 
void monolish::vml::pow (const matrix::Dense< double > &A, const double alpha, matrix::Dense< double > &C)
 power to Dense matrix elements by scalar value (C[0:N] = pow(A[0:N], alpha)) More...
 
void monolish::vml::pow (const matrix::Dense< double > &A, const matrix::Dense< double > &B, matrix::Dense< double > &C)
 power to Dense matrix elements Dense matrix (C[0:N] = pow(A[0:N], B[0:N])) More...
 
void monolish::vml::pow (const matrix::Dense< float > &A, const float alpha, matrix::Dense< float > &C)
 
void monolish::vml::pow (const matrix::Dense< float > &A, const matrix::Dense< float > &B, matrix::Dense< float > &C)
 
void monolish::vml::reciprocal (const matrix::CRS< double > &a, matrix::CRS< double > &y)
 reciprocal to CRS matrix elements (C[0:nnz] = 1 / A[0:nnz]) More...
 
void monolish::vml::reciprocal (const matrix::CRS< float > &a, matrix::CRS< float > &y)
 
void monolish::vml::reciprocal (const matrix::Dense< double > &a, matrix::Dense< double > &y)
 reciprocal to Dense matrix elements (C[0:nnz] = 1 / A[0:nnz]) More...
 
void monolish::vml::reciprocal (const matrix::Dense< float > &a, matrix::Dense< float > &y)
 
void monolish::vml::sign (const matrix::CRS< double > &A, matrix::CRS< double > &C)
 sign to CRS matrix elements (C[0:nnz] = sign(A[0:nnz])) More...
 
void monolish::vml::sign (const matrix::CRS< float > &A, matrix::CRS< float > &C)
 
void monolish::vml::sign (const matrix::Dense< double > &A, matrix::Dense< double > &C)
 sign to Dense matrix elements (C[0:nnz] = sign(A[0:nnz])) More...
 
void monolish::vml::sign (const matrix::Dense< float > &A, matrix::Dense< float > &C)
 
void monolish::vml::sin (const matrix::CRS< double > &A, matrix::CRS< double > &C)
 sin to CRS matrix elements (C[0:nnz] = sin(A[0:nnz])) More...
 
void monolish::vml::sin (const matrix::CRS< float > &A, matrix::CRS< float > &C)
 
void monolish::vml::sin (const matrix::Dense< double > &A, matrix::Dense< double > &C)
 sin to Dense matrix elements (C[0:nnz] = sin(A[0:nnz])) More...
 
void monolish::vml::sin (const matrix::Dense< float > &A, matrix::Dense< float > &C)
 
void monolish::vml::sinh (const matrix::CRS< double > &A, matrix::CRS< double > &C)
 sinh to CRS matrix elements (C[0:nnz] = sinh(A[0:nnz])) More...
 
void monolish::vml::sinh (const matrix::CRS< float > &A, matrix::CRS< float > &C)
 
void monolish::vml::sinh (const matrix::Dense< double > &A, matrix::Dense< double > &C)
 sinh to Dense matrix elements (C[0:nnz] = sinh(A[0:nnz])) More...
 
void monolish::vml::sinh (const matrix::Dense< float > &A, matrix::Dense< float > &C)
 
void monolish::vml::sqrt (const matrix::CRS< double > &A, matrix::CRS< double > &C)
 sqrt to CRS matrix elements (C[0:nnz] = sqrt(A[0:nnz])) More...
 
void monolish::vml::sqrt (const matrix::CRS< float > &A, matrix::CRS< float > &C)
 
void monolish::vml::sqrt (const matrix::Dense< double > &A, matrix::Dense< double > &C)
 sqrt to Dense matrix elements (C[0:nnz] = sqrt(A[0:nnz])) More...
 
void monolish::vml::sqrt (const matrix::Dense< float > &A, matrix::Dense< float > &C)
 
void monolish::vml::sub (const matrix::CRS< double > &A, const double alpha, matrix::CRS< double > &C)
 element by element subtract CRS matrix A and CRS matrix B. More...
 
void monolish::vml::sub (const matrix::CRS< double > &A, const matrix::CRS< double > &B, matrix::CRS< double > &C)
 element by element subtract CRS matrix A and CRS matrix B. More...
 
void monolish::vml::sub (const matrix::CRS< float > &A, const float alpha, matrix::CRS< float > &C)
 
void monolish::vml::sub (const matrix::CRS< float > &A, const matrix::CRS< float > &B, matrix::CRS< float > &C)
 
void monolish::vml::sub (const matrix::Dense< double > &A, const double alpha, matrix::Dense< double > &C)
 element by element subtract Dense matrix A and Dense matrix B. More...
 
void monolish::vml::sub (const matrix::Dense< double > &A, const matrix::Dense< double > &B, matrix::Dense< double > &C)
 element by element subtract Dense matrix A and Dense matrix B. More...
 
void monolish::vml::sub (const matrix::Dense< float > &A, const float alpha, matrix::Dense< float > &C)
 
void monolish::vml::sub (const matrix::Dense< float > &A, const matrix::Dense< float > &B, matrix::Dense< float > &C)
 
void monolish::vml::tan (const matrix::CRS< double > &A, matrix::CRS< double > &C)
 tan to CRS matrix elements (C[0:nnz] = tan(A[0:nnz])) More...
 
void monolish::vml::tan (const matrix::CRS< float > &A, matrix::CRS< float > &C)
 
void monolish::vml::tan (const matrix::Dense< double > &A, matrix::Dense< double > &C)
 tan to Dense matrix elements (C[0:nnz] = tan(A[0:nnz])) More...
 
void monolish::vml::tan (const matrix::Dense< float > &A, matrix::Dense< float > &C)
 
void monolish::vml::tanh (const matrix::CRS< double > &A, matrix::CRS< double > &C)
 tanh to CRS matrix elements (C[0:nnz] = tanh(A[0:nnz])) More...
 
void monolish::vml::tanh (const matrix::CRS< float > &A, matrix::CRS< float > &C)
 
void monolish::vml::tanh (const matrix::Dense< double > &A, matrix::Dense< double > &C)
 tanh to Dense matrix elements (C[0:nnz] = tanh(A[0:nnz])) More...
 
void monolish::vml::tanh (const matrix::Dense< float > &A, matrix::Dense< float > &C)