https://mooseframework.inl.gov
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 
11 #include "SolidMechanicsAppTypes.h"
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)
32  : CrackFrontNonlocalMaterialBase(parameters,
33  parameters.get<MaterialPropertyName>("property_name")),
34  _scalar(getMaterialProperty<Real>(_base_name + _property_name))
35 {
36 }
37 
38 Real
40  const Point /*crack_face_normal*/) const
41 {
42  return _scalar[qp];
43 }
const MaterialProperty< Real > & _scalar
Property that is averaged over the crack front points.
void setDocString(const std::string &name, const std::string &doc)
const ExecFlagType EXEC_XFEM_MARK
Exec flag used to execute MooseObjects while elements are being marked for cutting by XFEM...
T & set(const std::string &name, bool quiet_mode=false)
Computes the average material at points provided by the crack_front_definition vectorpostprocessor.
void addAvailableFlags(const ExecFlagType &flag, Args... flags)
const ExecFlagType EXEC_TIMESTEP_END
void addRequiredParam(const std::string &name, const std::string &doc_string)
Real getQPCrackFrontScalar(const unsigned int qp, const Point) const override
Determine whether a point is located within a specified crack front oriented box. ...
Computes the average material property in regions near points provided by the crack_front_definition ...
registerMooseObject("SolidMechanicsApp", CrackFrontNonlocalScalarMaterial)
CrackFrontNonlocalScalarMaterial(const InputParameters &parameters)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void addClassDescription(const std::string &doc_string)
const Elem & get(const ElemType type_in)