11#include "libmesh/utility.h"
12#include "libmesh/string_to_enum.h"
21 "This AuxKernel stores a specific component of a shell element's local coordinate "
22 "vector in an auxiliary variable.");
23 params.
addParam<std::string>(
"base_name",
"Mechanical property base name");
25 MooseEnum property(
"first_local_vector second_local_vector normal_local_vector");
29 "The local axis to output: first_local_vector, second_local_vector or normal_local_vector");
31 "component",
"The vector component of the local coordinate vector: 0, 1 or 2");
38 _base_name(isParamValid(
"base_name") ? getParam<
std::string>(
"base_name") +
"_" :
""),
40 _component(getParam<unsigned
int>(
"component"))
44 &getMaterialProperty<RankTwoTensor>(
_base_name +
"local_transformation_t_points_0");
49 ". The component index of a shell local vector must be 0, 1, or 2.");
55 Real output_value = 0.0;
registerMooseObject("SolidMechanicsApp", ShellLocalCoordinatesAux)
void ErrorVector unsigned int
static InputParameters validParams()
void mooseError(Args &&... args) const
ShellLocalCoordinatesAux(const InputParameters ¶meters)
const std::string _base_name
Base name of the material system used to calculate the elastic energy.
virtual Real computeValue() override
enum ShellLocalCoordinatesAux::PropertyType _property
const MaterialProperty< RankTwoTensor > * _local_coordinates
The local stress tensor.
static InputParameters validParams()