18 params.
addParam<Real>(
"velocity", 1.0,
"Advective velocity");
19 params.
addClassDescription(
"Free outflow BC based boundary flux user object for the advection "
20 "equation using a cell-centered finite volume method.");
34 const std::vector<Real> & uvec1,
35 const RealVectorValue & dwave,
36 std::vector<Real> & flux)
const
38 mooseAssert(uvec1.size() == 1,
"Invalid size for uvec1. Must be single variable coupling.");
41 RealVectorValue uadv1(
_velocity, 0.0, 0.0);
47 flux[0] = (uadv1 * dwave) * uvec1[0];
53 const std::vector<Real> & libmesh_dbg_var(uvec1),
54 const RealVectorValue & dwave,
55 DenseMatrix<Real> & jac1)
const
57 mooseAssert(uvec1.size() == 1,
"Invalid size for uvec1. Must be single variable coupling.");
60 const RealVectorValue uadv1(
_velocity, 0.0, 0.0);
61 jac1(0, 0) = uadv1 * dwave;
registerMooseObject("RdgApp", AEFVFreeOutflowBoundaryFlux)
Free outflow BC based boundary flux user object for the advection equation using a cell-centered fini...
static InputParameters validParams()
virtual ~AEFVFreeOutflowBoundaryFlux()
virtual void calcJacobian(unsigned int iside, dof_id_type ielem, const std::vector< Real > &uvec1, const RealVectorValue &dwave, DenseMatrix< Real > &jac1) const override
Compute the Jacobian matrix on the boundary face.
virtual void calcFlux(unsigned int iside, dof_id_type ielem, const std::vector< Real > &uvec1, const RealVectorValue &dwave, std::vector< Real > &flux) const override
Solve the Riemann problem on the boundary face.
AEFVFreeOutflowBoundaryFlux(const InputParameters ¶meters)
const Real _velocity
advective velocity
A base class for computing/caching fluxes at boundaries.
static InputParameters validParams()