NeoPZ
Classes | Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes | List of all members
TPZPairStructMatrix Class Reference

.. . Sub Structure More...

#include <tpzpairstructmatrix.h>

Collaboration diagram for TPZPairStructMatrix:
[legend]

Classes

struct  ThreadData
 Contains the thread data for matrices divided in sub structures. More...
 

Public Member Functions

 TPZPairStructMatrix (TPZCompMesh *mesh, TPZVec< int > &permutescatter)
 
 ~TPZPairStructMatrix ()
 
void SetNumThreads (int numthreads)
 
void SetMaterialIds (const std::set< int > &materialids)
 Set the set of material ids which will be considered when assembling the system. More...
 
void Assemble (TPZMatrix< STATE > *first, TPZMatrix< STATE > *second, TPZFMatrix< STATE > &rhs)
 
void TBBAssemble (TPZMatrix< STATE > *first, TPZMatrix< STATE > *second, TPZFMatrix< STATE > &rhs)
 
void SerialAssemble (TPZMatrix< STATE > *first, TPZMatrix< STATE > *second, TPZFMatrix< STATE > &rhs)
 
void MultiThread_Assemble (TPZMatrix< STATE > *first, TPZMatrix< STATE > *second, TPZFMatrix< STATE > &rhs)
 

Static Public Attributes

static int gNumThreads
 

Private Member Functions

void PermuteScatter (TPZVec< int > &index)
 
void PermuteScatter (TPZVec< int64_t > &index)
 

Private Attributes

TPZVec< int > fPermuteScatter
 
TPZStructMatrix fStrMatrix
 

Detailed Description

.. . Sub Structure

Definition at line 24 of file tpzpairstructmatrix.h.

Constructor & Destructor Documentation

◆ TPZPairStructMatrix()

TPZPairStructMatrix::TPZPairStructMatrix ( TPZCompMesh mesh,
TPZVec< int > &  permutescatter 
)

◆ ~TPZPairStructMatrix()

TPZPairStructMatrix::~TPZPairStructMatrix ( )
inline

Definition at line 38 of file tpzpairstructmatrix.h.

Member Function Documentation

◆ Assemble()

void TPZPairStructMatrix::Assemble ( TPZMatrix< STATE > *  first,
TPZMatrix< STATE > *  second,
TPZFMatrix< STATE > &  rhs 
)

"Fixme!!!" "Fixme!!!" "Fixme!!!" "Fixme!!!"

Note
Find a better way to select among TBB, pthread or serial execution! in this TPZPairStructMatrix::Assemble

Definition at line 545 of file tpzpairstructmatrix.cpp.

References fStrMatrix, TPZStructMatrixBase::GetNumThreads(), MultiThread_Assemble(), substruct_tst14.test::numthreads, SerialAssemble(), and TBBAssemble().

Referenced by InitializeMatrices(), and SetNumThreads().

◆ MultiThread_Assemble()

void TPZPairStructMatrix::MultiThread_Assemble ( TPZMatrix< STATE > *  first,
TPZMatrix< STATE > *  second,
TPZFMatrix< STATE > &  rhs 
)

◆ PermuteScatter() [1/2]

void TPZPairStructMatrix::PermuteScatter ( TPZVec< int > &  index)
private

◆ PermuteScatter() [2/2]

void TPZPairStructMatrix::PermuteScatter ( TPZVec< int64_t > &  index)
private

Definition at line 526 of file tpzpairstructmatrix.cpp.

References fPermuteScatter, and TPZVec< T >::NElements().

◆ SerialAssemble()

void TPZPairStructMatrix::SerialAssemble ( TPZMatrix< STATE > *  first,
TPZMatrix< STATE > *  second,
TPZFMatrix< STATE > &  rhs 
)

◆ SetMaterialIds()

void TPZPairStructMatrix::SetMaterialIds ( const std::set< int > &  materialids)

Set the set of material ids which will be considered when assembling the system.

Definition at line 880 of file tpzpairstructmatrix.cpp.

References TPZPairStructMatrix::ThreadData::fStrMatrix, LOGPZ_DEBUG, and TPZStructMatrixBase::SetMaterialIds().

Referenced by SetNumThreads().

◆ SetNumThreads()

void TPZPairStructMatrix::SetNumThreads ( int  numthreads)
inline

◆ TBBAssemble()

void TPZPairStructMatrix::TBBAssemble ( TPZMatrix< STATE > *  first,
TPZMatrix< STATE > *  second,
TPZFMatrix< STATE > &  rhs 
)

Member Data Documentation

◆ fPermuteScatter

TPZVec<int> TPZPairStructMatrix::fPermuteScatter
private

◆ fStrMatrix

TPZStructMatrix TPZPairStructMatrix::fStrMatrix
private

◆ gNumThreads

int TPZPairStructMatrix::gNumThreads
static

Definition at line 34 of file tpzpairstructmatrix.h.

Referenced by main(), and TPZPairStructMatrix().


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