https://mooseframework.inl.gov
CrackTipEnrichmentCutOffBC.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 
13 
16 {
18  p.addRequiredParam<Real>("cut_off_radius",
19  "The cut off radius of crack tip enrichment functions");
20  p.set<bool>("use_displaced_mesh") = false;
21  p.addRequiredParam<UserObjectName>("crack_front_definition",
22  "The CrackFrontDefinition user object name");
23  p.set<bool>("preset") = true;
24  return p;
25 }
26 
28  : DirichletBC(parameters),
29  _cut_off_radius(getParam<Real>("cut_off_radius")),
30  _crack_front_definition(getUserObject<CrackFrontDefinition>("crack_front_definition"))
31 {
32 }
33 
34 bool
36 {
37  Real r, theta;
39 
40  if (r > _cut_off_radius)
41  return true;
42  else
43  return false;
44 }
static InputParameters validParams()
const Node *const & _current_node
T & set(const std::string &name, bool quiet_mode=false)
CrackTipEnrichmentCutOffBC(const InputParameters &parameters)
registerMooseObject("XFEMApp", CrackTipEnrichmentCutOffBC)
void addRequiredParam(const std::string &name, const std::string &doc_string)
Class used in fracture integrals to define geometric characteristics of the crack front...
void calculateRThetaToCrackFront(const Point qp, const std::size_t point_index, Real &r, Real &theta) const
Calculate r and theta of a point in the crack front polar coordinates for a given crack point index...
virtual bool shouldApply() const override
static InputParameters validParams()
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
CrackTipEnrichmentCutOffBC is used in XFEM Crack Tip Enrichment to fix DOFs to zero for those nodes w...
const CrackFrontDefinition & _crack_front_definition