MueLu  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
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

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

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.

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.

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

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.

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.

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.

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.

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.

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

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.

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.

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.

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.

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

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

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

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

Definition at line 198 of file MueLu_DistanceLaplacianDropping.hpp.

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.

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

Definition at line 201 of file MueLu_DistanceLaplacianDropping.hpp.

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

Definition at line 202 of file MueLu_DistanceLaplacianDropping.hpp.

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

Definition at line 204 of file MueLu_DistanceLaplacianDropping.hpp.

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

Definition at line 206 of file MueLu_DistanceLaplacianDropping.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
const scalar_type MueLu::DistanceLaplacian::TensorMaterialDistanceFunctor< Scalar, LocalOrdinal, GlobalOrdinal, Node >::one = ATS::one()
private

Definition at line 208 of file MueLu_DistanceLaplacianDropping.hpp.


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