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

Orders entries of row \(i\) by \(\frac{|d_{ij}|^2}{|d_{ii}| |d_{jj}|}\) where \(d_ij\) is the distance Laplacian. 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, DistanceFunctorType, diag_view_type>

Public Member Functions

 ScaledDistanceLaplacianComparison (matrix_type &A_, DistanceFunctorType &dist2_, 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
DistanceFunctorType dist2

Detailed Description

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

Orders entries of row \(i\) by \(\frac{|d_{ij}|^2}{|d_{ii}| |d_{jj}|}\) where \(d_ij\) is the distance Laplacian.

Definition at line 320 of file MueLu_CutDrop.hpp.

Member Typedef Documentation

◆ matrix_type

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

Definition at line 322 of file MueLu_CutDrop.hpp.

◆ local_matrix_type

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

Definition at line 323 of file MueLu_CutDrop.hpp.

◆ scalar_type

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

Definition at line 324 of file MueLu_CutDrop.hpp.

◆ local_ordinal_type

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

Definition at line 325 of file MueLu_CutDrop.hpp.

◆ memory_space

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

Definition at line 326 of file MueLu_CutDrop.hpp.

◆ diag_vec_type

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

Definition at line 327 of file MueLu_CutDrop.hpp.

◆ diag_view_type

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

Definition at line 328 of file MueLu_CutDrop.hpp.

◆ results_view

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

Definition at line 329 of file MueLu_CutDrop.hpp.

◆ ATS

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

Definition at line 335 of file MueLu_CutDrop.hpp.

◆ magnitudeType

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

Definition at line 336 of file MueLu_CutDrop.hpp.

◆ comparator_type

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class DistanceFunctorType>
using MueLu::CutDrop::ScaledDistanceLaplacianComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node, DistanceFunctorType >::comparator_type = Comparator<local_matrix_type, DistanceFunctorType, diag_view_type>

Definition at line 418 of file MueLu_CutDrop.hpp.

Constructor & Destructor Documentation

◆ ScaledDistanceLaplacianComparison()

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

Definition at line 343 of file MueLu_CutDrop.hpp.

Member Function Documentation

◆ getComparator()

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

Definition at line 421 of file MueLu_CutDrop.hpp.

Member Data Documentation

◆ A

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class DistanceFunctorType>
local_matrix_type MueLu::CutDrop::ScaledDistanceLaplacianComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node, DistanceFunctorType >::A

Definition at line 331 of file MueLu_CutDrop.hpp.

◆ results

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class DistanceFunctorType>
results_view MueLu::CutDrop::ScaledDistanceLaplacianComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node, DistanceFunctorType >::results

Definition at line 332 of file MueLu_CutDrop.hpp.

◆ diagVec

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

Definition at line 338 of file MueLu_CutDrop.hpp.

◆ diag

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class DistanceFunctorType>
diag_view_type MueLu::CutDrop::ScaledDistanceLaplacianComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node, DistanceFunctorType >::diag
private

Definition at line 339 of file MueLu_CutDrop.hpp.

◆ dist2

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class DistanceFunctorType>
DistanceFunctorType MueLu::CutDrop::ScaledDistanceLaplacianComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node, DistanceFunctorType >::dist2
private

Definition at line 340 of file MueLu_CutDrop.hpp.


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