v0.15.0
Loading...
Searching...
No Matches
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
 Get the col sub dm IS.
 
MoFEMErrorCode getColIs (IS *is, const unsigned int pp) const
 Get the Col sub dm IS object.
 
virtual ~ComposedProblemsData ()=default
 

Public Attributes

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

Detailed Description

Data structure created when composite problem is created

Definition at line 16 of file ProblemsMultiIndices.hpp.

Constructor & Destructor Documentation

◆ ~ComposedProblemsData()

virtual MoFEM::ComposedProblemsData::~ComposedProblemsData ( )
virtualdefault

Member Function Documentation

◆ getColIs()

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

Get the Col sub dm IS object.

Parameters
issub problem IS
ppproblem number
Returns
MoFEMErrorCode

Definition at line 761 of file ProblemsMultiIndices.hpp.

761 {
763 if (pp <= colIs.size()) {
764 SETERRQ(PETSC_COMM_WORLD, MOFEM_INVALID_DATA, "Exceed size of array pp<%ld",
765 colIs.size());
766 }
767 *is = colIs[pp].get();
768 PetscObjectReference((PetscObject)(*is));
770}
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return()
@ 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 ...
std::vector< SmartPetscObj< IS > > colIs

◆ getRowIs()

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

Get the col sub dm IS.

Parameters
issub problem IS
ppproblem number
Returns
MoFEMErrorCode

Definition at line 749 of file ProblemsMultiIndices.hpp.

749 {
751 if (pp <= rowIs.size()) {
752 SETERRQ(PETSC_COMM_WORLD, MOFEM_INVALID_DATA, "Exceed size of array pp<%ld",
753 rowIs.size());
754 }
755 *is = rowIs[pp].get();
756 PetscObjectReference((PetscObject)(*is));
758}
std::vector< SmartPetscObj< IS > > rowIs

Member Data Documentation

◆ colIs

std::vector<SmartPetscObj<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<SmartPetscObj<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 file: