22 params.addClassDescription(
23 "Compute residual and Jacobian terms form the SUPG terms in the energy equation.");
37 Real energy_term = 0.0;
46 Real velmag2 = vel.norm_sq();
49 Real U_grad_phi = vel * _grad_test[_i][_qp];
56 Real mass_coeff = (0.5 * (gam - 1.0) * velmag2 -
_enthalpy[_qp]) * U_grad_phi;
61 Real mom_term1 =
_enthalpy[_qp] * (_grad_test[_i][_qp] * Ru);
62 Real mom_term2 = (1.0 - gam) * U_grad_phi * (vel * Ru);
64 mom_term =
_taum[_qp] * (mom_term1 + mom_term2);
70 Real result = mass_term + mom_term + energy_term;
103 Real velmag2 = vel.norm_sq();
109 RealVectorValue grad_test_i = _grad_test[_i][_qp];
110 RealVectorValue grad_phi_j = _grad_phi[_j][_qp];
119 RealTensorValue mom_mat;
120 mom_mat(0, 0) = mom_mat(1, 1) = mom_mat(2, 2) =
_enthalpy[_qp];
121 mom_mat += (1. - gam) *
_calC[_qp][0] *
_calC[_qp][0].transpose();
122 mom_mat = mom_mat *
_calA[_qp][mapped_var_number];
123 Real mom_term =
_taum[_qp] * grad_test_i * (mom_mat * grad_phi_j);
129 RealTensorValue ene_mat = gam *
_calC[_qp][0] *
_calE[_qp][0][mapped_var_number];
130 Real ene_term =
_taue[_qp] * grad_test_i * (ene_mat * grad_phi_j);
135 switch (mapped_var_number)
142 unsigned m_local = mapped_var_number - 1;
147 RealTensorValue mass_mat =
148 (0.5 * (gam - 1.) * velmag2 -
_enthalpy[_qp]) *
_calC[_qp][m_local];
149 mass_term =
_tauc[_qp] * grad_test_i * (mass_mat * grad_phi_j);
157 return mass_term + mom_term + ene_term;