www.mooseframework.org
CrystalPlasticityStateVariable.h
Go to the documentation of this file.
1 /****************************************************************/
2 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
3 /* */
4 /* All contents are licensed under LGPL V2.1 */
5 /* See LICENSE for full restrictions */
6 /****************************************************************/
7 #ifndef CRYSTALPLASTICITYSTATEVARIABLE_H
8 #define CRYSTALPLASTICITYSTATEVARIABLE_H
9 
11 
13 
14 template <>
16 
21 {
22 public:
23  CrystalPlasticityStateVariable(const InputParameters & parameters);
24 
25  virtual bool updateStateVariable(unsigned int qp, Real dt, std::vector<Real> & val) const;
26  virtual void initSlipSysProps(std::vector<Real> & val, const Point & q_point) const;
27 
28 protected:
29  virtual void readInitialValueFromFile(std::vector<Real> & val) const;
30 
31  virtual void readInitialValueFromInline(std::vector<Real> & val) const;
32 
33  virtual void provideInitialValueByUser(std::vector<Real> & /*val*/,
34  const Point & /*q_point*/) const;
35 
37 
38  std::vector<const MaterialProperty<std::vector<Real>> *> _mat_prop_state_var_evol_rate_comps;
39 
40  const MaterialProperty<std::vector<Real>> & _mat_prop_state_var;
41  const MaterialProperty<std::vector<Real>> & _mat_prop_state_var_old;
42 
45 
47  MooseEnum _intvar_read_type;
48 
54  std::vector<unsigned int> _groups;
55 
60  std::vector<Real> _group_values;
61 
63  Real _zero;
64 
66  std::vector<Real> _scale_factor;
67 };
68 
69 #endif // CRYSTALPLASTICITYSTATEVARIABLE_H
MooseEnum _intvar_read_type
Read from options for initial values of internal variables.
const MaterialProperty< std::vector< Real > > & _mat_prop_state_var_old
InputParameters validParams< CrystalPlasticityStateVariable >()
virtual bool updateStateVariable(unsigned int qp, Real dt, std::vector< Real > &val) const
std::vector< unsigned int > _groups
The _groups variable is used to group slip systems and assign the initial values to each group...
virtual void provideInitialValueByUser(std::vector< Real > &, const Point &) const
Crystal plasticity system userobject base class.
const MaterialProperty< std::vector< Real > > & _mat_prop_state_var
CrystalPlasticityStateVariable(const InputParameters &parameters)
std::vector< Real > _scale_factor
Scale factor of individual component.
std::vector< const MaterialProperty< std::vector< Real > > * > _mat_prop_state_var_evol_rate_comps
virtual void readInitialValueFromInline(std::vector< Real > &val) const
FileName _state_variable_file_name
File should contain initial values of the state variable.
std::vector< Real > _group_values
The _group_values are the initial values corresponding to each group.
Crystal plasticity state variable userobject class.
virtual void readInitialValueFromFile(std::vector< Real > &val) const
virtual void initSlipSysProps(std::vector< Real > &val, const Point &q_point) const
Real _zero
Numerical zero for internal variable.