AugmentedLagrangianContactProblem

The augmented Lagrangian contact algorithm involves a nested solution strategy. In the inner solve, the Lagrangian multipliers are kept fixed and the contact problem is solved. Once the problem is solved, the algorithm checks to see whether the constraints are satisfied and decides if convergence has been reached. If the model has not yet converged, the Lagrangian multipliers are updated and the inner solve is repeated.

The AugmentedLagrangianContactProblem manages the nested solution procedure described above, repeating the solution until convergence has been achieved, checking for convergence, and updating the Lagrangian multipliers.

AugmentedLagrangianContactProblem

Problem that checks for convergence relative to a user-supplied reference quantity rather than the initial residual

Input Parameters

  • material_coverage_checkTrueSet to false to disable material->subdomain coverage check

    Default:True

    C++ Type:bool

    Options:

    Description:Set to false to disable material->subdomain coverage check

  • error_on_jacobian_nonzero_reallocationFalseThis causes PETSc to error if it had to reallocate memory in the Jacobian matrix due to not having enough nonzeros

    Default:False

    C++ Type:bool

    Options:

    Description:This causes PETSc to error if it had to reallocate memory in the Jacobian matrix due to not having enough nonzeros

  • restart_file_baseFile base name used for restart (e.g. / or /LATEST to grab the latest file available)

    C++ Type:FileNameNoExtension

    Options:

    Description:File base name used for restart (e.g. / or /LATEST to grab the latest file available)

  • null_space_dimension0The dimension of the nullspace

    Default:0

    C++ Type:unsigned int

    Options:

    Description:The dimension of the nullspace

  • acceptable_multiplier1Multiplier applied to relative tolerance for acceptable limit

    Default:1

    C++ Type:double

    Options:

    Description:Multiplier applied to relative tolerance for acceptable limit

  • use_nonlinearTrueDetermines whether to use a Nonlinear vs a Eigenvalue system (Automatically determined based on executioner)

    Default:True

    C++ Type:bool

    Options:

    Description:Determines whether to use a Nonlinear vs a Eigenvalue system (Automatically determined based on executioner)

  • force_restartFalseEXPERIMENTAL: If true, a sub_app may use a restart file instead of using of using the master backup file

    Default:False

    C++ Type:bool

    Options:

    Description:EXPERIMENTAL: If true, a sub_app may use a restart file instead of using of using the master backup file

  • extra_tag_vectorsExtra vectors to add to the system that can be filled by objects which compute residuals and Jacobians (Kernels, BCs, etc.) by setting tags on them.

    C++ Type:std::vector

    Options:

    Description:Extra vectors to add to the system that can be filled by objects which compute residuals and Jacobians (Kernels, BCs, etc.) by setting tags on them.

  • ignore_zeros_in_jacobianFalseDo not explicitly store zero values in the Jacobian matrix if true

    Default:False

    C++ Type:bool

    Options:

    Description:Do not explicitly store zero values in the Jacobian matrix if true

  • skip_nl_system_checkFalseTrue to skip the NonlinearSystem check for work to do (e.g. Make sure that there are variables to solve for).

    Default:False

    C++ Type:bool

    Options:

    Description:True to skip the NonlinearSystem check for work to do (e.g. Make sure that there are variables to solve for).

  • parallel_barrier_messagingTrueDisplays messaging from parallel barrier notifications when executing or transferring to/from Multiapps (default: true)

    Default:True

    C++ Type:bool

    Options:

    Description:Displays messaging from parallel barrier notifications when executing or transferring to/from Multiapps (default: true)

  • transpose_null_space_dimension0The dimension of the transpose nullspace

    Default:0

    C++ Type:unsigned int

    Options:

    Description:The dimension of the transpose nullspace

  • near_null_space_dimension0The dimension of the near nullspace

    Default:0

    C++ Type:unsigned int

    Options:

    Description:The dimension of the near nullspace

  • group_variablesName of variables that are grouped together to check convergence. (Multiple groups can be provided, separated by semicolon)

    C++ Type:std::vector>

    Options:

    Description:Name of variables that are grouped together to check convergence. (Multiple groups can be provided, separated by semicolon)

  • acceptable_iterations0Iterations after which convergence to acceptable limits is accepted

    Default:0

    C++ Type:int

    Options:

    Description:Iterations after which convergence to acceptable limits is accepted

  • rz_coord_axisYThe rotation axis (X | Y) for axisymetric coordinates

    Default:Y

    C++ Type:MooseEnum

    Options:X Y

    Description:The rotation axis (X | Y) for axisymetric coordinates

  • skip_additional_restart_dataFalseTrue to skip additional data in equation system for restart. It is useful for starting a transient calculation with a steady-state solution

    Default:False

    C++ Type:bool

    Options:

    Description:True to skip additional data in equation system for restart. It is useful for starting a transient calculation with a steady-state solution

  • coord_typeXYZType of the coordinate system per block param

    Default:XYZ

    C++ Type:MultiMooseEnum

    Options:XYZ RZ RSPHERICAL

    Description:Type of the coordinate system per block param

  • solution_variablesSet of solution variables to be checked for relative convergence

    C++ Type:std::vector

    Options:

    Description:Set of solution variables to be checked for relative convergence

  • kernel_coverage_checkTrueSet to false to disable kernel->subdomain coverage check

    Default:True

    C++ Type:bool

    Options:

    Description:Set to false to disable kernel->subdomain coverage check

  • reference_residual_variablesSet of variables that provide reference residuals for relative convergence check

    C++ Type:std::vector

    Options:

    Description:Set of variables that provide reference residuals for relative convergence check

  • maximum_lagrangian_update_iterations100Maximum number of update Lagrangian Multiplier iterations per step

    Default:100

    C++ Type:int

    Options:

    Description:Maximum number of update Lagrangian Multiplier iterations per step

  • solveTrueWhether or not to actually solve the Nonlinear system. This is handy in the case that all you want to do is execute AuxKernels, Transfers, etc. without actually solving anything

    Default:True

    C++ Type:bool

    Options:

    Description:Whether or not to actually solve the Nonlinear system. This is handy in the case that all you want to do is execute AuxKernels, Transfers, etc. without actually solving anything

  • extra_tag_matricesExtra matrices to add to the system that can be filled by objects which compute residuals and Jacobians (Kernels, BCs, etc.) by setting tags on them.

    C++ Type:std::vector

    Options:

    Description:Extra matrices to add to the system that can be filled by objects which compute residuals and Jacobians (Kernels, BCs, etc.) by setting tags on them.

  • blockBlock IDs for the coordinate systems

    C++ Type:std::vector

    Options:

    Description:Block IDs for the coordinate systems

Optional Parameters

  • control_tagsAdds user-defined labels for accessing object parameters via control logic.

    C++ Type:std::vector

    Options:

    Description:Adds user-defined labels for accessing object parameters via control logic.

  • enableTrueSet the enabled status of the MooseObject.

    Default:True

    C++ Type:bool

    Options:

    Description:Set the enabled status of the MooseObject.

Advanced Parameters

Input Files