#include <CSRLocalMatrixOperationsDevice.h>
Public Types | |
| using | allocator_type = typename Config::allocator_type |
| using | gidx_t = typename Config::gidx_t |
| using | lidx_t = typename Config::lidx_t |
| using | scalar_t = typename Config::scalar_t |
Static Public Member Functions | |
| static void | axpy (scalar_t alpha, std::shared_ptr< LocalMatrixData > X, std::shared_ptr< LocalMatrixData > Y) |
| Compute the linear combination of two matrices. | |
| static void | copy (std::shared_ptr< const LocalMatrixData > X, std::shared_ptr< LocalMatrixData > 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 > 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 > A, scalar_t *buf) |
| Extract the diagonal values into a vector. | |
| static void | LinfNorm (std::shared_ptr< LocalMatrixData > A, scalar_t *rowSums) |
| Compute the maximum row sum. | |
| static void | mult (const scalar_t *in, std::shared_ptr< LocalMatrixData > A, scalar_t *out) |
| Matrix-vector multiplication. | |
| static void | multTranspose (const scalar_t *in, std::shared_ptr< LocalMatrixData > A, std::vector< scalar_t > &vvals, std::vector< size_t > &rcols) |
| Matrix transpose-vector multiplication. | |
| static void | scale (scalar_t alpha, std::shared_ptr< LocalMatrixData > A) |
| Scale the matrix by a scalar. | |
| static void | setDiagonal (const scalar_t *in, std::shared_ptr< LocalMatrixData > A) |
| Set the diagonal to the values in a vector. | |
| static void | setIdentity (std::shared_ptr< LocalMatrixData > A) |
| Set the matrix to the identity matrix. | |
| static void | setScalar (scalar_t alpha, std::shared_ptr< LocalMatrixData > A) |
| Set the non-zeros of the matrix to a scalar. | |
| static void | zero (std::shared_ptr< LocalMatrixData > A) |
| Set the non-zeros of the matrix to zero. | |
Definition at line 7 of file CSRLocalMatrixOperationsDevice.h.
| using AMP::LinearAlgebra::CSRLocalMatrixOperationsDevice< Config, LocalMatrixData >::allocator_type = typename Config::allocator_type |
Definition at line 13 of file CSRLocalMatrixOperationsDevice.h.
| using AMP::LinearAlgebra::CSRLocalMatrixOperationsDevice< Config, LocalMatrixData >::gidx_t = typename Config::gidx_t |
Definition at line 10 of file CSRLocalMatrixOperationsDevice.h.
| using AMP::LinearAlgebra::CSRLocalMatrixOperationsDevice< Config, LocalMatrixData >::lidx_t = typename Config::lidx_t |
Definition at line 11 of file CSRLocalMatrixOperationsDevice.h.
| using AMP::LinearAlgebra::CSRLocalMatrixOperationsDevice< Config, LocalMatrixData >::scalar_t = typename Config::scalar_t |
Definition at line 12 of file CSRLocalMatrixOperationsDevice.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 |
Compute the maximum row sum.
| [in] | A | Data for the input matrix |
| [out] | rowSums | L-infinity norm of the matrix |
|
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.
| [in] | alpha | The value to scale by |
| [in,out] | A | The matrix A |
Compute \(\mathbf{A} = \alpha\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 |