v0.16.0
Loading...
Searching...
No Matches
CohesiveNaturalBoundaryBC.hpp
Go to the documentation of this file.
1/**
2 * @file CohesiveNaturalBoundaryBC.hpp
3 * @brief Natural force and pressure boundary conditions
4 */
5
6#ifndef COHESIVE_INTERFACE_NATURAL_BOUNDARY_BC_HPP
7#define COHESIVE_INTERFACE_NATURAL_BOUNDARY_BC_HPP
8
10 typename OpBase>
11struct AddFluxToRhsPipelineImpl<
12
13 OpFluxRhsImpl<BoundaryBCs, BASE_DIM, FIELD_DIM, A, I, OpBase>, A, I, OpBase
14
15 > {
16
18
19 using T =
20 typename NaturalBC<OpBase>::template Assembly<A>::template LinearForm<I>;
21 using OpForce =
23
24 static MoFEMErrorCode add(
25
26 boost::ptr_deque<ForcesAndSourcesCore::UserDataOperator> &pipeline,
27 MoFEM::Interface &m_field, const std::string field_name,
28 std::vector<boost::shared_ptr<ScalingMethod>> scaling_methods, Sev sev
29
30 ) {
32 CHKERR T::template AddFluxToPipeline<OpForce>::add(
33 pipeline, m_field, field_name, scaling_methods, "FORCE", "PRESSURE",
34 sev);
36 }
37
38 static MoFEMErrorCode add(
39 boost::ptr_deque<ForcesAndSourcesCore::UserDataOperator> &pipeline,
40 MoFEM::Interface &m_field, const std::string field_name, Sev sev) {
41 return add(pipeline, m_field, field_name, {}, sev);
42 }
43};
44
45#endif // COHESIVE_INTERFACE_NATURAL_BOUNDARY_BC_HPP
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
IntegrationType
Form integrator integration types.
AssemblyType
[Storage and set boundary conditions]
constexpr IntegrationType I
constexpr AssemblyType A
constexpr auto field_name
static MoFEMErrorCode add(boost::ptr_deque< ForcesAndSourcesCore::UserDataOperator > &pipeline, MoFEM::Interface &m_field, const std::string field_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 > > scaling_methods, Sev sev)
Boundary conditions marker.
Deprecated interface functions.