Reference documentation for deal.II version GIT c1ddcf411d 2023-11-30 16:30:02+00:00
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Namespaces | Classes | Enumerations | Functions
LinearAlgebra Namespace Reference

Namespaces

 CUDAWrappers
 
 distributed
 
 EpetraWrappers
 
 TpetraWrappers
 

Classes

class  Vector
 
class  BlockVector
 
class  ReadWriteVector
 

Enumerations

enum class  OrthogonalizationStrategy { modified_gram_schmidt , classical_gram_schmidt }
 

Functions

template<typename VectorType >
void set_zero_mean_value (VectorType &vector)
 
 TEMPL_COPY_CONSTRUCTOR (double, float)
 
 TEMPL_COPY_CONSTRUCTOR (float, double)
 
 TEMPL_COPY_CONSTRUCTOR (std::complex< double >, std::complex< float >)
 
 TEMPL_COPY_CONSTRUCTOR (std::complex< float >, std::complex< double >)
 

Enumeration Type Documentation

◆ OrthogonalizationStrategy

Supported orthogonalization strategies within SolverGMRES and SolverFGMRES.

Enumerator
modified_gram_schmidt 

Use modified Gram-Schmidt algorithm.

classical_gram_schmidt 

Use classical Gram-Schmidt algorithm. Since this approach works on multi-vectors with a single global reduction (of multiple elements), it is more efficient than the modified Gram-Schmidt algorithm. However, it is less stable in terms of roundoff error propagation, requiring additional re-orthogonalization steps more frequently.

Definition at line 30 of file orthogonalization.h.

Function Documentation

◆ set_zero_mean_value()

template<typename VectorType >
void LinearAlgebra::set_zero_mean_value ( VectorType &  vector)

Shift all entries of the vector by a constant factor so that the mean value of the vector becomes zero.

Definition at line 36 of file vector_space_vector.h.

◆ TEMPL_COPY_CONSTRUCTOR() [1/4]

LinearAlgebra::TEMPL_COPY_CONSTRUCTOR ( double  ,
float   
)

◆ TEMPL_COPY_CONSTRUCTOR() [2/4]

LinearAlgebra::TEMPL_COPY_CONSTRUCTOR ( float  ,
double   
)

◆ TEMPL_COPY_CONSTRUCTOR() [3/4]

LinearAlgebra::TEMPL_COPY_CONSTRUCTOR ( std::complex< double ,
std::complex< float >   
)

◆ TEMPL_COPY_CONSTRUCTOR() [4/4]

LinearAlgebra::TEMPL_COPY_CONSTRUCTOR ( std::complex< float >  ,
std::complex< double  
)