https://mooseframework.inl.gov
Loading...
Searching...
No Matches
CrackFrontNonlocalScalarMaterial.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
12
14
17{
19 params.addClassDescription("Computes the average material at points provided by the "
20 "crack_front_definition vectorpostprocessor.");
21 params.addRequiredParam<MaterialPropertyName>(
22 "property_name", "Get name of material property to compute at crack front");
23 ExecFlagEnum & exec = params.set<ExecFlagEnum>("execute_on");
25 params.setDocString("execute_on", exec.getDocString());
26 params.set<ExecFlagEnum>("execute_on") = {EXEC_XFEM_MARK, EXEC_TIMESTEP_END};
27 return params;
28}
29
31 const InputParameters & parameters)
33 parameters.get<MaterialPropertyName>("property_name")),
34 _scalar(getMaterialProperty<Real>(_base_name + _property_name))
35{
36}
37
38Real
40 const Point /*crack_face_normal*/) const
41{
42 return _scalar[qp];
43}
registerMooseObject("SolidMechanicsApp", CrackFrontNonlocalScalarMaterial)
const ExecFlagType EXEC_TIMESTEP_END
const ExecFlagType EXEC_XFEM_MARK
Exec flag used to execute MooseObjects while elements are being marked for cutting by XFEM.
Computes the average material property in regions near points provided by the crack_front_definition ...
Computes the average material at points provided by the crack_front_definition vectorpostprocessor.
CrackFrontNonlocalScalarMaterial(const InputParameters &parameters)
const MaterialProperty< Real > & _scalar
Property that is averaged over the crack front points.
Real getQPCrackFrontScalar(const unsigned int qp, const Point) const override
Determine whether a point is located within a specified crack front oriented box.
void addAvailableFlags(const ExecFlagType &flag, Args... flags)
void addRequiredParam(const std::string &name, const std::string &doc_string)
void setDocString(const std::string &name, const std::string &doc)
void addClassDescription(const std::string &doc_string)
T & set(const std::string &name, bool quiet_mode=false)