Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::Alina::PreconditionerRuntime< Backend > Class Template Reference

Runtime-configurable preconditioners. More...

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

Collaboration diagram for Arcane::Alina::PreconditionerRuntime< Backend >:

Public Types

using backend_type = Backend
using BackendType = Backend
typedef Backend::value_type value_type
typedef Backend::matrix matrix
typedef Backend::vector vector
typedef Backend::params backend_params
typedef Alina::PropertyTree params

Public Member Functions

template<class Matrix>
 PreconditionerRuntime (const Matrix &A, params prm=params(), const backend_params &bprm=backend_params())
template<class Matrix>
void rebuild (const Matrix &A, const backend_params &bprm=backend_params())
template<class Vec1, class Vec2>
void apply (const Vec1 &rhs, Vec2 &x) const
std::shared_ptr< matrix > system_matrix_ptr () const
const matrix & system_matrix () const
size_t size () const
size_t bytes () const

Private Attributes

const ePreconditionerType _class
void * handle = nullptr

Friends

std::ostream & operator<< (std::ostream &os, const PreconditionerRuntime &p)

Detailed Description

template<class Backend>
class Arcane::Alina::PreconditionerRuntime< Backend >

Runtime-configurable preconditioners.

Definition at line 95 of file PreconditionerRuntime.h.

Member Typedef Documentation

◆ backend_params

template<class Backend>
typedef Backend::params Arcane::Alina::PreconditionerRuntime< Backend >::backend_params

Definition at line 105 of file PreconditionerRuntime.h.

◆ backend_type

template<class Backend>
using Arcane::Alina::PreconditionerRuntime< Backend >::backend_type = Backend

Definition at line 99 of file PreconditionerRuntime.h.

◆ BackendType

template<class Backend>
using Arcane::Alina::PreconditionerRuntime< Backend >::BackendType = Backend

Definition at line 100 of file PreconditionerRuntime.h.

◆ matrix

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

Definition at line 103 of file PreconditionerRuntime.h.

◆ params

template<class Backend>
typedef Alina::PropertyTree Arcane::Alina::PreconditionerRuntime< Backend >::params

Definition at line 107 of file PreconditionerRuntime.h.

◆ value_type

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

Definition at line 102 of file PreconditionerRuntime.h.

◆ vector

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

Definition at line 104 of file PreconditionerRuntime.h.

Constructor & Destructor Documentation

◆ PreconditionerRuntime()

template<class Backend>
template<class Matrix>
Arcane::Alina::PreconditionerRuntime< Backend >::PreconditionerRuntime ( const Matrix & A,
params prm = params(),
const backend_params & bprm = backend_params() )
inline

Definition at line 110 of file PreconditionerRuntime.h.

◆ ~PreconditionerRuntime()

template<class Backend>
Arcane::Alina::PreconditionerRuntime< Backend >::~PreconditionerRuntime ( )
inline

Definition at line 141 of file PreconditionerRuntime.h.

Member Function Documentation

◆ apply()

template<class Backend>
template<class Vec1, class Vec2>
void Arcane::Alina::PreconditionerRuntime< Backend >::apply ( const Vec1 & rhs,
Vec2 & x ) const
inline

Definition at line 180 of file PreconditionerRuntime.h.

◆ bytes()

template<class Backend>
size_t Arcane::Alina::PreconditionerRuntime< Backend >::bytes ( ) const
inline

Definition at line 238 of file PreconditionerRuntime.h.

◆ rebuild()

template<class Backend>
template<class Matrix>
void Arcane::Alina::PreconditionerRuntime< Backend >::rebuild ( const Matrix & A,
const backend_params & bprm = backend_params() )
inline

Definition at line 166 of file PreconditionerRuntime.h.

◆ size()

template<class Backend>
size_t Arcane::Alina::PreconditionerRuntime< Backend >::size ( ) const
inline

Definition at line 233 of file PreconditionerRuntime.h.

◆ system_matrix()

template<class Backend>
const matrix & Arcane::Alina::PreconditionerRuntime< Backend >::system_matrix ( ) const
inline

Definition at line 228 of file PreconditionerRuntime.h.

◆ system_matrix_ptr()

template<class Backend>
std::shared_ptr< matrix > Arcane::Alina::PreconditionerRuntime< Backend >::system_matrix_ptr ( ) const
inline

Definition at line 204 of file PreconditionerRuntime.h.

◆ operator<<

template<class Backend>
std::ostream & operator<< ( std::ostream & os,
const PreconditionerRuntime< Backend > & p )
friend

Definition at line 262 of file PreconditionerRuntime.h.

Member Data Documentation

◆ _class

template<class Backend>
const ePreconditionerType Arcane::Alina::PreconditionerRuntime< Backend >::_class
private

Definition at line 288 of file PreconditionerRuntime.h.

◆ handle

template<class Backend>
void* Arcane::Alina::PreconditionerRuntime< Backend >::handle = nullptr
private

Definition at line 290 of file PreconditionerRuntime.h.


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