20 params.addClassDescription(
21 "Takes RankTwoTensor material and outputs component in cylindrical coordinates");
22 params.addRequiredParam<MaterialPropertyName>(
"rank_two_tensor",
23 "The rank two material tensor name");
24 params.addRequiredRangeCheckedParam<
unsigned int>(
26 "index_i >= 0 & index_i <= 2",
27 "The index i of ij for the tensor to output (0, 1, 2)");
28 params.addRequiredRangeCheckedParam<
unsigned int>(
30 "index_j >= 0 & index_j <= 2",
31 "The index j of ij for the tensor to output (0, 1, 2)");
32 params.addRequiredParam<Point>(
"center_point",
33 "Location of the center point of the cylindrical coordinates");
38 : AuxKernel(parameters),
39 _tensor(getMaterialProperty<
RankTwoTensor>(
"rank_two_tensor")),
40 _i(getParam<unsigned int>(
"index_i")),
41 _j(getParam<unsigned int>(
"index_j")),
42 _center_point(getParam<Point>(
"center_point"))
51 Real theta = std::atan2(loc_from_center(1), loc_from_center(0));
53 R(0, 0) = std::cos(theta);
54 R(0, 1) = std::sin(theta);
55 R(1, 0) = -std::sin(theta);
56 R(1, 1) = std::cos(theta);
60 return rotated_tensor(
_i,
_j);