Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix use of emissivity for cylindrical and spherical surfaces #26629

Merged
merged 1 commit into from
Jan 26, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions modules/heat_transfer/include/materials/GapConductance.h
Original file line number Diff line number Diff line change
Expand Up @@ -120,6 +120,8 @@ class GapConductance : public Material
const VariableValue * const _gap_conductivity_function_variable;

const Real _stefan_boltzmann;
const Real _emissivity_primary;
const Real _emissivity_secondary;
Real _emissivity;

const Real _min_gap;
Expand Down
73 changes: 52 additions & 21 deletions modules/heat_transfer/src/materials/GapConductance.C
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ GapConductance::validParams()
"then required.");
params.addParam<BoundaryName>("paired_boundary", "The boundary to be penetrated");

params.addParam<Real>("stefan_boltzmann", 5.669e-8, "The Stefan-Boltzmann constant");
params.addParam<Real>("stefan_boltzmann", 5.670374e-8, "The Stefan-Boltzmann constant");

params.addParam<bool>("use_displaced_mesh",
true,
Expand Down Expand Up @@ -128,6 +128,8 @@ GapConductance::GapConductance(const InputParameters & parameters)
? &coupledValue("gap_conductivity_function_variable")
: nullptr),
_stefan_boltzmann(getParam<Real>("stefan_boltzmann")),
_emissivity_primary(getParam<Real>("emissivity_primary")),
_emissivity_secondary(getParam<Real>("emissivity_secondary")),
_min_gap(getParam<Real>("min_gap")),
_min_gap_order(getParam<unsigned int>("min_gap_order")),
_max_gap(getParam<Real>("max_gap")),
Expand All @@ -139,13 +141,8 @@ GapConductance::GapConductance(const InputParameters & parameters)
_p1(declareRestartableData<Point>("cylinder_axis_point_1", Point(0, 1, 0))),
_p2(declareRestartableData<Point>("cylinder_axis_point_2", Point(0, 0, 0)))
{
// Set emissivity but allow legacy naming; legacy names are used if they
// are present
const auto emissivity_primary = getParam<Real>("emissivity_primary");
const auto emissivity_secondary = getParam<Real>("emissivity_secondary");

_emissivity = emissivity_primary != 0.0 && emissivity_secondary != 0.0
? 1.0 / emissivity_primary + 1.0 / emissivity_secondary - 1
_emissivity = _emissivity_primary != 0.0 && _emissivity_secondary != 0.0
? 1.0 / _emissivity_primary + 1.0 / _emissivity_secondary - 1
: 0.0;

if (_quadrature)
Expand Down Expand Up @@ -337,19 +334,35 @@ GapConductance::h_radiation()
/*
Gap conductance due to radiation is based on the diffusion approximation:

qr = sigma*Fe*(Tf^4 - Tc^4) ~ hr(Tf - Tc)
where sigma is the Stefan-Boltzmann constant, Fe is an emissivity function, Tf and Tc
are the fuel and clad absolute temperatures, respectively, and hr is the radiant gap
conductance. Solving for hr,
q12 = sigma*Fe*(T1^4 - T2^4) ~ hr(T1 - T2)
where sigma is the Stefan-Boltzmann constant, Fe is an emissivity
function, T1 and T2 are the temperatures of the two surfaces, and
hr is the radiant gap conductance. Solving for hr,

hr = sigma*Fe*(T1^4 - T2^4) / (T1 - T2)
which can be factored to give:

hr = sigma*Fe*(T1^2 + T2^2) * (T1 + T2)

Assuming the gap is between infinite parallel planes, the emissivity
function is given by:

Fe = 1 / (1/e1 + 1/e2 - 1)

For cylinders and spheres, see Fundamentals of Heat and Mass Transfer,
Sixth Edition, John Wiley & Sons, Table 13.3.

For cylinders:

Fe = 1 / (1/e1 + (1/e2 - 1) * (r1/r2))

hr = sigma*Fe*(Tf^4 - Tc^4) / (Tf - Tc)
which can be factored to give:
q21 = -q12 * (r1/r2)

hr = sigma*Fe*(Tf^2 + Tc^2) * (Tf + Tc)
For spheres:

Approximating the fuel-clad gap as infinite parallel planes, the emissivity function is given by:
Fe = 1 / (1/e1 + (1/e2 - 1) * (r1/r2)^2)

Fe = 1 / (1/ef + 1/ec - 1)
q21 = -q12 * (r1/r2)^2
*/

if (_emissivity == 0.0)
Expand All @@ -360,9 +373,18 @@ GapConductance::h_radiation()
Real surface_integration_factor = 1.0;

if (_gap_geometry_type == GapConductance::CYLINDER)
surface_integration_factor = 0.5 * (_r1 + _r2) / _radius;
{
_emissivity = 1.0 / _emissivity_primary + (1.0 / _emissivity_secondary - 1) * _r1 / _r2;
if (_r2 == _radius)
surface_integration_factor = _r1 / _r2;
}
else if (_gap_geometry_type == GapConductance::SPHERE)
surface_integration_factor = 0.25 * (_r1 + _r2) * (_r1 + _r2) / (_radius * _radius);
{
_emissivity =
1.0 / _emissivity_primary + (1.0 / _emissivity_secondary - 1) * _r1 * _r1 / (_r2 * _r2);
if (_r2 == _radius)
surface_integration_factor = _r1 * _r1 / (_r2 * _r2);
}

const Real temp_func =
(_temp[_qp] * _temp[_qp] + _gap_temp * _gap_temp) * (_temp[_qp] + _gap_temp);
Expand All @@ -379,9 +401,18 @@ GapConductance::dh_radiation()
Real surface_integration_factor = 1.0;

if (_gap_geometry_type == GapConductance::CYLINDER)
surface_integration_factor = 0.5 * (_r1 + _r2) / _radius;
{
_emissivity = 1.0 / _emissivity_primary + (1.0 / _emissivity_secondary - 1) * _r1 / _r2;
if (_r2 == _radius)
surface_integration_factor = _r1 / _r2;
}
else if (_gap_geometry_type == GapConductance::SPHERE)
surface_integration_factor = 0.25 * (_r1 + _r2) * (_r1 + _r2) / (_radius * _radius);
{
_emissivity =
1.0 / _emissivity_primary + (1.0 / _emissivity_secondary - 1) * _r1 * _r1 / (_r2 * _r2);
if (_r2 == _radius)
surface_integration_factor = _r1 * _r1 / (_r2 * _r2);
}

const Real temp_func = 3 * _temp[_qp] * _temp[_qp] + _gap_temp * (2 * _temp[_qp] + _gap_temp);

Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
time,Tcore_avg,Tcore_max,Tcore_min,Trpv_avg,Trpv_max,Trpv_min,heat_balance,ptot,rpv_convective_out
0,0,0,0,0,0,0,0,0,0
1,5393.5775548207,6113.3891835742,4759.3589179598,4352.9526929928,4609.8983226228,4133.5700499916,7.4443014717573e-05,628318.53071796,628365.30464359
1,5393.6644156926,6113.4760465477,4759.4462004543,4352.9605673544,4609.906406692,4133.5778074715,7.6386029698641e-05,628318.53071796,628366.52547591
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
time,Tcore_avg,Tcore_max,Tcore_min,Trpv_avg,Trpv_max,Trpv_min,flux_from_core,flux_into_rpv,heat_balance,ptot,rpv_convective_out
0,0,0,0,0,0,0,0,0,0,0,0
1,5321.3794083679,6043.9329433687,4600.3618143312,4279.5038918932,4594.2083328607,4004.8357991759,627533.46021351,-627605.34282851,1.5600638240969e-13,628318.53071796,628318.53071806
1,5321.4889932475,6044.0425282483,4600.4713992108,4279.503891892,4594.2083328594,4004.8357991749,627533.46021336,-627605.34282826,-1.3210516705238e-13,628318.53071796,628318.53071788
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
time,flux_left,flux_right,heat_balance,ptot,sphere_convective_out,temp_left,temp_right
0,0,0,0,0,0,0,0
1,104721.76094827,-102359.96262201,1.4653101375897e-07,104718.22222357,104718.23756804,738.7371726696,565.45711490661
1,104721.69029332,-102359.97052264,1.8263860794812e-08,104718.22222357,104718.22413613,835.27391832054,565.45708251443
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
id,temp,x,y,z
0,70.621675442894,0.4,1,0
8,70.621675442894,0.4,0,0
10,70.621675442894,0.4,0.2,0
11,70.621675442894,0.4,0.4,0
12,70.621675442894,0.4,0.6,0
13,70.621675442894,0.4,0.8,0
19,58.75664910825,0.6,1,0
22,58.75664910825,0.6,0,0
23,58.75664910825,0.6,0.85714285714286,0
24,58.75664910825,0.6,0.71428571428571,0
25,58.75664910825,0.6,0.57142857142857,0
26,58.75664910825,0.6,0.42857142857143,0
27,58.75664910825,0.6,0.28571428571429,0
28,58.75664910825,0.6,0.14285714285714,0
0,70.620771417379,0.4,1,0
8,70.62077141738,0.4,0,0
10,70.62077141738,0.4,0.2,0
11,70.62077141738,0.4,0.4,0
12,70.62077141738,0.4,0.6,0
13,70.62077141738,0.4,0.8,0
19,58.758457159288,0.6,1,0
22,58.758457159288,0.6,0,0
23,58.758457159288,0.6,0.85714285714286,0
24,58.758457159288,0.6,0.71428571428571,0
25,58.758457159288,0.6,0.57142857142857,0
26,58.758457159288,0.6,0.42857142857143,0
27,58.758457159288,0.6,0.28571428571429,0
28,58.758457159288,0.6,0.14285714285714,0
Original file line number Diff line number Diff line change
@@ -1,81 +1,81 @@
Tsolid,id,x,y,z
4676.2779681174,47,2.0041199604355,0,0
4676.2456463925,48,1.9794459180761,0.31351343388717,0
4675.9941177416,49,1.9060313478094,0.61930712654061,0
4675.538423543,50,1.7856839600042,0.90985142237611,0
4675.0305604281,51,1.6213671067584,1.177992156569,0
4674.7600742076,52,1.4171268143353,1.4171268143352,0
4675.0305604281,53,1.177992156569,1.6213671067584,0
4675.538423543,54,0.90985142237611,1.7856839600042,0
4675.9941177415,55,0.61930712654061,1.9060313478094,0
4676.2456463925,56,0.31351343388717,1.9794459180761,0
4676.2779681174,57,1.2271695473273e-16,2.0041199604355,0
4673.159210176,58,2.1544289574682,0,0
4673.1279361064,59,2.1279043619318,0.33702694142871,0
4672.8759287845,60,2.0489836988951,0.66575516103116,0
4672.4198815172,61,1.9196102570045,0.97809027905432,0
4671.9115916309,62,1.7429696397652,1.2663415683116,0
4671.6395477102,63,1.5234113254104,1.5234113254104,0
4671.9115916309,64,1.2663415683116,1.7429696397652,0
4672.4198815172,65,0.97809027905432,1.9196102570045,0
4672.8759287845,66,0.66575516103116,2.0489836988951,0
4673.1279361063,67,0.33702694142871,2.1279043619318,0
4673.159210176,68,1.3192072633769e-16,2.1544289574682,0
4676.2456463925,131,-0.31351343388717,1.9794459180761,0
4675.9941177415,132,-0.61930712654061,1.9060313478094,0
4675.5384235431,133,-0.90985142237611,1.7856839600042,0
4675.0305604281,134,-1.177992156569,1.6213671067584,0
4674.7600742076,135,-1.4171268143352,1.4171268143353,0
4675.0305604281,136,-1.6213671067584,1.177992156569,0
4675.5384235431,137,-1.7856839600042,0.90985142237611,0
4675.9941177416,138,-1.9060313478094,0.61930712654061,0
4676.2456463925,139,-1.9794459180761,0.31351343388717,0
4676.2779681174,140,-2.0041199604355,2.4543390946546e-16,0
4673.1279361064,141,-0.33702694142871,2.1279043619318,0
4672.8759287845,142,-0.66575516103116,2.0489836988951,0
4672.4198815172,143,-0.97809027905432,1.9196102570045,0
4671.9115916309,144,-1.2663415683116,1.7429696397652,0
4671.6395477102,145,-1.5234113254104,1.5234113254104,0
4671.9115916309,146,-1.7429696397652,1.2663415683116,0
4672.4198815172,147,-1.9196102570045,0.97809027905432,0
4672.8759287845,148,-2.0489836988951,0.66575516103116,0
4673.1279361064,149,-2.1279043619318,0.33702694142871,0
4673.159210176,150,-2.1544289574682,2.6384145267537e-16,0
4676.2456463925,211,-1.9794459180761,-0.31351343388717,0
4675.9941177416,212,-1.9060313478094,-0.61930712654061,0
4675.538423543,213,-1.7856839600042,-0.90985142237611,0
4675.0305604281,214,-1.6213671067584,-1.177992156569,0
4674.7600742076,215,-1.4171268143353,-1.4171268143352,0
4675.0305604281,216,-1.177992156569,-1.6213671067584,0
4675.538423543,217,-0.90985142237611,-1.7856839600042,0
4675.9941177415,218,-0.61930712654061,-1.9060313478094,0
4676.2456463925,219,-0.31351343388717,-1.9794459180761,0
4676.2779681174,220,-3.681508641982e-16,-2.0041199604355,0
4673.1279361064,221,-2.1279043619318,-0.33702694142871,0
4672.8759287845,222,-2.0489836988951,-0.66575516103116,0
4672.4198815172,223,-1.9196102570045,-0.97809027905432,0
4671.9115916309,224,-1.7429696397652,-1.2663415683116,0
4671.6395477102,225,-1.5234113254104,-1.5234113254104,0
4671.9115916309,226,-1.2663415683116,-1.7429696397652,0
4672.4198815172,227,-0.97809027905432,-1.9196102570045,0
4672.8759287845,228,-0.66575516103116,-2.0489836988951,0
4673.1279361064,229,-0.33702694142871,-2.1279043619318,0
4673.159210176,230,-3.9576217901306e-16,-2.1544289574682,0
4676.2456463924,285,0.31351343388717,-1.9794459180761,0
4675.9941177415,286,0.61930712654061,-1.9060313478094,0
4675.538423543,287,0.90985142237611,-1.7856839600042,0
4675.0305604281,288,1.177992156569,-1.6213671067584,0
4674.7600742077,289,1.4171268143352,-1.4171268143353,0
4675.0305604281,290,1.6213671067584,-1.177992156569,0
4675.538423543,291,1.7856839600042,-0.90985142237611,0
4675.9941177416,292,1.9060313478094,-0.61930712654061,0
4676.2456463925,293,1.9794459180761,-0.31351343388717,0
4673.1279361063,294,0.33702694142871,-2.1279043619318,0
4672.8759287845,295,0.66575516103116,-2.0489836988951,0
4672.4198815172,296,0.97809027905432,-1.9196102570045,0
4671.911591631,297,1.2663415683116,-1.7429696397652,0
4671.6395477102,298,1.5234113254104,-1.5234113254104,0
4671.9115916309,299,1.7429696397652,-1.2663415683116,0
4672.4198815172,300,1.9196102570045,-0.97809027905432,0
4672.8759287845,301,2.0489836988951,-0.66575516103116,0
4673.1279361064,302,2.1279043619318,-0.33702694142871,0
4676.364534427,47,2.0041199604355,0,0
4676.332217205,48,1.9794459180761,0.31351343388717,0
4676.0807764083,49,1.9060313478094,0.61930712654061,0
4675.6253204291,50,1.7856839600042,0.90985142237611,0
4675.1177712827,51,1.6213671067584,1.177992156569,0
4674.8474459521,52,1.4171268143353,1.4171268143352,0
4675.1177712827,53,1.177992156569,1.6213671067584,0
4675.6253204291,54,0.90985142237611,1.7856839600042,0
4676.0807764083,55,0.61930712654061,1.9060313478094,0
4676.332217205,56,0.31351343388717,1.9794459180761,0
4676.364534427,57,1.2271695473273e-16,2.0041199604355,0
4673.1674137389,58,2.1544289574682,0,0
4673.1361185478,59,2.1279043619318,0.33702694142871,0
4672.8841978555,60,2.0489836988951,0.66575516103116,0
4672.4284025969,61,1.9196102570045,0.97809027905432,0
4671.9204586943,62,1.7429696397652,1.2663415683116,0
4671.6486177562,63,1.5234113254104,1.5234113254104,0
4671.9204586944,64,1.2663415683116,1.7429696397652,0
4672.4284025969,65,0.97809027905432,1.9196102570045,0
4672.8841978555,66,0.66575516103116,2.0489836988951,0
4673.1361185478,67,0.33702694142871,2.1279043619318,0
4673.1674137389,68,1.3192072633769e-16,2.1544289574682,0
4676.332217205,131,-0.31351343388717,1.9794459180761,0
4676.0807764084,132,-0.61930712654061,1.9060313478094,0
4675.6253204292,133,-0.90985142237611,1.7856839600042,0
4675.1177712827,134,-1.177992156569,1.6213671067584,0
4674.8474459521,135,-1.4171268143352,1.4171268143353,0
4675.1177712827,136,-1.6213671067584,1.177992156569,0
4675.6253204291,137,-1.7856839600042,0.90985142237611,0
4676.0807764084,138,-1.9060313478094,0.61930712654061,0
4676.332217205,139,-1.9794459180761,0.31351343388717,0
4676.364534427,140,-2.0041199604355,2.4543390946546e-16,0
4673.1361185478,141,-0.33702694142871,2.1279043619318,0
4672.8841978555,142,-0.66575516103116,2.0489836988951,0
4672.428402597,143,-0.97809027905432,1.9196102570045,0
4671.9204586944,144,-1.2663415683116,1.7429696397652,0
4671.6486177561,145,-1.5234113254104,1.5234113254104,0
4671.9204586943,146,-1.7429696397652,1.2663415683116,0
4672.4284025969,147,-1.9196102570045,0.97809027905432,0
4672.8841978555,148,-2.0489836988951,0.66575516103116,0
4673.1361185478,149,-2.1279043619318,0.33702694142871,0
4673.1674137389,150,-2.1544289574682,2.6384145267537e-16,0
4676.332217205,211,-1.9794459180761,-0.31351343388717,0
4676.0807764084,212,-1.9060313478094,-0.61930712654061,0
4675.6253204292,213,-1.7856839600042,-0.90985142237611,0
4675.1177712828,214,-1.6213671067584,-1.177992156569,0
4674.8474459522,215,-1.4171268143353,-1.4171268143352,0
4675.1177712827,216,-1.177992156569,-1.6213671067584,0
4675.6253204292,217,-0.90985142237611,-1.7856839600042,0
4676.0807764084,218,-0.61930712654061,-1.9060313478094,0
4676.3322172051,219,-0.31351343388717,-1.9794459180761,0
4676.364534427,220,-3.681508641982e-16,-2.0041199604355,0
4673.1361185478,221,-2.1279043619318,-0.33702694142871,0
4672.8841978555,222,-2.0489836988951,-0.66575516103116,0
4672.428402597,223,-1.9196102570045,-0.97809027905432,0
4671.9204586944,224,-1.7429696397652,-1.2663415683116,0
4671.6486177562,225,-1.5234113254104,-1.5234113254104,0
4671.9204586944,226,-1.2663415683116,-1.7429696397652,0
4672.428402597,227,-0.97809027905432,-1.9196102570045,0
4672.8841978556,228,-0.66575516103116,-2.0489836988951,0
4673.1361185479,229,-0.33702694142871,-2.1279043619318,0
4673.167413739,230,-3.9576217901306e-16,-2.1544289574682,0
4676.3322172051,285,0.31351343388717,-1.9794459180761,0
4676.0807764084,286,0.61930712654061,-1.9060313478094,0
4675.6253204292,287,0.90985142237611,-1.7856839600042,0
4675.1177712828,288,1.177992156569,-1.6213671067584,0
4674.8474459521,289,1.4171268143352,-1.4171268143353,0
4675.1177712827,290,1.6213671067584,-1.177992156569,0
4675.6253204291,291,1.7856839600042,-0.90985142237611,0
4676.0807764083,292,1.9060313478094,-0.61930712654061,0
4676.332217205,293,1.9794459180761,-0.31351343388717,0
4673.1361185479,294,0.33702694142871,-2.1279043619318,0
4672.8841978555,295,0.66575516103116,-2.0489836988951,0
4672.428402597,296,0.97809027905432,-1.9196102570045,0
4671.9204586944,297,1.2663415683116,-1.7429696397652,0
4671.6486177562,298,1.5234113254104,-1.5234113254104,0
4671.9204586943,299,1.7429696397652,-1.2663415683116,0
4672.4284025969,300,1.9196102570045,-0.97809027905432,0
4672.8841978554,301,2.0489836988951,-0.66575516103116,0
4673.1361185478,302,2.1279043619318,-0.33702694142871,0
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
Tsolid,id,x,y,z
4598.8368084086,400,2,0,0
4598.9463932894,400,2,0,0
4595.5948606845,401,2.2,0,0
4598.8368084086,902,2,0.2,0
4598.9463932894,902,2,0.2,0
4595.5948606845,903,2.2,0.2,0
4598.8368084086,1404,2,0.4,0
4595.5948606845,1405,2.2,0.4,0
4598.8368084084,1906,2,0.6,0
4595.5948606843,1907,2.2,0.6,0
4598.8368084085,2408,2,0.8,0
4595.5948606844,2409,2.2,0.8,0
4598.8368084084,2910,2,1,0
4595.5948606843,2911,2.2,1,0
4598.9463932894,1404,2,0.4,0
4595.5948606844,1405,2.2,0.4,0
4598.9463932894,1906,2,0.6,0
4595.5948606845,1907,2.2,0.6,0
4598.9463932894,2408,2,0.8,0
4595.5948606845,2409,2.2,0.8,0
4598.9463932894,2910,2,1,0
4595.5948606844,2911,2.2,1,0
Loading