EqualValueEmbeddedConstraint

The EqualValueEmbeddedConstraint block is used to construct a set of EqualValueEmbeddedConstraint objects for applying these constraints on multiple sets of blocks and on multiple variables with minimal input. These individual EqualValueEmbeddedConstraint objects are used to define constraints that tie the values of variables at the nodes in a single block to the containing elements in another block. Prescribing this input can be tedious of these constraints are to be defined for multiple blocks and variables, because many input blocks would be required. The EqualValueEmbeddedConstraint block simplifies that process by allowing for multiple blocks and directions to be defined in a single input file block.

Constructed Objects

This block sets up multiple EqualValueEmbeddedConstraint objects.

Example Input Syntax

[Constraints/EqualValueEmbeddedConstraint/Batch]
  [Constraints/EqualValueEmbeddedConstraint/Batch]
    [Constraints/EqualValueEmbeddedConstraint/Batch]
      primary = '1'
      secondary = '2 3'
      variable = 'disp_x disp_y disp_z'
      penalty = 1e12
      formulation = penalty
    []
  []
[]
(test/tests/actions/EqualValueEmbeddedConstraintAction.i)

Input Parameters

  • penaltyPenalty parameter used in constraint enforcement for kinematic and penalty formulations.

    C++ Type:double

    Options:

    Description:Penalty parameter used in constraint enforcement for kinematic and penalty formulations.

  • primaryThe list of ids of the primary block (subdomain)

    C++ Type:std::vector<SubdomainName>

    Options:

    Description:The list of ids of the primary block (subdomain)

  • secondaryThe list of ids of the secondary block (subdomain)

    C++ Type:std::vector<SubdomainName>

    Options:

    Description:The list of ids of the secondary block (subdomain)

  • variableThe list of variables on the secondary side

    C++ Type:std::vector<NonlinearVariableName>

    Options:

    Description:The list of variables on the secondary side

Required Parameters

  • active__all__ If specified only the blocks named will be visited and made active

    Default:__all__

    C++ Type:std::vector<std::string>

    Options:

    Description:If specified only the blocks named will be visited and made active

  • formulationkinematicFormulation used to enforce the constraint

    Default:kinematic

    C++ Type:MooseEnum

    Options:kinematic, penalty

    Description:Formulation used to enforce the constraint

  • inactiveIf specified blocks matching these identifiers will be skipped.

    C++ Type:std::vector<std::string>

    Options:

    Description:If specified blocks matching these identifiers will be skipped.

  • primary_variableThe list of variables on the primary side (defaults to the specified value of 'variable')

    C++ Type:std::vector<VariableName>

    Options:

    Description:The list of variables on the primary side (defaults to the specified value of 'variable')

Optional Parameters

References