static Threads::spin_mutex _resid_vars_mutex
Mutex that prevents multiple threads from saving into the residual aux_var at the same time...
virtual Real computeQpJacobian(Moose::DGJacobianType)
Compute jacobians at quadrature points.
std::vector< MooseVariableFEBase * > _secondary_save_in_residual_variables
The aux variables to save the secondary contributions to.
static InputParameters validParams()
MultiMooseEnum _diag_save_in_var_side
MultiMooseEnum specifying whether jacobian save-in aux variables correspond to primary or secondary s...
const MooseArray< Real > & _JxW
Elemtn Jacobian/quadrature weight.
const Real & _neighbor_elem_volume
The neighboring element volume.
const MooseArray< Real > & _coord
Coordinate transformation value; relevant in axisymmetric simulations for example.
const Real & _current_side_volume
The volume (or length) of the current side.
std::vector< AuxVariableName > _diag_save_in_strings
The names of the aux variables that will be used to save-in jacobians (includes both primary and seco...
/class BoundaryRestrictable /brief Provides functionality for limiting the object to certain boundary...
virtual const MooseVariableFEBase & neighborVariable() const =0
The neighbor variable number that this interface kernel operates on.
This class provides an interface for common operations on field variables of both FE and FV types wit...
const Elem *const & _current_side_elem
Current side element.
unsigned int _qp
Current quadrature point.
const Real & getNeighborElemVolume()
The volume of the current neighbor.
MultiMooseEnum _save_in_var_side
MultiMooseEnum specifying whether residual save-in aux variables correspond to primary or secondary s...
const Elem *const & _current_elem
Pointer reference to the current element.
bool _has_primary_jacobians_saved_in
Whether there are primary jacobian aux variables.
const MooseArray< Point > & _q_point
Array that holds element quadrature point coordinates.
InterfaceKernelBase(const InputParameters ¶meters)
void prepareShapes(unsigned int var_num) override final
Prepare shape functions.
virtual Real computeQpOffDiagJacobian(Moose::DGJacobianType, unsigned int)
compute off-diagonal jacobian components at quadrature points
const Elem *const & _neighbor_elem
The neighboring element.
const unsigned int & _current_side
Current side.
std::vector< MooseVariableFEBase * > _primary_save_in_jacobian_variables
The aux variables to save the diagonal Jacobian contributions of the primary variables to...
virtual void computeElementOffDiagJacobian(unsigned int jvar)=0
Selects the correct Jacobian type and routine to call for the primary variable jacobian.
const QBase *const & _qrule
Quadrature rule.
std::vector< MooseVariableFEBase * > _primary_save_in_residual_variables
The aux variables to save the primary residual contributions to.
unsigned int _i
Index for test and trial functions.
const Real & _current_elem_volume
The volume (or length) of the current element.
This is a base class for objects that can provide residual contributions for both local and neighbor ...
virtual void computeNeighborOffDiagJacobian(unsigned int jvar)=0
Selects the correct Jacobian type and routine to call for the secondary variable jacobian.
static Threads::spin_mutex _jacoby_vars_mutex
Mutex that prevents multiple threads from saving into the jacobian aux_var at the same time...
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
std::vector< MooseVariableFEBase * > _secondary_save_in_jacobian_variables
The aux variables to save the diagonal Jacobian contributions of the secondary variables to...
bool _has_secondary_residuals_saved_in
Whether there are secondary residual aux variables.
std::vector< AuxVariableName > _save_in_strings
The names of the aux variables that will be used to save-in residuals (includes both primary and seco...
bool _has_primary_residuals_saved_in
Whether there are primary residual aux variables.
This interface is designed for DGKernel, InternalSideUserObject, InterfaceUserObject, where material properties on a side of both its primary side (face) and its secondary side (neighbor) all required.
const InputParameters & parameters() const
Get the parameters of the object.
InterfaceKernelBase is the base class for all InterfaceKernel type classes.
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type...
bool _has_secondary_jacobians_saved_in
Whether there are secondary jacobian aux variables.
const Moose::CoordinateSystemType & _coord_sys
Coordinate system.