https://mooseframework.inl.gov
TotalPower.C
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 #include "TotalPower.h"
11 
12 registerMooseObject("ThermalHydraulicsApp", TotalPower);
13 
16 {
18  params.addRequiredParam<Real>("power", "Total power [W]");
19  params.declareControllable("power");
20  params.addClassDescription("Prescribes total power via a user supplied value");
21  return params;
22 }
23 
25  : TotalPowerBase(parameters), _power(getParam<Real>("power"))
26 {
27 }
28 
29 void
31 {
33 
34  if (!_app.isRestarting())
36 }
37 
38 void
40 {
41  {
42  std::string class_name = "ConstantScalarAux";
43  InputParameters pars = _factory.getValidParams(class_name);
44  pars.set<AuxVariableName>("variable") = _power_var_name;
45  pars.set<Real>("value") = _power;
46  std::string nm = genName(name(), "power_aux");
47  getTHMProblem().addAuxScalarKernel(class_name, nm, pars);
48  connectObject(pars, nm, "power", "value");
49  }
50 }
virtual void addVariables() override
Definition: TotalPower.C:30
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.
THMProblem & getTHMProblem() const
Gets the THM problem.
Definition: Component.C:135
const Real & _power
The value of power.
Definition: TotalPower.h:27
T & set(const std::string &name, bool quiet_mode=false)
virtual void addAuxScalarKernel(const std::string &kernel_name, const std::string &name, InputParameters &parameters)
InputParameters getValidParams(const std::string &name) const
virtual void addMooseObjects() override
Definition: TotalPower.C:39
bool isRestarting() const
virtual const std::string & name() const
void addRequiredParam(const std::string &name, const std::string &doc_string)
TotalPower(const InputParameters &parameters)
Definition: TotalPower.C:24
static InputParameters validParams()
Definition: TotalPower.C:15
Base class for components that provide total power.
virtual void addVariables() override
static InputParameters validParams()
const VariableName _power_var_name
The scalar variable holding the value of power.
void addConstantScalarIC(const VariableName &var_name, Real value)
Definition: Simulation.C:552
registerMooseObject("ThermalHydraulicsApp", TotalPower)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
MooseApp & _app
Prescribes total power via a user supplied value.
Definition: TotalPower.h:17
Factory & _factory
The Factory associated with the MooseApp.
Definition: Component.h:446
void connectObject(const InputParameters &params, const std::string &mooseName, const std::string &name) const
Connect with control logic.
Definition: Component.C:98
void addClassDescription(const std::string &doc_string)
void declareControllable(const std::string &name, std::set< ExecFlagType > execute_flags={})