v0.13.2
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
MoFEM::ComposedProblemsData Struct Reference

#include <src/multi_indices/ProblemsMultiIndices.hpp>

Collaboration diagram for MoFEM::ComposedProblemsData:
[legend]

Public Member Functions

MoFEMErrorCode getRowIs (IS *is, const unsigned int pp) const
 
MoFEMErrorCode getColIs (IS *is, const unsigned int pp) const
 
virtual ~ComposedProblemsData ()
 

Public Attributes

std::vector< const Problem * > rowProblemsAdd
 
std::vector< const Problem * > colProblemsAdd
 
std::vector< IS > rowIs
 
std::vector< IS > colIs
 

Detailed Description

Data structure created when composite problem is created

Definition at line 16 of file ProblemsMultiIndices.hpp.

Constructor & Destructor Documentation

◆ ~ComposedProblemsData()

MoFEM::ComposedProblemsData::~ComposedProblemsData ( )
virtual

Definition at line 8 of file ProblemsMultiIndices.cpp.

8 {
9 for (unsigned int ii = 0; ii != rowIs.size(); ii++) {
10 CHKERRABORT(PETSC_COMM_SELF, ISDestroy(&rowIs[ii]));
11 }
12 for (unsigned int jj = 0; jj != colIs.size(); jj++) {
13 CHKERRABORT(PETSC_COMM_SELF, ISDestroy(&colIs[jj]));
14 }
15}

Member Function Documentation

◆ getColIs()

MoFEMErrorCode MoFEM::ComposedProblemsData::getColIs ( IS *  is,
const unsigned int  pp 
) const
inline

Definition at line 734 of file ProblemsMultiIndices.hpp.

734 {
736 PetscObjectReference((PetscObject)colIs[pp]);
737 if (pp <= colIs.size()) {
738 SETERRQ1(PETSC_COMM_WORLD, MOFEM_INVALID_DATA, "Exceed size of array pp<%d",
739 colIs.size());
740 }
741 *is = colIs[pp];
743}
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:447
@ MOFEM_INVALID_DATA
Definition: definitions.h:36
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:440

◆ getRowIs()

MoFEMErrorCode MoFEM::ComposedProblemsData::getRowIs ( IS *  is,
const unsigned int  pp 
) const
inline

Definition at line 722 of file ProblemsMultiIndices.hpp.

722 {
724 PetscObjectReference((PetscObject)rowIs[pp]);
725 if (pp <= rowIs.size()) {
726 SETERRQ1(PETSC_COMM_WORLD, MOFEM_INVALID_DATA, "Exceed size of array pp<%d",
727 rowIs.size());
728 }
729 *is = rowIs[pp];
731}

Member Data Documentation

◆ colIs

std::vector<IS> MoFEM::ComposedProblemsData::colIs

Definition at line 22 of file ProblemsMultiIndices.hpp.

◆ colProblemsAdd

std::vector<const Problem *> MoFEM::ComposedProblemsData::colProblemsAdd

Definition at line 19 of file ProblemsMultiIndices.hpp.

◆ rowIs

std::vector<IS> MoFEM::ComposedProblemsData::rowIs

Definition at line 21 of file ProblemsMultiIndices.hpp.

◆ rowProblemsAdd

std::vector<const Problem *> MoFEM::ComposedProblemsData::rowProblemsAdd

Definition at line 18 of file ProblemsMultiIndices.hpp.


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