24 "Junction connecting one flow channel to one other flow channel for 1-phase flow");
31 _slope_reconstruction(
42 if (connected_elems.size() == 2)
54 const std::string & comp_name = connection._component_name;
55 if (hasComponentByName<FlowChannel1Phase>(comp_name))
57 const FlowChannel1Phase & comp = getComponentByName<FlowChannel1Phase>(comp_name);
80 const std::string class_name =
"ADJunctionOneToOne1PhaseUserObject";
83 params.
set<std::vector<Real>>(
"normals") =
_normals;
85 params.
set<UserObjectName>(
"fluid_properties") =
_fp_name;
94 params.
set<std::string>(
"junction_name") =
name();
100 const std::vector<NonlinearVariableName> var_names = {
105 for (std::size_t j = 0; j < var_names.size(); j++)
107 const std::string class_name =
"ADJunctionOneToOne1PhaseBC";
111 params.
set<NonlinearVariableName>(
"variable") = var_names[j];
113 params.
set<
unsigned int>(
"connection_index") = i;
119 class_name,
genName(
name(), i, var_names[j] +
":" + class_name), params);
registerMooseObject("ThermalHydraulicsApp", JunctionOneToOne1Phase)
const ExecFlagType EXEC_INITIAL
const ExecFlagType EXEC_LINEAR
const ExecFlagType EXEC_NONLINEAR
std::vector< Real > _normals
Outward normals associated with connected components.
std::vector< BoundaryName > _boundary_names
Boundary names of connected components.
void checkNumberOfConnections(const unsigned int &n_connections) const
Checks that the number of connections is equal to the supplied value.
const std::vector< Connection > & getConnections() const
Returns the vector of connections of this component.
const std::vector< processor_id_type > & getConnectedProcessorIDs()
Gets the processor IDs of the connected 1D components.
const std::vector< dof_id_type > & getConnectedElementIDs()
Gets the element IDs of the connected 1D components.
THMProblem & getTHMProblem() const
Gets the THM problem.
Factory & _factory
The Factory associated with the MooseApp.
virtual void setupMesh()
Performs mesh setup such as creating mesh or naming mesh sets.
virtual std::vector< std::shared_ptr< UserObject > > addUserObject(const std::string &user_object_name, const std::string &name, InputParameters ¶meters)
virtual void addBoundaryCondition(const std::string &bc_name, const std::string &name, InputParameters ¶meters)
InputParameters getValidParams(const std::string &name) const
const MooseEnum & getSlopeReconstruction() const
Gets the slope reconstruction option used.
Single-component, single-phase flow channel.
Base class for 1-phase flow junctions.
std::vector< UserObjectName > _numerical_flux_names
virtual void check() const override
Check the component integrity.
virtual void init() override
Initializes the component.
static InputParameters validParams()
const std::string _junction_uo_name
Name of junction user object name, if any.
UserObjectName _fp_name
Fluid property user object name.
static const std::string RHOUA
static const std::string RHOA
static const std::string RHOEA
static const std::string AREA
static const std::string AREA_LINEAR
Junction connecting one flow channel to one other flow channel for 1-phase flow.
virtual void addMooseObjects() override
JunctionOneToOne1Phase(const InputParameters ¶ms)
MooseEnum _slope_reconstruction
Slope reconstruction option.
virtual void setupMesh() override
Performs mesh setup such as creating mesh or naming mesh sets.
virtual void init() override
Initializes the component.
virtual void check() const override
Check the component integrity.
static InputParameters validParams()
std::string genName(const std::string &prefix, unsigned int id, const std::string &suffix="") const
Build a name from a prefix, number and possible suffix.
virtual void augmentSparsity(const dof_id_type &elem_id1, const dof_id_type &elem_id2)
Hint how to augment sparsity pattern between two elements.
const bool & getImplicitTimeIntegrationFlag()
Gets the flag indicating whether an implicit time integration scheme is being used.
Interface class for 1-D slope reconstruction.
ExecFlagEnum getDefaultExecFlagEnum()