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

#include <MueLu_DistanceLaplacianDropping.hpp>

Public Member Functions

 TensorMaterialDistanceFunctor (matrix_type &A, Teuchos::RCP< coords_type > &coords_, Teuchos::RCP< material_type > &material_)
KOKKOS_INLINE_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_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
using material_type = Xpetra::MultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>
using memory_space = typename local_matrix_type::memory_space
using local_material_type = Kokkos::View<impl_scalar_type***, memory_space>
using local_dist_type = Kokkos::View<impl_scalar_type**, memory_space>

Private Attributes

Teuchos::RCP< coords_typecoordsMV
Teuchos::RCP< coords_typeghostedCoordsMV
local_coords_type coords
local_coords_type ghostedCoords
local_material_type material
local_dist_type lcl_dist
const scalar_type one = ATS::one()

Detailed Description

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

Definition at line 179 of file MueLu_DistanceLaplacianDropping.hpp.

Member Typedef Documentation

◆ matrix_type

Definition at line 181 of file MueLu_DistanceLaplacianDropping.hpp.

◆ local_matrix_type

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

Definition at line 182 of file MueLu_DistanceLaplacianDropping.hpp.

◆ scalar_type

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

Definition at line 183 of file MueLu_DistanceLaplacianDropping.hpp.

◆ local_ordinal_type

Definition at line 184 of file MueLu_DistanceLaplacianDropping.hpp.

◆ ATS

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

Definition at line 185 of file MueLu_DistanceLaplacianDropping.hpp.

◆ impl_scalar_type

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

Definition at line 186 of file MueLu_DistanceLaplacianDropping.hpp.

◆ implATS

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

Definition at line 187 of file MueLu_DistanceLaplacianDropping.hpp.

◆ magnitudeType

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

Definition at line 188 of file MueLu_DistanceLaplacianDropping.hpp.

◆ magATS

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

Definition at line 189 of file MueLu_DistanceLaplacianDropping.hpp.

◆ coords_type

Definition at line 190 of file MueLu_DistanceLaplacianDropping.hpp.

◆ local_coords_type

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

Definition at line 191 of file MueLu_DistanceLaplacianDropping.hpp.

◆ material_type

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
using MueLu::DistanceLaplacian::TensorMaterialDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node >::material_type = Xpetra::MultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>
private

Definition at line 192 of file MueLu_DistanceLaplacianDropping.hpp.

◆ memory_space

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
using MueLu::DistanceLaplacian::TensorMaterialDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node >::memory_space = typename local_matrix_type::memory_space
private

Definition at line 193 of file MueLu_DistanceLaplacianDropping.hpp.

◆ local_material_type

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
using MueLu::DistanceLaplacian::TensorMaterialDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_material_type = Kokkos::View<impl_scalar_type***, memory_space>
private

Definition at line 195 of file MueLu_DistanceLaplacianDropping.hpp.

◆ local_dist_type

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
using MueLu::DistanceLaplacian::TensorMaterialDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_dist_type = Kokkos::View<impl_scalar_type**, memory_space>
private

Definition at line 196 of file MueLu_DistanceLaplacianDropping.hpp.

Constructor & Destructor Documentation

◆ TensorMaterialDistanceFunctor()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
MueLu::DistanceLaplacian::TensorMaterialDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TensorMaterialDistanceFunctor ( matrix_type & A,
Teuchos::RCP< coords_type > & coords_,
Teuchos::RCP< material_type > & material_ )
inline

Definition at line 211 of file MueLu_DistanceLaplacianDropping.hpp.

Member Function Documentation

◆ distance2()

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

Definition at line 247 of file MueLu_DistanceLaplacianDropping.hpp.

Member Data Documentation

◆ coordsMV

Definition at line 198 of file MueLu_DistanceLaplacianDropping.hpp.

◆ ghostedCoordsMV

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

Definition at line 199 of file MueLu_DistanceLaplacianDropping.hpp.

◆ coords

◆ ghostedCoords

◆ material

◆ lcl_dist

◆ one

Definition at line 208 of file MueLu_DistanceLaplacianDropping.hpp.


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