13 #include "FEProblem.h"
15 #include "Conversion.h"
29 params.addRequiredParam<VariableName>(
"porepressure",
"The pore pressure variable");
37 paramError(
"use_ad",
"AD not setup for use with PoroMechanicsAction");
45 if (_current_task ==
"add_kernel")
48 std::vector<VariableName> displacements = getParam<std::vector<VariableName>>(
"displacements");
49 unsigned int dim = displacements.size();
53 std::string type(
"PoroMechanicsCoupling");
54 InputParameters params = _factory.getValidParams(type);
55 VariableName pp_var(getParam<VariableName>(
"porepressure"));
56 params.addCoupledVar(
"porepressure",
"");
57 params.set<std::vector<VariableName>>(
"porepressure") = {pp_var};
60 for (
unsigned int i = 0; i < dim; ++i)
62 std::string kernel_name =
"PoroMechanics" + Moose::stringify(i);
64 params.set<
unsigned int>(
"component") = i;
65 params.set<NonlinearVariableName>(
"variable") = displacements[i];
67 _problem->addKernel(type, kernel_name, params);