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

Computes the weighted distance Laplacian. More...

#include <MueLu_DistanceLaplacianDropping.hpp>

Public Member Functions

 WeightedDistanceFunctor (matrix_type &A, Teuchos::RCP< coords_type > &coords_, weight_type weight_)
KOKKOS_FORCEINLINE_FUNCTION magnitudeType distance2 (const local_ordinal_type row, const local_ordinal_type col) const

Private 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 = LocalOrdinal
using ATS = Kokkos::ArithTraits<scalar_type>
using impl_scalar_type = typename ATS::val_type
using implATS = Kokkos::ArithTraits<impl_scalar_type>
using magnitudeType = typename implATS::magnitudeType
using magATS = Kokkos::ArithTraits<magnitudeType>
using coords_type = Xpetra::MultiVector<magnitudeType, LocalOrdinal, GlobalOrdinal, Node>
using local_coords_type = typename coords_type::dual_view_type_const::t_dev

Private Attributes

Teuchos::RCP< coords_typecoordsMV
Teuchos::RCP< coords_typeghostedCoordsMV
local_coords_type coords
local_coords_type ghostedCoords
weight_type weight

Detailed Description

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class weight_type>
class MueLu::DistanceLaplacian::WeightedDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node, weight_type >

Computes the weighted distance Laplacian.

Definition at line 101 of file MueLu_DistanceLaplacianDropping.hpp.

Member Typedef Documentation

◆ matrix_type

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class weight_type>
using MueLu::DistanceLaplacian::WeightedDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node, weight_type >::matrix_type = Xpetra::Matrix<Scalar, LocalOrdinal, GlobalOrdinal, Node>
private

Definition at line 103 of file MueLu_DistanceLaplacianDropping.hpp.

◆ local_matrix_type

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class weight_type>
using MueLu::DistanceLaplacian::WeightedDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node, weight_type >::local_matrix_type = typename matrix_type::local_matrix_device_type
private

Definition at line 104 of file MueLu_DistanceLaplacianDropping.hpp.

◆ scalar_type

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class weight_type>
using MueLu::DistanceLaplacian::WeightedDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node, weight_type >::scalar_type = typename local_matrix_type::value_type
private

Definition at line 105 of file MueLu_DistanceLaplacianDropping.hpp.

◆ local_ordinal_type

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class weight_type>
using MueLu::DistanceLaplacian::WeightedDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node, weight_type >::local_ordinal_type = LocalOrdinal
private

Definition at line 106 of file MueLu_DistanceLaplacianDropping.hpp.

◆ ATS

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class weight_type>
using MueLu::DistanceLaplacian::WeightedDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node, weight_type >::ATS = Kokkos::ArithTraits<scalar_type>
private

Definition at line 110 of file MueLu_DistanceLaplacianDropping.hpp.

◆ impl_scalar_type

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class weight_type>
using MueLu::DistanceLaplacian::WeightedDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node, weight_type >::impl_scalar_type = typename ATS::val_type
private

Definition at line 112 of file MueLu_DistanceLaplacianDropping.hpp.

◆ implATS

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class weight_type>
using MueLu::DistanceLaplacian::WeightedDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node, weight_type >::implATS = Kokkos::ArithTraits<impl_scalar_type>
private

Definition at line 116 of file MueLu_DistanceLaplacianDropping.hpp.

◆ magnitudeType

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class weight_type>
using MueLu::DistanceLaplacian::WeightedDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node, weight_type >::magnitudeType = typename implATS::magnitudeType
private

Definition at line 118 of file MueLu_DistanceLaplacianDropping.hpp.

◆ magATS

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class weight_type>
using MueLu::DistanceLaplacian::WeightedDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node, weight_type >::magATS = Kokkos::ArithTraits<magnitudeType>
private

Definition at line 122 of file MueLu_DistanceLaplacianDropping.hpp.

◆ coords_type

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class weight_type>
using MueLu::DistanceLaplacian::WeightedDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node, weight_type >::coords_type = Xpetra::MultiVector<magnitudeType, LocalOrdinal, GlobalOrdinal, Node>
private

Definition at line 124 of file MueLu_DistanceLaplacianDropping.hpp.

◆ local_coords_type

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class weight_type>
using MueLu::DistanceLaplacian::WeightedDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node, weight_type >::local_coords_type = typename coords_type::dual_view_type_const::t_dev
private

Definition at line 125 of file MueLu_DistanceLaplacianDropping.hpp.

Constructor & Destructor Documentation

◆ WeightedDistanceFunctor()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class weight_type>
MueLu::DistanceLaplacian::WeightedDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node, weight_type >::WeightedDistanceFunctor ( matrix_type & A,
Teuchos::RCP< coords_type > & coords_,
weight_type weight_ )
inline

Definition at line 136 of file MueLu_DistanceLaplacianDropping.hpp.

Member Function Documentation

◆ distance2()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class weight_type>
KOKKOS_FORCEINLINE_FUNCTION magnitudeType MueLu::DistanceLaplacian::WeightedDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node, weight_type >::distance2 ( const local_ordinal_type row,
const local_ordinal_type col ) const
inline

Definition at line 153 of file MueLu_DistanceLaplacianDropping.hpp.

Member Data Documentation

◆ coordsMV

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class weight_type>
Teuchos::RCP<coords_type> MueLu::DistanceLaplacian::WeightedDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node, weight_type >::coordsMV
private

Definition at line 127 of file MueLu_DistanceLaplacianDropping.hpp.

◆ ghostedCoordsMV

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class weight_type>
Teuchos::RCP<coords_type> MueLu::DistanceLaplacian::WeightedDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node, weight_type >::ghostedCoordsMV
private

Definition at line 128 of file MueLu_DistanceLaplacianDropping.hpp.

◆ coords

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class weight_type>
local_coords_type MueLu::DistanceLaplacian::WeightedDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node, weight_type >::coords
private

Definition at line 130 of file MueLu_DistanceLaplacianDropping.hpp.

◆ ghostedCoords

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class weight_type>
local_coords_type MueLu::DistanceLaplacian::WeightedDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node, weight_type >::ghostedCoords
private

Definition at line 131 of file MueLu_DistanceLaplacianDropping.hpp.

◆ weight

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node, class weight_type>
weight_type MueLu::DistanceLaplacian::WeightedDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node, weight_type >::weight
private

Definition at line 133 of file MueLu_DistanceLaplacianDropping.hpp.


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