Loading [MathJax]/extensions/tex2jax.js
Cardinal
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
HexagonalSubchannelBin.h
Go to the documentation of this file.
1/********************************************************************/
2/* SOFTWARE COPYRIGHT NOTIFICATION */
3/* Cardinal */
4/* */
5/* (c) 2021 UChicago Argonne, LLC */
6/* ALL RIGHTS RESERVED */
7/* */
8/* Prepared by UChicago Argonne, LLC */
9/* Under Contract No. DE-AC02-06CH11357 */
10/* With the U. S. Department of Energy */
11/* */
12/* Prepared by Battelle Energy Alliance, LLC */
13/* Under Contract No. DE-AC07-05ID14517 */
14/* With the U. S. Department of Energy */
15/* */
16/* See LICENSE for full restrictions */
17/********************************************************************/
18
19#pragma once
20
22#include "HexagonalLatticeUtils.h"
23
29{
30public:
31 static InputParameters validParams();
32
33 HexagonalSubchannelBin(const InputParameters & parameters);
34
35 virtual unsigned int bin(const Point & p) const override;
36
37 virtual unsigned int num_bins() const override;
38
39protected:
41 const Real & _bundle_pitch;
42
44 const Real & _pin_pitch;
45
47 const Real & _pin_diameter;
48
50 const unsigned int & _n_rings;
51
53 const unsigned int _axis;
54
56 const bool & _pin_centered_bins;
57
59 std::unique_ptr<HexagonalLatticeUtils> _hex_lattice;
60};
Definition HexagonalSubchannelBin.h:29
const Real & _bundle_pitch
Bundle pitch.
Definition HexagonalSubchannelBin.h:41
const unsigned int _axis
Vertical axis of the bundle along which the pins are aligned.
Definition HexagonalSubchannelBin.h:53
virtual unsigned int bin(const Point &p) const override
Definition HexagonalSubchannelBin.C:113
static InputParameters validParams()
Definition HexagonalSubchannelBin.C:24
virtual unsigned int num_bins() const override
Definition HexagonalSubchannelBin.C:122
const Real & _pin_pitch
Pin pitch.
Definition HexagonalSubchannelBin.h:44
const unsigned int & _n_rings
Total number of rings of pins.
Definition HexagonalSubchannelBin.h:50
const bool & _pin_centered_bins
Whether the bins should be pin-centered (as opposed to channel-centered)
Definition HexagonalSubchannelBin.h:56
std::unique_ptr< HexagonalLatticeUtils > _hex_lattice
Underlying utility providing hexagonal lattice capabilities.
Definition HexagonalSubchannelBin.h:59
const Real & _pin_diameter
Pin diameter.
Definition HexagonalSubchannelBin.h:47
Definition SpatialBinUserObject.h:27