https://mooseframework.inl.gov
CutElementSubdomainModifier.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  params.addClassDescription("Change element subdomain based on CutSubdomainID");
19  params.addRequiredParam<UserObjectName>(
20  "geometric_cut_userobject", "The geometric cut userobject that assigns the CutSubdomainID");
21  return params;
22 }
23 
25  : ElementSubdomainModifier(parameters),
26  _cut(&getUserObject<GeometricCutUserObject>("geometric_cut_userobject"))
27 {
28 }
29 
32 {
34 }
static InputParameters validParams()
void addRequiredParam(const std::string &name, const std::string &doc_string)
const GeometricCutUserObject * _cut
Pointer to the GeometricCutUserObject.
static InputParameters validParams()
CutElementSubdomainModifier(const InputParameters &parameters)
virtual CutSubdomainID getCutSubdomainID(const Node *) const
Get CutSubdomainID telling which side the node belongs to relative to the cut.
const Elem *const & _current_elem
virtual SubdomainID computeSubdomainID() override
void addClassDescription(const std::string &doc_string)
CutElementSubdomainModifier switches the element subdomain ID based on the CutSubdomainID marked by g...
registerMooseObject("XFEMApp", CutElementSubdomainModifier)