MueLu Version of the Day
Loading...
Searching...
No Matches
MueLu::CutDrop::ScaledDistanceLaplacianComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node, DistanceFunctorType, measure > 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_device_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
 
using values_view = Kokkos::View< magnitudeType *, memory_space >
 

Private Attributes

Teuchos::RCP< diag_vec_typediagVec
 
diag_view_type diag
 
DistanceFunctorType dist2
 
values_view values
 

Detailed Description

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

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

Definition at line 440 of file MueLu_CutDrop.hpp.

Member Typedef Documentation

◆ matrix_type

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

Definition at line 442 of file MueLu_CutDrop.hpp.

◆ local_matrix_type

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

Definition at line 443 of file MueLu_CutDrop.hpp.

◆ scalar_type

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

Definition at line 444 of file MueLu_CutDrop.hpp.

◆ local_ordinal_type

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

Definition at line 445 of file MueLu_CutDrop.hpp.

◆ memory_space

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

Definition at line 446 of file MueLu_CutDrop.hpp.

◆ diag_vec_type

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

Definition at line 447 of file MueLu_CutDrop.hpp.

◆ diag_view_type

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

Definition at line 448 of file MueLu_CutDrop.hpp.

◆ results_view

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

Definition at line 449 of file MueLu_CutDrop.hpp.

◆ ATS

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

Definition at line 458 of file MueLu_CutDrop.hpp.

◆ magnitudeType

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

Definition at line 460 of file MueLu_CutDrop.hpp.

◆ values_view

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node , class DistanceFunctorType , Misc::StrengthMeasure measure>
using MueLu::CutDrop::ScaledDistanceLaplacianComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node, DistanceFunctorType, measure >::values_view = Kokkos::View<magnitudeType*, memory_space>
private

Definition at line 466 of file MueLu_CutDrop.hpp.

◆ comparator_type

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

Definition at line 596 of file MueLu_CutDrop.hpp.

Constructor & Destructor Documentation

◆ ScaledDistanceLaplacianComparison()

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

Definition at line 470 of file MueLu_CutDrop.hpp.

Member Function Documentation

◆ getComparator()

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

Definition at line 599 of file MueLu_CutDrop.hpp.

Member Data Documentation

◆ A

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

Definition at line 451 of file MueLu_CutDrop.hpp.

◆ results

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

Definition at line 452 of file MueLu_CutDrop.hpp.

◆ diagVec

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

Definition at line 462 of file MueLu_CutDrop.hpp.

◆ diag

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

Definition at line 463 of file MueLu_CutDrop.hpp.

◆ dist2

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

Definition at line 464 of file MueLu_CutDrop.hpp.

◆ values

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node , class DistanceFunctorType , Misc::StrengthMeasure measure>
values_view MueLu::CutDrop::ScaledDistanceLaplacianComparison< Scalar, LocalOrdinal, GlobalOrdinal, Node, DistanceFunctorType, measure >::values
mutableprivate

Definition at line 467 of file MueLu_CutDrop.hpp.


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