https://mooseframework.inl.gov
ADComputeFiniteStrain.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 
14 
15 #define usingComputeFiniteStrainMembers \
16  usingComputeIncrementalStrainBaseMembers; \
17  using ADComputeFiniteStrainTempl<R2, R4>::_Fhat
18 
22 template <typename R2, typename R4>
24 {
25 public:
27 
29 
30  void computeProperties() override;
31 
33 
34 protected:
37 
38  virtual void computeQpStrain();
39  virtual void computeQpIncrements(ADR2 & e, ADRankTwoTensor & r);
40 
41  std::vector<ADRankTwoTensor> _Fhat;
42 
43  enum class DecompMethod
44  {
47  };
49 
51 };
52 
Moose::GenericType< R2, true > ADR2
ADComputeIncrementalStrainBase is the base class for strain tensors using incremental formulations...
typename std::conditional< is_ad, typename ADType< T >::type, T >::type GenericType
ADComputeFiniteStrainTempl< RankTwoTensor, RankFourTensor > ADComputeFiniteStrain
ADComputeFiniteStrainTempl(const InputParameters &parameters)
ADComputeFiniteStrain defines a strain increment and rotation increment, for finite strains...
std::vector< ADRankTwoTensor > _Fhat
static MooseEnum decompositionType()
static InputParameters validParams()
virtual void computeQpIncrements(ADR2 &e, ADRankTwoTensor &r)
const InputParameters & parameters() const
ADComputeFiniteStrainTempl< SymmetricRankTwoTensor, SymmetricRankFourTensor > ADSymmetricFiniteStrain
const DecompMethod _decomposition_method