https://mooseframework.inl.gov
Loading...
Searching...
No Matches
CircularAreaHydraulicDiameterFunction.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
11
13
16{
18
19 params.addRequiredParam<FunctionName>("area_function", "Area function");
20
22 "Computes hydraulic diameter for a circular area from its area function");
23
24 return params;
25}
26
28 const InputParameters & parameters)
29 : Function(parameters), FunctionInterface(this), _area_function(getFunction("area_function"))
30{
31}
32
33Real
35{
36 const Real A = _area_function.value(t, p);
37 return std::sqrt(4.0 * A / M_PI);
38}
39
40RealVectorValue
41CircularAreaHydraulicDiameterFunction::gradient(Real /*t*/, const Point & /*p*/) const
42{
43 mooseError(name(), ": ", __PRETTY_FUNCTION__, " is not implemented.");
44}
registerMooseObject("ThermalHydraulicsApp", CircularAreaHydraulicDiameterFunction)
const Real p
Computes hydraulic diameter for a circular area from its area function.
virtual Real value(Real t, const Point &p) const override
virtual RealVectorValue gradient(Real t, const Point &p) const override
CircularAreaHydraulicDiameterFunction(const InputParameters &parameters)
static InputParameters validParams()
virtual Real value(Real t, const Point &p) const
void addRequiredParam(const std::string &name, const std::string &doc_string)
void addClassDescription(const std::string &doc_string)
const std::string & name() const
void mooseError(Args &&... args) const