91 for (
unsigned int i = 0; i <
_ndisp; ++i)
103 total_deigenstrain += (*deigenstrain_darg)[_qp];
108 for (
unsigned k = 0; k < LIBMESH_DIM; ++k)
109 for (
unsigned l = 0; l < LIBMESH_DIM; ++l)
110 jac -= (_grad_test[_i][_qp](0) *
_Jacobian_mult[_qp](0, 0, k, l) +
111 _test[_i][_qp] / _q_point[_qp](0) *
_Jacobian_mult[_qp](2, 2, k, l) +
113 total_deigenstrain(k, l);
114 return jac * _phi[_j][_qp];
118 for (
unsigned k = 0; k < LIBMESH_DIM; ++k)
119 for (
unsigned l = 0; l < LIBMESH_DIM; ++l)
120 jac -= (_grad_test[_i][_qp](1) *
_Jacobian_mult[_qp](1, 1, k, l) +
122 total_deigenstrain(k, l);
123 return jac * _phi[_j][_qp];
133 RealGradient test, test_z, phi, phi_z;
134 Real first_term = 0.0;
138 test(0) = _grad_test[_i][_qp](0);
139 test(1) = _grad_test[_i][_qp](1);
140 test_z(2) = _test[_i][_qp] / _q_point[_qp](0);
144 test(0) = _grad_test[_i][_qp](0);
145 test(1) = _grad_test[_i][_qp](1);
150 phi(0) = _grad_phi[_j][_qp](0);
151 phi(1) = _grad_phi[_j][_qp](1);
152 phi_z(2) = _phi[_j][_qp] / _q_point[_qp](0);
156 phi(0) = _grad_phi[_j][_qp](0);
157 phi(1) = _grad_phi[_j][_qp](1);
172 first_term = first_sum + second_sum + mixed_sum1 + mixed_sum2;
174 else if (ivar == 0 && jvar == 1)
181 first_term = first_sum + mixed_sum2;
183 else if (ivar == 1 && jvar == 0)
190 first_term = second_sum + mixed_sum1;
192 else if (ivar == 1 && jvar == 1)
196 mooseError(
"Invalid component in Jacobian Calculation");
204 RealGradient new_test(2, 0.0);
205 RealGradient new_phi(2, 0.0);
207 new_test(0) = _grad_test[_i][_qp](0) + _test[_i][_qp] / _q_point[_qp](0);
208 new_test(1) = _grad_test[_i][_qp](1);
209 new_phi(0) = _grad_phi[_j][_qp](0) + _phi[_j][_qp] / _q_point[_qp](0);
210 new_phi(1) = _grad_phi[_j][_qp](1);
218 if (ivar == 0 && jvar == 0)
219 val += (sum_3x1(0) * test(0) + sum_3x1(2) * test_z(2)) * (
_avg_grad_phi[_j][0] - new_phi(0));
220 else if (ivar == 0 && jvar == 1)
221 val += (sum_3x1(0) * test(0) + sum_3x1(2) * test_z(2)) * (
_avg_grad_phi[_j][1] - new_phi(1));
222 else if (ivar == 1 && jvar == 0)
223 val += sum_3x1(1) * test(1) * (
_avg_grad_phi[_j][0] - new_phi(0));
225 val += sum_3x1(1) * test(1) * (
_avg_grad_phi[_j][1] - new_phi(1));
230 for (
unsigned int i = 0; i < 3; ++i)
236 for (
unsigned int i = 0; i < 3; ++i)
242 return val / 3.0 + first_term;