MueLu Version of the Day
Loading...
Searching...
No Matches
MueLu::CutDrop::ScaledComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node > Class Template Reference

Orders entries of row \(i\) by \(\frac{|A_{ij}|^2}{|A_{ii}| |A_{jj}|}\). More...

#include <MueLu_CutDrop.hpp>

Classes

struct  Comparator

Public Types

using matrix_type = Xpetra::Matrix<Scalar, LocalOrdinal, GlobalOrdinal, Node>
using local_matrix_type = typename matrix_type::local_matrix_type
using scalar_type = typename local_matrix_type::value_type
using local_ordinal_type = typename local_matrix_type::ordinal_type
using memory_space = typename local_matrix_type::memory_space
using diag_vec_type = Xpetra::MultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>
using diag_view_type = typename Kokkos::DualView<const scalar_type*, Kokkos::LayoutStride, typename Node::device_type, Kokkos::MemoryUnmanaged>::t_dev
using results_view = Kokkos::View<DecisionType*, memory_space>
using comparator_type = Comparator<local_matrix_type, diag_view_type>

Public Member Functions

 ScaledComparison (matrix_type &A_, results_view &results_)
KOKKOS_INLINE_FUNCTION comparator_type getComparator (local_ordinal_type rlid) const

Public Attributes

local_matrix_type A
results_view results

Private Types

using ATS = Kokkos::ArithTraits<scalar_type>
using magnitudeType = typename ATS::magnitudeType

Private Attributes

Teuchos::RCP< diag_vec_typediagVec
diag_view_type diag

Detailed Description

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
class MueLu::CutDrop::ScaledComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node >

Orders entries of row \(i\) by \(\frac{|A_{ij}|^2}{|A_{ii}| |A_{jj}|}\).

Definition at line 117 of file MueLu_CutDrop.hpp.

Member Typedef Documentation

◆ matrix_type

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
using MueLu::CutDrop::ScaledComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node >::matrix_type = Xpetra::Matrix<Scalar, LocalOrdinal, GlobalOrdinal, Node>

Definition at line 119 of file MueLu_CutDrop.hpp.

◆ local_matrix_type

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
using MueLu::CutDrop::ScaledComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_matrix_type = typename matrix_type::local_matrix_type

Definition at line 120 of file MueLu_CutDrop.hpp.

◆ scalar_type

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
using MueLu::CutDrop::ScaledComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node >::scalar_type = typename local_matrix_type::value_type

Definition at line 121 of file MueLu_CutDrop.hpp.

◆ local_ordinal_type

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
using MueLu::CutDrop::ScaledComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_ordinal_type = typename local_matrix_type::ordinal_type

Definition at line 122 of file MueLu_CutDrop.hpp.

◆ memory_space

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
using MueLu::CutDrop::ScaledComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node >::memory_space = typename local_matrix_type::memory_space

Definition at line 123 of file MueLu_CutDrop.hpp.

◆ diag_vec_type

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
using MueLu::CutDrop::ScaledComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node >::diag_vec_type = Xpetra::MultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>

Definition at line 124 of file MueLu_CutDrop.hpp.

◆ diag_view_type

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
using MueLu::CutDrop::ScaledComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node >::diag_view_type = typename Kokkos::DualView<const scalar_type*, Kokkos::LayoutStride, typename Node::device_type, Kokkos::MemoryUnmanaged>::t_dev

Definition at line 125 of file MueLu_CutDrop.hpp.

◆ results_view

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
using MueLu::CutDrop::ScaledComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node >::results_view = Kokkos::View<DecisionType*, memory_space>

Definition at line 126 of file MueLu_CutDrop.hpp.

◆ ATS

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
using MueLu::CutDrop::ScaledComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node >::ATS = Kokkos::ArithTraits<scalar_type>
private

Definition at line 132 of file MueLu_CutDrop.hpp.

◆ magnitudeType

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
using MueLu::CutDrop::ScaledComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node >::magnitudeType = typename ATS::magnitudeType
private

Definition at line 133 of file MueLu_CutDrop.hpp.

◆ comparator_type

Definition at line 201 of file MueLu_CutDrop.hpp.

Constructor & Destructor Documentation

◆ ScaledComparison()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
MueLu::CutDrop::ScaledComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node >::ScaledComparison ( matrix_type & A_,
results_view & results_ )
inline

Definition at line 139 of file MueLu_CutDrop.hpp.

Member Function Documentation

◆ getComparator()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
KOKKOS_INLINE_FUNCTION comparator_type MueLu::CutDrop::ScaledComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getComparator ( local_ordinal_type rlid) const
inline

Definition at line 204 of file MueLu_CutDrop.hpp.

Member Data Documentation

◆ A

◆ results

Definition at line 129 of file MueLu_CutDrop.hpp.

◆ diagVec

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
Teuchos::RCP<diag_vec_type> MueLu::CutDrop::ScaledComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node >::diagVec
private

Definition at line 135 of file MueLu_CutDrop.hpp.

◆ diag

Definition at line 136 of file MueLu_CutDrop.hpp.


The documentation for this class was generated from the following file: