version 3.8
Dumux::ParallelMultiTypeMatrixAdapter< M, X, Y > Class Template Reference

Adapter to turn a multi-type matrix into a thread-parallel linear operator. Adapts a matrix to the assembled linear operator interface.

#include <dumux/linear/parallelmatrixadapter.hh>

Inheritance diagram for Dumux::ParallelMultiTypeMatrixAdapter< M, X, Y >:

Public Types

typedef M matrix_type
 export types More...
 
typedef X domain_type
 
typedef Y range_type
 
typedef X::field_type field_type
 

Public Member Functions

 ParallelMultiTypeMatrixAdapter (const M &A)
 constructor: just store a reference to a matrix More...
 
 ParallelMultiTypeMatrixAdapter (std::shared_ptr< const M > A)
 constructor: store an std::shared_ptr to a matrix More...
 
void apply (const X &x, Y &y) const override
 apply operator to x: \( y = A(x) \) More...
 
void applyscaleadd (field_type alpha, const X &x, Y &y) const override
 apply operator to x, scale and add: \( y = y + \alpha A(x) \) More...
 

Member Typedef Documentation

◆ domain_type

template<class M , class X , class Y >
typedef X Dumux::ParallelMultiTypeMatrixAdapter< M, X, Y >::domain_type

◆ field_type

template<class M , class X , class Y >
typedef X::field_type Dumux::ParallelMultiTypeMatrixAdapter< M, X, Y >::field_type

◆ matrix_type

template<class M , class X , class Y >
typedef M Dumux::ParallelMultiTypeMatrixAdapter< M, X, Y >::matrix_type

◆ range_type

template<class M , class X , class Y >
typedef Y Dumux::ParallelMultiTypeMatrixAdapter< M, X, Y >::range_type

Constructor & Destructor Documentation

◆ ParallelMultiTypeMatrixAdapter() [1/2]

template<class M , class X , class Y >
Dumux::ParallelMultiTypeMatrixAdapter< M, X, Y >::ParallelMultiTypeMatrixAdapter ( const M &  A)
inlineexplicit

◆ ParallelMultiTypeMatrixAdapter() [2/2]

template<class M , class X , class Y >
Dumux::ParallelMultiTypeMatrixAdapter< M, X, Y >::ParallelMultiTypeMatrixAdapter ( std::shared_ptr< const M >  A)
inlineexplicit

Member Function Documentation

◆ apply()

template<class M , class X , class Y >
void Dumux::ParallelMultiTypeMatrixAdapter< M, X, Y >::apply ( const X &  x,
Y &  y 
) const
inlineoverride

◆ applyscaleadd()

template<class M , class X , class Y >
void Dumux::ParallelMultiTypeMatrixAdapter< M, X, Y >::applyscaleadd ( field_type  alpha,
const X &  x,
Y &  y 
) const
inlineoverride

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