https://mooseframework.inl.gov
Loading...
Searching...
No Matches
CrystalPlasticityStateVarRateComponentVoce.h
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://mooseframework.inl.gov
3//*
4//* All rights reserved, see COPYRIGHT for full restrictions
5//* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6//*
7//* Licensed under LGPL 2.1, please see LICENSE for details
8//* https://www.gnu.org/licenses/lgpl-2.1.html
9
10#pragma once
11
13#include "MooseTypes.h"
14
19{
20public:
22
24
26 virtual bool calcStateVariableEvolutionRateComponent(unsigned int qp,
27 std::vector<Real> & val) const;
28
31
32protected:
35
38
40 std::vector<unsigned int> _groups;
41 std::vector<Real> _h0_group_values;
42 std::vector<Real> _tau0_group_values;
43 std::vector<Real> _tauSat_group_values;
45 std::vector<Real> _selfHardening_group_values;
49
51 const unsigned int _n_groups;
52
54 std::vector<unsigned int> _slipSystem_PlaneID;
56 std::vector<unsigned int> _slipSystem_GroupID;
57
60 virtual void initSlipSystemPlaneID(std::vector<unsigned int> & _slipSystem_PlaneID) const;
61
64 virtual void initSlipSystemGroupID(std::vector<unsigned int> & _slipSystem_GroupID) const;
65
67 virtual Real getHardeningCoefficient(unsigned int slipSystemIndex_i,
68 unsigned int slipSystemIndex_j) const;
69};
Phenomenological constitutive model state variable evolution rate component userobject class.
std::vector< unsigned int > _slipSystem_GroupID
the vector associating a slip system to its groud ID
static MooseEnum crystalLatticeTypeOptions()
class for switching between different crystal lattice types
virtual bool calcStateVariableEvolutionRateComponent(unsigned int qp, std::vector< Real > &val) const
computing the slip system hardening rate
const MaterialProperty< std::vector< Real > > & _mat_prop_slip_rate
const MaterialProperty< std::vector< Real > > & _mat_prop_state_var
virtual Real getHardeningCoefficient(unsigned int slipSystemIndex_i, unsigned int slipSystemIndex_j) const
method retriving the appropiate self/latent hardening coefficient
MooseEnum _crystal_lattice_type
the variable to switch crystal lattice type (i.e. FCC or BCC)
virtual void initSlipSystemPlaneID(std::vector< unsigned int > &_slipSystem_PlaneID) const
method associating slip system to their group by generating a vector containing the association betwe...
const unsigned int _n_groups
the number of slip system groups
std::vector< unsigned int > _groups
the vectors of the input paramters
virtual void initSlipSystemGroupID(std::vector< unsigned int > &_slipSystem_GroupID) const
method associating slip system to their slip plane by generating a vector containing the association ...
std::vector< unsigned int > _slipSystem_PlaneID
the vector associating a slip system to its slip plane ID
Crystal plasticity state variable evolution rate component userobject base class.
const InputParameters & parameters() const