www.mooseframework.org
NonlinearRZ.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 "Nonlinear.h"
13 
14 namespace SolidMechanics
15 {
16 
20 class NonlinearRZ : public Nonlinear
21 {
22 public:
23  NonlinearRZ(SolidModel & solid_model,
24  const std::string & name,
25  const InputParameters & parameters);
26 
27  virtual ~NonlinearRZ();
28 
29  const VariableGradient & _grad_disp_r;
30  const VariableGradient & _grad_disp_z;
31  const VariableGradient & _grad_disp_r_old;
32  const VariableGradient & _grad_disp_z_old;
33  const VariableValue & _disp_r;
34  const VariableValue & _disp_r_old;
35 
36 protected:
37  virtual void computeDeformationGradient(unsigned int qp, ColumnMajorMatrix & F);
38  virtual void fillMatrix(unsigned int qp,
39  const VariableGradient & grad_r,
40  const VariableGradient & grad_z,
41  const VariableValue & u,
42  ColumnMajorMatrix & A) const;
43 
44  virtual Real volumeRatioOld(unsigned qp) const;
45 
46  virtual void computeIncrementalDeformationGradient(std::vector<ColumnMajorMatrix> & Fhat);
48 };
49 
50 } // namespace solid_mechanics
51 
SolidMechanics::NonlinearRZ::_grad_disp_r
const VariableGradient & _grad_disp_r
Definition: NonlinearRZ.h:29
SolidMechanics::NonlinearRZ::_grad_disp_z_old
const VariableGradient & _grad_disp_z_old
Definition: NonlinearRZ.h:32
SolidMechanics::NonlinearRZ::computeIncrementalDeformationGradient
virtual void computeIncrementalDeformationGradient(std::vector< ColumnMajorMatrix > &Fhat)
Definition: NonlinearRZ.C:42
SolidMechanics::Nonlinear::Fhat
const std::vector< ColumnMajorMatrix > & Fhat() const
Definition: Nonlinear.h:33
Nonlinear.h
SolidMechanics
Definition: AxisymmetricRZ.h:16
SolidMechanics::NonlinearRZ
NonlinearRZ is the base class for all RZ nonlinear solid mechanics material models.
Definition: NonlinearRZ.h:20
SolidMechanics::NonlinearRZ::volumeRatioOld
virtual Real volumeRatioOld(unsigned qp) const
Definition: NonlinearRZ.C:153
SolidMechanics::NonlinearRZ::computeDeformationGradient
virtual void computeDeformationGradient(unsigned int qp, ColumnMajorMatrix &F)
Definition: NonlinearRZ.C:112
SolidModel
SolidModel is the base class for all this module's solid mechanics material models.
Definition: SolidModel.h:33
name
const std::string name
Definition: Setup.h:21
SolidMechanics::NonlinearRZ::~NonlinearRZ
virtual ~NonlinearRZ()
Definition: NonlinearRZ.C:37
SolidMechanics::NonlinearRZ::_disp_r
const VariableValue & _disp_r
Definition: NonlinearRZ.h:33
SolidMechanics::NonlinearRZ::NonlinearRZ
NonlinearRZ(SolidModel &solid_model, const std::string &name, const InputParameters &parameters)
Definition: NonlinearRZ.C:20
SolidMechanics::NonlinearRZ::_disp_r_old
const VariableValue & _disp_r_old
Definition: NonlinearRZ.h:34
SolidMechanics::NonlinearRZ::_grad_disp_z
const VariableGradient & _grad_disp_z
Definition: NonlinearRZ.h:30
SolidMechanics::NonlinearRZ::_grad_disp_r_old
const VariableGradient & _grad_disp_r_old
Definition: NonlinearRZ.h:31
SolidMechanics::NonlinearRZ::_volumetric_locking_correction
const bool _volumetric_locking_correction
Definition: NonlinearRZ.h:47
SolidMechanics::NonlinearRZ::fillMatrix
virtual void fillMatrix(unsigned int qp, const VariableGradient &grad_r, const VariableGradient &grad_z, const VariableValue &u, ColumnMajorMatrix &A) const
Definition: NonlinearRZ.C:131
SolidMechanics::Nonlinear
Nonlinear is the base class for all large strain/rotation models.
Definition: Nonlinear.h:24