Grid 0.7.0
Grid::SchurRedBlackBase< Field > Class Template Referenceabstract

#include <SchurRedBlack.h>

Inheritance diagram for Grid::SchurRedBlackBase< Field >:
Grid::NonHermitianSchurRedBlackDiagMooeeSolve< Field > Grid::NonHermitianSchurRedBlackDiagTwoSolve< Field > Grid::SchurRedBlackDiagMooeeSolve< Field > Grid::SchurRedBlackDiagOneSolve< Field > Grid::SchurRedBlackDiagTwoSolve< Field > Grid::SchurRedBlackStaggeredSolve< Field >

Public Member Functions

 SchurRedBlackBase (OperatorFunction< Field > &HermitianRBSolver, const bool initSubGuess=false, const bool _solnAsInitGuess=false)
void subtractGuess (const bool initSubGuess)
bool isSubtractGuess (void)
void operator() (Matrix &_Matrix, const Field &in, Field &out)
void operator() (Matrix &_Matrix, const std::vector< Field > &in, std::vector< Field > &out)
void RedBlackSource (Matrix &_Matrix, const std::vector< Field > &in, std::vector< Field > &src_o)
void RedBlackSolution (Matrix &_Matrix, const std::vector< Field > &in, const std::vector< Field > &sol_o, std::vector< Field > &out)
template<class Guesser>
void operator() (Matrix &_Matrix, const std::vector< Field > &in, std::vector< Field > &out, Guesser &guess)
template<class Guesser>
void operator() (Matrix &_Matrix, const Field &in, Field &out, Guesser &guess)
virtual void RedBlackSource (Matrix &_Matrix, const Field &src, Field &src_e, Field &src_o)=0
virtual void RedBlackSolution (Matrix &_Matrix, const Field &sol_o, const Field &src_e, Field &sol)=0
virtual void RedBlackSolve (Matrix &_Matrix, const Field &src_o, Field &sol_o)=0
virtual void RedBlackSolve (Matrix &_Matrix, const std::vector< Field > &src_o, std::vector< Field > &sol_o)=0

Protected Types

typedef CheckerBoardedSparseMatrixBase< Field > Matrix

Protected Attributes

OperatorFunction< Field > & _HermitianRBSolver
int CBfactorise
bool subGuess
bool useSolnAsInitGuess

Detailed Description

template<class Field>
class Grid::SchurRedBlackBase< Field >

Definition at line 96 of file SchurRedBlack.h.

Member Typedef Documentation

◆ Matrix

template<class Field>
typedef CheckerBoardedSparseMatrixBase<Field> Grid::SchurRedBlackBase< Field >::Matrix
protected

Definition at line 98 of file SchurRedBlack.h.

Constructor & Destructor Documentation

◆ SchurRedBlackBase()

Member Function Documentation

◆ subtractGuess()

template<class Field>
void Grid::SchurRedBlackBase< Field >::subtractGuess ( const bool initSubGuess)
inline

Definition at line 113 of file SchurRedBlack.h.

References subGuess.

Referenced by SchurRedBlackBase().

◆ isSubtractGuess()

template<class Field>
bool Grid::SchurRedBlackBase< Field >::isSubtractGuess ( void )
inline

Definition at line 117 of file SchurRedBlack.h.

References subGuess.

◆ operator()() [1/4]

template<class Field>
void Grid::SchurRedBlackBase< Field >::operator() ( Matrix & _Matrix,
const Field & in,
Field & out )
inline

Definition at line 125 of file SchurRedBlack.h.

◆ operator()() [2/4]

template<class Field>
void Grid::SchurRedBlackBase< Field >::operator() ( Matrix & _Matrix,
const std::vector< Field > & in,
std::vector< Field > & out )
inline

Definition at line 129 of file SchurRedBlack.h.

◆ RedBlackSource() [1/2]

template<class Field>
void Grid::SchurRedBlackBase< Field >::RedBlackSource ( Matrix & _Matrix,
const std::vector< Field > & in,
std::vector< Field > & src_o )
inline

◆ RedBlackSolution() [1/2]

template<class Field>
void Grid::SchurRedBlackBase< Field >::RedBlackSolution ( Matrix & _Matrix,
const std::vector< Field > & in,
const std::vector< Field > & sol_o,
std::vector< Field > & out )
inline

◆ operator()() [3/4]

template<class Field>
template<class Guesser>
void Grid::SchurRedBlackBase< Field >::operator() ( Matrix & _Matrix,
const std::vector< Field > & in,
std::vector< Field > & out,
Guesser & guess )
inline

◆ operator()() [4/4]

template<class Field>
template<class Guesser>
void Grid::SchurRedBlackBase< Field >::operator() ( Matrix & _Matrix,
const Field & in,
Field & out,
Guesser & guess )
inline

◆ RedBlackSource() [2/2]

◆ RedBlackSolution() [2/2]

◆ RedBlackSolve() [1/2]

◆ RedBlackSolve() [2/2]

Field Documentation

◆ _HermitianRBSolver

◆ CBfactorise

template<class Field>
int Grid::SchurRedBlackBase< Field >::CBfactorise
protected

Definition at line 100 of file SchurRedBlack.h.

Referenced by SchurRedBlackBase().

◆ subGuess

template<class Field>
bool Grid::SchurRedBlackBase< Field >::subGuess
protected

Definition at line 101 of file SchurRedBlack.h.

Referenced by isSubtractGuess(), operator()(), operator()(), and subtractGuess().

◆ useSolnAsInitGuess

template<class Field>
bool Grid::SchurRedBlackBase< Field >::useSolnAsInitGuess
protected

Definition at line 102 of file SchurRedBlack.h.

Referenced by operator()(), operator()(), and SchurRedBlackBase().


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