MueLu Version of the Day
Loading...
Searching...
No Matches
MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumping > 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, bool lumping>
class MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumping >

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 lumping==true.

Definition at line 321 of file MueLu_MatrixConstruction.hpp.

Member Typedef Documentation

◆ scalar_type

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

Definition at line 323 of file MueLu_MatrixConstruction.hpp.

◆ local_ordinal_type

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

Definition at line 324 of file MueLu_MatrixConstruction.hpp.

◆ memory_space

template<class local_matrix_type, bool lumping>
using MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumping >::memory_space = typename local_matrix_type::memory_space
private

Definition at line 325 of file MueLu_MatrixConstruction.hpp.

◆ results_view

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

Definition at line 326 of file MueLu_MatrixConstruction.hpp.

◆ ATS

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

Definition at line 327 of file MueLu_MatrixConstruction.hpp.

◆ magnitudeType

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

Definition at line 328 of file MueLu_MatrixConstruction.hpp.

Constructor & Destructor Documentation

◆ PointwiseFillNoReuseFunctor()

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

Definition at line 338 of file MueLu_MatrixConstruction.hpp.

Member Function Documentation

◆ operator()()

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

Definition at line 345 of file MueLu_MatrixConstruction.hpp.

Member Data Documentation

◆ A

template<class local_matrix_type, bool lumping>
local_matrix_type MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumping >::A
private

Definition at line 330 of file MueLu_MatrixConstruction.hpp.

◆ results

template<class local_matrix_type, bool lumping>
results_view MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumping >::results
private

Definition at line 331 of file MueLu_MatrixConstruction.hpp.

◆ filteredA

template<class local_matrix_type, bool lumping>
local_matrix_type MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumping >::filteredA
private

Definition at line 332 of file MueLu_MatrixConstruction.hpp.

◆ dirichletThreshold

template<class local_matrix_type, bool lumping>
magnitudeType MueLu::MatrixConstruction::PointwiseFillNoReuseFunctor< local_matrix_type, lumping >::dirichletThreshold
private

Definition at line 333 of file MueLu_MatrixConstruction.hpp.

◆ zero

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

Definition at line 334 of file MueLu_MatrixConstruction.hpp.

◆ one

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

Definition at line 335 of file MueLu_MatrixConstruction.hpp.


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