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

template<>
InputParameters validParams< SolidModel > ( )

Definition at line 27 of file SolidModel.C.

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

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