MueLu  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumpingChoice > Class Template Reference

Functor does not reuse the graph of the matrix for a problem with blockSize == 1. More...

#include <MueLu_MatrixConstruction.hpp>

Public Member Functions

 PointwiseFillNoReuseFunctor (local_matrix_type &A_, results_view &results_, local_matrix_type &filteredA_, magnitudeType dirichletThreshold_)
 
KOKKOS_INLINE_FUNCTION void operator() (const local_ordinal_type rlid) const
 

Private Types

using scalar_type = typename local_matrix_type::value_type
 
using local_ordinal_type = typename local_matrix_type::ordinal_type
 
using memory_space = typename local_matrix_type::memory_space
 
using results_view = Kokkos::View< DecisionType *, memory_space >
 
using ATS = Kokkos::ArithTraits< scalar_type >
 
using magnitudeType = typename ATS::magnitudeType
 

Private Attributes

local_matrix_type A
 
results_view results
 
local_matrix_type filteredA
 
magnitudeType dirichletThreshold
 
const scalar_type zero = ATS::zero()
 
const scalar_type one = ATS::one()
 

Detailed Description

template<class local_matrix_type, lumpingType lumpingChoice>
class MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumpingChoice >

Functor does not reuse the graph of the matrix for a problem with blockSize == 1.

The dropped graph and the filtered matrix are built from scratch. Lumps dropped entries to the diagonal if lumpingChoice==diag_lumping. Lumps dropped entries across all kept entries (proportional to their magnitude) if lumpingChoice==ddistributed_lumping.

Definition at line 327 of file MueLu_MatrixConstruction.hpp.

Member Typedef Documentation

template<class local_matrix_type, lumpingType lumpingChoice>
using MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumpingChoice >::scalar_type = typename local_matrix_type::value_type
private

Definition at line 329 of file MueLu_MatrixConstruction.hpp.

template<class local_matrix_type, lumpingType lumpingChoice>
using MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumpingChoice >::local_ordinal_type = typename local_matrix_type::ordinal_type
private

Definition at line 330 of file MueLu_MatrixConstruction.hpp.

template<class local_matrix_type, lumpingType lumpingChoice>
using MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumpingChoice >::memory_space = typename local_matrix_type::memory_space
private

Definition at line 331 of file MueLu_MatrixConstruction.hpp.

template<class local_matrix_type, lumpingType lumpingChoice>
using MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumpingChoice >::results_view = Kokkos::View<DecisionType*, memory_space>
private

Definition at line 332 of file MueLu_MatrixConstruction.hpp.

template<class local_matrix_type, lumpingType lumpingChoice>
using MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumpingChoice >::ATS = Kokkos::ArithTraits<scalar_type>
private

Definition at line 333 of file MueLu_MatrixConstruction.hpp.

template<class local_matrix_type, lumpingType lumpingChoice>
using MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumpingChoice >::magnitudeType = typename ATS::magnitudeType
private

Definition at line 334 of file MueLu_MatrixConstruction.hpp.

Constructor & Destructor Documentation

template<class local_matrix_type, lumpingType lumpingChoice>
MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumpingChoice >::PointwiseFillNoReuseFunctor ( local_matrix_type &  A_,
results_view results_,
local_matrix_type &  filteredA_,
magnitudeType  dirichletThreshold_ 
)
inline

Definition at line 344 of file MueLu_MatrixConstruction.hpp.

Member Function Documentation

template<class local_matrix_type, lumpingType lumpingChoice>
KOKKOS_INLINE_FUNCTION void MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumpingChoice >::operator() ( const local_ordinal_type  rlid) const
inline

Definition at line 351 of file MueLu_MatrixConstruction.hpp.

Member Data Documentation

template<class local_matrix_type, lumpingType lumpingChoice>
local_matrix_type MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumpingChoice >::A
private

Definition at line 336 of file MueLu_MatrixConstruction.hpp.

template<class local_matrix_type, lumpingType lumpingChoice>
results_view MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumpingChoice >::results
private

Definition at line 337 of file MueLu_MatrixConstruction.hpp.

template<class local_matrix_type, lumpingType lumpingChoice>
local_matrix_type MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumpingChoice >::filteredA
private

Definition at line 338 of file MueLu_MatrixConstruction.hpp.

template<class local_matrix_type, lumpingType lumpingChoice>
magnitudeType MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumpingChoice >::dirichletThreshold
private

Definition at line 339 of file MueLu_MatrixConstruction.hpp.

template<class local_matrix_type, lumpingType lumpingChoice>
const scalar_type MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumpingChoice >::zero = ATS::zero()
private

Definition at line 340 of file MueLu_MatrixConstruction.hpp.

template<class local_matrix_type, lumpingType lumpingChoice>
const scalar_type MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumpingChoice >::one = ATS::one()
private

Definition at line 341 of file MueLu_MatrixConstruction.hpp.


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