www.mooseframework.org
Classes | Namespaces | Functions
SolidModel.h File Reference

Go to the source code of this file.

Classes

class  SolidModel
 SolidModel is the base class for all this module's solid mechanics material models. More...
 

Namespaces

 SolidMechanics
 

Functions

template<>
InputParameters validParams< SolidModel > ()
 

Function Documentation

◆ validParams< SolidModel >()

template<>
InputParameters validParams< SolidModel > ( )

Definition at line 31 of file SolidModel.C.

32 {
33  MooseEnum formulation(
34  "Nonlinear3D NonlinearRZ AxisymmetricRZ SphericalR Linear PlaneStrain NonlinearPlaneStrain");
35  MooseEnum compute_method("NoShearRetention ShearRetention");
36 
37  InputParameters params = validParams<Material>();
38  params.addParam<std::string>(
39  "appended_property_name", "", "Name appended to material properties to make them unique");
40  params.addParam<Real>("bulk_modulus", "The bulk modulus for the material.");
41  params.addParam<Real>("lambda", "Lame's first parameter for the material.");
42  params.addParam<Real>("poissons_ratio", "Poisson's ratio for the material.");
43  params.addParam<FunctionName>("poissons_ratio_function",
44  "Poisson's ratio as a function of temperature.");
45  params.addParam<Real>("shear_modulus", "The shear modulus of the material.");
46  params.addParam<Real>("youngs_modulus", "Young's modulus of the material.");
47  params.addParam<FunctionName>("youngs_modulus_function",
48  "Young's modulus as a function of temperature.");
49  params.addParam<Real>("thermal_expansion", "The thermal expansion coefficient.");
50  params.addParam<FunctionName>("thermal_expansion_function",
51  "Thermal expansion coefficient as a function of temperature.");
52  params.addCoupledVar("temp", "Coupled Temperature");
53  params.addParam<Real>(
54  "stress_free_temperature",
55  "The stress-free temperature. If not specified, the initial temperature is used.");
56  params.addParam<Real>("thermal_expansion_reference_temperature",
57  "Reference temperature for mean thermal expansion function.");
58  MooseEnum cte_function_type("instantaneous mean");
59  params.addParam<MooseEnum>("thermal_expansion_function_type",
60  cte_function_type,
61  "Type of thermal expansion function. Choices are: " +
62  cte_function_type.getRawNames());
63  params.addParam<std::vector<Real>>("initial_stress",
64  "The initial stress tensor (xx, yy, zz, xy, yz, zx)");
65  params.addParam<std::string>(
66  "cracking_release",
67  "abrupt",
68  "The cracking release type. Choices are abrupt (default) and exponential.");
69  params.addParam<Real>("cracking_stress",
70  0.0,
71  "The stress threshold beyond which cracking occurs. Must be positive.");
72  params.addParam<Real>(
73  "cracking_residual_stress",
74  0.0,
75  "The fraction of the cracking stress allowed to be maintained following a crack.");
76  params.addParam<Real>("cracking_beta", 1.0, "The coefficient used in the exponetional model.");
77  params.addParam<MooseEnum>(
78  "compute_method", compute_method, "The method used in the stress calculation.");
79  params.addParam<FunctionName>(
80  "cracking_stress_function", "", "The cracking stress as a function of time and location");
81  params.addParam<std::vector<unsigned int>>(
82  "active_crack_planes", "Planes on which cracks are allowed (0,1,2 -> x,z,theta in RZ)");
83  params.addParam<unsigned int>(
84  "max_cracks", 3, "The maximum number of cracks allowed at a material point.");
85  params.addParam<Real>("cracking_neg_fraction",
86  "The fraction of the cracking strain at which a "
87  "transitition begins during decreasing strain to "
88  "the original stiffness.");
89  params.addParam<MooseEnum>("formulation",
90  formulation,
91  "Element formulation. Choices are: " + formulation.getRawNames());
92  params.addParam<std::string>("increment_calculation",
93  "RashidApprox",
94  "The algorithm to use when computing the "
95  "incremental strain and rotation (RashidApprox or "
96  "Eigen). For use with Nonlinear3D/RZ formulation.");
97  params.addParam<bool>("large_strain",
98  false,
99  "Whether to include large strain terms in "
100  "AxisymmetricRZ, SphericalR, and PlaneStrain "
101  "formulations.");
102  params.addParam<bool>("compute_JIntegral", false, "Whether to compute the J Integral.");
103  params.addParam<bool>(
104  "compute_InteractionIntegral", false, "Whether to compute the Interaction Integral.");
105  params.addCoupledVar("disp_r", "The r displacement");
106  params.addCoupledVar("disp_x", "The x displacement");
107  params.addCoupledVar("disp_y", "The y displacement");
108  params.addCoupledVar("disp_z", "The z displacement");
109  params.addCoupledVar("strain_zz", "The zz strain");
110  params.addCoupledVar("scalar_strain_zz", "The zz strain (scalar variable)");
111  params.addParam<std::vector<std::string>>(
112  "dep_matl_props", "Names of material properties this material depends on.");
113  params.addParam<std::string>("constitutive_model", "ConstitutiveModel to use (optional)");
114  params.addParam<bool>("volumetric_locking_correction",
115  true,
116  "Set to false to turn off volumetric locking correction");
117  return params;
118 }

Referenced by validParams< AbaqusCreepMaterial >(), validParams< AbaqusUmatMaterial >(), validParams< CLSHPlasticMaterial >(), validParams< ConstitutiveModel >(), validParams< Elastic >(), validParams< LinearStrainHardening >(), validParams< PLC_LSH >(), and validParams< PowerLawCreep >().