www.mooseframework.org
PlaneStrain.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 "Element.h"
13 #include "ScalarCoupleable.h"
14 
15 namespace SolidMechanics
16 {
17 
18 class PlaneStrain : public Element, public ScalarCoupleable
19 {
20 public:
21  PlaneStrain(SolidModel & solid_model,
22  const std::string & name,
23  const InputParameters & parameters);
24  virtual ~PlaneStrain();
25 
26 protected:
27  virtual void computeStrain(const unsigned qp,
28  const SymmTensor & total_strain_old,
29  SymmTensor & total_strain_new,
30  SymmTensor & strain_increment);
31 
32  virtual void computeDeformationGradient(unsigned int qp, ColumnMajorMatrix & F);
33 
34  virtual unsigned int getNumKnownCrackDirs() const { return 1; }
35 
36  const bool _large_strain;
37 
38  const VariableGradient & _grad_disp_x;
39  const VariableGradient & _grad_disp_y;
41  const VariableValue & _strain_zz;
43  const VariableValue & _scalar_strain_zz;
45 };
46 }
47 
SolidMechanics::PlaneStrain::~PlaneStrain
virtual ~PlaneStrain()
Definition: PlaneStrain.C:35
SolidMechanics::PlaneStrain::getNumKnownCrackDirs
virtual unsigned int getNumKnownCrackDirs() const
Definition: PlaneStrain.h:34
SolidMechanics::PlaneStrain::_have_scalar_strain_zz
bool _have_scalar_strain_zz
Definition: PlaneStrain.h:42
SolidMechanics::PlaneStrain::_have_strain_zz
bool _have_strain_zz
Definition: PlaneStrain.h:40
Element.h
SolidMechanics
Definition: AxisymmetricRZ.h:16
SolidMechanics::PlaneStrain::_strain_zz
const VariableValue & _strain_zz
Definition: PlaneStrain.h:41
SolidMechanics::PlaneStrain::PlaneStrain
PlaneStrain(SolidModel &solid_model, const std::string &name, const InputParameters &parameters)
Definition: PlaneStrain.C:17
SolidModel
SolidModel is the base class for all this module's solid mechanics material models.
Definition: SolidModel.h:33
SolidMechanics::PlaneStrain::_grad_disp_x
const VariableGradient & _grad_disp_x
Definition: PlaneStrain.h:38
name
const std::string name
Definition: Setup.h:21
SolidMechanics::PlaneStrain::computeDeformationGradient
virtual void computeDeformationGradient(unsigned int qp, ColumnMajorMatrix &F)
Definition: PlaneStrain.C:116
SolidMechanics::Element
Element is the base class for all of this module's solid mechanics element formulations.
Definition: Element.h:25
SymmTensor
Definition: SymmTensor.h:21
SolidMechanics::PlaneStrain::_large_strain
const bool _large_strain
Definition: PlaneStrain.h:36
SolidMechanics::PlaneStrain::_scalar_strain_zz
const VariableValue & _scalar_strain_zz
Definition: PlaneStrain.h:43
SolidMechanics::PlaneStrain::computeStrain
virtual void computeStrain(const unsigned qp, const SymmTensor &total_strain_old, SymmTensor &total_strain_new, SymmTensor &strain_increment)
Definition: PlaneStrain.C:38
SolidMechanics::PlaneStrain
Definition: PlaneStrain.h:18
SolidMechanics::PlaneStrain::_volumetric_locking_correction
const bool _volumetric_locking_correction
Definition: PlaneStrain.h:44
SolidMechanics::PlaneStrain::_grad_disp_y
const VariableGradient & _grad_disp_y
Definition: PlaneStrain.h:39