www.mooseframework.org
Functions
FiniteStrainCrystalPlasticity.C File Reference

Go to the source code of this file.

Functions

template<>
InputParameters validParams< FiniteStrainCrystalPlasticity > ()
 

Function Documentation

template<>
InputParameters validParams< FiniteStrainCrystalPlasticity > ( )

Definition at line 15 of file FiniteStrainCrystalPlasticity.C.

Referenced by validParams< FiniteStrainCPSlipRateRes >().

16 {
17  InputParameters params = validParams<ComputeStressBase>();
18  params.addClassDescription(
19  "Crystal Plasticity base class: FCC system with power law flow rule implemented");
20  params.addRequiredParam<int>("nss", "Number of slip systems");
21  params.addParam<std::vector<Real>>("gprops", "Initial values of slip system resistances");
22  params.addParam<std::vector<Real>>("hprops", "Hardening properties");
23  params.addParam<std::vector<Real>>("flowprops", "Parameters used in slip rate equations");
24  params.addRequiredParam<FileName>("slip_sys_file_name",
25  "Name of the file containing the slip system");
26  params.addParam<FileName>(
27  "slip_sys_res_prop_file_name",
28  "",
29  "Name of the file containing the initial values of slip system resistances");
30  params.addParam<FileName>(
31  "slip_sys_flow_prop_file_name",
32  "",
33  "Name of the file containing the values of slip rate equation parameters");
34  params.addParam<FileName>(
35  "slip_sys_hard_prop_file_name",
36  "",
37  "Name of the file containing the values of hardness evolution parameters");
38  params.addParam<Real>("rtol", 1e-6, "Constitutive stress residue relative tolerance");
39  params.addParam<Real>("abs_tol", 1e-6, "Constitutive stress residue absolute tolerance");
40  params.addParam<Real>("gtol", 1e2, "Constitutive slip system resistance residual tolerance");
41  params.addParam<Real>("slip_incr_tol", 2e-2, "Maximum allowable slip in an increment");
42  params.addParam<unsigned int>("maxiter", 100, "Maximum number of iterations for stress update");
43  params.addParam<unsigned int>(
44  "maxitergss", 100, "Maximum number of iterations for slip system resistance update");
45  params.addParam<unsigned int>(
46  "num_slip_sys_flowrate_props",
47  2,
48  "Number of flow rate properties for a slip system"); // Used for reading flow rate parameters
49  params.addParam<UserObjectName>("read_prop_user_object",
50  "The ElementReadPropertyFile "
51  "GeneralUserObject to read element "
52  "specific property values from file");
53  MooseEnum tan_mod_options("exact none", "none"); // Type of read
54  params.addParam<MooseEnum>("tan_mod_type",
55  tan_mod_options,
56  "Type of tangent moduli for preconditioner: default elastic");
57  MooseEnum intvar_read_options("slip_sys_file slip_sys_res_file none", "none");
58  params.addParam<MooseEnum>(
59  "intvar_read_type",
60  intvar_read_options,
61  "Read from options for initial value of internal variables: Default from .i file");
62  params.addParam<unsigned int>("num_slip_sys_props",
63  0,
64  "Number of slip system specific properties provided in the file "
65  "containing slip system normals and directions");
66  params.addParam<bool>(
67  "gen_random_stress_flag",
68  false,
69  "Flag to generate random stress to perform time cutback on constitutive failure");
70  params.addParam<bool>("input_random_scaling_var",
71  false,
72  "Flag to input scaling variable: _Cijkl(0,0,0,0) when false");
73  params.addParam<Real>("random_scaling_var",
74  1e9,
75  "Random scaling variable: Large value can cause non-positive definiteness");
76  params.addParam<unsigned int>(
77  "random_seed",
78  2000,
79  "Random integer used to generate random stress when constitutive failure occurs");
80  params.addParam<unsigned int>(
81  "maximum_substep_iteration", 1, "Maximum number of substep iteration");
82  params.addParam<bool>("use_line_search", false, "Use line search in constitutive update");
83  params.addParam<Real>("min_line_search_step_size", 0.01, "Minimum line search step size");
84  params.addParam<Real>("line_search_tol", 0.5, "Line search bisection method tolerance");
85  params.addParam<unsigned int>(
86  "line_search_maxiter", 20, "Line search bisection method maximum number of iteration");
87  MooseEnum line_search_method("CUT_HALF BISECTION", "CUT_HALF");
88  params.addParam<MooseEnum>(
89  "line_search_method", line_search_method, "The method used in line search");
90 
91  return params;
92 }
InputParameters validParams< ComputeStressBase >()