Peridynamic Master Action System

Description

The peridynamics mechanics Action is a convenience object that simplifies part of the mechanics system setup. It sets up force density integral Kernels for all displacements at once.

Constructed MooseObjects

Table 1: Correspondence Among Action Functionality and MooseObjects for the MechanicsActionPD Action

FunctionalityReplaced ClassesAssociated Parameters
Mechanics equilibrium conditionsBond-based Mechanics Models or Ordinary State-based Mechanics Models or Force-stabilized Correspondence Material Model or Bond-associated Correspondence Small Strain Model or Bond-associated Correspondence Finite Strain Modeldisplacements : a string of the displacement field variables; temperature: a string of the temperature field variable
Ghost bonds for nonlocal computation |Ghost Element UserObject| None
Setup quadrature ruleVariablestype: GAUSS_LOBATTO; order: FIRST
Add AuxVariable for bond statusAuxVariablesinitial_condition is set to 1

Example Input Syntax

Subblocks

The subblocks of the Mechanics action are what triggers MOOSE objects to be built. If none of the mechanics is subdomain restricted a single subblock will be used.

[Modules/Peridynamics/Mechanics/Master]
  [./all]
    formulation = NONORDINARY_STATE
    strain = FINITE
  [../]
[]
(modules/peridynamics/test/tests/simple_tests/2D_finite_strain_NOSPD.i)

If different mechanics models are needed, multiple subblocks with subdomain restrictions can be used.


[Modules/Peridynamics/Mechanics/Master]
  [./block_a]
    ...
  [../]
  [./block_b]
    ...
  [../]
[]

Parameters supplied at the [Modules/Peridynamics/Mechanics/Master] level act as defaults for the Mechanics action subblocks.

Input Parameters

  • displacementsNonlinear variable names for the displacements

    C++ Type:std::vector

    Options:

    Description:Nonlinear variable names for the displacements

  • formulationAvailable peridynamic formulation options: BOND ORDINARY_STATE NONORDINARY_STATE

    C++ Type:MooseEnum

    Options:BOND ORDINARY_STATE NONORDINARY_STATE

    Description:Available peridynamic formulation options: BOND ORDINARY_STATE NONORDINARY_STATE

Required Parameters

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

    Default:__all__

    C++ Type:std::vector

    Options:

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

  • blockList of ids of the blocks (subdomains) that the peridynamic mechanics kernel will be applied to

    C++ Type:std::vector

    Options:

    Description:List of ids of the blocks (subdomains) that the peridynamic mechanics kernel will be applied to

  • diag_save_inThe displacement diagonal preconditioner terms

    C++ Type:std::vector

    Options:

    Description:The displacement diagonal preconditioner terms

  • eigenstrain_namesList of eigenstrains to be coupled in non-ordinary state-based mechanics kernels

    C++ Type:std::vector

    Options:

    Description:List of eigenstrains to be coupled in non-ordinary state-based mechanics kernels

  • full_jacobianFalseParameter to set whether to use full jacobian for state based formulation or not

    Default:False

    C++ Type:bool

    Options:

    Description:Parameter to set whether to use full jacobian for state based formulation or not

  • inactiveIf specified blocks matching these identifiers will be skipped.

    C++ Type:std::vector

    Options:

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

  • out_of_plane_strainNonlinear variable name for the out_of_plane strain for plane stress using SNOSPD formulation

    C++ Type:VariableName

    Options:

    Description:Nonlinear variable name for the out_of_plane strain for plane stress using SNOSPD formulation

  • save_inThe displacement residuals

    C++ Type:std::vector

    Options:

    Description:The displacement residuals

  • stabilizationSELFAvailable stabilization options for Non-Ordinary State Based Peridynamics: FORCE SELF

    Default:SELF

    C++ Type:MooseEnum

    Options:FORCE SELF

    Description:Available stabilization options for Non-Ordinary State Based Peridynamics: FORCE SELF

  • strainSMALLStrain formulation

    Default:SMALL

    C++ Type:MooseEnum

    Options:SMALL FINITE

    Description:Strain formulation

  • temperatureNonlinear variable name for the temperature

    C++ Type:VariableName

    Options:

    Description:Nonlinear variable name for the temperature

Optional Parameters

Associated Actions

Available Actions