21 "fully-discrete (both time and space) form.");
35 "component>=0 & component<=2",
36 "0,1,2 depending on if we are solving the x,y,z component of the Predictor equation");
41 "One of: OLD, NEW, STAR. Indicates which velocity to use in the predictor.");
44 params.
addParam<MaterialPropertyName>(
"mu_name",
"mu",
"The name of the dynamic viscosity");
45 params.
addParam<MaterialPropertyName>(
"rho_name",
"rho",
"The name of the density");
54 _u_vel(coupledValue(
"u")),
55 _v_vel(_mesh.dimension() >= 2 ? coupledValue(
"v") : _zero),
56 _w_vel(_mesh.dimension() == 3 ? coupledValue(
"w") : _zero),
59 _u_vel_old(coupledValueOld(
"u")),
60 _v_vel_old(_mesh.dimension() >= 2 ? coupledValueOld(
"v") : _zero),
61 _w_vel_old(_mesh.dimension() == 3 ? coupledValueOld(
"w") : _zero),
64 _u_vel_star(coupledValue(
"u_star")),
65 _v_vel_star(_mesh.dimension() >= 2 ? coupledValue(
"v_star") : _zero),
66 _w_vel_star(_mesh.dimension() == 3 ? coupledValue(
"w_star") : _zero),
69 _grad_u_vel(coupledGradient(
"u")),
70 _grad_v_vel(_mesh.dimension() >= 2 ? coupledGradient(
"v") : _grad_zero),
71 _grad_w_vel(_mesh.dimension() == 3 ? coupledGradient(
"w") : _grad_zero),
74 _grad_u_vel_old(coupledGradientOld(
"u")),
75 _grad_v_vel_old(_mesh.dimension() >= 2 ? coupledGradientOld(
"v") : _grad_zero),
76 _grad_w_vel_old(_mesh.dimension() == 3 ? coupledGradientOld(
"w") : _grad_zero),
79 _grad_u_vel_star(coupledGradient(
"u_star")),
80 _grad_v_vel_star(_mesh.dimension() >= 2 ? coupledGradient(
"v_star") : _grad_zero),
81 _grad_w_vel_star(_mesh.dimension() == 3 ? coupledGradient(
"w_star") : _grad_zero),
84 _u_vel_var_number(coupled(
"u")),
89 _u_vel_star_var_number(coupled(
"u_star")),
94 _component(getParam<unsigned>(
"component")),
95 _predictor_enum(getParam<
MooseEnum>(
"predictor_type")),
98 _mu(getMaterialProperty<
Real>(
"mu_name")),
99 _rho(getMaterialProperty<
Real>(
"rho_name"))
112 for (
unsigned k = 0;
k < 3; ++
k)
142 mooseError(
"Unrecognized Chorin predictor type requested.");
154 Real convective_part =
_dt * (grad_U * U) * test;
160 return symmetric_part + convective_part + viscous_part;
171 Real other_part = 0.;
180 Real convective_part =
185 other_part = convective_part + viscous_part;
189 mooseError(
"Unrecognized Chorin predictor type requested.");
192 return mass_part + other_part;
213 unsigned vel_index = 99;
226 for (
unsigned k = 0;
k < 3; ++
k)
238 for (
unsigned k = 0;
k < 3; ++
k)
251 Real convective_part =
_dt * (convective_jac * test);
258 return convective_part + viscous_part;
286 mooseError(
"Unrecognized Chorin predictor type requested.");
const MaterialProperty< Real > & _rho
const VariableValue & _w_vel
virtual Real computeQpJacobian()
const MaterialProperty< Real > & _mu
const VariableGradient & _grad_u
static InputParameters validParams()
const unsigned int invalid_uint
This class computes the "Chorin" Predictor equation in fully-discrete (both time and space) form...
const VariableValue & _u_vel
const VariablePhiGradient & _grad_phi
const VariableGradient & _grad_u_vel
virtual Real computeQpResidual()
const VariableGradient & _grad_v_vel_old
unsigned _v_vel_var_number
unsigned _v_vel_star_var_number
The following methods are specializations for using the Parallel::packed_range_* routines for a vecto...
const VariableValue & _v_vel_old
const VariableValue & _w_vel_old
const VariableValue & _u_vel_old
const VariableValue & _v_vel
TensorValue< Real > RealTensorValue
const VariableTestValue & _test
unsigned _u_vel_star_var_number
registerMooseObject("NavierStokesApp", INSChorinPredictor)
const VariableGradient & _grad_u_vel_old
const VariableGradient & _grad_w_vel
const VariableValue & _v_vel_star
unsigned _w_vel_star_var_number
const VariableGradient & _grad_v_vel_star
virtual Real computeQpOffDiagJacobian(unsigned jvar)
INSChorinPredictor(const InputParameters ¶meters)
const VariableValue & _w_vel_star
const VariableGradient & _grad_w_vel_old
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static InputParameters validParams()
const VariableTestGradient & _grad_test
void mooseError(Args &&... args) const
unsigned _w_vel_var_number
MooseEnum _predictor_enum
const VariableGradient & _grad_w_vel_star
const VariableGradient & _grad_u_vel_star
const VariablePhiValue & _phi
const VariableGradient & _grad_v_vel
const VariableValue & _u_vel_star
static const std::string k
unsigned _u_vel_var_number