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

DG kernel for interfacing diffusion between two variables on adjacent blocks. More...

#include <SideSetHeatTransferKernel.h>

Inheritance diagram for SideSetHeatTransferKernel:
[legend]

Public Member Functions

 SideSetHeatTransferKernel (const InputParameters &parameters)
 

Protected Member Functions

virtual Real computeQpResidual (Moose::DGResidualType type) override
 
virtual Real computeQpJacobian (Moose::DGJacobianType type) override
 

Protected Attributes

const MaterialProperty< Real > & _cond
 Conductivity of gap divided by effective gap width. More...
 
const VariableValue * _Tbulk_var
 Bulk temperature of gap. More...
 
const MaterialProperty< Real > * _Tbulk_mat
 
const MaterialProperty< Real > & _hp
 Convective heat transfer coefficient (master face) More...
 
const MaterialProperty< Real > & _hm
 Convective heat transfer coefficient (neighbor face) More...
 
const MaterialProperty< Real > & _eps_p
 Master face effective emissivity \epsilon^+\sigma(1-\rho^-)/(1-\rho^+\rho^-) More...
 
const MaterialProperty< Real > & _eps_m
 Neighbor face effective emissivity \epsilon^-\sigma(1-\rho^+)/(1-\rho^+\rho^-) More...
 

Detailed Description

DG kernel for interfacing diffusion between two variables on adjacent blocks.

Definition at line 23 of file SideSetHeatTransferKernel.h.

Constructor & Destructor Documentation

◆ SideSetHeatTransferKernel()

SideSetHeatTransferKernel::SideSetHeatTransferKernel ( const InputParameters &  parameters)

Definition at line 51 of file SideSetHeatTransferKernel.C.

52  : InterfaceKernel(parameters),
53  _cond(getMaterialProperty<Real>("conductance")),
54  _Tbulk_var(isParamValid("Tbulk_var") ? &coupledValue("Tbulk_var") : nullptr),
55  _Tbulk_mat(_Tbulk_var ? nullptr : &getMaterialProperty<Real>("Tbulk_mat")),
56  _hp(getMaterialProperty<Real>("h_master")),
57  _hm(getMaterialProperty<Real>("h_neighbor")),
58  _eps_p(getMaterialProperty<Real>("emissivity_eff_master")),
59  _eps_m(getMaterialProperty<Real>("emissivity_eff_neighbor"))
60 {
61  if (parameters.isParamSetByUser("Tbulk_mat") && _Tbulk_var)
62  paramError("Tbulk_var", "Both Tbulk_mat and Tbulk_var set by user, cannot use both.");
63 
64  if (_var.number() == _neighbor_var.number() && _var.isNodal())
65  mooseError(
66  "Variable and neighbor variable are the same, but they are not elemental variables.");
67 }

Member Function Documentation

◆ computeQpJacobian()

Real SideSetHeatTransferKernel::computeQpJacobian ( Moose::DGJacobianType  type)
overrideprotectedvirtual

Definition at line 125 of file SideSetHeatTransferKernel.C.

126 {
127  Real jac = 0;
128 
129  if (_cond[_qp] != 0.0) // Conduction
130  {
131  switch (type)
132  {
133  case Moose::ElementElement:
134  jac += _cond[_qp] * _phi[_j][_qp] * _test[_i][_qp];
135  break;
136 
137  case Moose::NeighborNeighbor:
138  jac += _cond[_qp] * _phi_neighbor[_j][_qp] * _test_neighbor[_i][_qp];
139  break;
140 
141  case Moose::ElementNeighbor:
142  jac -= _cond[_qp] * _phi_neighbor[_j][_qp] * _test[_i][_qp];
143  break;
144 
145  case Moose::NeighborElement:
146  jac -= _cond[_qp] * _phi[_j][_qp] * _test_neighbor[_i][_qp];
147  break;
148  }
149  }
150 
151  if (_hp[_qp] != 0.0 && _hm[_qp] != 0.0) // Convection
152  {
153  switch (type)
154  {
155  case Moose::ElementElement:
156  jac += _hp[_qp] * _phi[_j][_qp] * _test[_i][_qp];
157  break;
158 
159  case Moose::NeighborNeighbor:
160  jac += _hm[_qp] * _phi_neighbor[_j][_qp] * _test_neighbor[_i][_qp];
161  break;
162 
163  case Moose::NeighborElement:
164  case Moose::ElementNeighbor:
165  break;
166  }
167  }
168 
169  if (_eps_p[_qp] != 0.0 && _eps_m[_qp] != 0.0) // Radiation
170  {
171  switch (type)
172  {
173  case Moose::ElementElement:
174  jac += 4.0 * _eps_p[_qp] * (_u[_qp] * _u[_qp] * _u[_qp]) * _phi[_j][_qp] * _test[_i][_qp];
175  break;
176 
177  case Moose::NeighborNeighbor:
178  jac += 4.0 * _eps_m[_qp] *
179  (_neighbor_value[_qp] * _neighbor_value[_qp] * _neighbor_value[_qp]) *
180  _phi_neighbor[_j][_qp] * _test_neighbor[_i][_qp];
181  break;
182 
183  case Moose::ElementNeighbor:
184  jac -= 4.0 * _eps_m[_qp] *
185  (_neighbor_value[_qp] * _neighbor_value[_qp] * _neighbor_value[_qp]) *
186  _phi_neighbor[_j][_qp] * _test[_i][_qp];
187  break;
188 
189  case Moose::NeighborElement:
190  jac -= 4.0 * _eps_p[_qp] * (_u[_qp] * _u[_qp] * _u[_qp]) * _phi[_j][_qp] *
191  _test_neighbor[_i][_qp];
192  break;
193  }
194  }
195 
196  return jac;
197 }

◆ computeQpResidual()

Real SideSetHeatTransferKernel::computeQpResidual ( Moose::DGResidualType  type)
overrideprotectedvirtual

Definition at line 70 of file SideSetHeatTransferKernel.C.

71 {
72  Real r = 0;
73 
74  if (_cond[_qp] != 0.0) // Conduction
75  {
76  Real jump = _u[_qp] - _neighbor_value[_qp];
77  switch (type)
78  {
79  case Moose::Element:
80  r += _cond[_qp] * jump * _test[_i][_qp];
81  break;
82 
83  case Moose::Neighbor:
84  r -= _cond[_qp] * jump * _test_neighbor[_i][_qp];
85  break;
86  }
87  }
88 
89  if (_hp[_qp] != 0.0 && _hm[_qp] != 0.0) // Convection
90  {
91  Real Tb = (_Tbulk_var ? (*_Tbulk_var)[_qp] : (*_Tbulk_mat)[_qp]);
92  switch (type)
93  {
94  case Moose::Element:
95  r += _hp[_qp] * (_u[_qp] - Tb) * _test[_i][_qp];
96  break;
97 
98  case Moose::Neighbor:
99  r += _hm[_qp] * (_neighbor_value[_qp] - Tb) * _test_neighbor[_i][_qp];
100  break;
101  }
102  }
103 
104  if (_eps_p[_qp] != 0.0 && _eps_m[_qp] != 0.0) // Radiation
105  {
106  Real Rp = _eps_p[_qp] * (_u[_qp] * _u[_qp] * _u[_qp] * _u[_qp]);
107  Real Rm = _eps_m[_qp] * (_neighbor_value[_qp] * _neighbor_value[_qp] * _neighbor_value[_qp] *
108  _neighbor_value[_qp]);
109  switch (type)
110  {
111  case Moose::Element:
112  r += (Rp - Rm) * _test[_i][_qp];
113  break;
114 
115  case Moose::Neighbor:
116  r += (Rm - Rp) * _test_neighbor[_i][_qp];
117  break;
118  }
119  }
120 
121  return r;
122 }

Member Data Documentation

◆ _cond

const MaterialProperty<Real>& SideSetHeatTransferKernel::_cond
protected

Conductivity of gap divided by effective gap width.

Definition at line 33 of file SideSetHeatTransferKernel.h.

Referenced by computeQpJacobian(), and computeQpResidual().

◆ _eps_m

const MaterialProperty<Real>& SideSetHeatTransferKernel::_eps_m
protected

Neighbor face effective emissivity \epsilon^-\sigma(1-\rho^+)/(1-\rho^+\rho^-)

Definition at line 44 of file SideSetHeatTransferKernel.h.

Referenced by computeQpJacobian(), and computeQpResidual().

◆ _eps_p

const MaterialProperty<Real>& SideSetHeatTransferKernel::_eps_p
protected

Master face effective emissivity \epsilon^+\sigma(1-\rho^-)/(1-\rho^+\rho^-)

Definition at line 42 of file SideSetHeatTransferKernel.h.

Referenced by computeQpJacobian(), and computeQpResidual().

◆ _hm

const MaterialProperty<Real>& SideSetHeatTransferKernel::_hm
protected

Convective heat transfer coefficient (neighbor face)

Definition at line 40 of file SideSetHeatTransferKernel.h.

Referenced by computeQpJacobian(), and computeQpResidual().

◆ _hp

const MaterialProperty<Real>& SideSetHeatTransferKernel::_hp
protected

Convective heat transfer coefficient (master face)

Definition at line 38 of file SideSetHeatTransferKernel.h.

Referenced by computeQpJacobian(), and computeQpResidual().

◆ _Tbulk_mat

const MaterialProperty<Real>* SideSetHeatTransferKernel::_Tbulk_mat
protected

Definition at line 36 of file SideSetHeatTransferKernel.h.

◆ _Tbulk_var

const VariableValue* SideSetHeatTransferKernel::_Tbulk_var
protected

Bulk temperature of gap.

Definition at line 35 of file SideSetHeatTransferKernel.h.

Referenced by computeQpResidual(), and SideSetHeatTransferKernel().


The documentation for this class was generated from the following files:
SideSetHeatTransferKernel::_cond
const MaterialProperty< Real > & _cond
Conductivity of gap divided by effective gap width.
Definition: SideSetHeatTransferKernel.h:33
SideSetHeatTransferKernel::_Tbulk_mat
const MaterialProperty< Real > * _Tbulk_mat
Definition: SideSetHeatTransferKernel.h:36
SideSetHeatTransferKernel::_eps_p
const MaterialProperty< Real > & _eps_p
Master face effective emissivity \epsilon^+\sigma(1-\rho^-)/(1-\rho^+\rho^-)
Definition: SideSetHeatTransferKernel.h:42
SideSetHeatTransferKernel::_Tbulk_var
const VariableValue * _Tbulk_var
Bulk temperature of gap.
Definition: SideSetHeatTransferKernel.h:35
SideSetHeatTransferKernel::_hp
const MaterialProperty< Real > & _hp
Convective heat transfer coefficient (master face)
Definition: SideSetHeatTransferKernel.h:38
SideSetHeatTransferKernel::_hm
const MaterialProperty< Real > & _hm
Convective heat transfer coefficient (neighbor face)
Definition: SideSetHeatTransferKernel.h:40
SideSetHeatTransferKernel::_eps_m
const MaterialProperty< Real > & _eps_m
Neighbor face effective emissivity \epsilon^-\sigma(1-\rho^+)/(1-\rho^+\rho^-)
Definition: SideSetHeatTransferKernel.h:44