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,
36 std::vector<Real> & flux)
const 38 mooseAssert(uvec1.size() == 1,
"Invalid size for uvec1. Must be single variable coupling.");
47 flux[0] = (uadv1 * dwave) * uvec1[0];
53 const std::vector<Real> & libmesh_dbg_var(uvec1),
57 mooseAssert(uvec1.size() == 1,
"Invalid size for uvec1. Must be single variable coupling.");
61 jac1(0, 0) = uadv1 * dwave;
static InputParameters validParams()
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.
A base class for computing/caching fluxes at boundaries.
const Real _velocity
advective velocity
registerMooseObject("RdgApp", AEFVFreeOutflowBoundaryFlux)
virtual ~AEFVFreeOutflowBoundaryFlux()
AEFVFreeOutflowBoundaryFlux(const InputParameters ¶meters)
Free outflow BC based boundary flux user object for the advection equation using a cell-centered fini...
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
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.
void resize(const unsigned int new_m, const unsigned int new_n)
static InputParameters validParams()