www.mooseframework.org
ComputePlaneIncrementalStrain.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 #include "SubblockIndexProvider.h"
14 
16 
17 template <>
19 
25 {
26 public:
27  static InputParameters validParams();
28 
29  ComputePlaneIncrementalStrain(const InputParameters & parameters);
30 
31 protected:
32  virtual Real computeOutOfPlaneGradDisp() override;
33  virtual Real computeOutOfPlaneGradDispOld() override;
34 
36  unsigned int getCurrentSubblockIndex() const
37  {
38  return _subblock_id_provider ? _subblock_id_provider->getSubblockIndex(*_current_elem) : 0;
39  };
40 
42 
44  unsigned int _nscalar_strains;
45  std::vector<const VariableValue *> _scalar_out_of_plane_strain;
46  std::vector<const VariableValue *> _scalar_out_of_plane_strain_old;
47 
49  const VariableValue & _out_of_plane_strain;
50  const VariableValue & _out_of_plane_strain_old;
51 };
SubblockIndexProvider.h
validParams< ComputePlaneIncrementalStrain >
InputParameters validParams< ComputePlaneIncrementalStrain >()
SubblockIndexProvider::getSubblockIndex
virtual unsigned int getSubblockIndex(const Elem &) const =0
The index of subblock this element is on.
SubblockIndexProvider
Abstract base class for user objects that provide an index for a given element that is independent of...
Definition: SubblockIndexProvider.h:24
ComputePlaneIncrementalStrain::_scalar_out_of_plane_strain_coupled
const bool _scalar_out_of_plane_strain_coupled
Definition: ComputePlaneIncrementalStrain.h:43
ComputePlaneIncrementalStrain::_subblock_id_provider
const SubblockIndexProvider * _subblock_id_provider
Definition: ComputePlaneIncrementalStrain.h:39
ComputePlaneIncrementalStrain
ComputePlaneIncrementalStrain defines strain increment for small strains in a 2D planar simulation.
Definition: ComputePlaneIncrementalStrain.h:24
ComputePlaneIncrementalStrain::ComputePlaneIncrementalStrain
ComputePlaneIncrementalStrain(const InputParameters &parameters)
Definition: ComputePlaneIncrementalStrain.C:31
ComputePlaneIncrementalStrain::getCurrentSubblockIndex
unsigned int getCurrentSubblockIndex() const
gets its subblock index for current element
Definition: ComputePlaneIncrementalStrain.h:36
ComputePlaneIncrementalStrain::_out_of_plane_strain_old
const VariableValue & _out_of_plane_strain_old
Definition: ComputePlaneIncrementalStrain.h:50
Compute2DIncrementalStrain.h
ComputePlaneIncrementalStrain::validParams
static InputParameters validParams()
Definition: ComputePlaneIncrementalStrain.C:17
ComputePlaneIncrementalStrain::_scalar_out_of_plane_strain_old
std::vector< const VariableValue * > _scalar_out_of_plane_strain_old
Definition: ComputePlaneIncrementalStrain.h:46
ComputePlaneIncrementalStrain::computeOutOfPlaneGradDispOld
virtual Real computeOutOfPlaneGradDispOld() override
Computes the old out-of-plane component of the displacement gradient; as a virtual function,...
Definition: ComputePlaneIncrementalStrain.C:69
ComputePlaneIncrementalStrain::_out_of_plane_strain
const VariableValue & _out_of_plane_strain
Definition: ComputePlaneIncrementalStrain.h:49
ComputePlaneIncrementalStrain::_scalar_out_of_plane_strain
std::vector< const VariableValue * > _scalar_out_of_plane_strain
Definition: ComputePlaneIncrementalStrain.h:45
ComputePlaneIncrementalStrain::computeOutOfPlaneGradDisp
virtual Real computeOutOfPlaneGradDisp() override
Computes the current out-of-plane component of the displacement gradient; as a virtual function,...
Definition: ComputePlaneIncrementalStrain.C:60
ComputePlaneIncrementalStrain::_out_of_plane_strain_coupled
const bool _out_of_plane_strain_coupled
Definition: ComputePlaneIncrementalStrain.h:48
ComputePlaneIncrementalStrain::_nscalar_strains
unsigned int _nscalar_strains
Definition: ComputePlaneIncrementalStrain.h:44
Compute2DIncrementalStrain
Compute2DIncrementalStrain defines a strain increment only for incremental strains in 2D geometries,...
Definition: Compute2DIncrementalStrain.h:26