https://mooseframework.inl.gov
Loading...
Searching...
No Matches
ComputeAxisymmetricRZSmallStrain.C
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://mooseframework.inl.gov
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
11#include "FEProblem.h"
12#include "MooseMesh.h"
13
15
18{
20 params.addClassDescription("Compute a small strain in an Axisymmetric geometry");
21 return params;
22}
23
29
30void
32{
34
35 if (getBlockCoordSystem() != Moose::COORD_RZ)
36 mooseError("The coordinate system must be set to RZ for Axisymmetric geometries.");
37
39 paramError("out_of_plane_direction",
40 "The out-of-plane direction for axisymmetric systems is currently restricted to z");
41}
42
43Real
45{
46 if (!MooseUtils::absoluteFuzzyEqual(_q_point[_qp](0), 0.0))
47 return (*_disp[0])[_qp] / _q_point[_qp](0);
48 else
49 return 0.0;
50}
registerMooseObject("SolidMechanicsApp", ComputeAxisymmetricRZSmallStrain)
void mooseError(Args &&... args)
Compute2DSmallStrain defines a strain tensor, assuming small strains, in 2D geometries / simulations.
const unsigned int _out_of_plane_direction
static InputParameters validParams()
ComputeAxisymmetricRZSmallStrain defines small strains in an Axisymmetric system.
ComputeAxisymmetricRZSmallStrain(const InputParameters &parameters)
std::vector< const VariableValue * > _disp
Displacement variables.
void addClassDescription(const std::string &doc_string)