www.mooseframework.org
Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
GrayLambertNeumannBC Class Reference

Boundary condition for radiative heat that is computed by the GrayLambertSurfaceRadiationBase userobject. More...

#include <GrayLambertNeumannBC.h>

Inheritance diagram for GrayLambertNeumannBC:
[legend]

Public Member Functions

 GrayLambertNeumannBC (const InputParameters &parameters)
 

Static Public Member Functions

static InputParameters validParams ()
 

Static Public Attributes

static Real _sigma_stefan_boltzmann = 5.670367e-8
 

Protected Member Functions

virtual Real computeQpResidual () override
 
virtual Real computeQpJacobian () override
 

Protected Attributes

const GrayLambertSurfaceRadiationBase_glsr_uo
 
bool _reconstruct_emission
 

Detailed Description

Boundary condition for radiative heat that is computed by the GrayLambertSurfaceRadiationBase userobject.

Definition at line 24 of file GrayLambertNeumannBC.h.

Constructor & Destructor Documentation

◆ GrayLambertNeumannBC()

GrayLambertNeumannBC::GrayLambertNeumannBC ( const InputParameters &  parameters)

Definition at line 34 of file GrayLambertNeumannBC.C.

35  : IntegratedBC(parameters),
36  _glsr_uo(getUserObject<GrayLambertSurfaceRadiationBase>("surface_radiation_object_name")),
37  _reconstruct_emission(getParam<bool>("reconstruct_emission"))
38 {
39 }

Member Function Documentation

◆ computeQpJacobian()

Real GrayLambertNeumannBC::computeQpJacobian ( )
overrideprotectedvirtual

Definition at line 53 of file GrayLambertNeumannBC.C.

54 {
55  // this is not the exact Jacobian but it ensures correct scaling
56  return _test[_i][_qp] * _sigma_stefan_boltzmann *
57  _glsr_uo.getSurfaceEmissivity(_current_boundary_id) * 4 * MathUtils::pow(_u[_qp], 3) *
58  _phi[_j][_qp];
59 }

◆ computeQpResidual()

Real GrayLambertNeumannBC::computeQpResidual ( )
overrideprotectedvirtual

Definition at line 42 of file GrayLambertNeumannBC.C.

43 {
45  return _test[_i][_qp] * _glsr_uo.getSurfaceHeatFluxDensity(_current_boundary_id);
46 
47  Real eps = _glsr_uo.getSurfaceEmissivity(_current_boundary_id);
48  Real emission = _sigma_stefan_boltzmann * MathUtils::pow(_u[_qp], 4);
49  return _test[_i][_qp] * eps * (emission - _glsr_uo.getSurfaceIrradiation(_current_boundary_id));
50 }

◆ validParams()

InputParameters GrayLambertNeumannBC::validParams ( )
static

Definition at line 20 of file GrayLambertNeumannBC.C.

21 {
22  InputParameters params = IntegratedBC::validParams();
23  params.addRequiredParam<UserObjectName>("surface_radiation_object_name",
24  "Name of the GrayLambertSurfaceRadiationBase UO");
25  params.addParam<bool>(
26  "reconstruct_emission",
27  true,
28  "Flag to apply constant heat flux on sideset or reconstruct emission by T^4 law.");
29  params.addClassDescription("This BC imposes a heat flux density that is computed from the "
30  "GrayLambertSurfaceRadiationBase userobject.");
31  return params;
32 }

Member Data Documentation

◆ _glsr_uo

const GrayLambertSurfaceRadiationBase& GrayLambertNeumannBC::_glsr_uo
protected

Definition at line 37 of file GrayLambertNeumannBC.h.

Referenced by computeQpJacobian(), and computeQpResidual().

◆ _reconstruct_emission

bool GrayLambertNeumannBC::_reconstruct_emission
protected

Definition at line 38 of file GrayLambertNeumannBC.h.

Referenced by computeQpResidual().

◆ _sigma_stefan_boltzmann

Real GrayLambertNeumannBC::_sigma_stefan_boltzmann = 5.670367e-8
static

Definition at line 31 of file GrayLambertNeumannBC.h.

Referenced by computeQpJacobian(), and computeQpResidual().


The documentation for this class was generated from the following files:
GrayLambertNeumannBC::_glsr_uo
const GrayLambertSurfaceRadiationBase & _glsr_uo
Definition: GrayLambertNeumannBC.h:37
pow
ExpressionBuilder::EBTerm pow(const ExpressionBuilder::EBTerm &left, T exponent)
Definition: ExpressionBuilder.h:673
GrayLambertNeumannBC::_sigma_stefan_boltzmann
static Real _sigma_stefan_boltzmann
Definition: GrayLambertNeumannBC.h:31
GrayLambertNeumannBC::_reconstruct_emission
bool _reconstruct_emission
Definition: GrayLambertNeumannBC.h:38
GrayLambertSurfaceRadiationBase::getSurfaceIrradiation
Real getSurfaceIrradiation(BoundaryID id) const
public interface of this UserObject
Definition: GrayLambertSurfaceRadiationBase.C:269
GrayLambertSurfaceRadiationBase::getSurfaceEmissivity
Real getSurfaceEmissivity(BoundaryID id) const
Definition: GrayLambertSurfaceRadiationBase.C:301
validParams
InputParameters validParams()
GrayLambertSurfaceRadiationBase::getSurfaceHeatFluxDensity
Real getSurfaceHeatFluxDensity(BoundaryID id) const
Definition: GrayLambertSurfaceRadiationBase.C:277