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_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
 
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 351 of file MueLu_DistanceLaplacianDropping.hpp.

Member Typedef Documentation

◆ matrix_type

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

Definition at line 353 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_device_type
private

Definition at line 354 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 355 of file MueLu_DistanceLaplacianDropping.hpp.

◆ local_ordinal_type

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

Definition at line 356 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 360 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 362 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 366 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 368 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 372 of file MueLu_DistanceLaplacianDropping.hpp.

◆ coords_type

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

Definition at line 374 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 375 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 376 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 377 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 379 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 380 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 395 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 431 of file MueLu_DistanceLaplacianDropping.hpp.

Member Data Documentation

◆ coordsMV

Definition at line 382 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 383 of file MueLu_DistanceLaplacianDropping.hpp.

◆ coords

◆ ghostedCoords

◆ material

◆ lcl_dist

◆ one

Definition at line 392 of file MueLu_DistanceLaplacianDropping.hpp.


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