11#ifndef _NATURAL_FORCE_MESHSETS_HPP_
12#define _NATURAL_FORCE_MESHSETS_HPP_
22template <
int FIELD_DIM, AssemblyType A, IntegrationType I,
typename OpBase>
38 boost::ptr_deque<ForcesAndSourcesCore::UserDataOperator> &pipeline,
40 std::vector<boost::shared_ptr<ScalingMethod>> smv,
41 const std::string force_block_name,
const std::string pressure_block_name,
47 using OpFluxForceset =
51 using OpFluxPressureset =
55 using OpFluxBlockset =
60 using OpFluxPressureBlockset =
67 template AddFluxToPipeline<OpFluxForceset>::add(
72 template AddFluxToPipeline<OpFluxPressureset>::add(
77 I>::template AddFluxToPipeline<OpFluxBlockset>::add(pipeline, m_field,
84 template AddFluxToPipeline<OpFluxPressureBlockset>::add(
85 pipeline, m_field,
field_name, smv, pressure_block_name, sev);
92 boost::ptr_deque<ForcesAndSourcesCore::UserDataOperator> &pipeline,
94 std::vector<boost::shared_ptr<ScalingMethod>> smv,
96 const std::string force_block_name,
const std::string pressure_block_name,
Sev sev
102 pressure_block_name, sev);
104 using OpFluxBlocksetVectorScaling =
111 template AddFluxToPipeline<OpFluxBlocksetVectorScaling>::add(
112 pipeline, m_field,
field_name, vsmv, force_block_name, sev);
#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.
SeverityLevel
Severity levels.
PetscErrorCode MoFEMErrorCode
MoFEM/PETSc error code.
implementation of Data Operators for Forces and Sources
constexpr IntegrationType I
constexpr auto field_name
AddFluxToRhsPipelineImpl()=delete
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)
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)
Deprecated interface functions.
Natural boundary conditions.
Type generating specialisation for force meshsets.
Force scale operator for reading four columns (time and vector)