www.mooseframework.org
ComputeFiniteStrainNOSPD.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 "ComputeStrainBaseNOSPD.h"
13 #include "RankTwoTensor.h"
14 
16 
17 template <>
19 
24 {
25 public:
26  ComputeFiniteStrainNOSPD(const InputParameters & parameters);
27 
28  static MooseEnum decompositionType();
29 
30 protected:
31  virtual void computeQpStrain() override;
32  virtual void computeQpFhat();
33 
38 
44 
46  MaterialProperty<RankTwoTensor> & _strain_rate;
47  MaterialProperty<RankTwoTensor> & _strain_increment;
48  MaterialProperty<RankTwoTensor> & _rotation_increment;
50 
52  const MaterialProperty<RankTwoTensor> & _deformation_gradient_old;
53  const MaterialProperty<RankTwoTensor> & _mechanical_strain_old;
54  const MaterialProperty<RankTwoTensor> & _total_strain_old;
55  std::vector<const MaterialProperty<RankTwoTensor> *> _eigenstrains_old;
57 
59  std::vector<RankTwoTensor> _Fhat;
60 
61 private:
63  enum class DecompMethod
64  {
67  };
70 };
ComputeFiniteStrainNOSPD::_mechanical_strain_old
const MaterialProperty< RankTwoTensor > & _mechanical_strain_old
Definition: ComputeFiniteStrainNOSPD.h:53
ComputeFiniteStrainNOSPD::DecompMethod::EigenSolution
validParams< ComputeFiniteStrainNOSPD >
InputParameters validParams< ComputeFiniteStrainNOSPD >()
Definition: ComputeFiniteStrainNOSPD.C:24
ComputeFiniteStrainNOSPD::_decomposition_method
const DecompMethod _decomposition_method
Definition: ComputeFiniteStrainNOSPD.h:68
ComputeFiniteStrainNOSPD::_strain_rate
MaterialProperty< RankTwoTensor > & _strain_rate
Material properties to store.
Definition: ComputeFiniteStrainNOSPD.h:46
ComputeFiniteStrainNOSPD::subtractEigenstrainIncrementFromStrain
void subtractEigenstrainIncrementFromStrain(RankTwoTensor &strain)
Function to compute the mechanical strain tensor by subtracting thermal strain from the total strain.
Definition: ComputeFiniteStrainNOSPD.C:199
ComputeStrainBaseNOSPD
Base material class for correspondence material model.
Definition: ComputeStrainBaseNOSPD.h:24
ComputeFiniteStrainNOSPD::DecompMethod::TaylorExpansion
ComputeFiniteStrainNOSPD::_rotation_increment
MaterialProperty< RankTwoTensor > & _rotation_increment
Definition: ComputeFiniteStrainNOSPD.h:48
ComputeFiniteStrainNOSPD::DecompMethod
DecompMethod
Method to decompose into rotation increment and strain increment.
Definition: ComputeFiniteStrainNOSPD.h:63
ComputeFiniteStrainNOSPD
Material class for bond-associated correspondence material model for finite strain.
Definition: ComputeFiniteStrainNOSPD.h:23
ComputeFiniteStrainNOSPD::computeQpStrain
virtual void computeQpStrain() override
Function to compute strain tensors.
Definition: ComputeFiniteStrainNOSPD.C:56
ComputeFiniteStrainNOSPD::_total_strain_old
const MaterialProperty< RankTwoTensor > & _total_strain_old
Definition: ComputeFiniteStrainNOSPD.h:54
ComputeFiniteStrainNOSPD::_eigenstrains_old
std::vector< const MaterialProperty< RankTwoTensor > * > _eigenstrains_old
Definition: ComputeFiniteStrainNOSPD.h:55
ComputeStrainBaseNOSPD.h
ComputeFiniteStrainNOSPD::_deformation_gradient_old
const MaterialProperty< RankTwoTensor > & _deformation_gradient_old
Material properties to fetch.
Definition: ComputeFiniteStrainNOSPD.h:52
ComputeFiniteStrainNOSPD::computeQpFhat
virtual void computeQpFhat()
Definition: ComputeFiniteStrainNOSPD.C:89
ComputeFiniteStrainNOSPD::ComputeFiniteStrainNOSPD
ComputeFiniteStrainNOSPD(const InputParameters &parameters)
Definition: ComputeFiniteStrainNOSPD.C:39
ComputeFiniteStrainNOSPD::_strain_increment
MaterialProperty< RankTwoTensor > & _strain_increment
Definition: ComputeFiniteStrainNOSPD.h:47
RankTwoTensorTempl< Real >
ComputeFiniteStrainNOSPD::decompositionType
static MooseEnum decompositionType()
Definition: ComputeFiniteStrainNOSPD.C:17
ComputeFiniteStrainNOSPD::computeQpStrainRotationIncrements
void computeQpStrainRotationIncrements(RankTwoTensor &e, RankTwoTensor &r)
Function to compute strain and rotational increments.
Definition: ComputeFiniteStrainNOSPD.C:97
ComputeFiniteStrainNOSPD::_Fhat
std::vector< RankTwoTensor > _Fhat
'Incremental' deformation gradient
Definition: ComputeFiniteStrainNOSPD.h:59