MatList

This class is used to represent the List of MatrixProd. More…

#include "MatList.h"

Inherits from MatrixProd

Public Functions

Name
void copy_MatList(MatList & other)
Copy members.
MatList & operator=(MatList & other)
Copy operator.
MatList()
Creates an empty object.
virtual iReg get_nrows() const
Get nrows.
virtual iGlo Get_Globalnrows() const
Get global nrows.
virtual void Prepare_MxV(const iReg nRHS)
Prepares the data structure necessary for MxV. L/R_SndRcvLst, Send/Recv_req,Recv_flag,WL_rcv,WR_snd,WR_rcv,WR_snd,WL_snd.
virtual void UndoPrepare_MxV()
Undo the data structure necessary for MxV.
virtual void MxV(DDMat &restrict x, DDMat &restrict b, bool Barrier_flag)
Computes the Matrix by vector Product.
~MatList()
Deletes the instance.
void DeleteAll()
Deletes the object and its content as well.
void AddLeft(MatrixProd *restrict newMat)
Adds DSMat on the Left (list end).
void AddRight(MatrixProd *restrict newMat)
Adds DSMat on the Right (list start).

Additional inherited members

Public Functions inherited from MatrixProd

Name
void copy_MatrixProd(MatrixProd & other)
Copy members.
bool get_Prepared_flag() const
Get flag for MxV prepare.
iReg get_nRHS_prep() const
Get the number of rhs the matrix is prepared for.
virtual ~MatrixProd() =0
Deletes the object.

Protected Attributes inherited from MatrixProd

Name
bool Prepared_flag
flag for MxV prepare.
iReg nRHS_prep
number of rhs the matrix is prepared for

Detailed Description

class MatList;

This class is used to represent the List of MatrixProd.

class MatList.

Public Functions Documentation

function copy_MatList

inline void copy_MatList(
    MatList & other
)

Copy members.

function operator=

inline MatList & operator=(
    MatList & other
)

Copy operator.

function MatList

inline MatList()

Creates an empty object.

function get_nrows

inline virtual iReg get_nrows() const

Get nrows.

Reimplements: MatrixProd::get_nrows

function Get_Globalnrows

virtual iGlo Get_Globalnrows() const

Get global nrows.

Reimplements: MatrixProd::Get_Globalnrows

function Prepare_MxV

virtual void Prepare_MxV(
    const iReg nRHS
)

Prepares the data structure necessary for MxV. L/R_SndRcvLst, Send/Recv_req,Recv_flag,WL_rcv,WR_snd,WR_rcv,WR_snd,WL_snd.

Reimplements: MatrixProd::Prepare_MxV

function UndoPrepare_MxV

virtual void UndoPrepare_MxV()

Undo the data structure necessary for MxV.

Reimplements: MatrixProd::UndoPrepare_MxV

function MxV

virtual void MxV(
    DDMat &__restrict__ x,
    DDMat &__restrict__ b,
    bool Barrier_flag
)

Computes the Matrix by vector Product.

Parameters:

  • x vector that is multiplied by the matrix.
  • b vector where result is stored.
  • Barrier_flag if true global Barrier is called before return.

Reimplements: MatrixProd::MxV

function ~MatList

~MatList()

Deletes the instance.

function DeleteAll

void DeleteAll()

Deletes the object and its content as well.

function AddLeft

void AddLeft(
    MatrixProd *__restrict__ newMat
)

Adds DSMat on the Left (list end).

function AddRight

void AddRight(
    MatrixProd *__restrict__ newMat
)

Adds DSMat on the Right (list start).


Updated on 12 February 2021 at 11:59:50 CET