19 "PeriodicSegmentalConstraint enforces macro-micro periodic conditions between " 20 "secondary and primary sides of a mortar interface using Lagrange multipliers." 21 "Must be used alongside EqualValueConstraint.");
22 params.
renameCoupledVar(
"scalar_variable",
"epsilon",
"Primary coupled scalar variable");
30 _kappa_aux_ptr(getScalarVar(
"sigma", 0)),
31 _ka_order(_kappa_aux_ptr->order()),
32 _kappa_aux(coupledScalarValue(
"sigma"))
36 "Must assign auxiliary scalar variable to sigma, rather than nonlinear variable");
51 Real r = -(kappa_vec * dx);
89 const unsigned int svar_num)
111 const unsigned int jvar_num)
131 jac *= (*_phi)[
_j][
_qp];
static InputParameters validParams()
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 VariableValue & _lambda
The LM solution.
virtual Real computeScalarQpOffDiagJacobian(Moose::MortarType mortar_type, const unsigned int jvar) override
Method for computing d-_kappa-residual / d-_var at quadrature points.
virtual Real computeScalarQpResidual() override
Method for computing the scalar part of residual at quadrature points.
const MooseArray< Point > & _phys_points_primary
The locations of the quadrature points on the interior primary elements.
unsigned int _h
Used internally to iterate over each scalar component.
const VariableTestValue & _test
The shape functions corresponding to the lagrange multiplier variable.
registerMooseObject("MooseApp", PeriodicSegmentalConstraint)
This class enforces a periodic boundary condition between a microscale and macroscale field...
const unsigned int _kappa_var
The unknown scalar variable ID.
std::vector< Point > _normals
the normals
static InputParameters validParams()
const MooseArray< Point > & _phys_points_secondary
The locations of the quadrature points on the interior secondary elements.
virtual Real computeQpOffDiagJacobianScalar(Moose::MortarType mortar_type, const unsigned int jvar) override
Method for computing d-_var-residual / d-_kappa at quadrature points.
MooseVariable *const _var
Pointer to the lagrange multipler variable. nullptr if none.
const MooseVariableScalar *const _kappa_aux_ptr
(Pointer to) the controlled scalar variable
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
Interface class ("Veneer") to provide generator methods for derivative material property names...
Moose::VarKindType kind() const
Kind of the variable (Nonlinear, Auxiliary, ...)
const unsigned int _k_order
Order of the scalar variable, used in several places.
PeriodicSegmentalConstraint(const InputParameters ¶meters)
virtual Real computeQpResidual(Moose::MortarType mortar_type) override
Method for computing the residual at quadrature points.
const VariableValue & _kappa_aux
The controlled scalar variable.
This Constraint adds standardized methods for assembling to a primary scalar variable associated with...
const VariableValue & _kappa
Reference to the current solution at the current quadrature point.