Arcane  v4.1.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence du modèle de la classe Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >

Base class for distributed direct solver. Plus de détails...

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

+ Graphe de collaboration de Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >:

Types publics

typedef math::scalar_of< value_type >::type scalar_type
 
typedef math::rhs_of< value_type >::type rhs_type
 
typedef CSRMatrix< value_type > build_matrix
 

Fonctions membres publiques

void init (mpi_communicator comm, const build_matrix &Astrip)
 
template<class B>
void init (mpi_communicator comm, const DistributedMatrix< B > &A)
 
Solver & solver ()
 
const Solver & solver () const
 
template<class VecF, class VecX>
void operator() (const VecF &f, VecX &x) const
 

Attributs privés

mpi_communicator comm
 
int n
 
int group_master
 
MPI_Comm masters_comm
 
std::vector< int > slaves
 
std::vector< int > counts
 
std::vector< rhs_type > cons_f
 
std::vector< rhs_type > cons_x
 
std::vector< rhs_type > host_v
 
UniqueArray< MessagePassing::Requestsolve_req
 

Attributs privés statiques

static const int cnt_tag = 5001
 
static const int col_tag = 5002
 
static const int val_tag = 5003
 
static const int rhs_tag = 5004
 
static const int sol_tag = 5005
 

Description détaillée

template<class value_type, class Solver>
class Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >

Base class for distributed direct solver.

Définition à la ligne 41 du fichier DistributedDirectSolverBase.h.

Documentation des définitions de type membres

◆ build_matrix

template<class value_type, class Solver>
typedef CSRMatrix<value_type> Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::build_matrix

Définition à la ligne 47 du fichier DistributedDirectSolverBase.h.

◆ rhs_type

template<class value_type, class Solver>
typedef math::rhs_of<value_type>::type Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::rhs_type

Définition à la ligne 46 du fichier DistributedDirectSolverBase.h.

◆ scalar_type

template<class value_type, class Solver>
typedef math::scalar_of<value_type>::type Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::scalar_type

Définition à la ligne 45 du fichier DistributedDirectSolverBase.h.

Documentation des constructeurs et destructeur

◆ DistributedDirectSolverBase()

template<class value_type, class Solver>
Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::DistributedDirectSolverBase ( )
inline

Définition à la ligne 49 du fichier DistributedDirectSolverBase.h.

◆ ~DistributedDirectSolverBase()

template<class value_type, class Solver>
virtual Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::~DistributedDirectSolverBase ( )
inlinevirtual

Définition à la ligne 200 du fichier DistributedDirectSolverBase.h.

Documentation des fonctions membres

◆ init() [1/2]

template<class value_type, class Solver>
void Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::init ( mpi_communicator comm,
const build_matrix & Astrip )
inline

Définition à la ligne 51 du fichier DistributedDirectSolverBase.h.

◆ init() [2/2]

template<class value_type, class Solver>
template<class B>
void Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::init ( mpi_communicator comm,
const DistributedMatrix< B > & A )
inline

Définition à la ligne 168 du fichier DistributedDirectSolverBase.h.

◆ operator()()

template<class value_type, class Solver>
template<class VecF, class VecX>
void Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::operator() ( const VecF & f,
VecX & x ) const
inline

Définition à la ligne 217 du fichier DistributedDirectSolverBase.h.

◆ solver() [1/2]

template<class value_type, class Solver>
Solver & Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::solver ( )
inline

Définition à la ligne 206 du fichier DistributedDirectSolverBase.h.

◆ solver() [2/2]

template<class value_type, class Solver>
const Solver & Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::solver ( ) const
inline

Définition à la ligne 211 du fichier DistributedDirectSolverBase.h.

Documentation des données membres

◆ cnt_tag

template<class value_type, class Solver>
const int Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::cnt_tag = 5001
staticprivate

Définition à la ligne 258 du fichier DistributedDirectSolverBase.h.

◆ col_tag

template<class value_type, class Solver>
const int Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::col_tag = 5002
staticprivate

Définition à la ligne 259 du fichier DistributedDirectSolverBase.h.

◆ comm

template<class value_type, class Solver>
mpi_communicator Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::comm
private

Définition à la ligne 264 du fichier DistributedDirectSolverBase.h.

◆ cons_f

template<class value_type, class Solver>
std::vector<rhs_type> Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::cons_f
mutableprivate

Définition à la ligne 270 du fichier DistributedDirectSolverBase.h.

◆ cons_x

template<class value_type, class Solver>
std::vector<rhs_type> Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::cons_x
private

Définition à la ligne 270 du fichier DistributedDirectSolverBase.h.

◆ counts

template<class value_type, class Solver>
std::vector<int> Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::counts
private

Définition à la ligne 269 du fichier DistributedDirectSolverBase.h.

◆ group_master

template<class value_type, class Solver>
int Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::group_master
private

Définition à la ligne 266 du fichier DistributedDirectSolverBase.h.

◆ host_v

template<class value_type, class Solver>
std::vector<rhs_type> Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::host_v
private

Définition à la ligne 270 du fichier DistributedDirectSolverBase.h.

◆ masters_comm

template<class value_type, class Solver>
MPI_Comm Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::masters_comm
private

Définition à la ligne 267 du fichier DistributedDirectSolverBase.h.

◆ n

template<class value_type, class Solver>
int Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::n
private

Définition à la ligne 265 du fichier DistributedDirectSolverBase.h.

◆ rhs_tag

template<class value_type, class Solver>
const int Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::rhs_tag = 5004
staticprivate

Définition à la ligne 261 du fichier DistributedDirectSolverBase.h.

◆ slaves

template<class value_type, class Solver>
std::vector<int> Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::slaves
private

Définition à la ligne 268 du fichier DistributedDirectSolverBase.h.

◆ sol_tag

template<class value_type, class Solver>
const int Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::sol_tag = 5005
staticprivate

Définition à la ligne 262 du fichier DistributedDirectSolverBase.h.

◆ solve_req

template<class value_type, class Solver>
UniqueArray<MessagePassing::Request> Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::solve_req
mutableprivate

Définition à la ligne 271 du fichier DistributedDirectSolverBase.h.

◆ val_tag

template<class value_type, class Solver>
const int Arcane::Alina::DistributedDirectSolverBase< value_type, Solver >::val_tag = 5003
staticprivate

Définition à la ligne 260 du fichier DistributedDirectSolverBase.h.


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