#include <CSRLocalMatrixOperationsDefault.h>
Public Types | |
| using | allocator_type = typename Config::allocator_type |
| using | config_type = Config |
| using | gidx_t = typename Config::gidx_t |
| using | lidx_t = typename Config::lidx_t |
| using | localmatrixdata_t = CSRLocalMatrixData< Config > |
| using | scalar_t = typename Config::scalar_t |
Static Public Member Functions | |
| static void | axpy (scalar_t alpha, std::shared_ptr< localmatrixdata_t > X, std::shared_ptr< localmatrixdata_t > Y) |
| Compute the linear combination of two matrices. | |
| static void | copy (std::shared_ptr< const localmatrixdata_t > X, std::shared_ptr< localmatrixdata_t > Y) |
| Set this matrix with the same non-zero and distributed structure as x and copy the coefficients. | |
| template<typename ConfigIn > | |
| static void | copyCast (std::shared_ptr< CSRLocalMatrixData< typename ConfigIn::template set_alloc_t< Config::allocator > > > X, std::shared_ptr< localmatrixdata_t > Y) |
| Set Y matrix with the same non-zero and distributed structure as X and copy the coefficients after up/down casting. | |
| static void | extractDiagonal (std::shared_ptr< localmatrixdata_t > A, scalar_t *buf) |
| Extract the diagonal values into a vector. | |
| static void | getRowSums (std::shared_ptr< localmatrixdata_t > A, scalar_t *buf) |
| Extract the row sums into a vector. | |
| static void | getRowSumsAbsolute (std::shared_ptr< localmatrixdata_t > A, scalar_t *buf) |
| Extract the absolute row sums into a vector. | |
| static void | mult (const scalar_t *in, std::shared_ptr< localmatrixdata_t > A, scalar_t *out) |
| Matrix-vector multiplication. | |
| static void | multTranspose (const scalar_t *in, std::shared_ptr< localmatrixdata_t > A, std::vector< scalar_t > &vvals, std::vector< size_t > &rcols) |
| Matrix transpose-vector multiplication. | |
| static void | scale (scalar_t alpha, const scalar_t *D, std::shared_ptr< localmatrixdata_t > A) |
| Scale the matrix by a scalar and diagonal matrix. | |
| static void | scale (scalar_t alpha, std::shared_ptr< localmatrixdata_t > A) |
| Scale the matrix by a scalar. | |
| static void | scaleInv (scalar_t alpha, const scalar_t *D, std::shared_ptr< localmatrixdata_t > A) |
| Scale the matrix by a scalar and inverse of diagonal matrix. | |
| static void | setDiagonal (const scalar_t *in, std::shared_ptr< localmatrixdata_t > A) |
| Set the diagonal to the values in a vector. | |
| static void | setIdentity (std::shared_ptr< localmatrixdata_t > A) |
| Set the matrix to the identity matrix. | |
| static void | setScalar (scalar_t alpha, std::shared_ptr< localmatrixdata_t > A) |
| Set the non-zeros of the matrix to a scalar. | |
| static void | zero (std::shared_ptr< localmatrixdata_t > A) |
| Set the non-zeros of the matrix to zero. | |
Definition at line 7 of file CSRLocalMatrixOperationsDefault.h.
| using AMP::LinearAlgebra::CSRLocalMatrixOperationsDefault< Config >::allocator_type = typename Config::allocator_type |
Definition at line 11 of file CSRLocalMatrixOperationsDefault.h.
| using AMP::LinearAlgebra::CSRLocalMatrixOperationsDefault< Config >::config_type = Config |
Definition at line 10 of file CSRLocalMatrixOperationsDefault.h.
| using AMP::LinearAlgebra::CSRLocalMatrixOperationsDefault< Config >::gidx_t = typename Config::gidx_t |
Definition at line 13 of file CSRLocalMatrixOperationsDefault.h.
| using AMP::LinearAlgebra::CSRLocalMatrixOperationsDefault< Config >::lidx_t = typename Config::lidx_t |
Definition at line 14 of file CSRLocalMatrixOperationsDefault.h.
| using AMP::LinearAlgebra::CSRLocalMatrixOperationsDefault< Config >::localmatrixdata_t = CSRLocalMatrixData<Config> |
Definition at line 12 of file CSRLocalMatrixOperationsDefault.h.
| using AMP::LinearAlgebra::CSRLocalMatrixOperationsDefault< Config >::scalar_t = typename Config::scalar_t |
Definition at line 15 of file CSRLocalMatrixOperationsDefault.h.
|
static |
Compute the linear combination of two matrices.
| [in] | alpha | scalar |
| [in] | X | Other matrix |
| [out] | Y | The output matrix |
Compute \(\mathbf{Y} = \alpha\mathbf{X} + \mathbf{Y}\)
|
static |
Set this matrix with the same non-zero and distributed structure as x and copy the coefficients.
| [in] | X | matrix data to copy from |
| [in] | Y | matrix data to copy to |
|
static |
Set Y matrix with the same non-zero and distributed structure as X and copy the coefficients after up/down casting.
| [in] | X | matrix data to copy from |
| [in] | Y | matrix data to copy to after up/down casting the coefficients |
|
static |
Extract the diagonal values into a vector.
| [in] | A | The matrix to read from |
| [out] | buf | Buffer to write diagonal into |
|
static |
Extract the row sums into a vector.
| [in] | A | The matrix to read from |
| [out] | buf | Buffer to write row sums into |
|
static |
Extract the absolute row sums into a vector.
| [in] | A | The matrix to read from |
| [out] | buf | Buffer to write row sums into |
|
static |
Matrix-vector multiplication.
| [in] | in | The vector to multiply |
| [in] | A | The input matrix A |
| [out] | out | The resulting vector |
Compute \(\mathbf{Ax} = \mathbf{y}\).
|
static |
Matrix transpose-vector multiplication.
| [in] | in | The vector to multiply |
| [in] | A | The input matrix A |
| [out] | vvals | Values accumulated into from product |
| [out] | rcols | Indices where vvals correspond to |
Compute \(\mathbf{A}^T\mathbf{in} = \mathbf{out}\).
|
static |
Scale the matrix by a scalar and diagonal matrix.
| [in] | alpha | The value to scale by |
| [in] | D | Vector holding diagonal matrix entries |
| [in,out] | A | The matrix A |
Compute \(\mathbf{A} = \alpha\mathbf{D}\mathbf{A}\)
|
static |
Scale the matrix by a scalar.
| [in] | alpha | The value to scale by |
| [in,out] | A | The matrix A |
Compute \(\mathbf{A} = \alpha\mathbf{A}\)
|
static |
Scale the matrix by a scalar and inverse of diagonal matrix.
| [in] | alpha | The value to scale by |
| [in] | D | Vector holding diagonal matrix entries |
| [in,out] | A | The matrix A |
Compute \(\mathbf{A} = \alpha\mathbf{D}^{-1}\mathbf{A}\)
|
static |
Set the diagonal to the values in a vector.
| [in] | in | The values to set the diagonal to |
| [out] | A | The matrix to set |
|
static |
Set the matrix to the identity matrix.
| [out] | A | The matrix to set |
|
static |
Set the non-zeros of the matrix to a scalar.
| [in] | alpha | The value to set the non-zeros to |
| [out] | A | The input matrix A |
|
static |
Set the non-zeros of the matrix to zero.
| [in] | A | The input matrix A |
May not deallocate space.
|
Advanced Multi-Physics (AMP) Oak Ridge National Laboratory Idaho National Laboratory Los Alamos National Laboratory |
This page automatically produced from the source code by Last updated: Tue Mar 10 2026 13:06:42. Comments on this page |