/
PostprocessorCED.C
66 lines (55 loc) · 1.23 KB
/
PostprocessorCED.C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#include "PostprocessorCED.h"
template<>
InputParameters validParams<PostprocessorCED>()
{
InputParameters params = validParams<ScalarKernel>();
params.addRequiredParam<PostprocessorName>("pp_name", "");
params.addRequiredParam<Real>("value", "");
return params;
}
PostprocessorCED::PostprocessorCED(const std::string & name, InputParameters parameters) :
ScalarKernel(name, parameters),
_value(getParam<Real>("value")),
_pp_value(getPostprocessorValue("pp_name"))
{
}
PostprocessorCED::~PostprocessorCED()
{
}
void
PostprocessorCED::reinit()
{
}
void
PostprocessorCED::computeResidual()
{
DenseVector<Number> & re = _assembly.residualBlock(_var.index());
for (_i = 0; _i < re.size(); _i++)
re(_i) += computeQpResidual();
}
Real
PostprocessorCED::computeQpResidual()
{
return _pp_value - _value;
}
void
PostprocessorCED::computeJacobian()
{
DenseMatrix<Number> & ke = _assembly.jacobianBlock(_var.index(), _var.index());
for (_i = 0; _i < ke.m(); _i++)
ke(_i, _i) += computeQpJacobian();
}
Real
PostprocessorCED::computeQpJacobian()
{
return 0.;
}
void
PostprocessorCED::computeOffDiagJacobian(unsigned int /*jvar*/)
{
}
Real
PostprocessorCED::computeQpOffDiagJacobian(unsigned int /*jvar*/)
{
return 0.;
}