www.mooseframework.org
ADComputeIncrementalStrainBase.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
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 
12 #include "ADComputeStrainBase.h"
13 
14 #define usingComputeIncrementalStrainBaseMembers \
15  usingComputeStrainBaseMembers; \
16  using ADComputeIncrementalStrainBaseTempl<R2>::_grad_disp_old; \
17  using ADComputeIncrementalStrainBaseTempl<R2>::_strain_rate; \
18  using ADComputeIncrementalStrainBaseTempl<R2>::_strain_increment; \
19  using ADComputeIncrementalStrainBaseTempl<R2>::_rotation_increment; \
20  using ADComputeIncrementalStrainBaseTempl<R2>::_mechanical_strain_old; \
21  using ADComputeIncrementalStrainBaseTempl<R2>::_total_strain_old; \
22  using ADComputeIncrementalStrainBaseTempl<R2>::_eigenstrains_old
23 
28 template <typename R2>
30 {
31 public:
33 
35 
36  void initialSetup() override;
37 
38 protected:
40 
41  virtual void initQpStatefulProperties() override;
42 
44 
45  std::vector<const VariableGradient *> _grad_disp_old;
46 
50 
53 
54  std::vector<const MaterialProperty<R2> *> _eigenstrains_old;
55 
57 };
58 
const MaterialProperty< R2 > & _mechanical_strain_old
ADComputeIncrementalStrainBaseTempl< RankTwoTensor > ADComputeIncrementalStrainBase
ADComputeIncrementalStrainBaseTempl< SymmetricRankTwoTensor > ADSymmetricIncrementalStrainBase
ADComputeIncrementalStrainBaseTempl(const InputParameters &parameters)
std::vector< const MaterialProperty< R2 > * > _eigenstrains_old
ADMaterialProperty< RankTwoTensor > & _rotation_increment
ADComputeIncrementalStrainBase is the base class for strain tensors using incremental formulations...
typename std::conditional< is_ad, typename ADType< T >::type, T >::type GenericType
ADComputeStrainBase is the base class for strain tensors.
std::vector< const VariableGradient * > _grad_disp_old
const MaterialProperty< R2 > & _total_strain_old
const InputParameters & parameters() const