Line data Source code
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 "RadiativeHeatFluxBC.h" 11 : #include "Function.h" 12 : 13 : registerMooseObject("ThermalHydraulicsApp", RadiativeHeatFluxBC); 14 : 15 : InputParameters 16 20 : RadiativeHeatFluxBC::validParams() 17 : { 18 20 : InputParameters params = RadiativeHeatFluxBCBase::validParams(); 19 : 20 40 : params.addRequiredParam<Real>("boundary_emissivity", "Emissivity of the boundary."); 21 40 : params.addParam<FunctionName>("view_factor", "1", "View factor function"); 22 40 : params.addParam<PostprocessorName>( 23 40 : "scale_pp", 1.0, "Post-processor by which to scale boundary condition"); 24 : 25 20 : params.addClassDescription( 26 : "Radiative heat transfer boundary condition for a plate heat structure"); 27 : 28 20 : return params; 29 0 : } 30 : 31 10 : RadiativeHeatFluxBC::RadiativeHeatFluxBC(const InputParameters & parameters) 32 : : RadiativeHeatFluxBCBase(parameters), 33 10 : _eps_boundary(getParam<Real>("boundary_emissivity")), 34 10 : _view_factor_fn(getFunction("view_factor")), 35 20 : _scale_pp(getPostprocessorValue("scale_pp")) 36 : { 37 10 : } 38 : 39 : Real 40 1040 : RadiativeHeatFluxBC::coefficient() const 41 : { 42 1040 : return _scale_pp * _eps_boundary * _view_factor_fn.value(_t, _q_point[_qp]); 43 : }