v0.14.0
Public Types | Public Member Functions | Static Public Member Functions | List of all members
AddFluxToRhsPipelineImpl< OpFluxRhsImpl< BoundaryBCs, BASE_DIM, FIELD_DIM, A, I, OpBase >, A, I, OpBase > Struct Template Reference

#include <tutorials/vec-0/src/NaturalBoundaryBC.hpp>

Public Types

using T = typename NaturalBC< OpBase >::template Assembly< A >::template LinearForm< I >
 
using OpForce = typename T::template OpFlux< NaturalForceMeshsets, 1, SPACE_DIM >
 
using OpSpringRhs = typename T::template OpFlux< ElasticExample::SpringBcType< BLOCKSET >, 1, SPACE_DIM >
 
using OpFluidLevelRhs = typename T::template OpFlux< ElasticExample::FluidLevelType< BLOCKSET >, 1, SPACE_DIM >
 

Public Member Functions

 AddFluxToRhsPipelineImpl ()=delete
 

Static Public Member Functions

static MoFEMErrorCode add (boost::ptr_deque< ForcesAndSourcesCore::UserDataOperator > &pipeline, MoFEM::Interface &m_field, std::string field_name, double scale, Sev sev)
 

Detailed Description

template<int BASE_DIM, int FIELD_DIM, AssemblyType A, IntegrationType I, typename OpBase>
struct AddFluxToRhsPipelineImpl< OpFluxRhsImpl< BoundaryBCs, BASE_DIM, FIELD_DIM, A, I, OpBase >, A, I, OpBase >

Definition at line 13 of file NaturalBoundaryBC.hpp.

Member Typedef Documentation

◆ OpFluidLevelRhs

template<int BASE_DIM, int FIELD_DIM, AssemblyType A, IntegrationType I, typename OpBase >
using AddFluxToRhsPipelineImpl< OpFluxRhsImpl< BoundaryBCs, BASE_DIM, FIELD_DIM, A, I, OpBase >, A, I, OpBase >::OpFluidLevelRhs = typename T::template OpFlux<ElasticExample::FluidLevelType<BLOCKSET>, 1, SPACE_DIM>

Definition at line 31 of file NaturalBoundaryBC.hpp.

◆ OpForce

template<int BASE_DIM, int FIELD_DIM, AssemblyType A, IntegrationType I, typename OpBase >
using AddFluxToRhsPipelineImpl< OpFluxRhsImpl< BoundaryBCs, BASE_DIM, FIELD_DIM, A, I, OpBase >, A, I, OpBase >::OpForce = typename T::template OpFlux<NaturalForceMeshsets, 1, SPACE_DIM>

Definition at line 25 of file NaturalBoundaryBC.hpp.

◆ OpSpringRhs

template<int BASE_DIM, int FIELD_DIM, AssemblyType A, IntegrationType I, typename OpBase >
using AddFluxToRhsPipelineImpl< OpFluxRhsImpl< BoundaryBCs, BASE_DIM, FIELD_DIM, A, I, OpBase >, A, I, OpBase >::OpSpringRhs = typename T::template OpFlux<ElasticExample::SpringBcType<BLOCKSET>, 1, SPACE_DIM>

Definition at line 28 of file NaturalBoundaryBC.hpp.

◆ T

template<int BASE_DIM, int FIELD_DIM, AssemblyType A, IntegrationType I, typename OpBase >
using AddFluxToRhsPipelineImpl< OpFluxRhsImpl< BoundaryBCs, BASE_DIM, FIELD_DIM, A, I, OpBase >, A, I, OpBase >::T = typename NaturalBC<OpBase>::template Assembly<A>::template LinearForm<I>

Definition at line 22 of file NaturalBoundaryBC.hpp.

Constructor & Destructor Documentation

◆ AddFluxToRhsPipelineImpl()

template<int BASE_DIM, int FIELD_DIM, AssemblyType A, IntegrationType I, typename OpBase >
AddFluxToRhsPipelineImpl< OpFluxRhsImpl< BoundaryBCs, BASE_DIM, FIELD_DIM, A, I, OpBase >, A, I, OpBase >::AddFluxToRhsPipelineImpl ( )
delete

Member Function Documentation

◆ add()

template<int BASE_DIM, int FIELD_DIM, AssemblyType A, IntegrationType I, typename OpBase >
static MoFEMErrorCode AddFluxToRhsPipelineImpl< OpFluxRhsImpl< BoundaryBCs, BASE_DIM, FIELD_DIM, A, I, OpBase >, A, I, OpBase >::add ( boost::ptr_deque< ForcesAndSourcesCore::UserDataOperator > &  pipeline,
MoFEM::Interface m_field,
std::string  field_name,
double  scale,
Sev  sev 
)
inlinestatic

Definition at line 33 of file NaturalBoundaryBC.hpp.

38  {
40  CHKERR T::template AddFluxToPipeline<OpForce>::add(
41  pipeline, m_field, field_name, {}, "FORCE", sev);
42  CHKERR T::template AddFluxToPipeline<OpFluidLevelRhs>::add(
43  pipeline, m_field, field_name, {}, scale, "FLUID_PRESSURE", sev);
44  auto u_ptr = boost::make_shared<MatrixDouble>();
45  pipeline.push_back(
46  new OpCalculateVectorFieldValues<SPACE_DIM>(field_name, u_ptr));
47  CHKERR T::template AddFluxToPipeline<OpSpringRhs>::add(
48  pipeline, m_field, field_name, u_ptr, scale, "SPRING", sev);
49 
51  }

The documentation for this struct was generated from the following file:
scale
double scale
Definition: plastic.cpp:119
CHKERR
#define CHKERR
Inline error check.
Definition: definitions.h:548
field_name
constexpr auto field_name
Definition: poisson_2d_homogeneous.cpp:13
MoFEMFunctionReturn
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:429
MoFEMFunctionBegin
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:359