Arcane  v4.1.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence du modèle de la structure Arcane::Alina::ILUTRelaxation< Backend >

#include </__w/arcaneframework.github.io/arcaneframework.github.io/framework/arccore/src/alina/arccore/alina/Relaxation.h>

+ Graphe d'héritage de Arcane::Alina::ILUTRelaxation< Backend >:
+ Graphe de collaboration de Arcane::Alina::ILUTRelaxation< Backend >:

Classes

struct  params
 Relaxation parameters. Plus de détails...
 
struct  sparse_vector
 

Types publics

typedef Backend::value_type value_type
 
typedef Backend::col_type col_type
 
typedef Backend::ptr_type ptr_type
 
typedef Backend::matrix matrix
 
typedef Backend::matrix_diagonal matrix_diagonal
 
typedef Backend::vector vector
 
typedef math::scalar_of< value_type >::type scalar_type
 
typedef Impl::ILUSolver< Backendilu_solve
 

Fonctions membres publiques

template<class Matrix>
 ILUTRelaxation (const Matrix &A, const params &prm, const typename Backend::params &bprm)
 Constructs smoother for the system matrix.
 
template<class Matrix, class VectorRHS, class VectorX, class VectorTMP>
void apply_pre (const Matrix &A, const VectorRHS &rhs, VectorX &x, VectorTMP &tmp) const
 Apply pre-relaxation.
 
template<class Matrix, class VectorRHS, class VectorX, class VectorTMP>
void apply_post (const Matrix &A, const VectorRHS &rhs, VectorX &x, VectorTMP &tmp) const
 Apply post-relaxation.
 
template<class Matrix, class VectorRHS, class VectorX>
void apply (const Matrix &, const VectorRHS &rhs, VectorX &x) const
 
size_t bytes () const
 Memory used in bytes.
 

Attributs publics

struct Arcane::Alina::ILUTRelaxation::params prm
 

Types privés

typedef BuiltinBackend< value_type, col_type, ptr_type >::matrix build_matrix
 

Attributs privés

std::shared_ptr< ilu_solveilu
 

Description détaillée

template<class Backend>
struct Arcane::Alina::ILUTRelaxation< Backend >
Note
ILUT is a serial algorithm and is only applicable to backends that support matrix row iteration (e.g. BuiltinBaclend or EigenBackend).
Paramètres
BackendBackend for temporary structures allocation.

Définition à la ligne 1499 du fichier Relaxation.h.

Documentation des définitions de type membres

◆ build_matrix

template<class Backend>
typedef BuiltinBackend<value_type,col_type,ptr_type>::matrix Arcane::Alina::ILUTRelaxation< Backend >::build_matrix
private

Définition à la ligne 1666 du fichier Relaxation.h.

◆ col_type

template<class Backend>
typedef Backend::col_type Arcane::Alina::ILUTRelaxation< Backend >::col_type

Définition à la ligne 1503 du fichier Relaxation.h.

◆ ilu_solve

template<class Backend>
typedef Impl::ILUSolver<Backend> Arcane::Alina::ILUTRelaxation< Backend >::ilu_solve

Définition à la ligne 1511 du fichier Relaxation.h.

◆ matrix

template<class Backend>
typedef Backend::matrix Arcane::Alina::ILUTRelaxation< Backend >::matrix

Définition à la ligne 1505 du fichier Relaxation.h.

◆ matrix_diagonal

template<class Backend>
typedef Backend::matrix_diagonal Arcane::Alina::ILUTRelaxation< Backend >::matrix_diagonal

Définition à la ligne 1506 du fichier Relaxation.h.

◆ ptr_type

template<class Backend>
typedef Backend::ptr_type Arcane::Alina::ILUTRelaxation< Backend >::ptr_type

Définition à la ligne 1504 du fichier Relaxation.h.

◆ scalar_type

template<class Backend>
typedef math::scalar_of<value_type>::type Arcane::Alina::ILUTRelaxation< Backend >::scalar_type

Définition à la ligne 1509 du fichier Relaxation.h.

◆ value_type

template<class Backend>
typedef Backend::value_type Arcane::Alina::ILUTRelaxation< Backend >::value_type

Définition à la ligne 1502 du fichier Relaxation.h.

◆ vector

template<class Backend>
typedef Backend::vector Arcane::Alina::ILUTRelaxation< Backend >::vector

Définition à la ligne 1507 du fichier Relaxation.h.

Documentation des constructeurs et destructeur

◆ ILUTRelaxation()

template<class Backend>
template<class Matrix>
Arcane::Alina::ILUTRelaxation< Backend >::ILUTRelaxation ( const Matrix & A,
const params & prm,
const typename Backend::params & bprm )
inline

Constructs smoother for the system matrix.

Paramètres
AThe system matrix.
prmRelaxation parameters.
backend_prmBackend parameters.

Définition à la ligne 1551 du fichier Relaxation.h.

Documentation des fonctions membres

◆ apply()

template<class Backend>
template<class Matrix, class VectorRHS, class VectorX>
void Arcane::Alina::ILUTRelaxation< Backend >::apply ( const Matrix & ,
const VectorRHS & rhs,
VectorX & x ) const
inline

Définition à la ligne 1653 du fichier Relaxation.h.

◆ apply_post()

template<class Backend>
template<class Matrix, class VectorRHS, class VectorX, class VectorTMP>
void Arcane::Alina::ILUTRelaxation< Backend >::apply_post ( const Matrix & A,
const VectorRHS & rhs,
VectorX & x,
VectorTMP & tmp ) const
inline

Apply post-relaxation.

Paramètres
ASystem matrix.
rhsRight-hand side.
xSolution vector.
tmpScratch vector.
prmRelaxation parameters.

Définition à la ligne 1645 du fichier Relaxation.h.

◆ apply_pre()

template<class Backend>
template<class Matrix, class VectorRHS, class VectorX, class VectorTMP>
void Arcane::Alina::ILUTRelaxation< Backend >::apply_pre ( const Matrix & A,
const VectorRHS & rhs,
VectorX & x,
VectorTMP & tmp ) const
inline

Apply pre-relaxation.

Paramètres
ASystem matrix.
rhsRight-hand side.
xSolution vector.
tmpScratch vector.
prmRelaxation parameters.

Définition à la ligne 1636 du fichier Relaxation.h.

◆ bytes()

template<class Backend>
size_t Arcane::Alina::ILUTRelaxation< Backend >::bytes ( ) const
inlinevirtual

Memory used in bytes.

Implémente Arcane::Alina::RelaxationBase.

Définition à la ligne 1659 du fichier Relaxation.h.

Documentation des données membres

◆ ilu

template<class Backend>
std::shared_ptr<ilu_solve> Arcane::Alina::ILUTRelaxation< Backend >::ilu
private

Définition à la ligne 1667 du fichier Relaxation.h.


La documentation de cette structure a été générée à partir du fichier suivant :