https://mooseframework.inl.gov
ShaftConnectedPump1Phase.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 "VolumeJunction1Phase.h"
13 #include "ShaftConnectable.h"
14 
19 {
20 public:
22 
23  virtual void addVariables() override;
24  virtual void addMooseObjects() override;
25  virtual UserObjectName getShaftConnectedUserObjectName() const override
26  {
27  return _junction_uo_name;
28  }
29 
30 protected:
31  virtual void check() const override;
32  virtual void buildVolumeJunctionUserObject() override;
33 
35  const BoundaryName & _inlet;
37  const BoundaryName & _outlet;
39  const Real & _omega_rated;
43  const Real & _head_rated;
49  const Real & _speed_cr_fr;
53  const std::vector<Real> & _tau_fr_coeff;
55  const Real & _speed_cr_I;
59  const std::vector<Real> & _inertia_coeff;
61  const FunctionName & _head;
63  const FunctionName & _torque_hydraulic;
65  const VariableName _head_var_name;
67  const VariableName _hydraulic_torque_var_name;
69  const VariableName _friction_torque_var_name;
71  const VariableName _moi_var_name;
74 
75 public:
77 };
const FunctionName & _head
Name of function to compute data for pump head.
const Real & _speed_cr_I
Pump speed threshold for inertia.
const VariableName _head_var_name
Name of pump head variable.
const std::vector< Real > & _tau_fr_coeff
Pump friction coefficients.
const VariableName _hydraulic_torque_var_name
Name of pump hydraulic torque variable.
const Real & _omega_rated
Rated pump speed.
virtual void addVariables() override
const VariableName _moi_var_name
Name of pump inertia variable.
virtual void check() const override
Check the component integrity.
virtual void addMooseObjects() override
const Real & _speed_cr_fr
Pump speed threshold for friction.
1-phase pump that must be connected to a Shaft component
const BoundaryName & _inlet
Pump inlet.
const std::vector< Real > & _inertia_coeff
Pump inertia coefficients.
static InputParameters validParams()
const Real & _tau_fr_const
Pump friction constant.
const Real & _torque_rated
Rated pump torque.
const Real & _transition_width
Transition width for the sign of the frictional torque when speed is 0.
const Real & _head_rated
Rated pump head.
const Real & _density_rated
Rated pump density.
Junction between 1-phase flow channels that has a non-zero volume.
const std::string _junction_uo_name
Name of junction user object name, if any.
Definition: FlowJunction.h:40
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
Interface class for components that connect to a shaft.
const BoundaryName & _outlet
Pump outlet.
virtual void buildVolumeJunctionUserObject() override
Builds user object for computing and storing the fluxes.
const VariableName _friction_torque_var_name
Name of pump friction torque variable.
const FunctionName & _torque_hydraulic
Name of function to compute data for pump torque.
ShaftConnectedPump1Phase(const InputParameters &params)
virtual UserObjectName getShaftConnectedUserObjectName() const override
const Real & _inertia_const
Pump inertia constant.
const Real & _volumetric_rated
Rated pump volumetric flow rate.