12 #include "libmesh/cell_prism6.h" 21 "Creates a detailed mesh of fuel pins in a square lattice arrangement");
22 params.
addRequiredParam<MeshGeneratorName>(
"input",
"The corresponding subchannel mesh");
23 params.
addRequiredParam<
unsigned int>(
"nx",
"Number of channels in the x direction [-]");
24 params.
addRequiredParam<
unsigned int>(
"ny",
"Number of channels in the y direction [-]");
31 _nx(getParam<unsigned
int>(
"nx")),
32 _ny(getParam<unsigned
int>(
"ny"))
36 std::unique_ptr<MeshBase>
39 std::unique_ptr<MeshBase> mesh_base = std::move(
_input);
42 mesh_base->set_mesh_dimension(3);
44 std::vector<Point> pin_centers;
48 for (
auto & ctr : pin_centers)
52 mesh_base->prepare_for_use();
T & getMesh(MooseMesh &mesh)
function to cast mesh
virtual std::unique_ptr< MeshBase > generate() override
Mesh generator for fuel pins in a quadrilateral lattice.
SCMDetailedQuadPinMeshGenerator(const InputParameters ¶meters)
const unsigned int & _ny
Number of subchannels in the y direction.
const Real _pitch
Distance between the neighbor fuel pins, pitch.
std::unique_ptr< MeshBase > & _input
Mesh that comes from another generator.
dof_id_type _elem_id
Counter for element numbering.
const std::string & name() const
void generatePin(std::unique_ptr< MeshBase > &mesh_base, const Point ¢er)
registerMooseObject("SubChannelApp", SCMDetailedQuadPinMeshGenerator)
static InputParameters validParams()
static void generatePinCenters(unsigned int nx, unsigned int ny, Real pitch, Real elev, std::vector< Point > &pin_centers)
Generate pin centers.
const unsigned int & _nx
Number of subchannels in the x direction.
std::unique_ptr< MeshBase > buildMeshBaseObject(unsigned int dim=libMesh::invalid_uint)
static InputParameters validParams()
Base class for generating fuel pins.
void ErrorVector unsigned int
const unsigned int & _block_id
Subdomain ID used for the mesh block.