www.mooseframework.org
Nonlinear3D.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 // Forward declarations
15 class MaterialModel;
16 class VolumetricModel;
17 
18 namespace SolidMechanics
19 {
20 
24 class Nonlinear3D : public Nonlinear
25 {
26 public:
27  Nonlinear3D(SolidModel & solid_model,
28  const std::string & name,
29  const InputParameters & parameters);
30 
31  virtual ~Nonlinear3D();
32 
33 protected:
34  const VariableGradient & _grad_disp_x;
35  const VariableGradient & _grad_disp_y;
36  const VariableGradient & _grad_disp_z;
37  const VariableGradient & _grad_disp_x_old;
38  const VariableGradient & _grad_disp_y_old;
39  const VariableGradient & _grad_disp_z_old;
40 
41  virtual void computeDeformationGradient(unsigned int qp, ColumnMajorMatrix & F);
42 
43  virtual Real volumeRatioOld(unsigned qp) const;
44 
45  virtual void computeIncrementalDeformationGradient(std::vector<ColumnMajorMatrix> & Fhat);
47 };
48 
49 } // namespace solid_mechanics
50 
SolidMechanics::Nonlinear3D::volumeRatioOld
virtual Real volumeRatioOld(unsigned qp) const
Definition: Nonlinear3D.C:123
SolidMechanics::Nonlinear3D::_grad_disp_x_old
const VariableGradient & _grad_disp_x_old
Definition: Nonlinear3D.h:37
SolidMechanics::Nonlinear3D::_grad_disp_z_old
const VariableGradient & _grad_disp_z_old
Definition: Nonlinear3D.h:39
VolumetricModel
Definition: VolumetricModel.h:21
SolidMechanics::Nonlinear3D::_grad_disp_x
const VariableGradient & _grad_disp_x
Definition: Nonlinear3D.h:34
SolidMechanics::Nonlinear3D::computeDeformationGradient
virtual void computeDeformationGradient(unsigned int qp, ColumnMajorMatrix &F)
Definition: Nonlinear3D.C:105
SolidMechanics::Nonlinear::Fhat
const std::vector< ColumnMajorMatrix > & Fhat() const
Definition: Nonlinear.h:33
Nonlinear.h
SolidMechanics
Definition: AxisymmetricRZ.h:16
SolidMechanics::Nonlinear3D::_grad_disp_y
const VariableGradient & _grad_disp_y
Definition: Nonlinear3D.h:35
SolidMechanics::Nonlinear3D::_volumetric_locking_correction
const bool _volumetric_locking_correction
Definition: Nonlinear3D.h:46
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::Nonlinear3D::~Nonlinear3D
virtual ~Nonlinear3D()
Definition: Nonlinear3D.C:37
SolidMechanics::Nonlinear3D::_grad_disp_z
const VariableGradient & _grad_disp_z
Definition: Nonlinear3D.h:36
SolidMechanics::Nonlinear3D::computeIncrementalDeformationGradient
virtual void computeIncrementalDeformationGradient(std::vector< ColumnMajorMatrix > &Fhat)
Definition: Nonlinear3D.C:42
SolidMechanics::Nonlinear3D::_grad_disp_y_old
const VariableGradient & _grad_disp_y_old
Definition: Nonlinear3D.h:38
SolidMechanics::Nonlinear3D
Nonlinear3D is the base class for all 3D nonlinear solid mechanics material models.
Definition: Nonlinear3D.h:24
SolidMechanics::Nonlinear
Nonlinear is the base class for all large strain/rotation models.
Definition: Nonlinear.h:24
SolidMechanics::Nonlinear3D::Nonlinear3D
Nonlinear3D(SolidModel &solid_model, const std::string &name, const InputParameters &parameters)
Definition: Nonlinear3D.C:20