SLATE 2024.05.31
Software for Linear Algebra Targeting Exascale
Loading...
Searching...
No Matches

\(\left\lVert A \right\rVert\) (one, inf, fro, max) More...

Functions

template<typename matrix_type >
void slate::colNorms (Norm in_norm, matrix_type &A, blas::real_type< typename matrix_type::value_type > *values, Options const &opts)
 Distributed parallel matrix norm.
 
template<typename matrix_type >
blas::real_type< typename matrix_type::value_type > slate::norm (Norm in_norm, matrix_type &A, Options const &opts)
 Distributed parallel general matrix norm.
 

Detailed Description

\(\left\lVert A \right\rVert\) (one, inf, fro, max)

Function Documentation

◆ colNorms()

template<typename matrix_type >
void slate::colNorms ( Norm  in_norm,
matrix_type &  A,
blas::real_type< typename matrix_type::value_type > *  values,
Options const &  opts 
)

Distributed parallel matrix norm.

Template Parameters
matrix_typeAny SLATE matrix type: Matrix, SymmetricMatrix, HermitianMatrix, TriangularMatrix, etc.
Parameters
[in]in_normNorm to compute:
  • Norm::Max: maximum element, \(\max_{i, j} \abs{ A_{i, j} }\)
  • Norm::One: maximum column sum, \(\max_j \sum_i \abs{ A_{i, j} }\)
  • Norm::Inf: maximum row sum, \(\max_i \sum_j \abs{ A_{i, j} }\) For symmetric and Hermitian matrices, the One and Inf norms are the same.
  • Norm::Fro: Frobenius norm, \(\sqrt{ \sum_{i, j} \abs{ A_{i, j} }^2 }\)
[in]AThe matrix A.
[out]valuestodo: undocumented.
[in]optsAdditional options, as map of name = value pairs. Possible options:
  • Option::Target: Implementation to target. Possible values:
    • HostTask: OpenMP tasks on CPU host [default].
    • HostNest: nested OpenMP parallel for loop on CPU host.
    • Devices: batched BLAS on GPU device.

◆ norm()

template<typename matrix_type >
blas::real_type< typename matrix_type::value_type > slate::norm ( Norm  in_norm,
matrix_type &  A,
Options const &  opts 
)

Distributed parallel general matrix norm.

Template Parameters
matrix_typeAny SLATE matrix type: Matrix, SymmetricMatrix, HermitianMatrix, TriangularMatrix, etc.
Parameters
[in]in_normNorm to compute:
  • Norm::Max: maximum element, \(\max_{i, j} \abs{ A_{i, j} }\)
  • Norm::One: maximum column sum, \(\max_j \sum_i \abs{ A_{i, j} }\)
  • Norm::Inf: maximum row sum, \(\max_i \sum_j \abs{ A_{i, j} }\) For symmetric and Hermitian matrices, the One and Inf norms are the same.
  • Norm::Fro: Frobenius norm, \(\sqrt{ \sum_{i, j} \abs{ A_{i, j} }^2 }\)
[in]AThe matrix A.
[in]optsAdditional options, as map of name = value pairs. Possible options:
  • Option::Target: Implementation to target. Possible values:
    • HostTask: OpenMP tasks on CPU host [default].
    • HostNest: nested OpenMP parallel for loop on CPU host.
    • Devices: batched BLAS on GPU device.