KASKADE 7 development version
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Kaskade::NestedDissectionCholeskyLocalMatrixStorage< m, StorageScalar, FactorizationScalar > Class Template Reference

An inverse local matrix representation that stores a sparse Cholesky factor using nested dissection. More...

#include <domainDecompositionPreconditioner.hh>

Detailed Description

template<int m, class StorageScalar, class FactorizationScalar>
class Kaskade::NestedDissectionCholeskyLocalMatrixStorage< m, StorageScalar, FactorizationScalar >

An inverse local matrix representation that stores a sparse Cholesky factor using nested dissection.

Definition at line 298 of file domainDecompositionPreconditioner.hh.

Inheritance diagram for Kaskade::NestedDissectionCholeskyLocalMatrixStorage< m, StorageScalar, FactorizationScalar >:
Kaskade::InverseLocalMatrixStorageBase

Public Types

using field_type = StorageScalar
 

Public Member Functions

template<class T , class Index >
 NestedDissectionCholeskyLocalMatrixStorage (std::vector< size_t > const &ap, NumaBCRSMatrix< Dune::FieldMatrix< T, m, m >, Index > const &A, FactorizationScalar regularizeForCondition, NestedDissectionStorageTag< StorageScalar, FactorizationScalar > storageTag)
 
template<class Vector >
void mv (Vector const &x, Vector &y) const
 
std::vector< size_t > const & indices () const
 Returns the global degrees of freedom defining the submatrix treated as a block here. More...
 
size_t storage () const
 Reports the storage size (in bytes) of the inverse block matrix. More...
 
size_t flops () const
 Reports the number of floating point operations per preconditioner application. More...
 

Protected Member Functions

template<int m, class LocalMatrix , class Real >
void regularize (LocalMatrix &aloc, Real r) const
 

Protected Attributes

size_t storageSize
 
size_t computeFlops
 

Member Typedef Documentation

◆ field_type

template<int m, class StorageScalar , class FactorizationScalar >
using Kaskade::NestedDissectionCholeskyLocalMatrixStorage< m, StorageScalar, FactorizationScalar >::field_type = StorageScalar

Definition at line 301 of file domainDecompositionPreconditioner.hh.

Constructor & Destructor Documentation

◆ NestedDissectionCholeskyLocalMatrixStorage()

template<int m, class StorageScalar , class FactorizationScalar >
template<class T , class Index >
Kaskade::NestedDissectionCholeskyLocalMatrixStorage< m, StorageScalar, FactorizationScalar >::NestedDissectionCholeskyLocalMatrixStorage ( std::vector< size_t > const &  ap,
NumaBCRSMatrix< Dune::FieldMatrix< T, m, m >, Index > const &  A,
FactorizationScalar  regularizeForCondition,
NestedDissectionStorageTag< StorageScalar, FactorizationScalar >  storageTag 
)
inline

Definition at line 304 of file domainDecompositionPreconditioner.hh.

Member Function Documentation

◆ flops()

size_t Kaskade::InverseLocalMatrixStorageBase::flops ( ) const
inlineinherited

Reports the number of floating point operations per preconditioner application.

This is a (rather accurate) estimate. Depending on BLAS implementation, lower order contributions may be inaccurate.

Definition at line 80 of file domainDecompositionPreconditioner.hh.

◆ indices()

std::vector< size_t > const & Kaskade::InverseLocalMatrixStorageBase::indices ( ) const
inlineinherited

◆ mv()

template<int m, class StorageScalar , class FactorizationScalar >
template<class Vector >
void Kaskade::NestedDissectionCholeskyLocalMatrixStorage< m, StorageScalar, FactorizationScalar >::mv ( Vector const &  x,
Vector &  y 
) const
inline
Template Parameters
Vectora vector class with entry type Dune::FieldVector<StorageScalar,m> (or compatible)

Definition at line 328 of file domainDecompositionPreconditioner.hh.

◆ regularize()

template<int m, class LocalMatrix , class Real >
void Kaskade::InverseLocalMatrixStorageBase::regularize ( LocalMatrix aloc,
Real  r 
) const
inlineprotectedinherited

Definition at line 90 of file domainDecompositionPreconditioner.hh.

◆ storage()

size_t Kaskade::InverseLocalMatrixStorageBase::storage ( ) const
inlineinherited

Reports the storage size (in bytes) of the inverse block matrix.

Minor metadata that does not scale with the matrix size is neglected.

Definition at line 69 of file domainDecompositionPreconditioner.hh.

Member Data Documentation

◆ computeFlops

size_t Kaskade::InverseLocalMatrixStorageBase::computeFlops
protectedinherited

◆ storageSize

size_t Kaskade::InverseLocalMatrixStorageBase::storageSize
protectedinherited

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