22 InputParameters params = validParams<SideIntegralVariablePostprocessor>();
23 params.addRequiredParam<Real>(
"max",
24 "Maximum of the flux (measured in kg.m^-2.s^-1). Flux out "
25 "= max*exp((-0.5*(p - centre)/sd)^2) for p<centre, and Flux "
26 "out = max for p>centre. Note, to make this a source "
27 "rather than a sink, let max<0");
28 params.addRequiredParam<Real>(
"sd",
29 "Standard deviation of the Gaussian (measured in Pa). Flux "
30 "out = max*exp((-0.5*(p - centre)/sd)^2) for p<centre, and "
31 "Flux out = max for p>centre.");
32 params.addRequiredParam<Real>(
"centre",
33 "Centre of the Gaussian (measured in Pa). Flux out = "
34 "max*exp((-0.5*(p - centre)/sd)^2) for p<centre, and "
35 "Flux out = max for p>centre.");
36 params.addParam<FunctionName>(
39 "The flux will be multiplied by this spatially-and-temporally varying function.");
40 params.addRequiredParam<UserObjectName>(
41 "richardsVarNames_UO",
"The UserObject that holds the list of Richards variable names.");
46 : SideIntegralVariablePostprocessor(parameters),
47 _feproblem(dynamic_cast<FEProblemBase &>(_subproblem)),
48 _maximum(getParam<Real>(
"max")),
49 _sd(getParam<Real>(
"sd")),
50 _centre(getParam<Real>(
"centre")),
52 _pvar(_richards_name_UO.richards_var_num(coupled(
"variable"))),
53 _m_func(getFunction(
"multiplying_fcn")),
54 _pp(getMaterialProperty<std::vector<Real>>(
"porepressure"))
65 _m_func.value(_t, _q_point[_qp]);