https://mooseframework.inl.gov
Loading...
Searching...
No Matches
CylindricalGridDivision.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
14class Positions;
15
20{
21public:
23
25
26 virtual void initialize() override;
27 virtual unsigned int divisionIndex(const Point & pt) const override;
28 virtual unsigned int divisionIndex(const Elem & elem) const override;
29
30protected:
34 const Point * const _center;
38 Point _azim_dir;
39
41 const Real _min_r;
43 const Real _max_r;
45 const Real _min_z;
47 const Real _max_z;
48
50 const unsigned int _n_radial;
52 const unsigned int _n_azim;
54 const unsigned int _n_axial;
55
58};
Divides the mesh based on a cylindrical grid.
virtual unsigned int divisionIndex(const Point &pt) const override
Return the index of the division to which the point belongs.
static InputParameters validParams()
const Real _min_r
Minimal radial extent of the cylinder.
const unsigned int _n_azim
Number of divisions in the azimuthal direction.
const Real _min_z
Minimal axial extent of the cylinder.
const Point *const _center
Point at the center of the cylinder, serving as the coordinate frame center.
Point _azim_dir
Azimuthal axis direction (angle = 0)
const unsigned int _n_axial
Number of divisions in the cylinder axial direction.
Point _direction
Axis direction of the cylinder.
const unsigned int _n_radial
Number of divisions in the radial direction.
const bool _outside_grid_counts_as_border
Whether to map outside the grid onto the inner/outer crowns (radially) or top/bottom bins (axially)
const Positions *const _center_positions
Positions giving all the centers of the cylinders, serving as the coordinate frame center.
const Real _max_r
Maximal radial extent of the cylinder.
const Real _max_z
Maximal axial extent of the cylinder.
virtual void initialize() override
Set up any data members that would be necessary to obtain the division indices.
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
Base class for MeshDivision objects.
const InputParameters & parameters() const
Get the parameters of the object.
Definition MooseBase.h:131
Positions objects are under the hood Reporters.
Definition Positions.h:21