https://mooseframework.inl.gov
ExtraElementIntegerDivision.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 
12 #include "MeshDivision.h"
13 
18 {
19 public:
21 
23 
24  virtual void initialize() override;
25  virtual unsigned int divisionIndex(const Point & pt) const override;
26  virtual unsigned int divisionIndex(const Elem & elem) const override;
27 
28 private:
30  std::unordered_map<unsigned int, unsigned int> _extra_ids_to_division_index;
32  const ExtraElementIDName & _extra_id_name;
34  unsigned int _extra_id;
35 };
const ExtraElementIDName & _extra_id_name
Name of the extra element id to use to subdivide.
virtual unsigned int divisionIndex(const Point &pt) const override
Return the index of the division to which the point belongs.
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
std::unordered_map< unsigned int, unsigned int > _extra_ids_to_division_index
Map from extra element ids to division index. Created on calls to initialize()
Base class for MeshDivision objects.
Definition: MeshDivision.h:35
unsigned int _extra_id
Extra element ID used for the subdivision.
Divides the mesh based on the extra element IDs.
virtual void initialize() override
Set up any data members that would be necessary to obtain the division indices.
const InputParameters & parameters() const
Get the parameters of the object.
static InputParameters validParams()
ExtraElementIntegerDivision(const InputParameters &parameters)