https://mooseframework.inl.gov
CrackFrontNonlocalMaterialBase.h
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 
10 #pragma once
11 
13 
14 // Forward Declarations
16 
22 {
23 public:
25 
27  const std::string & property_name);
28 
29  virtual void initialSetup() override;
30  virtual void initialize() override;
31  virtual void execute() override;
32  virtual void finalize() override;
33  virtual void threadJoin(const UserObject & y) override;
34 
35 protected:
37  const std::string _property_name;
49 
52 
54  const std::string _base_name;
55 
56  // volume being integrated over for each crack front
57  std::vector<Real> _volume;
58 
68 
75  Real BoxWeightingFunction(std::size_t crack_front_point_index, const Point & qp_coord) const;
82  virtual Real getQPCrackFrontScalar(const unsigned int qp,
83  const Point crack_face_normal) const = 0;
84 };
Real _box_length
dimensions of the box in front of the crack tip that the stress is averaged over The box is centered ...
CrackFrontNonlocalMaterialBase(const InputParameters &parameters, const std::string &property_name)
VectorPostprocessorValue & _x
Vectors computed by this VectorPostprocessor: x,y,z coordinates, and position of nodes along crack fr...
const std::string _property_name
Material property name from derived class.
VectorPostprocessorValue & _avg_crack_tip_scalar
const std::vector< double > y
Class used in fracture integrals to define geometric characteristics of the crack front...
Computes the average material property in regions near points provided by the crack_front_definition ...
std::vector< Real > VectorPostprocessorValue
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const CrackFrontDefinition * _crack_front_definition
used to transform local coordinates to crack front coordinates
virtual void threadJoin(const UserObject &y) override
const InputParameters & parameters() const
Real BoxWeightingFunction(std::size_t crack_front_point_index, const Point &qp_coord) const
Determine whether a point is located within a specified crack front oriented box. ...
const std::string _base_name
Base name of the material system.
virtual Real getQPCrackFrontScalar(const unsigned int qp, const Point crack_face_normal) const =0
Determine whether a point is located within a specified crack front oriented box. ...