10#ifndef PACKAGES_XPETRA_CRSMATRIX_UTILS_HPP_
11#define PACKAGES_XPETRA_CRSMATRIX_UTILS_HPP_
13#include "Xpetra_ConfigDefs.hpp"
14#include "Xpetra_Exceptions.hpp"
15#include "Xpetra_Map.hpp"
17#include "Tpetra_Import_Util2.hpp"
31 class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
33#undef XPETRA_CRSMATRIXUTILS_SHORT
39 const Teuchos::ArrayView<LocalOrdinal>& CRS_colind,
40 const Teuchos::ArrayView<Scalar>& CRS_vals,
41 const UnderlyingLib lib) {
42 if (lib == Xpetra::UseTpetra) {
43 Tpetra::Import_Util::sortCrsEntries(CRS_rowptr, CRS_colind, CRS_vals);
52 const Teuchos::ArrayView<LocalOrdinal>& CRS_colind,
53 const Teuchos::ArrayView<Scalar>& CRS_vals,
54 const UnderlyingLib lib) {
55 if (lib == Xpetra::UseTpetra) {
56 Tpetra::Import_Util::sortAndMergeCrsEntries(CRS_rowptr, CRS_colind, CRS_vals);
66#define XPETRA_CRSMATRIXUTILS_SHORT
MueLu::DefaultLocalOrdinal LocalOrdinal
MueLu::DefaultScalar Scalar
MueLu::DefaultGlobalOrdinal GlobalOrdinal
Xpetra utility class for CrsMatrix-related routines.
static void sortCrsEntries(const Teuchos::ArrayView< size_t > &CRS_rowptr, const Teuchos::ArrayView< LocalOrdinal > &CRS_colind, const Teuchos::ArrayView< Scalar > &CRS_vals, const UnderlyingLib lib)
Sort the entries of the (raw CSR) matrix by column index within each row.
static void sortAndMergeCrsEntries(const Teuchos::ArrayView< size_t > &CRS_rowptr, const Teuchos::ArrayView< LocalOrdinal > &CRS_colind, const Teuchos::ArrayView< Scalar > &CRS_vals, const UnderlyingLib lib)
Sort and merge the entries of the (raw CSR) matrix by column index within each row.