www.mooseframework.org
ADComputeFiniteStrain.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 
13 
14 #define usingComputeFiniteStrainMembers \
15  usingComputeIncrementalStrainBaseMembers; \
16  using ADComputeFiniteStrain<compute_stage>::_Fhat; \
17  using ADComputeFiniteStrain<compute_stage>::computeQpStrain; \
18  using ADComputeFiniteStrain<compute_stage>::computeQpIncrements
19 
20 template <ComputeStage>
22 
24 
28 template <ComputeStage compute_stage>
29 class ADComputeFiniteStrain : public ADComputeIncrementalStrainBase<compute_stage>
30 {
31 public:
32  static InputParameters validParams();
33 
34  ADComputeFiniteStrain(const InputParameters & parameters);
35 
36  void computeProperties() override;
37 
38  static MooseEnum decompositionType();
39 
40 protected:
41  virtual void computeQpStrain();
42  virtual void computeQpIncrements(ADRankTwoTensor & e, ADRankTwoTensor & r);
43 
44  std::vector<ADRankTwoTensor> _Fhat;
45 
46 private:
47  enum class DecompMethod
48  {
51  };
52 
54 
55 protected:
57 };
ADComputeFiniteStrain::DecompMethod::TaylorExpansion
ADComputeFiniteStrain::usingComputeIncrementalStrainBaseMembers
usingComputeIncrementalStrainBaseMembers
Definition: ADComputeFiniteStrain.h:56
ADComputeFiniteStrain::DecompMethod::EigenSolution
ADComputeFiniteStrain::_Fhat
std::vector< ADRankTwoTensor > _Fhat
Definition: ADComputeFiniteStrain.h:44
ADComputeFiniteStrain::computeProperties
void computeProperties() override
Definition: ADComputeFiniteStrain.C:50
ADComputeFiniteStrain::_decomposition_method
const DecompMethod _decomposition_method
Definition: ADComputeFiniteStrain.h:53
ADComputeFiniteStrain::validParams
static InputParameters validParams()
Definition: ADComputeFiniteStrain.C:28
ADComputeFiniteStrain::DecompMethod
DecompMethod
Definition: ADComputeFiniteStrain.h:47
ADComputeFiniteStrain::computeQpStrain
virtual void computeQpStrain()
Definition: ADComputeFiniteStrain.C:95
ADComputeFiniteStrain
ADComputeFiniteStrain defines a strain increment and rotation increment, for finite strains.
Definition: ADComputeFiniteStrain.h:21
ADComputeFiniteStrain::decompositionType
static MooseEnum decompositionType()
Definition: ADComputeFiniteStrain.C:21
ADComputeIncrementalStrainBase.h
ADComputeIncrementalStrainBase
ADComputeIncrementalStrainBase is the base class for strain tensors using incremental formulations.
Definition: ADComputeIncrementalStrainBase.h:26
ADComputeFiniteStrain::computeQpIncrements
virtual void computeQpIncrements(ADRankTwoTensor &e, ADRankTwoTensor &r)
Definition: ADComputeFiniteStrain.C:128
ADComputeFiniteStrain::ADComputeFiniteStrain
ADComputeFiniteStrain(const InputParameters &parameters)
Definition: ADComputeFiniteStrain.C:40
declareADValidParams
declareADValidParams(ADComputeFiniteStrain)