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 299 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 301 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 302 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 303 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 304 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 305 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 306 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 307 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 308 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 309 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 310 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 311 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 312 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 313 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 315 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 316 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 331 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 367 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 318 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 319 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 321 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 322 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 324 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 326 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 328 of file MueLu_DistanceLaplacianDropping.hpp.


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