11 #include "MooseMesh.h"
19 InputParameters params = validParams<Kernel>();
21 params.addClassDescription(
"This class computes the 'Chorin' Corrector equation in "
22 "fully-discrete (both time and space) form.");
24 params.addRequiredCoupledVar(
"u_star",
"star x-velocity");
25 params.addCoupledVar(
"v_star",
"star y-velocity");
26 params.addCoupledVar(
"w_star",
"star z-velocity");
27 params.addRequiredCoupledVar(
"p",
"pressure");
30 params.addRequiredParam<
unsigned>(
32 "0,1,2 depending on if we are solving the x,y,z component of the Corrector equation");
35 params.addParam<MaterialPropertyName>(
"rho_name",
"rho",
"density name");
44 _u_vel_star(coupledValue(
"u_star")),
45 _v_vel_star(_mesh.dimension() >= 2 ? coupledValue(
"v_star") : _zero),
46 _w_vel_star(_mesh.dimension() == 3 ? coupledValue(
"w_star") : _zero),
49 _grad_p(coupledGradient(
"p")),
52 _u_vel_star_var_number(coupled(
"u_star")),
53 _v_vel_star_var_number(_mesh.dimension() >= 2 ? coupled(
"v_star") :
libMesh::invalid_uint),
54 _w_vel_star_var_number(_mesh.dimension() == 3 ? coupled(
"w_star") :
libMesh::invalid_uint),
55 _p_var_number(coupled(
"p")),
58 _component(getParam<unsigned>(
"component")),
61 _rho(getMaterialProperty<Real>(
"rho_name"))
72 Real symmetric_part = (_u[_qp] - U_star(
_component)) * _test[_i][_qp];
77 return symmetric_part + pressure_part;
84 return _phi[_j][_qp] * _test[_i][_qp];
96 return -_phi[_j][_qp] * _test[_i][_qp];
100 return (_dt /
_rho[_qp]) * _grad_phi[_j][_qp](
_component) * _test[_i][_qp];