www.mooseframework.org
ComputeAxisymmetric1DIncrementalStrain.h
Go to the documentation of this file.
1 /****************************************************************/
2 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
3 /* */
4 /* All contents are licensed under LGPL V2.1 */
5 /* See LICENSE for full restrictions */
6 /****************************************************************/
7 #ifndef COMPUTEAXISYMMETRIC1DINCREMENTALSTRAIN_H
8 #define COMPUTEAXISYMMETRIC1DINCREMENTALSTRAIN_H
9 
11 #include "SubblockIndexProvider.h"
12 
19 {
20 public:
21  ComputeAxisymmetric1DIncrementalStrain(const InputParameters & parameters);
22 
23 protected:
24  void initialSetup() override;
25 
27  Real computeGradDispYY() override;
28 
30  Real computeGradDispYYOld() override;
31 
34  Real computeGradDispZZ() override;
35 
38  Real computeGradDispZZOld() override;
39 
41  unsigned int getCurrentSubblockIndex() const
42  {
43  return _subblock_id_provider ? _subblock_id_provider->getSubblockIndex(*_current_elem) : 0;
44  };
45 
47  const VariableValue & _disp_old_0;
48 
50 
52  const VariableValue & _out_of_plane_strain;
53  const VariableValue & _out_of_plane_strain_old;
54 
56  unsigned int _nscalar_strains;
57  std::vector<const VariableValue *> _scalar_out_of_plane_strain;
58  std::vector<const VariableValue *> _scalar_out_of_plane_strain_old;
59 };
60 
61 #endif // COMPUTEAXISYMMETRIC1DINCREMENTALSTRAIN_H
std::vector< const VariableValue * > _scalar_out_of_plane_strain_old
ComputeAxisymmetric1DIncrementalStrain defines a strain increment only for incremental small strains ...
Real computeGradDispZZOld() override
Computes the old dUz/dz for axisymmetric problems, where .
virtual unsigned int getSubblockIndex(const Elem &) const =0
The index of subblock this element is on.
Abstract base class for user objects that provide an index for a given element that is independent of...
unsigned int getCurrentSubblockIndex() const
gets its subblock index for current element
Compute1DIncrementalStrain defines a strain increment only for incremental small strains in 1D proble...
Real computeGradDispYYOld() override
Computes the old dUy/dy for axisymmetric problems.
const VariableValue & _disp_old_0
the old value of the first component of the displacements vector
Real computeGradDispYY() override
Computes the current dUy/dy for axisymmetric problems.
Real computeGradDispZZ() override
Computes the current dUz/dz for axisymmetric problems, where .
std::vector< const VariableValue * > _scalar_out_of_plane_strain
ComputeAxisymmetric1DIncrementalStrain(const InputParameters &parameters)