v0.16.3
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Public Attributes | List of all members
MoFEM::BlockStructure Struct Reference

Context of block matrix shell. More...

Collaboration diagram for MoFEM::BlockStructure:
[legend]

Classes

struct  Block
 block in numbering of this matrix (blocks not stored in element buffers) More...
 

Public Types

enum  Numbering { PARENT , BLOCK }
 numbering of A00 element matrix entities used by this matrix More...
 

Public Member Functions

int locIdx (const BlockStorage::ElemEntity &e) const
 
int globIdx (const BlockStorage::ElemEntity &e) const
 

Public Attributes

boost::shared_ptr< BlockStorage > storage
 
std::vector< Block > blocks
 
bool hasElems = false
 A00 elements are part of this matrix.
 
Numbering numbering = PARENT
 
SmartPetscObj< Vec > ghostX
 
SmartPetscObj< Vec > ghostY
 
bool multiplyByPreconditioner = false
 

Detailed Description

Context of block matrix shell.

Block matrix, and each of nested (Schur) sub-matrices, keeps list of blocks in its own local numbering. Storage of block values is shared between matrices created from the same block structure.

Definition at line 512 of file Schur.cpp.

Member Enumeration Documentation

◆ Numbering

numbering of A00 element matrix entities used by this matrix

Enumerator
PARENT 
BLOCK 

Definition at line 515 of file Schur.cpp.

Member Function Documentation

◆ globIdx()

int MoFEM::BlockStructure::globIdx ( const BlockStorage::ElemEntity &  e) const
inline

Definition at line 542 of file Schur.cpp.

542 {
543 return numbering == BLOCK ? e.globBlock : e.globParent;
544 }
Numbering numbering
Definition Schur.cpp:532

◆ locIdx()

int MoFEM::BlockStructure::locIdx ( const BlockStorage::ElemEntity &  e) const
inline

Definition at line 539 of file Schur.cpp.

539 {
540 return numbering == BLOCK ? e.locBlock : e.locParent;
541 }

Member Data Documentation

◆ blocks

std::vector<Block> MoFEM::BlockStructure::blocks

Definition at line 530 of file Schur.cpp.

◆ ghostX

SmartPetscObj<Vec> MoFEM::BlockStructure::ghostX

Definition at line 534 of file Schur.cpp.

◆ ghostY

SmartPetscObj<Vec> MoFEM::BlockStructure::ghostY

Definition at line 535 of file Schur.cpp.

◆ hasElems

bool MoFEM::BlockStructure::hasElems = false

A00 elements are part of this matrix.

Definition at line 531 of file Schur.cpp.

◆ multiplyByPreconditioner

bool MoFEM::BlockStructure::multiplyByPreconditioner = false

Definition at line 537 of file Schur.cpp.

◆ numbering

Numbering MoFEM::BlockStructure::numbering = PARENT

Definition at line 532 of file Schur.cpp.

◆ storage

boost::shared_ptr<BlockStorage> MoFEM::BlockStructure::storage

Definition at line 529 of file Schur.cpp.


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