Alien  1.3.0
User documentation
Loading...
Searching...
No Matches

Interface to handle abstract matrices implementation. More...

#include <core/alien/core/impl/IMatrixImpl.h>

Public Types

typedef Arccore::Real ValueType
 Type of the values stored in the matrix.

Public Member Functions

 IMatrixImpl (const MultiMatrixImpl *multi_impl, BackEndId backend="")
 Constructor.
virtual ~IMatrixImpl () override=default
 Free resources.
 IMatrixImpl (const IMatrixImpl &src)=delete
 IMatrixImpl (IMatrixImpl &&src)=delete
IMatrixImploperator= (const IMatrixImpl &src)=delete
IMatrixImploperator= (IMatrixImpl &&src)=delete
virtual void clear ()
 Wipe out internal data.
virtual const ISpacerowSpace () const
 Get the row space associated to the matrix \ returns The row space.
virtual const ISpacecolSpace () const
 Get the row space associated to the matrix \ returns The row space.
virtual const MatrixDistributiondistribution () const
 Get the distribution of the matrix.
virtual BackEndId backend () const
virtual const Blockblock () const
 Get block datas of the matrix.
virtual const VBlockvblock () const
 Get block datas of the matrix.
virtual const VBlockrowBlock () const
 Get row block datas of the matrix.
virtual const VBlockcolBlock () const
 Get col block datas of the matrix.
const MultiMatrixImplimpls () const
Public Member Functions inherited from Alien::Timestamp
 Timestamp (const TimestampMng *manager)
virtual ~Timestamp ()
 Destructeur de la classe.
virtual Int64 timestamp () const
 Donne la valeur courante du timestamp.
void updateTimestamp ()
 Met à jour le timestamp.
void copyTimestamp (const Timestamp &v)
 Copy un autre timestamp.
void setTimestamp (const TimestampMng *manager, const Int64 timestamp)
Public Member Functions inherited from Alien::ObjectWithTrace
template<typename T>
void alien_info (T &&t) const
template<typename T>
void alien_debug (T &&t) const
template<typename T>
void alien_warning (T &&t) const
template<typename T>
void alien_fatal (T &&t) const
ITraceMng * traceMng () const

Protected Attributes

const MultiMatrixImplm_multi_impl
 Pointer on matrices implementation.
BackEndId m_backend
 Backend id.

Additional Inherited Members

Protected Member Functions inherited from Alien::ObjectWithTrace
TraceMessage cout () const

Detailed Description

Interface to handle abstract matrices implementation.

Definition at line 45 of file IMatrixImpl.h.

Member Typedef Documentation

◆ ValueType

typedef Arccore::Real Alien::IMatrixImpl::ValueType

Type of the values stored in the matrix.

Definition at line 50 of file IMatrixImpl.h.

Constructor & Destructor Documentation

◆ IMatrixImpl()

Alien::IMatrixImpl::IMatrixImpl ( const MultiMatrixImpl * multi_impl,
BackEndId backend = "" )
explicit

Member Function Documentation

◆ backend()

virtual BackEndId Alien::IMatrixImpl::backend ( ) const
inlinevirtual

Get the matrix backend id

Returns
The backend if associated to the matrix

Definition at line 94 of file IMatrixImpl.h.

References m_backend.

Referenced by Alien::IMatrixConverter::cast(), Alien::IMatrixConverter::cast(), Alien::MultiMatrixImpl::get(), Alien::MultiMatrixImpl::get(), and IMatrixImpl().

◆ block()

const Block * Alien::IMatrixImpl::block ( ) const
virtual

Get block datas of the matrix.

Get the block datas of the matrix. This method should be used only with uniform blocks matrices, otherwise il will return a nullptr

Returns
Block data for block matrices, nullptr for scalar and variable block matrices

Definition at line 75 of file IMatrixImpl.cc.

References m_multi_impl.

Referenced by Alien::SchurOp::computePrimarySystem(), Alien::DoKtoSimpleCSRMatrixConverter::convert(), Alien::RedistributorToSimpleCSRMatrixConverter::convert(), Alien::SimpleCSRtoDoKMatrixConverter::convert(), Alien::SimpleCSRtoRedistributorMatrixConverter::convert(), Alien::NormalizeOpt::Op::Op(), and Alien::NormalizeOpt::Op2::Op2().

◆ clear()

◆ colBlock()

const VBlock * Alien::IMatrixImpl::colBlock ( ) const
virtual

Get col block datas of the matrix.

Get the col block datas of the matrix. This method should be used only with variable blocks matrices, otherwise il will return a nullptr

Returns
Cols block data for variable block matrices, nullptr for scalar and block matrices

Definition at line 102 of file IMatrixImpl.cc.

References m_multi_impl.

Referenced by Alien::NormalizeOpt::Op2::Op2().

◆ colSpace()

const ISpace & Alien::IMatrixImpl::colSpace ( ) const
virtual

Get the row space associated to the matrix \ returns The row space.

Definition at line 57 of file IMatrixImpl.cc.

References m_multi_impl.

Referenced by Alien::CompositeKernel::Matrix::Matrix().

◆ distribution()

const MatrixDistribution & Alien::IMatrixImpl::distribution ( ) const
virtual

Get the distribution of the matrix.

Returns
The matrix distribution

Definition at line 66 of file IMatrixImpl.cc.

References m_multi_impl.

◆ impls()

const MultiMatrixImpl * Alien::IMatrixImpl::impls ( ) const
inline

Definition at line 140 of file IMatrixImpl.h.

◆ rowBlock()

const VBlock * Alien::IMatrixImpl::rowBlock ( ) const
virtual

Get row block datas of the matrix.

Get the row block datas of the matrix. This method should be used only with variable blocks matrices, otherwise il will return a nullptr

Returns
Rows block data for variable block matrices, nullptr for scalar and block matrices

Definition at line 93 of file IMatrixImpl.cc.

References m_multi_impl.

Referenced by Alien::NormalizeOpt::Op2::Op2(), and Alien::NormalizeOpt::Op2::Op2().

◆ rowSpace()

const ISpace & Alien::IMatrixImpl::rowSpace ( ) const
virtual

Get the row space associated to the matrix \ returns The row space.

Definition at line 48 of file IMatrixImpl.cc.

References m_multi_impl.

Referenced by Alien::CompositeKernel::Matrix::Matrix().

◆ vblock()

const VBlock * Alien::IMatrixImpl::vblock ( ) const
virtual

Get block datas of the matrix.

Get the block datas of the matrix. This method should be used only with variable blocks matrices, otherwise il will return a nullptr

Returns
Block data for variable block matrices, nullptr for scalar and block matrices

Definition at line 84 of file IMatrixImpl.cc.

References m_multi_impl.

Referenced by Alien::SchurOp::computePrimarySystem(), Alien::DoKtoSimpleCSRMatrixConverter::convert(), and Alien::SimpleCSRMatrix< Arccore::Real >::SimpleCSRMatrix().

Member Data Documentation

◆ m_backend

BackEndId Alien::IMatrixImpl::m_backend
protected

Backend id.

Definition at line 147 of file IMatrixImpl.h.

Referenced by backend(), and IMatrixImpl().

◆ m_multi_impl

const MultiMatrixImpl* Alien::IMatrixImpl::m_multi_impl
protected

Pointer on matrices implementation.

Definition at line 145 of file IMatrixImpl.h.

Referenced by block(), colBlock(), colSpace(), distribution(), IMatrixImpl(), rowBlock(), rowSpace(), and vblock().


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