44 virtual const std::vector<Real> &
getFlux(
unsigned int iside,
46 const std::vector<Real> & uvec1,
47 const RealVectorValue & dwave)
const;
59 const std::vector<Real> & uvec1,
60 const RealVectorValue & dwave,
61 std::vector<Real> & flux)
const = 0;
70 virtual const DenseMatrix<Real> &
getJacobian(
unsigned int iside,
72 const std::vector<Real> & uvec1,
73 const RealVectorValue & dwave)
const;
85 const std::vector<Real> & uvec1,
86 const RealVectorValue & dwave,
87 DenseMatrix<Real> & jac1)
const = 0;
A base class for computing/caching fluxes at boundaries.
unsigned int _cached_jacobian_side_id
side ID of the cached Jacobian values
virtual const DenseMatrix< Real > & getJacobian(unsigned int iside, dof_id_type ielem, const std::vector< Real > &uvec1, const RealVectorValue &dwave) const
Get the boundary Jacobian matrix.
static InputParameters validParams()
virtual void calcFlux(unsigned int iside, dof_id_type ielem, const std::vector< Real > &uvec1, const RealVectorValue &dwave, std::vector< Real > &flux) const =0
Solve the Riemann problem on the boundary face.
virtual void execute() override
virtual void calcJacobian(unsigned int iside, dof_id_type ielem, const std::vector< Real > &uvec1, const RealVectorValue &dwave, DenseMatrix< Real > &jac1) const =0
Compute the Jacobian matrix on the boundary face.
unsigned int _cached_jacobian_elem_id
element ID of the cached Jacobian values
virtual const std::vector< Real > & getFlux(unsigned int iside, dof_id_type ielem, const std::vector< Real > &uvec1, const RealVectorValue &dwave) const
Get the boundary flux vector.
virtual void finalize() override
virtual void initialize() override
virtual void threadJoin(const UserObject &) override
std::vector< Real > _flux
Cached flux.
unsigned int _cached_flux_elem_id
element ID of the cached flux values
DenseMatrix< Real > _jac1
Cached flux Jacobian.
unsigned int _cached_flux_side_id
side ID of the cached flux values
const InputParameters & parameters() const