MueLu  Version of the Day
MueLu::AlgebraicPermutationStrategy< Scalar, LocalOrdinal, GlobalOrdinal, Node > Class Template Reference

Algebraic permutation strategy. More...

#include <MueLu_AlgebraicPermutationStrategy_decl.hpp>

build permutation methods.

void BuildPermutation (const Teuchos::RCP< Matrix > &A, const Teuchos::RCP< const Map > permRowMap, Level &currentLevel, const FactoryBase *genFactory) const
 build permutation operators More...
 

Detailed Description

template<class Scalar = double, class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
class MueLu::AlgebraicPermutationStrategy< Scalar, LocalOrdinal, GlobalOrdinal, Node >

Algebraic permutation strategy.

This class permutes columns of a input matrix A trying to make A a diagonal dominant matrix.

Definition at line 68 of file MueLu_AlgebraicPermutationStrategy_decl.hpp.

Member Function Documentation

◆ BuildPermutation()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void AlgebraicPermutationStrategy::BuildPermutation ( const Teuchos::RCP< Matrix > &  A,
const Teuchos::RCP< const Map >  permRowMap,
Level currentLevel,
const FactoryBase genFactory 
) const

build permutation operators

The following variables produced "A" : permuted and scaled A "permA" : permuted A without scaling "permP" : permutation opertor (should be identity) "permQT": transpose permutation operators "permScaling": scaling operator

Parameters
Ainput matrix (input)
permRowMapDof row map permutation shall be restricted on (input)
currentLevelonly for output of variables
genFactoryconst pointer to generating (calling) PermutationFactory // TODO avoid this, not very elegant. Decide which variables have to be generated, give them back per reference to the PermutationFactory.

Definition at line 32 of file MueLu_AlgebraicPermutationStrategy_def.hpp.


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