28 _uhat_var(isParamValid(
"uhat") ? getArrayVar(
"uhat", 0) : nullptr),
29 _uhat(_uhat_var ? (_is_implicit ? &_uhat_var->slnLower() : &_uhat_var->slnLowerOld()) : nullptr)
33 "value",
"Number of values must equal number of variable components (",
_count,
").");
41 "'uhat' must be defined on lower-dimensional boundary subdomain '" +
43 "' that is added by Mesh/build_all_side_lowerd_mesh=true.\nThe " 44 "check could be overly restrictive.");
48 "The number of components must be equal to the number of " 49 "components of 'variable'");
52 paramError(
"uhat",
"'uhat' and 'value' can not be both provided");
MooseMesh & _mesh
Reference to this Kernel's mesh object.
virtual void computeQpResidual(RealEigenVector &residual) override
Method for computing the residual at quadrature points, to be filled in residual. ...
const ArrayVariablePhiValue & _phi
shape function values (in QPs)
void paramError(const std::string ¶m, Args... args) const
Emits an error prefixed with the file and line number of the given param (from the input file) along ...
unsigned int number() const
Get variable number coming from libMesh.
const ArrayMooseVariable *const _uhat_var
Variable coupled in.
unsigned int count() const
Get the number of components Note: For standard and vector variables, the number is one...
const ArrayVariableValue & _lambda
Holds the current solution at the current quadrature point on the face.
static InputParameters validParams()
unsigned int _i
i-th, j-th index for enumerating test and shape functions
void mooseDocumentedError(const std::string &repo_name, const unsigned int issue_num, Args &&... args) const
const ArrayVariableValue & _u
the values of the unknown variable this BC is acting on
This class provides an interface for common operations on field variables of both FE and FV types wit...
const ArrayVariableValue *const _uhat
Holds the coupled solution at the current quadrature point on the face.
const unsigned int _count
Number of components of the array variable.
const ArrayVariableTestValue & _test_lambda
test functions
const std::string & getSubdomainName(SubdomainID subdomain_id) const
Return the name of a block given an id.
unsigned int _qp
quadrature point index
const RealEigenVector _value
Boundary values.
virtual void computeLowerDQpResidual(RealEigenVector &residual) override
Method for computing the Lower part of residual at quadrature points, to be filled in residual...
ArrayMooseVariable & _var
const std::string & type() const
Get the type of this class.
virtual RealEigenVector computeLowerDQpJacobian(Moose::ConstraintJacobianType type) override
Method for computing the LowerLower, PrimaryLower and LowerPrimary parts of Jacobian at quadrature po...
virtual RealEigenMatrix computeLowerDQpOffDiagJacobian(Moose::ConstraintJacobianType, const MooseVariableFEBase &jvar) override
Method for computing an off-diagonal jacobian component at quadrature points.
Eigen::Matrix< Real, Eigen::Dynamic, Eigen::Dynamic > RealEigenMatrix
const std::set< SubdomainID > & boundaryLowerDBlocks() const
ArrayHFEMDirichletBC(const InputParameters ¶meters)
const ArrayVariablePhiValue & _phi_lambda
Shape functions.
const std::set< SubdomainID > & activeSubdomains() const
The subdomains the variable is active on.
Base class for deriving any boundary condition of a integrated type.
const ArrayVariableTestValue & _test
test function values (in QPs)
virtual RealEigenMatrix computeLowerDQpOffDiagJacobian(Moose::ConstraintJacobianType type, const MooseVariableFEBase &jvar)
Method for computing an off-diagonal jacobian component at quadrature points.
static InputParameters validParams()
Eigen::Matrix< Real, Eigen::Dynamic, 1 > RealEigenVector
bool isParamValid(const std::string &name) const
Test if the supplied parameter is valid.
registerMooseObject("MooseApp", ArrayHFEMDirichletBC)