https://mooseframework.inl.gov
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
SBMElementClassificationInterface Class Reference

Common element classification parameters for shifted boundary objects. More...

#include <SBMElementClassificationInterface.h>

Inheritance diagram for SBMElementClassificationInterface:
[legend]

Public Member Functions

 SBMElementClassificationInterface (const MooseObject *moose_object)
 
virtual ~SBMElementClassificationInterface ()=default
 

Static Public Member Functions

static InputParameters validParams ()
 

Protected Attributes

const Real _lambda
 Threshold applied to the fraction outside the retained domain for a partial element.
 
const Order _qrule_order
 Quadrature order used to estimate the retained-domain fraction.
 
const SBMUtils::InterceptedSubdomainPolicy _intercepted_subdomain_policy
 Policy for assigning partial elements to a dedicated intercepted subdomain.
 

Detailed Description

Common element classification parameters for shifted boundary objects.

Definition at line 21 of file SBMElementClassificationInterface.h.

Constructor & Destructor Documentation

◆ SBMElementClassificationInterface()

SBMElementClassificationInterface::SBMElementClassificationInterface ( const MooseObject *  moose_object)
explicit

Definition at line 41 of file SBMElementClassificationInterface.C.

43 : _lambda(moose_object->getParam<Real>("lambda")),
44 _qrule_order(static_cast<Order>(moose_object->getParam<int>("qrule_order"))),
45 _intercepted_subdomain_policy{moose_object->getParam<bool>("mark_intercepted"),
46 moose_object->getParam<SubdomainID>("subdomain_id_intercepted")}
47{
50 moose_object->paramError("subdomain_id_intercepted",
51 "This parameter must be specified when 'mark_intercepted' is true.");
52
54 moose_object->paramError("lambda",
55 "This parameter cannot be set when 'mark_intercepted' is true.");
56}
void paramError(const std::string &param, Args... args) const
bool isParamSetByUser(const std::string &name) const
const T & getParam(const std::string &name) const
const SBMUtils::InterceptedSubdomainPolicy _intercepted_subdomain_policy
Policy for assigning partial elements to a dedicated intercepted subdomain.
const Order _qrule_order
Quadrature order used to estimate the retained-domain fraction.
const Real _lambda
Threshold applied to the fraction outside the retained domain for a partial element.
const SubdomainID INVALID_BLOCK_ID

◆ ~SBMElementClassificationInterface()

virtual SBMElementClassificationInterface::~SBMElementClassificationInterface ( )
virtualdefault

Member Function Documentation

◆ validParams()

InputParameters SBMElementClassificationInterface::validParams ( )
static

Definition at line 15 of file SBMElementClassificationInterface.C.

16{
18
20 "lambda",
21 0.5,
22 "lambda >= 0 & lambda <= 1",
23 "Threshold applied to the fraction outside the retained domain for a partial element. This "
24 "parameter cannot be set when 'mark_intercepted' is true.");
25
26 params.addRangeCheckedParam<int>(
27 "qrule_order",
28 9,
29 "qrule_order >= 0 & qrule_order <= 10",
30 "Quadrature order used to estimate the retained-domain fraction.");
31
32 params.addParam<bool>(
33 "mark_intercepted", false, "Whether to assign a dedicated subdomain ID when intercepted.");
34 params.addParam<SubdomainID>("subdomain_id_intercepted",
36 "Subdomain ID assigned to intercepted elements.");
37
38 return params;
39}
InputParameters emptyInputParameters()
void addParam(const std::string &name, const std::initializer_list< typename T::value_type > &value, const std::string &doc_string)
void addRangeCheckedParam(const std::string &name, const T &value, const std::string &parsed_function, const std::string &doc_string)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real

Referenced by SBMSubdomainGeneratorBase::validParams(), and SBMElementSubdomainModifierBase::validParams().

Member Data Documentation

◆ _intercepted_subdomain_policy

const SBMUtils::InterceptedSubdomainPolicy SBMElementClassificationInterface::_intercepted_subdomain_policy
protected

◆ _lambda

const Real SBMElementClassificationInterface::_lambda
protected

Threshold applied to the fraction outside the retained domain for a partial element.

Definition at line 30 of file SBMElementClassificationInterface.h.

Referenced by InterceptedElementModifier::computeSubdomainID(), SubdomainElementModifier::computeSubdomainID(), SubdomainGrainIDGenerator::generate(), and SubdomainInterceptedGenerator::generate().

◆ _qrule_order

const Order SBMElementClassificationInterface::_qrule_order
protected

The documentation for this class was generated from the following files: