v0.14.0
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
 Get the col sub dm IS. More...
 
MoFEMErrorCode getColIs (IS *is, const unsigned int pp) const
 Get the Col sub dm IS object. More...
 
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 757 of file ProblemsMultiIndices.hpp.

757  {
759  if (pp <= colIs.size()) {
760  SETERRQ1(PETSC_COMM_WORLD, MOFEM_INVALID_DATA, "Exceed size of array pp<%d",
761  colIs.size());
762  }
763  *is = colIs[pp].get();
764  PetscObjectReference((PetscObject)(*is));
766 }

◆ 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 745 of file ProblemsMultiIndices.hpp.

745  {
747  if (pp <= rowIs.size()) {
748  SETERRQ1(PETSC_COMM_WORLD, MOFEM_INVALID_DATA, "Exceed size of array pp<%d",
749  rowIs.size());
750  }
751  *is = rowIs[pp].get();
752  PetscObjectReference((PetscObject)(*is));
754 }

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:
MoFEMFunctionReturnHot
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:447
MoFEM::ComposedProblemsData::rowIs
std::vector< SmartPetscObj< IS > > rowIs
Definition: ProblemsMultiIndices.hpp:21
MoFEM::ComposedProblemsData::colIs
std::vector< SmartPetscObj< IS > > colIs
Definition: ProblemsMultiIndices.hpp:22
MoFEMFunctionBeginHot
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:440
MOFEM_INVALID_DATA
@ MOFEM_INVALID_DATA
Definition: definitions.h:36