https://mooseframework.inl.gov
SCMDetailedQuadSubChannelMeshGenerator.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 "MeshGenerator.h"
13 #include "SubChannelEnums.h"
14 
19 {
20 public:
22  virtual std::unique_ptr<MeshBase> generate() override;
23 
24 protected:
25  EChannelType getSubchannelType(unsigned int index) const { return _subch_type[index]; }
26  std::vector<Real> getSubchannelPosition(unsigned int i) { return _subchannel_position[i]; }
27 
35  std::vector<Real> _z_grid;
37  const Real _pitch;
41  const unsigned int _n_cells;
43  const unsigned int _nx;
45  const unsigned int _ny;
47  unsigned int _n_channels;
53  const Real _side_gap;
55  std::vector<EChannelType> _subch_type;
57  std::vector<std::vector<Real>> _subchannel_position;
59  const unsigned int & _block_id;
60 
61 public:
63 };
const Real _pitch
Distance between the neighbor fuel pins, pitch.
const unsigned int _n_cells
Number of cells in the axial direction.
const Real _heated_length
heated length of the fuel Pin
std::vector< Real > _z_grid
axial location of nodes
unsigned int _n_channels
Total number of subchannels.
const InputParameters & parameters() const
const unsigned int _nx
Number of subchannels in the x direction.
std::vector< std::vector< Real > > _subchannel_position
x,y coordinates of the subchannel centroids
const Real _side_gap
The side gap, not to be confused with the gap between pins, this refers to the gap next to the duct o...
EChannelType
Enum for describing the center, edge and corner subchannels or gap types.
SCMDetailedQuadSubChannelMeshGenerator(const InputParameters &parameters)
const unsigned int _ny
Number of subchannels in the y direction.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
Mesh generator that builds a 3D mesh representing quadrilateral subchannels.
const Real _unheated_length_exit
unheated length of the fuel Pin at the exit of the assembly
std::vector< EChannelType > _subch_type
Subchannel type.
EChannelType getSubchannelType(unsigned int index) const
const Real _unheated_length_entry
unheated length of the fuel Pin at the entry of the assembly
const unsigned int & _block_id
Subdomain ID used for the mesh block.
virtual std::unique_ptr< MeshBase > generate() override