v0.14.0
Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
MoFEM::PipelineManager Struct Reference

PipelineManager interface. More...

#include <src/interfaces/PipelineManager.hpp>

Inheritance diagram for MoFEM::PipelineManager:
[legend]
Collaboration diagram for MoFEM::PipelineManager:
[legend]

Classes

struct  ElementsAndOpsByDim
 
struct  ElementsAndOpsByDim< 2 >
 
struct  ElementsAndOpsByDim< 3 >
 
struct  MeshsetFE
 

Public Types

enum  TSType { EX, IM, IM2, IMEX }
 
using UserDataOperator = MoFEM::ForcesAndSourcesCore::UserDataOperator
 
using RuleHookFun = MoFEM::ForcesAndSourcesCore::RuleHookFun
 
using VolEle = MoFEM::VolumeElementForcesAndSourcesCore
 
using FaceEle = MoFEM::FaceElementForcesAndSourcesCore
 
using EdgeEle = MoFEM::EdgeElementForcesAndSourcesCore
 

Public Member Functions

MoFEMErrorCode query_interface (boost::typeindex::type_index type_index, UnknownInterface **iface) const
 
 PipelineManager (const MoFEM::Core &core)
 
boost::shared_ptr< FEMethod > & getDomainLhsFE ()
 
boost::shared_ptr< FEMethod > & getDomainRhsFE ()
 
boost::shared_ptr< FEMethod > & getBoundaryLhsFE ()
 
boost::shared_ptr< FEMethod > & getBoundaryRhsFE ()
 
boost::shared_ptr< FEMethod > & getSkeletonLhsFE ()
 
boost::shared_ptr< FEMethod > & getSkeletonRhsFE ()
 
boost::shared_ptr< FEMethod > & getDomainExplicitRhsFE ()
 
boost::shared_ptr< FEMethod > & getBoundaryExplicitRhsFE ()
 
boost::shared_ptr< FEMethod > & getSkeletonExplicitRhsFE ()
 
boost::shared_ptr< FEMethod > & getMeshsetRhsFE ()
 
boost::shared_ptr< FEMethod > & getMeshsetLhsFE ()
 
boost::shared_ptr< FEMethod > & getMeshsetExplicitRhsFE ()
 
template<typename T = ForcesAndSourcesCore, int DIM = -1>
auto getCastDomainLhsFE ()
 
template<typename T = ForcesAndSourcesCore, int DIM = -1>
auto getCastDomainRhsFE ()
 
template<typename T = ForcesAndSourcesCore, int DIM = -1>
auto getCastBoundaryLhsFE ()
 
template<typename T = ForcesAndSourcesCore, int DIM = -1>
auto getCastBoundaryRhsFE ()
 
template<typename T = ForcesAndSourcesCore, int DIM = -1>
auto getCastSkeletonLhsFE ()
 
template<typename T = ForcesAndSourcesCore, int DIM = -1>
auto getCastSkeletonRhsFE ()
 
template<typename T = ForcesAndSourcesCore, int DIM = -1>
auto getCastDomainExplicitRhsFE ()
 
template<typename T = ForcesAndSourcesCore, int DIM = -1>
auto getCastBoundaryExplicitRhsFE ()
 
template<typename T = ForcesAndSourcesCore, int DIM = -1>
auto getCastSkeletonExplicitRhsFE ()
 
template<typename T = ForcesAndSourcesCore>
auto getCastMeshsetRhsFE ()
 
template<typename T = ForcesAndSourcesCore>
auto getCastMeshsetLhsFE ()
 
template<typename T = ForcesAndSourcesCore>
auto getCastMeshsetExplicitRhsFE ()
 
template<int DIM = -1>
MoFEMErrorCode setDomainLhsIntegrationRule (RuleHookFun rule)
 
template<int DIM = -1>
MoFEMErrorCode setDomainRhsIntegrationRule (RuleHookFun rule)
 
template<int DIM = -1>
MoFEMErrorCode setBoundaryLhsIntegrationRule (RuleHookFun rule)
 
template<int DIM = -1>
MoFEMErrorCode setBoundaryRhsIntegrationRule (RuleHookFun rule)
 
template<int DIM = -1>
MoFEMErrorCode setSkeletonLhsIntegrationRule (RuleHookFun rule)
 
template<int DIM = -1>
MoFEMErrorCode setSkeletonRhsIntegrationRule (RuleHookFun rule)
 
template<int DIM = -1>
MoFEMErrorCode setDomainExplicitRhsIntegrationRule (RuleHookFun rule)
 
template<int DIM = -1>
MoFEMErrorCode setBoundaryExplicitRhsIntegrationRule (RuleHookFun rule)
 
template<int DIM = -1>
MoFEMErrorCode setSkeletonExplicitRhsIntegrationRule (RuleHookFun rule)
 
template<int DIM = -1>
boost::ptr_deque< UserDataOperator > & getOpDomainLhsPipeline ()
 Get the Op Domain Lhs Pipeline object. More...
 
template<int DIM = -1>
boost::ptr_deque< UserDataOperator > & getOpDomainRhsPipeline ()
 Get the Op Domain Rhs Pipeline object. More...
 
template<int DIM = -1>
boost::ptr_deque< UserDataOperator > & getOpBoundaryLhsPipeline ()
 Get the Op Boundary Lhs Pipeline object. More...
 
template<int DIM = -1>
boost::ptr_deque< UserDataOperator > & getOpBoundaryRhsPipeline ()
 Get the Op Boundary Rhs Pipeline object. More...
 
template<int DIM = -1>
boost::ptr_deque< UserDataOperator > & getOpSkeletonLhsPipeline ()
 Get the Op Skeleton Lhs Pipeline object. More...
 
template<int DIM = -1>
boost::ptr_deque< UserDataOperator > & getOpSkeletonRhsPipeline ()
 Get the Op Skeleton Rhs Pipeline object. More...
 
template<int DIM = -1>
boost::ptr_deque< UserDataOperator > & getOpDomainExplicitRhsPipeline ()
 Get the Op Domain Rhs Pipeline object for implicit-explicit G term. More...
 
template<int DIM = -1>
boost::ptr_deque< UserDataOperator > & getOpBoundaryExplicitRhsPipeline ()
 Get the Op Bondary Rhs Pipeline object for implicit-explicit G term. More...
 
template<int DIM = -1>
boost::ptr_deque< UserDataOperator > & getOpSkeletonExplicitRhsPipeline ()
 Get the Op Skeleton Rhs Pipeline object for implicit-explicit G term. More...
 
boost::ptr_deque< UserDataOperator > & getOpMeshsetRhsPipeline ()
 Get the Op Meshset Rhs Pipeline object. More...
 
boost::ptr_deque< UserDataOperator > & getOpMeshsetLhsPipeline ()
 Get the Op Meshset Lhs Pipeline object. More...
 
boost::ptr_deque< UserDataOperator > & getOpMeshsetExplicitRhsPipeline ()
 Get the Op Meshset Explicit Rhs Pipeline object. More...
 
MoFEMErrorCode loopFiniteElements (SmartPetscObj< DM > dm=nullptr)
 Iterate finite elements. More...
 
SmartPetscObj< KSP > createKSP (SmartPetscObj< DM > dm=nullptr)
 Create KSP (linear) solver. More...
 
SmartPetscObj< SNES > createSNES (SmartPetscObj< DM > dm=nullptr)
 Create SNES (nonlinear) solver. More...
 
SmartPetscObj< TS > createTS (const TSType type, SmartPetscObj< DM > dm=nullptr)
 create TS (time) solver More...
 
SmartPetscObj< TS > createTSEX (SmartPetscObj< DM > dm=nullptr)
 Create TS (time) explit solver. More...
 
SmartPetscObj< TS > createTSIM (SmartPetscObj< DM > dm=nullptr)
 Create TS (time) implicit solver. More...
 
DEPRECATED auto createTS (SmartPetscObj< DM > dm=nullptr)
 
SmartPetscObj< TS > createTSIM2 (SmartPetscObj< DM > dm=nullptr)
 Create TS (time) solver for second order equation in time. More...
 
DEPRECATED auto createTS2 (SmartPetscObj< DM > dm=nullptr)
 
SmartPetscObj< TS > createTSIMEX (SmartPetscObj< DM > dm=nullptr)
 Create TS (time) implicit-explicit solver. More...
 
template<>
MoFEMErrorCode setDomainLhsIntegrationRule (PipelineManager::RuleHookFun rule)
 
template<>
MoFEMErrorCode setDomainRhsIntegrationRule (PipelineManager::RuleHookFun rule)
 
template<>
MoFEMErrorCode setBoundaryLhsIntegrationRule (PipelineManager::RuleHookFun rule)
 
template<>
MoFEMErrorCode setBoundaryRhsIntegrationRule (PipelineManager::RuleHookFun rule)
 
template<>
MoFEMErrorCode setSkeletonLhsIntegrationRule (PipelineManager::RuleHookFun rule)
 
template<>
MoFEMErrorCode setSkeletonRhsIntegrationRule (PipelineManager::RuleHookFun rule)
 
template<>
MoFEMErrorCode setDomainExplicitRhsIntegrationRule (PipelineManager::RuleHookFun rule)
 
template<>
MoFEMErrorCode setBoundaryExplicitRhsIntegrationRule (PipelineManager::RuleHookFun rule)
 
template<>
MoFEMErrorCode setSkeletonExplicitRhsIntegrationRule (PipelineManager::RuleHookFun rule)
 
template<>
boost::ptr_deque< PipelineManager::UserDataOperator > & getOpDomainLhsPipeline ()
 
template<>
boost::ptr_deque< PipelineManager::UserDataOperator > & getOpDomainRhsPipeline ()
 
template<>
boost::ptr_deque< PipelineManager::UserDataOperator > & getOpBoundaryLhsPipeline ()
 
template<>
boost::ptr_deque< PipelineManager::UserDataOperator > & getOpBoundaryRhsPipeline ()
 
template<>
boost::ptr_deque< PipelineManager::UserDataOperator > & getOpSkeletonLhsPipeline ()
 
template<>
boost::ptr_deque< PipelineManager::UserDataOperator > & getOpSkeletonRhsPipeline ()
 
template<>
boost::ptr_deque< PipelineManager::UserDataOperator > & getOpDomainExplicitRhsPipeline ()
 
template<>
boost::ptr_deque< PipelineManager::UserDataOperator > & getOpBoundaryExplicitRhsPipeline ()
 
template<>
boost::ptr_deque< PipelineManager::UserDataOperator > & getOpSkeletonExplicitRhsPipeline ()
 
- Public Member Functions inherited from MoFEM::UnknownInterface
template<class IFACE >
MoFEMErrorCode registerInterface (bool error_if_registration_failed=true)
 Register interface. More...
 
template<class IFACE >
MoFEMErrorCode getInterface (IFACE *&iface) const
 Get interface reference to pointer of interface. More...
 
template<class IFACE >
MoFEMErrorCode getInterface (IFACE **const iface) const
 Get interface pointer to pointer of interface. More...
 
template<class IFACE , typename boost::enable_if< boost::is_pointer< IFACE >, int >::type = 0>
IFACE getInterface () const
 Get interface pointer to pointer of interface. More...
 
template<class IFACE , typename boost::enable_if< boost::is_reference< IFACE >, int >::type = 0>
IFACE getInterface () const
 Get reference to interface. More...
 
template<class IFACE >
IFACE * getInterface () const
 Function returning pointer to interface. More...
 
virtual ~UnknownInterface ()=default
 

Private Member Functions

template<int DIM>
boost::shared_ptr< FEMethod > & createDomainFEPipeline (boost::shared_ptr< FEMethod > &fe)
 
template<int DIM>
boost::shared_ptr< FEMethod > & createBoundaryFEPipeline (boost::shared_ptr< FEMethod > &fe)
 
boost::shared_ptr< FEMethod > & createMeshsetFEPipeline (boost::shared_ptr< FEMethod > &fe)
 
template<>
boost::shared_ptr< FEMethod > & createDomainFEPipeline (boost::shared_ptr< FEMethod > &fe)
 
template<>
boost::shared_ptr< FEMethod > & createDomainFEPipeline (boost::shared_ptr< FEMethod > &fe)
 
template<>
boost::shared_ptr< FEMethod > & createDomainFEPipeline (boost::shared_ptr< FEMethod > &fe)
 
template<>
boost::shared_ptr< FEMethod > & createDomainFEPipeline (boost::shared_ptr< FEMethod > &fe)
 
template<>
boost::shared_ptr< FEMethod > & createBoundaryFEPipeline (boost::shared_ptr< FEMethod > &fe)
 
template<>
boost::shared_ptr< FEMethod > & createBoundaryFEPipeline (boost::shared_ptr< FEMethod > &fe)
 
template<>
boost::shared_ptr< FEMethod > & createBoundaryFEPipeline (boost::shared_ptr< FEMethod > &fe)
 
template<>
boost::shared_ptr< FEMethod > & createBoundaryFEPipeline (boost::shared_ptr< FEMethod > &fe)
 

Private Attributes

MoFEM::CorecOre
 
boost::shared_ptr< FEMethodfeDomainRhs
 Element to assemble RHS side by integrating domain. More...
 
boost::shared_ptr< FEMethodfeDomainLhs
 Element to assemble LHS side by integrating domain. More...
 
boost::shared_ptr< FEMethodfeBoundaryRhs
 Element to assemble RHS side by integrating boundary. More...
 
boost::shared_ptr< FEMethodfeBoundaryLhs
 Element to assemble LHS side by integrating boundary. More...
 
boost::shared_ptr< FEMethodfeSkeletonRhs
 Element to assemble RHS side by integrating skeleton. More...
 
boost::shared_ptr< FEMethodfeSkeletonLhs
 Element to assemble LHS side by integrating skeleton. More...
 
boost::shared_ptr< FEMethodfeDomainExplicitRhs
 Element to assemble explict Rhs for IMEX solver. More...
 
boost::shared_ptr< FEMethodfeBoundaryExplicitRhs
 
boost::shared_ptr< FEMethodfeSkeletonExplicitRhs
 
boost::shared_ptr< FEMethodfeMeshsetRhs
 
boost::shared_ptr< FEMethodfeMeshsetLhs
 
boost::shared_ptr< FEMethodfeMeshsetExplicitRhs
 

Additional Inherited Members

- Static Public Member Functions inherited from MoFEM::UnknownInterface
static MoFEMErrorCode getLibVersion (Version &version)
 Get library version. More...
 
static MoFEMErrorCode getFileVersion (moab::Interface &moab, Version &version)
 Get database major version. More...
 
static MoFEMErrorCode setFileVersion (moab::Interface &moab, Version version=Version(MoFEM_VERSION_MAJOR, MoFEM_VERSION_MINOR, MoFEM_VERSION_BUILD))
 Get database major version. More...
 
static MoFEMErrorCode getInterfaceVersion (Version &version)
 Get database major version. More...
 

Detailed Description

PipelineManager interface.

Examples
adolc_plasticity.cpp, approx_sphere.cpp, child_and_parent.cpp, dg_projection.cpp, dynamic_first_order_con_law.cpp, eigen_elastic.cpp, free_surface.cpp, hanging_node_approx.cpp, hcurl_check_approx_in_2d.cpp, hcurl_curl_operator.cpp, hdiv_check_approx_in_3d.cpp, hdiv_divergence_operator.cpp, heat_equation.cpp, heat_method.cpp, hello_world.cpp, helmholtz.cpp, higher_derivatives.cpp, level_set.cpp, mixed_poisson.cpp, operators_tests.cpp, phase.cpp, photon_diffusion.cpp, plastic.cpp, plate.cpp, plot_base.cpp, poisson_2d_dis_galerkin.cpp, poisson_2d_homogeneous.cpp, scalar_check_approximation.cpp, schur_test_diag_mat.cpp, seepage.cpp, shallow_wave.cpp, simple_l2_only.cpp, tensor_divergence_operator.cpp, test_broken_space.cpp, thermo_elastic.cpp, and wave_equation.cpp.

Definition at line 24 of file PipelineManager.hpp.

Member Typedef Documentation

◆ EdgeEle

◆ FaceEle

◆ RuleHookFun

Definition at line 32 of file PipelineManager.hpp.

◆ UserDataOperator

Definition at line 31 of file PipelineManager.hpp.

◆ VolEle

Examples
plastic.cpp.

Definition at line 34 of file PipelineManager.hpp.

Member Enumeration Documentation

◆ TSType

Enumerator
EX 
IM 
IM2 
IMEX 

Definition at line 263 of file PipelineManager.hpp.

263 { EX, IM, IM2, IMEX };

Constructor & Destructor Documentation

◆ PipelineManager()

MoFEM::PipelineManager::PipelineManager ( const MoFEM::Core core)

Definition at line 60 of file PipelineManager.cpp.

61  : cOre(const_cast<Core &>(core)) {}

Member Function Documentation

◆ createBoundaryFEPipeline() [1/5]

template<int DIM>
boost::shared_ptr< FEMethod > & MoFEM::PipelineManager::createBoundaryFEPipeline ( boost::shared_ptr< FEMethod > &  fe)
inlineprivate

Definition at line 421 of file PipelineManager.hpp.

421  {
422  static_assert(DIM == 1 || DIM == 2 || DIM == 3, "not implemented");
423  fe = boost::make_shared<FEMethod>();
424  return fe;
425 }

◆ createBoundaryFEPipeline() [2/5]

template<>
boost::shared_ptr<FEMethod>& MoFEM::PipelineManager::createBoundaryFEPipeline ( boost::shared_ptr< FEMethod > &  fe)
inlineprivate

Definition at line 429 of file PipelineManager.hpp.

429  {
430  if (!fe)
431  fe = boost::make_shared<FaceElementForcesAndSourcesCore>(cOre);
432  return fe;
433 }

◆ createBoundaryFEPipeline() [3/5]

template<>
boost::shared_ptr<FEMethod>& MoFEM::PipelineManager::createBoundaryFEPipeline ( boost::shared_ptr< FEMethod > &  fe)
inlineprivate

Definition at line 437 of file PipelineManager.hpp.

437  {
438  if (!fe)
439  fe = boost::make_shared<EdgeEle>(cOre);
440  return fe;
441 }

◆ createBoundaryFEPipeline() [4/5]

template<>
boost::shared_ptr<FEMethod>& MoFEM::PipelineManager::createBoundaryFEPipeline ( boost::shared_ptr< FEMethod > &  fe)
inlineprivate

Definition at line 445 of file PipelineManager.hpp.

445  {
446  if (!fe)
447  fe = boost::make_shared<VertexElementForcesAndSourcesCore>(cOre);
448  return fe;
449 }

◆ createBoundaryFEPipeline() [5/5]

template<>
boost::shared_ptr<FEMethod>& MoFEM::PipelineManager::createBoundaryFEPipeline ( boost::shared_ptr< FEMethod > &  fe)
inlineprivate

Definition at line 501 of file PipelineManager.hpp.

501  {
502  switch (cOre.getInterface<Simple>()->getDim()) {
503  case 1:
504  return createBoundaryFEPipeline<1>(fe);
505  case 2:
506  return createBoundaryFEPipeline<2>(fe);
507  case 3:
508  return createBoundaryFEPipeline<3>(fe);
509  default:
510  THROW_MESSAGE("Not implemented");
511  }
512 }

◆ createDomainFEPipeline() [1/5]

template<int DIM>
boost::shared_ptr< FEMethod > & MoFEM::PipelineManager::createDomainFEPipeline ( boost::shared_ptr< FEMethod > &  fe)
inlineprivate

Definition at line 374 of file PipelineManager.hpp.

374  {
375  static_assert(DIM == 1 || DIM == 2 || DIM == 3, "not implemented");
376  fe = boost::make_shared<FEMethod>();
377  return fe;
378 }

◆ createDomainFEPipeline() [2/5]

template<>
boost::shared_ptr<FEMethod>& MoFEM::PipelineManager::createDomainFEPipeline ( boost::shared_ptr< FEMethod > &  fe)
inlineprivate

Definition at line 382 of file PipelineManager.hpp.

382  {
383  if (!fe)
384  fe = boost::make_shared<VolEle>(cOre);
385  return fe;
386 }

◆ createDomainFEPipeline() [3/5]

template<>
boost::shared_ptr<FEMethod>& MoFEM::PipelineManager::createDomainFEPipeline ( boost::shared_ptr< FEMethod > &  fe)
inlineprivate

Definition at line 390 of file PipelineManager.hpp.

390  {
391  if (!fe)
392  fe = boost::make_shared<FaceEle>(cOre);
393  return fe;
394 }

◆ createDomainFEPipeline() [4/5]

template<>
boost::shared_ptr<FEMethod>& MoFEM::PipelineManager::createDomainFEPipeline ( boost::shared_ptr< FEMethod > &  fe)
inlineprivate

Definition at line 398 of file PipelineManager.hpp.

398  {
399  if (!fe)
400  fe = boost::make_shared<EdgeEle>(cOre);
401  return fe;
402 }

◆ createDomainFEPipeline() [5/5]

template<>
boost::shared_ptr<FEMethod>& MoFEM::PipelineManager::createDomainFEPipeline ( boost::shared_ptr< FEMethod > &  fe)
inlineprivate

Definition at line 406 of file PipelineManager.hpp.

406  {
407  switch (cOre.getInterface<Simple>()->getDim()) {
408  case 1:
409  return createDomainFEPipeline<1>(fe);
410  case 2:
411  return createDomainFEPipeline<2>(fe);
412  case 3:
413  return createDomainFEPipeline<3>(fe);
414  default:
415  THROW_MESSAGE("Not implemented");
416  }
417 }

◆ createMeshsetFEPipeline()

boost::shared_ptr< FEMethod > & MoFEM::PipelineManager::createMeshsetFEPipeline ( boost::shared_ptr< FEMethod > &  fe)
inlineprivate

Definition at line 26 of file PipelineManager.cpp.

26  {
27  if (!fe)
28  fe = boost::make_shared<MeshsetFE>(cOre);
29  return fe;
30 }

◆ createTS() [1/2]

SmartPetscObj< TS > MoFEM::PipelineManager::createTS ( const TSType  type,
SmartPetscObj< DM >  dm = nullptr 
)

create TS (time) solver

Parameters
typeType of time solver PipelineManager:EX/IM/IM2/IMEX
dm
Returns
SmartPetscObj<TS>

Definition at line 231 of file PipelineManager.cpp.

232  {
233  switch (type) {
234  case EX:
235  return createTSEX(dm);
236  break;
237  case IM:
238  return createTSIM(dm);
239  break;
240  case IM2:
241  return createTSIM2(dm);
242  break;
243  case IMEX:
244  return createTSIMEX(dm);
245  break;
246  default:
248  "TS solver handling not implemented");
249  break;
250  }
251  return SmartPetscObj<TS>();
252 }

◆ createTS() [2/2]

DEPRECATED auto MoFEM::PipelineManager::createTS ( SmartPetscObj< DM >  dm = nullptr)
inline
Deprecated:
Use version with explicit TS solver type

Definition at line 295 of file PipelineManager.hpp.

295  {
296  return createTSIM(dm);
297  }

◆ createTS2()

DEPRECATED auto MoFEM::PipelineManager::createTS2 ( SmartPetscObj< DM >  dm = nullptr)
inline
Deprecated:
Change name. Use createTSIM2 instead.

Definition at line 311 of file PipelineManager.hpp.

311  {
312  return createTSIM2(dm);
313  }

◆ getBoundaryExplicitRhsFE()

boost::shared_ptr< FEMethod > & MoFEM::PipelineManager::getBoundaryExplicitRhsFE ( )
inline

Definition at line 479 of file PipelineManager.hpp.

479  {
480  return feBoundaryExplicitRhs;
481 }

◆ getBoundaryLhsFE()

boost::shared_ptr< FEMethod > & MoFEM::PipelineManager::getBoundaryLhsFE ( )
inline
Examples
helmholtz.cpp.

Definition at line 459 of file PipelineManager.hpp.

459  {
460  return feBoundaryLhs;
461 }

◆ getBoundaryRhsFE()

boost::shared_ptr< FEMethod > & MoFEM::PipelineManager::getBoundaryRhsFE ( )
inline

◆ getCastBoundaryExplicitRhsFE()

template<typename T , int DIM>
auto MoFEM::PipelineManager::getCastBoundaryExplicitRhsFE
inline

Definition at line 553 of file PipelineManager.hpp.

553  {
554  return boost::dynamic_pointer_cast<T>(
555  createBoundaryFEPipeline<DIM>(feBoundaryExplicitRhs));
556 }

◆ getCastBoundaryLhsFE()

template<typename T , int DIM>
auto MoFEM::PipelineManager::getCastBoundaryLhsFE
inline

Definition at line 524 of file PipelineManager.hpp.

524  {
525  return boost::dynamic_pointer_cast<T>(
526  createBoundaryFEPipeline<DIM>(feBoundaryLhs));
527 }

◆ getCastBoundaryRhsFE()

template<typename T , int DIM>
auto MoFEM::PipelineManager::getCastBoundaryRhsFE
inline

Definition at line 530 of file PipelineManager.hpp.

530  {
531  return boost::dynamic_pointer_cast<T>(
532  createBoundaryFEPipeline<DIM>(feBoundaryRhs));
533 }

◆ getCastDomainExplicitRhsFE()

template<typename T , int DIM>
auto MoFEM::PipelineManager::getCastDomainExplicitRhsFE
inline

Definition at line 547 of file PipelineManager.hpp.

547  {
548  return boost::dynamic_pointer_cast<T>(
549  createDomainFEPipeline<DIM>(feDomainExplicitRhs));
550 }

◆ getCastDomainLhsFE()

template<typename T , int DIM>
auto MoFEM::PipelineManager::getCastDomainLhsFE
inline

Definition at line 514 of file PipelineManager.hpp.

514  {
515  return boost::dynamic_pointer_cast<T>(
516  createDomainFEPipeline<DIM>(feDomainLhs));
517 }

◆ getCastDomainRhsFE()

template<typename T , int DIM>
auto MoFEM::PipelineManager::getCastDomainRhsFE
inline

Definition at line 519 of file PipelineManager.hpp.

519  {
520  return boost::dynamic_pointer_cast<T>(
521  createDomainFEPipeline<DIM>(feDomainRhs));
522 }

◆ getCastMeshsetExplicitRhsFE()

template<typename T >
auto MoFEM::PipelineManager::getCastMeshsetExplicitRhsFE
inline

Definition at line 572 of file PipelineManager.hpp.

572  {
573  return boost::dynamic_pointer_cast<T>(
575 }

◆ getCastMeshsetLhsFE()

template<typename T >
auto MoFEM::PipelineManager::getCastMeshsetLhsFE
inline

Definition at line 568 of file PipelineManager.hpp.

568  {
569  return boost::dynamic_pointer_cast<T>(createMeshsetFEPipeline(feMeshsetLhs));
570 }

◆ getCastMeshsetRhsFE()

template<typename T >
auto MoFEM::PipelineManager::getCastMeshsetRhsFE
inline

Definition at line 564 of file PipelineManager.hpp.

564  {
565  return boost::dynamic_pointer_cast<T>(createMeshsetFEPipeline(feMeshsetRhs));
566 }

◆ getCastSkeletonExplicitRhsFE()

template<typename T , int DIM>
auto MoFEM::PipelineManager::getCastSkeletonExplicitRhsFE
inline

Definition at line 559 of file PipelineManager.hpp.

559  {
560  return boost::dynamic_pointer_cast<T>(
561  createBoundaryFEPipeline<DIM>(feSkeletonExplicitRhs));
562 }

◆ getCastSkeletonLhsFE()

template<typename T , int DIM>
auto MoFEM::PipelineManager::getCastSkeletonLhsFE
inline

Definition at line 536 of file PipelineManager.hpp.

536  {
537  return boost::dynamic_pointer_cast<T>(
538  createBoundaryFEPipeline<DIM>(feSkeletonLhs));
539 }

◆ getCastSkeletonRhsFE()

template<typename T , int DIM>
auto MoFEM::PipelineManager::getCastSkeletonRhsFE
inline

Definition at line 541 of file PipelineManager.hpp.

541  {
542  return boost::dynamic_pointer_cast<T>(
543  createBoundaryFEPipeline<DIM>(feSkeletonRhs));
544 }

◆ getDomainExplicitRhsFE()

boost::shared_ptr< FEMethod > & MoFEM::PipelineManager::getDomainExplicitRhsFE ( )
inline

Definition at line 475 of file PipelineManager.hpp.

475  {
476  return feDomainExplicitRhs;
477 }

◆ getDomainLhsFE()

boost::shared_ptr< FEMethod > & MoFEM::PipelineManager::getDomainLhsFE ( )
inline

◆ getDomainRhsFE()

boost::shared_ptr< FEMethod > & MoFEM::PipelineManager::getDomainRhsFE ( )
inline

◆ getMeshsetExplicitRhsFE()

boost::shared_ptr< FEMethod > & MoFEM::PipelineManager::getMeshsetExplicitRhsFE ( )
inline

Definition at line 495 of file PipelineManager.hpp.

495  {
496  return feMeshsetExplicitRhs;
497 }

◆ getMeshsetLhsFE()

boost::shared_ptr< FEMethod > & MoFEM::PipelineManager::getMeshsetLhsFE ( )
inline

Definition at line 491 of file PipelineManager.hpp.

491  {
492  return feMeshsetLhs;
493 }

◆ getMeshsetRhsFE()

boost::shared_ptr< FEMethod > & MoFEM::PipelineManager::getMeshsetRhsFE ( )
inline

Definition at line 487 of file PipelineManager.hpp.

487  {
488  return feMeshsetRhs;
489 }

◆ getOpBoundaryExplicitRhsPipeline()

template<>
boost::ptr_deque<PipelineManager::UserDataOperator>& MoFEM::PipelineManager::getOpBoundaryExplicitRhsPipeline ( )
inline

Definition at line 1000 of file PipelineManager.hpp.

1000  {
1001  switch (cOre.getInterface<Simple>()->getDim()) {
1002  case 1:
1003  return getOpBoundaryExplicitRhsPipeline<1>();
1004  case 2:
1005  return getOpBoundaryExplicitRhsPipeline<2>();
1006  case 3:
1007  break;
1008  default:
1009  THROW_MESSAGE("Not implemented");
1010  }
1011  return getOpBoundaryExplicitRhsPipeline<3>();
1012 }

◆ getOpBoundaryLhsPipeline()

template<>
boost::ptr_deque<PipelineManager::UserDataOperator>& MoFEM::PipelineManager::getOpBoundaryLhsPipeline ( )
inline

Definition at line 880 of file PipelineManager.hpp.

880  {
881  switch (cOre.getInterface<Simple>()->getDim()) {
882  case 1:
883  return getOpBoundaryLhsPipeline<1>();
884  case 2:
885  return getOpBoundaryLhsPipeline<2>();
886  case 3:
887  break;
888  default:
889  THROW_MESSAGE("Not implemented");
890  }
891  return getOpBoundaryLhsPipeline<3>();
892 }

◆ getOpBoundaryRhsPipeline()

template<>
boost::ptr_deque<PipelineManager::UserDataOperator>& MoFEM::PipelineManager::getOpBoundaryRhsPipeline ( )
inline

Definition at line 904 of file PipelineManager.hpp.

904  {
905  switch (cOre.getInterface<Simple>()->getDim()) {
906  case 1:
907  return getOpBoundaryRhsPipeline<1>();
908  case 2:
909  return getOpBoundaryRhsPipeline<2>();
910  case 3:
911  break;
912  default:
913  THROW_MESSAGE("Not implemented");
914  }
915  return getOpBoundaryRhsPipeline<3>();
916 }

◆ getOpDomainExplicitRhsPipeline()

template<>
boost::ptr_deque<PipelineManager::UserDataOperator>& MoFEM::PipelineManager::getOpDomainExplicitRhsPipeline ( )
inline

Definition at line 976 of file PipelineManager.hpp.

976  {
977  switch (cOre.getInterface<Simple>()->getDim()) {
978  case 1:
979  return getOpDomainExplicitRhsPipeline<1>();
980  case 2:
981  return getOpDomainExplicitRhsPipeline<2>();
982  case 3:
983  break;
984  default:
985  THROW_MESSAGE("Not implemented");
986  }
987  return getOpDomainExplicitRhsPipeline<3>();
988 }

◆ getOpDomainLhsPipeline()

template<>
boost::ptr_deque<PipelineManager::UserDataOperator>& MoFEM::PipelineManager::getOpDomainLhsPipeline ( )
inline

Definition at line 832 of file PipelineManager.hpp.

832  {
833  switch (cOre.getInterface<Simple>()->getDim()) {
834  case 1:
835  return getOpDomainLhsPipeline<1>();
836  case 2:
837  return getOpDomainLhsPipeline<2>();
838  case 3:
839  break;
840  default:
841  THROW_MESSAGE("Not implemented");
842  }
843  return getOpDomainLhsPipeline<3>();
844 }

◆ getOpDomainRhsPipeline()

template<>
boost::ptr_deque<PipelineManager::UserDataOperator>& MoFEM::PipelineManager::getOpDomainRhsPipeline ( )
inline

Definition at line 856 of file PipelineManager.hpp.

856  {
857  switch (cOre.getInterface<Simple>()->getDim()) {
858  case 1:
859  return getOpDomainRhsPipeline<1>();
860  case 2:
861  return getOpDomainRhsPipeline<2>();
862  case 3:
863  break;
864  default:
865  THROW_MESSAGE("Not implemented");
866  }
867  return getOpDomainRhsPipeline<3>();
868 }

◆ getOpMeshsetExplicitRhsPipeline()

boost::ptr_deque< PipelineManager::UserDataOperator > & MoFEM::PipelineManager::getOpMeshsetExplicitRhsPipeline ( )

Get the Op Meshset Explicit Rhs Pipeline object.

Returns
boost::ptr_deque<UserDataOperator>&

Definition at line 47 of file PipelineManager.cpp.

47  {
48  return boost::dynamic_pointer_cast<ForcesAndSourcesCore>(
50  ->getOpPtrVector();
51 }

◆ getOpMeshsetLhsPipeline()

boost::ptr_deque< PipelineManager::UserDataOperator > & MoFEM::PipelineManager::getOpMeshsetLhsPipeline ( )

Get the Op Meshset Lhs Pipeline object.

Returns
boost::ptr_deque<UserDataOperator>&

Definition at line 40 of file PipelineManager.cpp.

40  {
41  return boost::dynamic_pointer_cast<ForcesAndSourcesCore>(
43  ->getOpPtrVector();
44 }

◆ getOpMeshsetRhsPipeline()

boost::ptr_deque< PipelineManager::UserDataOperator > & MoFEM::PipelineManager::getOpMeshsetRhsPipeline ( )

Get the Op Meshset Rhs Pipeline object.

Returns
boost::ptr_deque<UserDataOperator>&
Examples
simple_l2_only.cpp.

Definition at line 33 of file PipelineManager.cpp.

33  {
34  return boost::dynamic_pointer_cast<ForcesAndSourcesCore>(
36  ->getOpPtrVector();
37 }

◆ getOpSkeletonExplicitRhsPipeline()

template<>
boost::ptr_deque<PipelineManager::UserDataOperator>& MoFEM::PipelineManager::getOpSkeletonExplicitRhsPipeline ( )
inline

Definition at line 1024 of file PipelineManager.hpp.

1024  {
1025  switch (cOre.getInterface<Simple>()->getDim()) {
1026  case 1:
1027  return getOpSkeletonExplicitRhsPipeline<1>();
1028  case 2:
1029  return getOpSkeletonExplicitRhsPipeline<2>();
1030  case 3:
1031  break;
1032  default:
1033  THROW_MESSAGE("Not implemented");
1034  }
1035  return getOpSkeletonExplicitRhsPipeline<3>();
1036 }

◆ getOpSkeletonLhsPipeline()

template<>
boost::ptr_deque<PipelineManager::UserDataOperator>& MoFEM::PipelineManager::getOpSkeletonLhsPipeline ( )
inline

Definition at line 928 of file PipelineManager.hpp.

928  {
929  switch (cOre.getInterface<Simple>()->getDim()) {
930  case 1:
931  return getOpSkeletonLhsPipeline<1>();
932  case 2:
933  return getOpSkeletonLhsPipeline<2>();
934  case 3:
935  break;
936  default:
937  THROW_MESSAGE("Not implemented");
938  }
939  return getOpSkeletonLhsPipeline<3>();
940 }

◆ getOpSkeletonRhsPipeline()

template<>
boost::ptr_deque<PipelineManager::UserDataOperator>& MoFEM::PipelineManager::getOpSkeletonRhsPipeline ( )
inline

Definition at line 952 of file PipelineManager.hpp.

952  {
953  switch (cOre.getInterface<Simple>()->getDim()) {
954  case 1:
955  return getOpSkeletonRhsPipeline<1>();
956  case 2:
957  return getOpSkeletonRhsPipeline<2>();
958  case 3:
959  break;
960  default:
961  THROW_MESSAGE("Not implemented");
962  }
963  return getOpSkeletonRhsPipeline<3>();
964 }

◆ getSkeletonExplicitRhsFE()

boost::shared_ptr< FEMethod > & MoFEM::PipelineManager::getSkeletonExplicitRhsFE ( )
inline

Definition at line 483 of file PipelineManager.hpp.

483  {
484  return feSkeletonExplicitRhs;
485 }

◆ getSkeletonLhsFE()

boost::shared_ptr< FEMethod > & MoFEM::PipelineManager::getSkeletonLhsFE ( )
inline

Definition at line 467 of file PipelineManager.hpp.

467  {
468  return feSkeletonLhs;
469 }

◆ getSkeletonRhsFE()

boost::shared_ptr< FEMethod > & MoFEM::PipelineManager::getSkeletonRhsFE ( )
inline

Definition at line 471 of file PipelineManager.hpp.

471  {
472  return feSkeletonRhs;
473 }

◆ query_interface()

MoFEMErrorCode MoFEM::PipelineManager::query_interface ( boost::typeindex::type_index  type_index,
UnknownInterface **  iface 
) const
virtual

Implements MoFEM::UnknownInterface.

Definition at line 54 of file PipelineManager.cpp.

55  {
56  *iface = const_cast<PipelineManager *>(this);
57  return 0;
58 }

◆ setBoundaryExplicitRhsIntegrationRule() [1/2]

template<>
MoFEMErrorCode MoFEM::PipelineManager::setBoundaryExplicitRhsIntegrationRule ( PipelineManager::RuleHookFun  rule)
inline

Definition at line 778 of file PipelineManager.hpp.

779  {
781  switch (cOre.getInterface<Simple>()->getDim()) {
782  case 1:
783  return setBoundaryExplicitRhsIntegrationRule<1>(rule);
784  case 2:
785  return setBoundaryExplicitRhsIntegrationRule<2>(rule);
786  case 3:
787  return setBoundaryExplicitRhsIntegrationRule<3>(rule);
788  default:
789  THROW_MESSAGE("Not implemented");
790  }
792 }

◆ setBoundaryExplicitRhsIntegrationRule() [2/2]

template<int DIM>
MoFEMErrorCode MoFEM::PipelineManager::setBoundaryExplicitRhsIntegrationRule ( PipelineManager::RuleHookFun  rule)
inline

Definition at line 767 of file PipelineManager.hpp.

768  {
770  boost::dynamic_pointer_cast<ForcesAndSourcesCore>(
771  createBoundaryFEPipeline<DIM>(feBoundaryExplicitRhs))
772  ->getRuleHook = rule;
774 }

◆ setBoundaryLhsIntegrationRule() [1/2]

template<>
MoFEMErrorCode MoFEM::PipelineManager::setBoundaryLhsIntegrationRule ( PipelineManager::RuleHookFun  rule)
inline

Definition at line 642 of file PipelineManager.hpp.

643  {
645  switch (cOre.getInterface<Simple>()->getDim()) {
646  case 1:
647  return setBoundaryLhsIntegrationRule<1>(rule);
648  case 2:
649  return setBoundaryLhsIntegrationRule<2>(rule);
650  case 3:
651  return setBoundaryLhsIntegrationRule<3>(rule);
652  default:
653  THROW_MESSAGE("Not implemented");
654  }
656 }

◆ setBoundaryLhsIntegrationRule() [2/2]

template<int DIM>
MoFEMErrorCode MoFEM::PipelineManager::setBoundaryLhsIntegrationRule ( PipelineManager::RuleHookFun  rule)
inline
Examples
helmholtz.cpp.

Definition at line 632 of file PipelineManager.hpp.

633  {
635  boost::dynamic_pointer_cast<ForcesAndSourcesCore>(
636  createBoundaryFEPipeline<DIM>(feBoundaryLhs))
637  ->getRuleHook = rule;
639 }

◆ setBoundaryRhsIntegrationRule() [1/2]

template<>
MoFEMErrorCode MoFEM::PipelineManager::setBoundaryRhsIntegrationRule ( PipelineManager::RuleHookFun  rule)
inline

Definition at line 669 of file PipelineManager.hpp.

670  {
672  switch (cOre.getInterface<Simple>()->getDim()) {
673  case 1:
674  return setBoundaryRhsIntegrationRule<1>(rule);
675  case 2:
676  return setBoundaryRhsIntegrationRule<2>(rule);
677  case 3:
678  return setBoundaryRhsIntegrationRule<3>(rule);
679  default:
680  THROW_MESSAGE("Not implemented");
681  }
683 }

◆ setBoundaryRhsIntegrationRule() [2/2]

template<int DIM>
MoFEMErrorCode MoFEM::PipelineManager::setBoundaryRhsIntegrationRule ( PipelineManager::RuleHookFun  rule)
inline
Examples
child_and_parent.cpp, hanging_node_approx.cpp, and helmholtz.cpp.

Definition at line 659 of file PipelineManager.hpp.

660  {
662  boost::dynamic_pointer_cast<ForcesAndSourcesCore>(
663  createBoundaryFEPipeline<DIM>(feBoundaryRhs))
664  ->getRuleHook = rule;
666 }

◆ setDomainExplicitRhsIntegrationRule() [1/2]

template<>
MoFEMErrorCode MoFEM::PipelineManager::setDomainExplicitRhsIntegrationRule ( PipelineManager::RuleHookFun  rule)
inline

Definition at line 750 of file PipelineManager.hpp.

751  {
753  switch (cOre.getInterface<Simple>()->getDim()) {
754  case 1:
755  return setDomainExplicitRhsIntegrationRule<1>(rule);
756  case 2:
757  return setDomainExplicitRhsIntegrationRule<2>(rule);
758  case 3:
759  return setDomainExplicitRhsIntegrationRule<3>(rule);
760  default:
761  THROW_MESSAGE("Not implemented");
762  }
764 }

◆ setDomainExplicitRhsIntegrationRule() [2/2]

template<int DIM>
MoFEMErrorCode MoFEM::PipelineManager::setDomainExplicitRhsIntegrationRule ( PipelineManager::RuleHookFun  rule)
inline

Definition at line 740 of file PipelineManager.hpp.

741  {
743  boost::dynamic_pointer_cast<ForcesAndSourcesCore>(
744  createDomainFEPipeline<DIM>(feDomainExplicitRhs))
745  ->getRuleHook = rule;
747 }

◆ setDomainLhsIntegrationRule() [1/2]

template<>
MoFEMErrorCode MoFEM::PipelineManager::setDomainLhsIntegrationRule ( PipelineManager::RuleHookFun  rule)
inline

Definition at line 588 of file PipelineManager.hpp.

589  {
591  switch (cOre.getInterface<Simple>()->getDim()) {
592  case 1:
593  return setDomainLhsIntegrationRule<1>(rule);
594  case 2:
595  return setDomainLhsIntegrationRule<2>(rule);
596  case 3:
597  return setDomainLhsIntegrationRule<3>(rule);
598  default:
599  THROW_MESSAGE("Not implemented");
600  }
602 }

◆ setDomainLhsIntegrationRule() [2/2]

template<int DIM>
MoFEMErrorCode MoFEM::PipelineManager::setDomainLhsIntegrationRule ( PipelineManager::RuleHookFun  rule)
inline
Examples
approx_sphere.cpp, child_and_parent.cpp, dg_projection.cpp, hanging_node_approx.cpp, heat_method.cpp, helmholtz.cpp, higher_derivatives.cpp, mixed_poisson.cpp, and schur_test_diag_mat.cpp.

Definition at line 578 of file PipelineManager.hpp.

579  {
581  boost::dynamic_pointer_cast<ForcesAndSourcesCore>(
582  createDomainFEPipeline<DIM>(feDomainLhs))
583  ->getRuleHook = rule;
585 }

◆ setDomainRhsIntegrationRule() [1/2]

template<>
MoFEMErrorCode MoFEM::PipelineManager::setDomainRhsIntegrationRule ( PipelineManager::RuleHookFun  rule)
inline

Definition at line 615 of file PipelineManager.hpp.

616  {
618  switch (cOre.getInterface<Simple>()->getDim()) {
619  case 1:
620  return setDomainRhsIntegrationRule<1>(rule);
621  case 2:
622  return setDomainRhsIntegrationRule<2>(rule);
623  case 3:
624  return setDomainRhsIntegrationRule<3>(rule);
625  default:
626  THROW_MESSAGE("Not implemented");
627  }
629 }

◆ setDomainRhsIntegrationRule() [2/2]

template<int DIM>
MoFEMErrorCode MoFEM::PipelineManager::setDomainRhsIntegrationRule ( PipelineManager::RuleHookFun  rule)
inline
Examples
approx_sphere.cpp, child_and_parent.cpp, dg_projection.cpp, hanging_node_approx.cpp, heat_method.cpp, higher_derivatives.cpp, and mixed_poisson.cpp.

Definition at line 605 of file PipelineManager.hpp.

606  {
608  boost::dynamic_pointer_cast<ForcesAndSourcesCore>(
609  createDomainFEPipeline<DIM>(feDomainRhs))
610  ->getRuleHook = rule;
612 }

◆ setSkeletonExplicitRhsIntegrationRule() [1/2]

template<>
MoFEMErrorCode MoFEM::PipelineManager::setSkeletonExplicitRhsIntegrationRule ( PipelineManager::RuleHookFun  rule)
inline

Definition at line 806 of file PipelineManager.hpp.

807  {
809  switch (cOre.getInterface<Simple>()->getDim()) {
810  case 1:
811  return setSkeletonExplicitRhsIntegrationRule<1>(rule);
812  case 2:
813  return setSkeletonExplicitRhsIntegrationRule<2>(rule);
814  case 3:
815  return setSkeletonExplicitRhsIntegrationRule<3>(rule);
816  default:
817  THROW_MESSAGE("Not implemented");
818  }
820 }

◆ setSkeletonExplicitRhsIntegrationRule() [2/2]

template<int DIM>
MoFEMErrorCode MoFEM::PipelineManager::setSkeletonExplicitRhsIntegrationRule ( PipelineManager::RuleHookFun  rule)
inline

Definition at line 795 of file PipelineManager.hpp.

796  {
798  boost::dynamic_pointer_cast<ForcesAndSourcesCore>(
799  createBoundaryFEPipeline<DIM>(feSkeletonExplicitRhs))
800  ->getRuleHook = rule;
802 }

◆ setSkeletonLhsIntegrationRule() [1/2]

template<>
MoFEMErrorCode MoFEM::PipelineManager::setSkeletonLhsIntegrationRule ( PipelineManager::RuleHookFun  rule)
inline

Definition at line 696 of file PipelineManager.hpp.

697  {
699  switch (cOre.getInterface<Simple>()->getDim()) {
700  case 1:
701  return setSkeletonLhsIntegrationRule<1>(rule);
702  case 2:
703  return setSkeletonLhsIntegrationRule<2>(rule);
704  case 3:
705  return setSkeletonLhsIntegrationRule<3>(rule);
706  default:
707  THROW_MESSAGE("Not implemented");
708  }
710 }

◆ setSkeletonLhsIntegrationRule() [2/2]

template<int DIM>
MoFEMErrorCode MoFEM::PipelineManager::setSkeletonLhsIntegrationRule ( PipelineManager::RuleHookFun  rule)
inline

Definition at line 686 of file PipelineManager.hpp.

687  {
689  boost::dynamic_pointer_cast<ForcesAndSourcesCore>(
690  createBoundaryFEPipeline<DIM>(feSkeletonLhs))
691  ->getRuleHook = rule;
693 }

◆ setSkeletonRhsIntegrationRule() [1/2]

template<>
MoFEMErrorCode MoFEM::PipelineManager::setSkeletonRhsIntegrationRule ( PipelineManager::RuleHookFun  rule)
inline

Definition at line 723 of file PipelineManager.hpp.

724  {
726  switch (cOre.getInterface<Simple>()->getDim()) {
727  case 1:
728  return setSkeletonRhsIntegrationRule<1>(rule);
729  case 2:
730  return setSkeletonRhsIntegrationRule<2>(rule);
731  case 3:
732  return setSkeletonRhsIntegrationRule<3>(rule);
733  default:
734  THROW_MESSAGE("Not implemented");
735  }
737 }

◆ setSkeletonRhsIntegrationRule() [2/2]

template<int DIM>
MoFEMErrorCode MoFEM::PipelineManager::setSkeletonRhsIntegrationRule ( PipelineManager::RuleHookFun  rule)
inline

Definition at line 713 of file PipelineManager.hpp.

714  {
716  boost::dynamic_pointer_cast<ForcesAndSourcesCore>(
717  createBoundaryFEPipeline<DIM>(feSkeletonRhs))
718  ->getRuleHook = rule;
720 }

Member Data Documentation

◆ cOre

MoFEM::Core& MoFEM::PipelineManager::cOre
private

Definition at line 325 of file PipelineManager.hpp.

◆ feBoundaryExplicitRhs

boost::shared_ptr<FEMethod> MoFEM::PipelineManager::feBoundaryExplicitRhs
private

Element to assemble explict Rhs for IMEX solver

Definition at line 343 of file PipelineManager.hpp.

◆ feBoundaryLhs

boost::shared_ptr<FEMethod> MoFEM::PipelineManager::feBoundaryLhs
private

Element to assemble LHS side by integrating boundary.

Definition at line 334 of file PipelineManager.hpp.

◆ feBoundaryRhs

boost::shared_ptr<FEMethod> MoFEM::PipelineManager::feBoundaryRhs
private

Element to assemble RHS side by integrating boundary.

Definition at line 332 of file PipelineManager.hpp.

◆ feDomainExplicitRhs

boost::shared_ptr<FEMethod> MoFEM::PipelineManager::feDomainExplicitRhs
private

Element to assemble explict Rhs for IMEX solver.

Definition at line 341 of file PipelineManager.hpp.

◆ feDomainLhs

boost::shared_ptr<FEMethod> MoFEM::PipelineManager::feDomainLhs
private

Element to assemble LHS side by integrating domain.

Definition at line 330 of file PipelineManager.hpp.

◆ feDomainRhs

boost::shared_ptr<FEMethod> MoFEM::PipelineManager::feDomainRhs
private

Element to assemble RHS side by integrating domain.

Definition at line 328 of file PipelineManager.hpp.

◆ feMeshsetExplicitRhs

boost::shared_ptr<FEMethod> MoFEM::PipelineManager::feMeshsetExplicitRhs
private

Element to assemble explicit RHS side by integrating meshset

Definition at line 353 of file PipelineManager.hpp.

◆ feMeshsetLhs

boost::shared_ptr<FEMethod> MoFEM::PipelineManager::feMeshsetLhs
private

Element to assemble LHS side by integrating meshset

Definition at line 351 of file PipelineManager.hpp.

◆ feMeshsetRhs

boost::shared_ptr<FEMethod> MoFEM::PipelineManager::feMeshsetRhs
private

Element to assemble RHS side by integrating meshset

Definition at line 349 of file PipelineManager.hpp.

◆ feSkeletonExplicitRhs

boost::shared_ptr<FEMethod> MoFEM::PipelineManager::feSkeletonExplicitRhs
private

Element to assemble explict Rhs for IMEX solver

Definition at line 346 of file PipelineManager.hpp.

◆ feSkeletonLhs

boost::shared_ptr<FEMethod> MoFEM::PipelineManager::feSkeletonLhs
private

Element to assemble LHS side by integrating skeleton.

Definition at line 338 of file PipelineManager.hpp.

◆ feSkeletonRhs

boost::shared_ptr<FEMethod> MoFEM::PipelineManager::feSkeletonRhs
private

Element to assemble RHS side by integrating skeleton.

Definition at line 336 of file PipelineManager.hpp.


The documentation for this struct was generated from the following files:
MoFEM::UnknownInterface::getInterface
MoFEMErrorCode getInterface(IFACE *&iface) const
Get interface reference to pointer of interface.
Definition: UnknownInterface.hpp:93
MoFEM::PipelineManager::EX
@ EX
Definition: PipelineManager.hpp:263
CHK_THROW_MESSAGE
#define CHK_THROW_MESSAGE(err, msg)
Check and throw MoFEM exception.
Definition: definitions.h:609
MoFEM::PipelineManager::feBoundaryRhs
boost::shared_ptr< FEMethod > feBoundaryRhs
Element to assemble RHS side by integrating boundary.
Definition: PipelineManager.hpp:332
MoFEM::PipelineManager::feDomainLhs
boost::shared_ptr< FEMethod > feDomainLhs
Element to assemble LHS side by integrating domain.
Definition: PipelineManager.hpp:330
MoFEM::PipelineManager::createTSIM
SmartPetscObj< TS > createTSIM(SmartPetscObj< DM > dm=nullptr)
Create TS (time) implicit solver.
Definition: PipelineManager.cpp:309
THROW_MESSAGE
#define THROW_MESSAGE(msg)
Throw MoFEM exception.
Definition: definitions.h:574
MoFEM::PipelineManager::feBoundaryLhs
boost::shared_ptr< FEMethod > feBoundaryLhs
Element to assemble LHS side by integrating boundary.
Definition: PipelineManager.hpp:334
MoFEM::PipelineManager::feMeshsetLhs
boost::shared_ptr< FEMethod > feMeshsetLhs
Definition: PipelineManager.hpp:351
MoFEM::PipelineManager::feDomainRhs
boost::shared_ptr< FEMethod > feDomainRhs
Element to assemble RHS side by integrating domain.
Definition: PipelineManager.hpp:328
MoFEM::PipelineManager::cOre
MoFEM::Core & cOre
Definition: PipelineManager.hpp:325
MoFEM::PipelineManager::IM
@ IM
Definition: PipelineManager.hpp:263
convert.type
type
Definition: convert.py:64
MoFEM::PipelineManager::feBoundaryExplicitRhs
boost::shared_ptr< FEMethod > feBoundaryExplicitRhs
Definition: PipelineManager.hpp:343
MoFEM::PipelineManager::PipelineManager
PipelineManager(const MoFEM::Core &core)
Definition: PipelineManager.cpp:60
MoFEM::PipelineManager::feMeshsetExplicitRhs
boost::shared_ptr< FEMethod > feMeshsetExplicitRhs
Definition: PipelineManager.hpp:353
MoFEM::PipelineManager::feSkeletonLhs
boost::shared_ptr< FEMethod > feSkeletonLhs
Element to assemble LHS side by integrating skeleton.
Definition: PipelineManager.hpp:338
MoFEM::PipelineManager::createTSEX
SmartPetscObj< TS > createTSEX(SmartPetscObj< DM > dm=nullptr)
Create TS (time) explit solver.
Definition: PipelineManager.cpp:254
MoFEM::PipelineManager::feMeshsetRhs
boost::shared_ptr< FEMethod > feMeshsetRhs
Definition: PipelineManager.hpp:349
MoFEM::Core
CoreTmp< 0 > Core
Definition: Core.hpp:1148
MoFEM::PipelineManager::createTSIMEX
SmartPetscObj< TS > createTSIMEX(SmartPetscObj< DM > dm=nullptr)
Create TS (time) implicit-explicit solver.
Definition: PipelineManager.cpp:443
MoFEM::PipelineManager::createMeshsetFEPipeline
boost::shared_ptr< FEMethod > & createMeshsetFEPipeline(boost::shared_ptr< FEMethod > &fe)
Definition: PipelineManager.cpp:26
MoFEM::PipelineManager::feDomainExplicitRhs
boost::shared_ptr< FEMethod > feDomainExplicitRhs
Element to assemble explict Rhs for IMEX solver.
Definition: PipelineManager.hpp:341
MoFEM::PipelineManager::IM2
@ IM2
Definition: PipelineManager.hpp:263
MoFEM::PipelineManager::feSkeletonRhs
boost::shared_ptr< FEMethod > feSkeletonRhs
Element to assemble RHS side by integrating skeleton.
Definition: PipelineManager.hpp:336
MoFEM::PipelineManager::createTSIM2
SmartPetscObj< TS > createTSIM2(SmartPetscObj< DM > dm=nullptr)
Create TS (time) solver for second order equation in time.
Definition: PipelineManager.cpp:376
MoFEMFunctionReturn
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:429
MOFEM_NOT_IMPLEMENTED
@ MOFEM_NOT_IMPLEMENTED
Definition: definitions.h:32
MoFEMFunctionBegin
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:359
MoFEM::PipelineManager::IMEX
@ IMEX
Definition: PipelineManager.hpp:263
MoFEM::PipelineManager::feSkeletonExplicitRhs
boost::shared_ptr< FEMethod > feSkeletonExplicitRhs
Definition: PipelineManager.hpp:346