19 params.
addClassDescription(
"Compute the normal or tangent component of a vector quantity defined "
20 "on a cohesive interface.");
21 params.
addRequiredParam<std::string>(
"real_vector_value",
"The vector material name");
23 "property_name",
"Name of the material property computed by this model");
24 MooseEnum directionType(
"Normal Tangent");
26 params.
addParam<std::string>(
"base_name",
"Material property base name");
32 _base_name(isParamValid(
"base_name") && !getParam<
std::string>(
"base_name").empty()
33 ? getParam<
std::string>(
"base_name") +
"_"
36 _property(declarePropertyByName<Real>(getParam<MaterialPropertyName>(
"property_name"))),
37 _vector(getMaterialPropertyByName<RealVectorValue>(_base_name +
38 getParam<
std::string>(
"real_vector_value"))),
39 _czm_rotation(getMaterialPropertyByName<
RankTwoTensor>(_base_name +
"czm_total_rotation"))
46 const RealVectorValue normal =
_czm_rotation[
_qp] * RealVectorValue(1.0, 0.0, 0.0);
registerMooseObject("SolidMechanicsApp", CZMRealVectorScalar)
This interface material class extract a cartesiona component from a vector materail property defined ...
CZMRealVectorScalar(const InputParameters ¶meters)
DirectionType
scalar options
const MaterialProperty< RankTwoTensor > & _czm_rotation
the material property defining the czm normal
MaterialProperty< Real > & _property
the property created by this material
const MaterialProperty< RealVectorValue > & _vector
the vector material property
static InputParameters validParams()
enum CZMRealVectorScalar::DirectionType _direction
void computeQpProperties() override
static InputParameters validParams()
void mooseError(Args &&... args) const