KASKADE 7 development version
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
Kaskade::JacobiPreconditionerDetail::DiagonalBlock< Entry, row, col > Struct Template Reference

#include <jacobiPreconditioner.hh>

Detailed Description

template<class Entry, int row = 0, int col = 0>
struct Kaskade::JacobiPreconditionerDetail::DiagonalBlock< Entry, row, col >

Definition at line 34 of file jacobiPreconditioner.hh.

Public Types

using field_type = typename Entry::field_type
 

Public Member Functions

 DiagonalBlock ()=default
 
 DiagonalBlock (DiagonalBlock &&other)=default
 
DiagonalBlockoperator= (DiagonalBlock &&other)=default
 
template<class Matrix , class Weight >
 DiagonalBlock (Matrix const &mat, Weight w)
 
template<class X , class Y >
field_type apply (X &x, Y const &y) const
 Computes \( x \leftarrow D^{-1} y \) and returns \( y^T x \). More...
 

Public Attributes

size_t size
 
std::vector< std::vector< Entry, NumaAllocator< Entry > > > diag
 

Static Public Attributes

static int const rowId = row
 
static int const colId = col
 

Member Typedef Documentation

◆ field_type

template<class Entry , int row = 0, int col = 0>
using Kaskade::JacobiPreconditionerDetail::DiagonalBlock< Entry, row, col >::field_type = typename Entry::field_type

Definition at line 36 of file jacobiPreconditioner.hh.

Constructor & Destructor Documentation

◆ DiagonalBlock() [1/3]

template<class Entry , int row = 0, int col = 0>
Kaskade::JacobiPreconditionerDetail::DiagonalBlock< Entry, row, col >::DiagonalBlock ( )
default

◆ DiagonalBlock() [2/3]

template<class Entry , int row = 0, int col = 0>
Kaskade::JacobiPreconditionerDetail::DiagonalBlock< Entry, row, col >::DiagonalBlock ( DiagonalBlock< Entry, row, col > &&  other)
default

◆ DiagonalBlock() [3/3]

template<class Entry , int row = 0, int col = 0>
template<class Matrix , class Weight >
Kaskade::JacobiPreconditionerDetail::DiagonalBlock< Entry, row, col >::DiagonalBlock ( Matrix const &  mat,
Weight  w 
)
inline

Definition at line 45 of file jacobiPreconditioner.hh.

Member Function Documentation

◆ apply()

template<class Entry , int row = 0, int col = 0>
template<class X , class Y >
field_type Kaskade::JacobiPreconditionerDetail::DiagonalBlock< Entry, row, col >::apply ( X &  x,
Y const &  y 
) const
inline

Computes \( x \leftarrow D^{-1} y \) and returns \( y^T x \).

Template Parameters
Xa vector class with element access
Ya vector class with element access

Definition at line 89 of file jacobiPreconditioner.hh.

Referenced by Kaskade::JacobiPreconditionerDetail::JacobiPreconditionerBase< Matrix, Domain, Range >::applyDp().

◆ operator=()

template<class Entry , int row = 0, int col = 0>
DiagonalBlock & Kaskade::JacobiPreconditionerDetail::DiagonalBlock< Entry, row, col >::operator= ( DiagonalBlock< Entry, row, col > &&  other)
default

Member Data Documentation

◆ colId

template<class Entry , int row = 0, int col = 0>
int const Kaskade::JacobiPreconditionerDetail::DiagonalBlock< Entry, row, col >::colId = col
static

Definition at line 116 of file jacobiPreconditioner.hh.

◆ diag

template<class Entry , int row = 0, int col = 0>
std::vector<std::vector<Entry,NumaAllocator<Entry> > > Kaskade::JacobiPreconditionerDetail::DiagonalBlock< Entry, row, col >::diag

◆ rowId

template<class Entry , int row = 0, int col = 0>
int const Kaskade::JacobiPreconditionerDetail::DiagonalBlock< Entry, row, col >::rowId = row
static

Definition at line 115 of file jacobiPreconditioner.hh.

◆ size

template<class Entry , int row = 0, int col = 0>
size_t Kaskade::JacobiPreconditionerDetail::DiagonalBlock< Entry, row, col >::size

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