v0.15.5
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | List of all members
MoFEM::AddFluxToRhsPipelineImpl< OpFluxRhsImpl< NaturalForceMeshsets, BASE_DIM, FIELD_DIM, A, I, OpBase >, A, I, OpBase > Struct Template Reference

#include "src/boundary_conditions/NaturalForceMeshsets.hpp"

Public Member Functions

 AddFluxToRhsPipelineImpl ()=delete
 

Static Public Member Functions

static MoFEMErrorCode add (boost::ptr_deque< ForcesAndSourcesCore::UserDataOperator > &pipeline, MoFEM::Interface &m_field, const std::string field_name, std::vector< boost::shared_ptr< ScalingMethod > > smv, const std::string force_block_name, const std::string pressure_block_name, Sev sev)
 
static MoFEMErrorCode add (boost::ptr_deque< ForcesAndSourcesCore::UserDataOperator > &pipeline, MoFEM::Interface &m_field, const std::string field_name, std::vector< boost::shared_ptr< ScalingMethod > > smv, std::vector< boost::shared_ptr< TimeScaleVector< FIELD_DIM > > > vsmv, const std::string force_block_name, const std::string pressure_block_name, Sev sev)
 

Detailed Description

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

Definition at line 27 of file NaturalForceMeshsets.hpp.

Constructor & Destructor Documentation

◆ AddFluxToRhsPipelineImpl()

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

Member Function Documentation

◆ add() [1/2]

template<int BASE_DIM, int FIELD_DIM, AssemblyType A, IntegrationType I, typename OpBase >
static MoFEMErrorCode MoFEM::AddFluxToRhsPipelineImpl< OpFluxRhsImpl< NaturalForceMeshsets, BASE_DIM, FIELD_DIM, A, I, OpBase >, A, I, OpBase >::add ( boost::ptr_deque< ForcesAndSourcesCore::UserDataOperator > &  pipeline,
MoFEM::Interface m_field,
const std::string  field_name,
std::vector< boost::shared_ptr< ScalingMethod > >  smv,
const std::string  force_block_name,
const std::string  pressure_block_name,
Sev  sev 
)
inlinestatic

Definition at line 36 of file NaturalForceMeshsets.hpp.

44 {
46
47 using OpFluxForceset =
48 typename NaturalBC<OpBase>::template Assembly<A>::template LinearForm<
50 FIELD_DIM>;
51 using OpFluxPressureset =
52 typename NaturalBC<OpBase>::template Assembly<A>::template LinearForm<
54 FIELD_DIM>;
55 using OpFluxBlockset =
56 typename NaturalBC<OpBase>::template Assembly<A>::template LinearForm<
58 FIELD_DIM>;
59
60 using OpFluxPressureBlockset =
61 typename NaturalBC<OpBase>::template Assembly<A>::template LinearForm<
63 FIELD_DIM>;
64
65 CHKERR
66 NaturalBC<OpBase>::template Assembly<A>::template LinearForm<I>::
67 template AddFluxToPipeline<OpFluxForceset>::add(
68 pipeline, m_field, field_name, smv, "",
69 sev); // note empty string, since forceset name is not needed
70 CHKERR
71 NaturalBC<OpBase>::template Assembly<A>::template LinearForm<I>::
72 template AddFluxToPipeline<OpFluxPressureset>::add(
73 pipeline, m_field, field_name, smv, "",
74 sev); // see above comment for FORCESET
75 CHKERR
76 NaturalBC<OpBase>::template Assembly<A>::template LinearForm<
77 I>::template AddFluxToPipeline<OpFluxBlockset>::add(pipeline, m_field,
78 field_name, smv,
79 force_block_name,
80 sev);
81
82 CHKERR
83 NaturalBC<OpBase>::template Assembly<A>::template LinearForm<I>::
84 template AddFluxToPipeline<OpFluxPressureBlockset>::add(
85 pipeline, m_field, field_name, smv, pressure_block_name, sev);
86
88 }
constexpr int FIELD_DIM
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
#define CHKERR
Inline error check.
constexpr int BASE_DIM
constexpr IntegrationType I
constexpr auto field_name

◆ add() [2/2]

template<int BASE_DIM, int FIELD_DIM, AssemblyType A, IntegrationType I, typename OpBase >
static MoFEMErrorCode MoFEM::AddFluxToRhsPipelineImpl< OpFluxRhsImpl< NaturalForceMeshsets, BASE_DIM, FIELD_DIM, A, I, OpBase >, A, I, OpBase >::add ( boost::ptr_deque< ForcesAndSourcesCore::UserDataOperator > &  pipeline,
MoFEM::Interface m_field,
const std::string  field_name,
std::vector< boost::shared_ptr< ScalingMethod > >  smv,
std::vector< boost::shared_ptr< TimeScaleVector< FIELD_DIM > > >  vsmv,
const std::string  force_block_name,
const std::string  pressure_block_name,
Sev  sev 
)
inlinestatic

Definition at line 90 of file NaturalForceMeshsets.hpp.

98 {
100
101 CHKERR add(pipeline, m_field, field_name, smv, force_block_name,
102 pressure_block_name, sev);
103
104 using OpFluxBlocksetVectorScaling =
105 typename NaturalBC<OpBase>::template Assembly<A>::template LinearForm<
108
109 CHKERR
110 NaturalBC<OpBase>::template Assembly<A>::template LinearForm<I>::
111 template AddFluxToPipeline<OpFluxBlocksetVectorScaling>::add(
112 pipeline, m_field, field_name, vsmv, force_block_name, sev);
113
115 }
static MoFEMErrorCode add(boost::ptr_deque< ForcesAndSourcesCore::UserDataOperator > &pipeline, MoFEM::Interface &m_field, const std::string field_name, std::vector< boost::shared_ptr< ScalingMethod > > smv, const std::string force_block_name, const std::string pressure_block_name, Sev sev)

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