Mesh generator for hexagonal duct. More...
#include <SCMTriDuctMeshGenerator.h>
Public Types | |
typedef DataFileName | DataFileParameterType |
Public Member Functions | |
SCMTriDuctMeshGenerator (const InputParameters ¶meters) | |
std::unique_ptr< MeshBase > | generate () override |
std::unique_ptr< MeshBase > | generateInternal () |
const std::set< MeshGeneratorName > & | getRequestedMeshGenerators () const |
const std::set< MeshGeneratorName > & | getRequestedMeshGeneratorsForSub () const |
void | addParentMeshGenerator (const MeshGenerator &mg, const AddParentChildKey) |
void | addChildMeshGenerator (const MeshGenerator &mg, const AddParentChildKey) |
const std::set< const MeshGenerator *, Comparator > & | getParentMeshGenerators () const |
const std::set< const MeshGenerator *, Comparator > & | getChildMeshGenerators () const |
const std::set< const MeshGenerator *, Comparator > & | getSubMeshGenerators () const |
bool | isParentMeshGenerator (const MeshGeneratorName &name, const bool direct=true) const |
bool | isChildMeshGenerator (const MeshGeneratorName &name, const bool direct=true) const |
bool | isNullMeshName (const MeshGeneratorName &name) const |
bool | hasSaveMesh () const |
bool | hasOutput () const |
const std::string & | getSavedMeshName () const |
bool | hasGenerateData () const |
bool | isDataOnly () const |
virtual bool | enabled () const |
std::shared_ptr< MooseObject > | getSharedPtr () |
std::shared_ptr< const MooseObject > | getSharedPtr () const |
MooseApp & | getMooseApp () const |
const std::string & | type () const |
virtual const std::string & | name () const |
std::string | typeAndName () const |
std::string | errorPrefix (const std::string &error_type) const |
void | callMooseError (std::string msg, const bool with_prefix) const |
MooseObjectParameterName | uniqueParameterName (const std::string ¶meter_name) const |
const InputParameters & | parameters () const |
MooseObjectName | uniqueName () const |
const T & | getParam (const std::string &name) const |
std::vector< std::pair< T1, T2 > > | getParam (const std::string ¶m1, const std::string ¶m2) const |
const T * | queryParam (const std::string &name) const |
const T & | getRenamedParam (const std::string &old_name, const std::string &new_name) const |
T | getCheckedPointerParam (const std::string &name, const std::string &error_string="") const |
bool | isParamValid (const std::string &name) const |
bool | isParamSetByUser (const std::string &nm) const |
void | paramError (const std::string ¶m, Args... args) const |
void | paramWarning (const std::string ¶m, Args... args) const |
void | paramInfo (const std::string ¶m, Args... args) const |
void | connectControllableParams (const std::string ¶meter, const std::string &object_type, const std::string &object_name, const std::string &object_parameter) const |
void | mooseError (Args &&... args) const |
void | mooseErrorNonPrefixed (Args &&... args) const |
void | mooseDocumentedError (const std::string &repo_name, const unsigned int issue_num, Args &&... args) const |
void | mooseWarning (Args &&... args) const |
void | mooseWarningNonPrefixed (Args &&... args) const |
void | mooseDeprecated (Args &&... args) const |
void | mooseInfo (Args &&... args) const |
std::string | getDataFileName (const std::string ¶m) const |
std::string | getDataFileNameByName (const std::string &relative_path) const |
std::string | getDataFilePath (const std::string &relative_path) const |
const Parallel::Communicator & | comm () const |
processor_id_type | n_processors () const |
processor_id_type | processor_id () const |
Static Public Member Functions | |
static InputParameters | validParams () |
static bool | hasGenerateData (const InputParameters ¶ms) |
static void | setHasGenerateData (InputParameters ¶ms) |
Public Attributes | |
const ConsoleStream | _console |
Static Public Attributes | |
static const std::string | data_only_param |
static constexpr auto | SYSTEM |
static constexpr auto | NAME |
Protected Member Functions | |
size_t | ductPointIndex (unsigned int points_per_layer, unsigned int layer, unsigned int point) const |
Returns an index into the vector of point/node positions used/generated by ductPoints. More... | |
void | ductCorners (std::vector< Point > &corners, Real flat_to_flat, const Point ¢er) const |
calculate the x-y coordinates of the corner points for the duct cross section. More... | |
void | ductXsec (std::vector< Point > &xsec, const std::vector< Point > &corners, unsigned int nrings, Real pitch, Real flat_to_flat) const |
calcultes the points around the duct cross section boundary (perpendicular to z axis) using assembly parameters. More... | |
void | ductPoints (std::vector< Point > &points, const std::vector< Point > &xsec, const std::vector< Real > &z_layers) const |
Calculates all the point/node positions that will be used to form elements making the duct. More... | |
void | ductElems (std::vector< std::vector< size_t >> &elem_point_indices, unsigned int n_layers, unsigned int points_per_layer) const |
Calculates the groups of points/nodes that comprise each element in the duct mesh. More... | |
void | buildDuct (std::unique_ptr< MeshBase > &mesh, std::vector< Node *> &duct_nodes, const std::vector< Point > &points, const std::vector< std::vector< size_t >> &elem_point_indices, SubdomainID block) const |
buildDuct generates and adds mesh node and element objects to the given mesh corresponding to the given points (from ductPoints) and elem_point_indices that identify node point groups forming elements (from ductElems) More... | |
virtual void | generateData () |
T & | copyMeshProperty (const std::string &target_data_name, const std::string &source_data_name, const std::string &source_mesh) |
T & | copyMeshProperty (const std::string &source_data_name, const std::string &source_mesh) |
std::unique_ptr< MeshBase > & | getMesh (const std::string ¶m_name, const bool allow_invalid=false) |
std::vector< std::unique_ptr< MeshBase > *> | getMeshes (const std::string ¶m_name) |
std::unique_ptr< MeshBase > & | getMeshByName (const MeshGeneratorName &mesh_generator_name) |
std::vector< std::unique_ptr< MeshBase > *> | getMeshesByName (const std::vector< MeshGeneratorName > &mesh_generator_names) |
void | declareMeshForSub (const std::string ¶m_name) |
void | declareMeshesForSub (const std::string ¶m_name) |
void | declareMeshForSubByName (const MeshGeneratorName &mesh_generator_name) |
void | declareMeshesForSubByName (const std::vector< MeshGeneratorName > &mesh_generator_names) |
std::unique_ptr< MeshBase > | buildMeshBaseObject (unsigned int dim=libMesh::invalid_uint) |
std::unique_ptr< ReplicatedMesh > | buildReplicatedMesh (unsigned int dim=libMesh::invalid_uint) |
std::unique_ptr< DistributedMesh > | buildDistributedMesh (unsigned int dim=libMesh::invalid_uint) |
void | addMeshSubgenerator (const std::string &type, const std::string &name, Ts... extra_input_parameters) |
void | addMeshSubgenerator (const std::string &type, const std::string &name, InputParameters params) |
void | declareNullMeshName (const MeshGeneratorName &name) |
const T & | getMeshProperty (const std::string &data_name, const std::string &prefix) |
const T & | getMeshProperty (const std::string &data_name) |
bool | hasMeshProperty (const std::string &data_name, const std::string &prefix) const |
bool | hasMeshProperty (const std::string &data_name, const std::string &prefix) const |
bool | hasMeshProperty (const std::string &data_name) const |
bool | hasMeshProperty (const std::string &data_name) const |
std::string | meshPropertyName (const std::string &data_name) const |
T & | declareMeshProperty (const std::string &data_name, Args &&... args) |
T & | declareMeshProperty (const std::string &data_name, const T &data_value) |
T & | declareMeshProperty (const std::string &data_name, Args &&... args) |
T & | declareMeshProperty (const std::string &data_name, const T &data_value) |
T & | setMeshProperty (const std::string &data_name, Args &&... args) |
T & | setMeshProperty (const std::string &data_name, const T &data_value) |
T & | setMeshProperty (const std::string &data_name, Args &&... args) |
T & | setMeshProperty (const std::string &data_name, const T &data_value) |
Static Protected Member Functions | |
static std::string | meshPropertyName (const std::string &data_name, const std::string &prefix) |
Protected Attributes | |
std::unique_ptr< MeshBase > & | _input |
Mesh that comes from another generator. More... | |
const unsigned int | _n_cells |
number of axial cells More... | |
std::vector< Real > | _z_grid |
axial location of nodes More... | |
const Real | _unheated_length_entry |
unheated length of the fuel Pin at the entry of the assembly More... | |
const Real | _heated_length |
heated length of the fuel Pin More... | |
const Real | _unheated_length_exit |
unheated length of the fuel Pin at the exit of the assembly More... | |
const unsigned int | _block_id |
block index More... | |
const Real | _pitch |
Distance between the neighbor fuel pins, pitch. More... | |
const unsigned int | _n_rings |
number of rings of fuel pins More... | |
const Real | _flat_to_flat |
the distance between flat surfaces of the duct facing each other More... | |
MooseMesh *const | _mesh |
const bool & | _enabled |
MooseApp & | _app |
const std::string | _type |
const std::string | _name |
const InputParameters & | _pars |
Factory & | _factory |
ActionFactory & | _action_factory |
const Parallel::Communicator & | _communicator |
Mesh generator for hexagonal duct.
Definition at line 17 of file SCMTriDuctMeshGenerator.h.
SCMTriDuctMeshGenerator::SCMTriDuctMeshGenerator | ( | const InputParameters & | parameters | ) |
Definition at line 41 of file SCMTriDuctMeshGenerator.C.
|
protected |
buildDuct generates and adds mesh node and element objects to the given mesh corresponding to the given points (from ductPoints) and elem_point_indices that identify node point groups forming elements (from ductElems)
Definition at line 169 of file SCMTriDuctMeshGenerator.C.
Referenced by generate().
|
protected |
calculate the x-y coordinates of the corner points for the duct cross section.
Definition at line 88 of file SCMTriDuctMeshGenerator.C.
Referenced by generate().
|
protected |
Calculates the groups of points/nodes that comprise each element in the duct mesh.
The groups are identified by indices into the points vector returned by ductPoints. n_layers is the number of z-axis layers the duct has (i.e. the number of z x-secs lining up with nodes. And points_per_layer is the number of nodes/points in each of those x-secs.
Definition at line 147 of file SCMTriDuctMeshGenerator.C.
Referenced by generate().
|
protected |
Returns an index into the vector of point/node positions used/generated by ductPoints.
This is used for mapping a xsec point index and a z-axis layer index to its corresponding point vector index.
Definition at line 128 of file SCMTriDuctMeshGenerator.C.
Referenced by ductElems(), and ductPoints().
|
protected |
Calculates all the point/node positions that will be used to form elements making the duct.
Definition at line 136 of file SCMTriDuctMeshGenerator.C.
Referenced by generate().
|
protected |
calcultes the points around the duct cross section boundary (perpendicular to z axis) using assembly parameters.
xsec will contain the points that
Definition at line 103 of file SCMTriDuctMeshGenerator.C.
Referenced by generate().
|
overridevirtual |
Implements MeshGenerator.
Definition at line 58 of file SCMTriDuctMeshGenerator.C.
|
static |
Definition at line 23 of file SCMTriDuctMeshGenerator.C.
|
protected |
|
protected |
the distance between flat surfaces of the duct facing each other
Definition at line 97 of file SCMTriDuctMeshGenerator.h.
Referenced by generate().
|
protected |
heated length of the fuel Pin
Definition at line 87 of file SCMTriDuctMeshGenerator.h.
Referenced by SCMTriDuctMeshGenerator().
|
protected |
Mesh that comes from another generator.
Definition at line 79 of file SCMTriDuctMeshGenerator.h.
Referenced by generate().
|
protected |
number of axial cells
Definition at line 81 of file SCMTriDuctMeshGenerator.h.
Referenced by SCMTriDuctMeshGenerator().
|
protected |
number of rings of fuel pins
Definition at line 95 of file SCMTriDuctMeshGenerator.h.
Referenced by generate().
|
protected |
Distance between the neighbor fuel pins, pitch.
Definition at line 93 of file SCMTriDuctMeshGenerator.h.
Referenced by generate().
|
protected |
unheated length of the fuel Pin at the entry of the assembly
Definition at line 85 of file SCMTriDuctMeshGenerator.h.
Referenced by SCMTriDuctMeshGenerator().
|
protected |
unheated length of the fuel Pin at the exit of the assembly
Definition at line 89 of file SCMTriDuctMeshGenerator.h.
Referenced by SCMTriDuctMeshGenerator().
|
protected |
axial location of nodes
Definition at line 83 of file SCMTriDuctMeshGenerator.h.
Referenced by generate(), and SCMTriDuctMeshGenerator().