12 #include "libmesh/cell_prism6.h" 16 DetailedQuadPinMeshGenerator,
25 "Creates a detailed mesh of fuel pins in a square lattice arrangement");
26 params.
addRequiredParam<MeshGeneratorName>(
"input",
"The corresponding subchannel mesh");
27 params.
addRequiredParam<
unsigned int>(
"nx",
"Number of channels in the x direction [-]");
28 params.
addRequiredParam<
unsigned int>(
"ny",
"Number of channels in the y direction [-]");
35 _nx(getParam<unsigned
int>(
"nx")),
36 _ny(getParam<unsigned
int>(
"ny"))
40 std::unique_ptr<MeshBase>
43 std::unique_ptr<MeshBase> mesh_base = std::move(
_input);
46 mesh_base->set_mesh_dimension(3);
48 std::vector<Point> pin_centers;
52 for (
auto & ctr : pin_centers)
56 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.
virtual const std::string & name() const
std::unique_ptr< MeshBase > & _input
Mesh that comes from another generator.
dof_id_type _elem_id
Counter for element numbering.
registerMooseObjectRenamed("SubChannelApp", DetailedQuadPinMeshGenerator, "06/30/2025 24:00", SCMDetailedQuadPinMeshGenerator)
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.