Cardinal
OpenMCCellTransformBase.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 
21 #include "MooseTypes.h"
22 #include "InputParameters.h"
23 
24 class MooseEnum;
25 
27 
32 {
33 public:
34  static InputParameters validParams();
35 
37  static const MooseEnum transform_type;
39  static const std::array<std::string, 3> rotation_vector_symbols;
41  static const std::string rotation_vector_symbols_list;
42 
43  OpenMCCellTransformBase(const MooseObject & moose_object);
44 
50  void transform(const MooseEnum & transform_type, const Point & transform_vector);
51 
52 protected:
54  const std::set<int32_t> _cell_ids;
55 
56 private:
58  const MooseObject & _moose_object;
59 
61  OpenMCCellAverageProblem & _openmc_problem;
62 };
static const MooseEnum transform_type
Enumeration for the transform type.
Definition: OpenMCCellTransformBase.h:37
static const std::string rotation_vector_symbols_list
The symbols for the transform vector in a list form: "φ, θ, ψ".
Definition: OpenMCCellTransformBase.h:41
Definition: OpenMCCellAverageProblem.h:66
void transform(const MooseEnum &transform_type, const Point &transform_vector)
const std::set< int32_t > _cell_ids
OpenMC cell IDs to which the translation will be applied.
Definition: OpenMCCellTransformBase.h:54
Definition: OpenMCCellTransformBase.h:31
static InputParameters validParams()
static const std::array< std::string, 3 > rotation_vector_symbols
The symbols for each dimension in the transform vector: ["φ", "θ", "ψ"].
Definition: OpenMCCellTransformBase.h:39
OpenMCCellTransformBase(const MooseObject &moose_object)