www.mooseframework.org
Functions
DomainIntegralAction.C File Reference

Go to the source code of this file.

Functions

template<>
InputParameters validParams< DomainIntegralAction > ()
 

Function Documentation

template<>
InputParameters validParams< DomainIntegralAction > ( )

Definition at line 20 of file DomainIntegralAction.C.

21 {
22  InputParameters params = validParams<Action>();
24  MultiMooseEnum integral_vec("JIntegral InteractionIntegralKI InteractionIntegralKII "
25  "InteractionIntegralKIII InteractionIntegralT");
26  params.addRequiredParam<MultiMooseEnum>("integrals",
27  integral_vec,
28  "Domain integrals to calculate. Choices are: " +
29  integral_vec.getRawNames());
30  params.addParam<std::vector<BoundaryName>>(
31  "boundary", "The list of boundary IDs from the mesh where this boundary condition applies");
32  params.addParam<std::vector<Point>>("crack_front_points", "Set of points to define crack front");
33  params.addParam<std::string>(
34  "order", "FIRST", "Specifies the order of the FE shape function to use for q AuxVariables");
35  params.addParam<std::string>(
36  "family", "LAGRANGE", "Specifies the family of FE shape functions to use for q AuxVariables");
37  params.addParam<std::vector<Real>>("radius_inner", "Inner radius for volume integral domain");
38  params.addParam<std::vector<Real>>("radius_outer", "Outer radius for volume integral domain");
39  params.addParam<unsigned int>("ring_first",
40  "The first ring of elements for volume integral domain");
41  params.addParam<unsigned int>("ring_last",
42  "The last ring of elements for volume integral domain");
43  params.addParam<std::vector<VariableName>>(
44  "output_variable", "Variable values to be reported along the crack front");
45  params.addParam<bool>(
46  "convert_J_to_K", false, "Convert J-integral to stress intensity factor K.");
47  params.addParam<Real>("poissons_ratio", "Poisson's ratio");
48  params.addParam<Real>("youngs_modulus", "Young's modulus");
49  params.addParam<std::vector<SubdomainName>>("block", "The block ids where integrals are defined");
50 
51  params.addParam<std::vector<VariableName>>(
52  "displacements",
53  "The displacements appropriate for the simulation geometry and coordinate system");
54  params.addParam<VariableName>("disp_x", "The x displacement");
55  params.addParam<VariableName>("disp_y", "The y displacement");
56  params.addParam<VariableName>("disp_z", "The z displacement");
57  params.addParam<VariableName>("temp", "", "The temperature");
58  MooseEnum position_type("Angle Distance", "Distance");
59  params.addParam<MooseEnum>(
60  "position_type",
61  position_type,
62  "The method used to calculate position along crack front. Options are: " +
63  position_type.getRawNames());
64  MooseEnum q_function_type("Geometry Topology", "Geometry");
65  params.addParam<MooseEnum>("q_function_type",
66  q_function_type,
67  "The method used to define the integration domain. Options are: " +
68  q_function_type.getRawNames());
69  params.addParam<bool>(
70  "equivalent_k",
71  false,
72  "Calculate an equivalent K from KI, KII and KIII, assuming self-similar crack growth.");
73  params.addParam<bool>("output_q", true, "Output q");
74  params.addParam<bool>("solid_mechanics",
75  false,
76  "Set to true if the solid_mechanics system is "
77  "used. This option is only needed for "
78  "interaction integrals.");
79  params.addParam<std::vector<MaterialPropertyName>>(
80  "eigenstrain_names", "List of eigenstrains applied in the strain calculation");
81  return params;
82 }
void addCrackFrontDefinitionParams(InputParameters &params)