94 {
96
98
99 {
101 pipeline_mng->getOpDomainLhsPipeline().push_back(
103 }
104
105 {
106
107 constexpr int space_dim = 3;
108
109 auto set_values_to_bc_dofs = [&](auto &fe) {
110 auto get_bc_hook = [&]() {
112 return hook;
113 };
114 fe->preProcessHook = get_bc_hook();
115 };
116
117 auto calculate_residual_from_set_values_on_bc = [&](auto &pipeline) {
123
124 auto grad_u_vals_ptr = boost::make_shared<MatrixDouble>();
125 pipeline_mng->getOpDomainRhsPipeline().push_back(
127 grad_u_vals_ptr));
128 pipeline_mng->getOpDomainRhsPipeline().push_back(
130 [](double, double, double) constexpr { return -1; }));
131 };
132
134 pipeline_mng->getOpDomainRhsPipeline(), {H1});
135 set_values_to_bc_dofs(pipeline_mng->getDomainRhsFE());
136 calculate_residual_from_set_values_on_bc(
137 pipeline_mng->getOpDomainRhsPipeline());
138 pipeline_mng->getOpDomainRhsPipeline().push_back(
140 }
141
143}
ElementsAndOps< SPACE_DIM >::DomainEle DomainEle
#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.
Add operators pushing bases from local to physical configuration.
Class (Function) to enforce essential constrains.
Get field gradients at integration pts for scalar filed rank 0, i.e. vector field.
PipelineManager interface.
MoFEMErrorCode getInterface(IFACE *&iface) const
Get interface refernce to pointer of interface.