{
"metadata": {
"name": ""
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "heading",
"level": 1,
"metadata": {},
"source": [
"Chapter 10: Radiative heat transfer "
]
},
{
"cell_type": "heading",
"level": 3,
"metadata": {},
"source": [
"Example 10.1, Page number: 539"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from __future__ import division\n",
"import math\n",
"\n",
"#Variables\n",
"T1=2273; #temp. of liquid air,K\n",
"T2=303; #temp. of room,K\n",
"T3=973; #temp. of shield,K\n",
"D1=0.003; #diameter of crucible,m\n",
"D2=0.05; #diameter of shield,m\n",
"theta1=330; #surrounding angle of jet,degree\n",
"theta2=30 # angle of slit,degree\n",
"Fjr=theta2/360; #fraction of energy of view of jet occupied by room\n",
"Fjs=theta1/360 ; #fraction of energy of view of jet occupied by shield\n",
"sigma=5.67*10**-8; #Stefen-Boltzman constant\n",
"\n",
"#Calculations\n",
"Qnjr=math.pi*D1*Fjr*sigma*(T1**4-T2**4); #net heat transfer from jet to room,W/m\n",
"Qnjs=math.pi*D1*Fjs*sigma*(T1**4-T3**4); #net heat transfer from jet to shield,W/m\n",
"#to find the radiation from the inside of the shield to the room, we need Fshield-room.since any radiation passing out of the slit goes to the room,we can find this view factor equating view factors to the room with view factors to the slit.\n",
"Aslit=math.pi*D2*Fjr; #Slit's area, m^2\n",
"Fsj=math.pi*D1/Aslit*Fjr; #fraction of energy of view of slit occupied by jet\n",
"Fss=1-Fsj; #fraction of energy of view of slit occupied by shield.\n",
"Fsr=Aslit*Fss/(math.pi*D2*Fjs); #fraction of energy of view of shield occupied by room\n",
"Qnsr=math.pi*D2*Fjs*sigma*Fsr*(T3**4-T2**4); #net heat transfer from shield to room, W/m\n",
"\n",
"\n",
"#Result\n",
"print \"Heat transfer from jet to room through the slit is :\",round(Qnjr,2),\"W/m\\n\"\n",
"print \"Heat transfer from the jet to shield is :\",round(Qnjs,2),\" W/m\\n\"\n",
"print \"Heat transfer from inside of shield to the room is :\",round(Qnsr,2),\"W/m\\n\"\n",
"print \"Both the jet and the inside of the shield have relatively small view factors to the room, so that comparatively little heat is lost through the silt \\n\"\n"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"Heat transfer from jet to room through the slit is : 1188.32 W/m\n",
"\n",
"Heat transfer from the jet to shield is : 12636.6 W/m\n",
"\n",
"Heat transfer from inside of shield to the room is : 619.44 W/m\n",
"\n",
"Both the jet and the inside of the shield have relatively small view factors to the room, so that comparatively little heat is lost through the silt \n",
"\n"
]
}
],
"prompt_number": 3
},
{
"cell_type": "heading",
"level": 3,
"metadata": {},
"source": [
"Example 10.2, Page number: 542"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from __future__ import division\n",
"import math\n",
"\n",
"#Variables\n",
"T1=373; #temp. of shield,K \n",
"T2=1473; #temp of heater,K\n",
"h=0.2 ; #height of disc heater,m\n",
"r1=0.05; #smaller radius of heater,m\n",
"r2=0.1; #larger radius of heater,m \n",
"R1=r1/h ; #factors necessary for finding view factor\n",
"R2=r2/h ; #factors necessary for finding view factor\n",
"sigma=5.67*10**-8; #Stefen-Boltzman constant\n",
"\n",
"#Calculations\n",
"X=1+(1+R2**2)/R1**2; #factors necessary for finding view factor\n",
"Fht=0.5*(X-math.sqrt(X**2-4*(R2**2/R1**2))); #view factor\n",
"Fhs=1-Fht; #view factor of heater occupied by shield\n",
"Qnhs=math.pi*r2**2*Fhs*sigma*(T2**4-T1**4)/4; #Net heat transfer from the heater to shield\n",
"\n",
"#Result\n",
"print \"Net heat transfer from the heater to shield is : \",round(Qnhs),\" W\\n\"\n"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"Net heat transfer from the heater to shield is : 1686.0 W\n",
"\n"
]
}
],
"prompt_number": 5
},
{
"cell_type": "heading",
"level": 3,
"metadata": {},
"source": [
"Example 10.3, Page number: 547"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from __future__ import division\n",
"import math\n",
"\n",
"#Variables\n",
"h=0.2 ; #height of disc heater,m\n",
"r1=0.05; #smaller radius of heater,m\n",
"r2=0.1; #larger radius of heater,m\n",
"Fhs=0.808; #view factor of heater occupied by shield\n",
"\n",
"#Calculations\n",
"As=math.pi*(r1+r2)*math.sqrt(h**2+(r2-r1)**2); #area of frustrum shaped shield,m**2\n",
"Ah=math.pi/4*r2**2; #heater area,m**2\n",
"Fsh=Ah/As*Fhs; #view factor of shield occupied by heater\n",
"\n",
"#Result\n",
"print \"View factor of shield occupied by heater is :\",round(Fsh,3),\"\\n\"\n"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"View factor of shield occupied by heater is : 0.065 \n",
"\n"
]
}
],
"prompt_number": 6
},
{
"cell_type": "heading",
"level": 3,
"metadata": {},
"source": [
"Example 10.4, Page number: 548"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from __future__ import division\n",
"\n",
"#Variables\n",
"F1342=0.245; #view factor of 1and 3 occupied by 2 and 4\n",
"F14=0.2; #view factor of 1 occupied by 4\n",
"\n",
"#Calculations\n",
"F12=F1342-F14; #view factor of 1 occupied by 2 \n",
"\n",
"#Results\n",
"print \"View factor of 1 occupied by 2 is :\",F12,\"\\n\"\n"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"View factor of 1 occupied by 2 is : 0.045 \n",
"\n"
]
}
],
"prompt_number": 4
},
{
"cell_type": "heading",
"level": 3,
"metadata": {},
"source": [
"Example 10.8, Page number: 554"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from __future__ import division\n",
"import math\n",
"from sympy import *\n",
"\n",
"#Variables\n",
"T1=80; #temp.of liquid nitrgen,K \n",
"T2=230; #temp of chamber walls,K\n",
"D1=0.00635; #outer diameter of steel, m\n",
"D2=0.0127; #diameter of 2nd steel tube, m\n",
"e1=0.2 ; #emissivity 0f steel\n",
"sigma=5.67*10**-8; #Stefen-Boltzman constant\n",
"\n",
"#Calculations\n",
"x = Symbol('x');\n",
"#the nitrogen coolant will hold the surface of the line at essentially 80 K, since the thermal ressistance of tube wall and int. convection or boiling process are small.\n",
"Qgain=math.pi*D1*e1*sigma*(T2**4-T1**4); # net heat gain of line per unit length,W/m\n",
"#with the shield , assuming that the chamber area is large compared to the shielded line.\n",
"Qgain1=math.pi*D1*sigma*(T2**4-T1**4)/(((1-e1)/e1+1)+D1/D2*(2*(1-e1)/e1+1)); #net heat gain with shield,W/m\n",
"s=(Qgain-Qgain1)/Qgain*100; \t\t\t\t\t\t\t\t\t#rate of heat gain reducton in percentage\n",
"T = (230**4 -0.328/(3.14*D2*e1*sigma))**(1/4) \t\t\t\t\t\t#Temp. of the shield\n",
"\n",
"#Result\n",
"print \"Net heat gain of line per unit length is :\",round(Qgain,2),\" W/m\\n\"\n",
"print \"Rate of heat gain reducton is :\",round(s,2),\" percent \\n\"\n",
"print \"Temp. of the shield is : \",round(T,2),\" C\\n\"\n",
" \n",
"\n",
" "
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"Net heat gain of line per unit length is : 0.62 W/m\n",
"\n",
"Rate of heat gain reducton is : 47.37 percent \n",
"\n",
"Temp. of the shield is : 213.38 C\n",
"\n"
]
}
],
"prompt_number": 9
},
{
"cell_type": "heading",
"level": 3,
"metadata": {},
"source": [
"Example 10.9, Page number: 557"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from __future__ import division\n",
"from numpy import mat\n",
"from numpy.linalg import inv\n",
"from sympy import solve, symbols\n",
"\n",
"#Variables\n",
"T1=250 ; #temp.of surrounding,K \n",
"l1=1; #width of strips, m\n",
"l2=2.4; #distance between strips,m\n",
"F12=0.2; #view factor of 1 occupied by 2.\n",
"\n",
"\n",
"#Calculations\n",
"A=mat('1 -0.14;-1, 10') ; #matrix representation for solving the linear equations, for black surroundings\n",
"B=mat('559.6;3182.5'); #matrix representation for solving the linear equations.\n",
"X=inv(A)*B;\n",
"\n",
"\n",
"Qn12=(X.item(0)-X.item(1))/(1/(0.9975*F12)); #net heat flow from 1 to 2 for black surroundings.\n",
" #since each strip loses heat to the surrounding,Qnet1, Qnet2 and Qnet1-2 are different.\n",
" # three equations will be \n",
" #(1451-B1)/2.33 = (B1-B2)/(1/0.2)+(B1-B3)/(1/0.8)......(1)\n",
" #(459.B2) = (B2-B1)/(1/0.2)+(B2-B3)/(1/0.8)............(2)\n",
" #0=(B3-B1)/(1/0.8)+(B3-B2)/(1/0.8).....................(3)\n",
" #solving these equations, we get the values of B1,B2 and B3.\n",
"B1=987.7 #heat flux by surface 1.\n",
"B2=657.4 #heat flux by surface 2.\n",
"B3=822.6 #heat flux by surface 3.\n",
"qn12=(B1-B2)/(1/F12)+(B1-B3)/(1/(1-F12));# net heat transfer between 1 and 2 if they are connected by an insulated diffuse reflector between the edges on both sides.\n",
"\n",
"#Results\n",
"print \"Net heat transfer between 1 and 2 if the surroundings are black is :\",round(Qn12,2),\"W/m^2\\n\"\n",
"print \"Net heat transfer between 1 and 2 if they are connected by an insulated diffuse reflector between the edges on both sides is : \",qn12,\" W/m^2\\n\"\n",
"\n",
"x=symbols('x');\n",
"x=solve(sigma*(x**4)-822.6,x); #Solving for Temp. of the reflector.\n",
"print \"Temperature of the reflector is : \",round(x[1],2),\" K\\n\"\n",
"\n",
"\n"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"Net heat transfer between 1 and 2 if the surroundings are black is : 46.53 W/m^2\n",
"\n",
"Net heat transfer between 1 and 2 if they are connected by an insulated diffuse reflector between the edges on both sides is : 198.14 W/m^2\n",
"\n",
"Temperature of the reflector is : "
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
" 347.06 K\n",
"\n"
]
}
],
"prompt_number": 10
},
{
"cell_type": "heading",
"level": 3,
"metadata": {},
"source": [
"Example 10.10, Page number: 561"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from __future__ import division\n",
"from numpy import array,dot\n",
"from numpy.linalg import inv\n",
"\n",
"#Variables\n",
"T1=773; #temp.of two sides of duct,K\n",
"T2=373; #temperature of the third side,K\n",
"e1=0.5; #emissivity of stainless steel\n",
"e2=0.15; #emissivity of copper\n",
"a=5.67*10**-8; #stefan constant\n",
"f12=0.4; #view factor of 1 occupied by 2.\n",
"f21=0.67; #view factor of 2 occupied by 1\n",
"f13=0.6; # view factor of 1 occupied by 3\n",
"f31=0.75; #view factor of 3 occupied by 1\n",
"f23=0.33; #view factor of 2 occupied by 3\n",
"f32=0.25; #view factor of 2 occupied by 3\n",
"\n",
"#Calculations\n",
"A=array(([1, (-1+e2)*f12, (e2-1)*f13],[(-1*e1*f21), 1, (e1*-1*f23)],[(e1*-1*f31), (e1*-1*f32), 1]));#matrix method to solve three equations to find radiosity\n",
"B=array(([e2*a*T2**4],[e1*a*T1**4],[e1*a*T1**4])); #matrix method to solve three equations to find radiosity\n",
"X=dot(inv(A),B); #solution of above matrix method\n",
"Qn1=0.5*e2/(1-e2)*(a*T2**4-X.item(0)); #net heat transfer to the copper base per meter of the length of the duct,W/m\n",
"Qn2=Qn1+2.6;\n",
"\n",
"#Result\n",
"print \"Net heat transfer to the copper base per meter of length of the duct is : \",round(Qn2,2),\"W/m ,the -ve sign indicates that the copper base is gaining heat.\\n\""
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"Net heat transfer to the copper base per meter of length of the duct is : -1294.01 W/m ,the -ve sign indicates that the copper base is gaining heat.\n",
"\n"
]
}
],
"prompt_number": 11
},
{
"cell_type": "heading",
"level": 3,
"metadata": {},
"source": [
"Example 10.11, Page number: 573"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from __future__ import division\n",
"\n",
"#Variables\n",
"T1=1473 ; #temp.of gas,K \n",
"T2=573 ; #temp of walls,K\n",
"D1=0.4; #diameter of combustor, m\n",
"a=5.67*10**-8; #stefan boltzman coefficient,W/(m**2*K**4)\n",
"#we have Lo=D1=0.4m, a total pressure of 1 atm., pco2=0.2 atm. , using figure, we get eg=0.098.\n",
"eg=0.098; #total emittance\n",
"\n",
"#Calculations\n",
"ag=(T1/T2)**0.5*(0.074); #total absorptance\n",
"#now we can calculate Qnetgas to wall. for these problems with one wall surrounding one gas, the use of the mean beam length in finding eg and ag accounts for all geometric effects and no view factor is required. \n",
"Qngw=math.pi*D1*a*(eg*T1**4-ag*T2**4)/1000; #net heat radiated to the walls,kW/m\n",
"\n",
"#Result\n",
"print \"Net heat radiated to the walls is : \",round(Qngw,2),\"KW/m\\n\"\n",
"#end"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"Net heat radiated to the walls is : 31.96 KW/m\n",
"\n"
]
}
],
"prompt_number": 12
},
{
"cell_type": "heading",
"level": 3,
"metadata": {},
"source": [
"Example 10.12, Page number: 577"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from __future__ import division\n",
"from sympy import solve,symbols\n",
"\n",
"#Variables\n",
"T1=291; #temp.of sky,K \n",
"T2=308; #temp of air,K\n",
"e1=0.9; #emissivity 0f black paint\n",
"h=8; #heat transfer coefficient,W/(m**2*K)\n",
"P=600 ; #Solar radiation of roof, W/m**2 \n",
"aacr=0.26; #heat flux,W/m**2\n",
"ablk=0.9; #heat flux,W/m**2\n",
"sigma=5.67*10**-8; #Stefen-Boltzman constant\n",
"\n",
"#Calculations-1\n",
"#heat loss from the roof to the inside of the barn will lower the roof temp., since we dont have enough information to evaluate the loss, we can make an upper bound on roof temp. by assuming that no heat is transferred to the interior.\n",
"T=symbols('T');\n",
"T=solve(((e1*sigma*(T**4-T1**4)+h*(T-T2))-ablk*P),T);\n",
"Tn=T[1]\n",
"\n",
"#Result-1\n",
"print \"For non-sensitive black paint, temp. of roof is:\",round(Tn)-273,\"degree C \\n\" \n",
"\n",
"#Calculations-2\n",
" #for white acrylic paint, by using table, e=0.9 and absorptivity is 0.26,Troof \n",
"T=symbols('T');\n",
"T=solve(((e1*sigma*(T**4-T1**4)+h*(T-T2))-0.26*P),T);\n",
"Tn=T[1]\n",
"\n",
"#Result-2\n",
"print \"For acrylic paint temp. of the root is :\",round(Tn)-273,\"degree C \\n\\nThe white painted roof is only a few degrees warmer than the air.\\n\"\n",
"#end\n",
"\n",
"\n"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"For non-sensitive black paint, temp. of roof is: 65.0 degree C \n",
"\n",
"For acrylic paint temp. of the root is :"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
" 39.0 degree C \n",
"\n",
"The white painted roof is only a few degrees warmer than the air.\n",
"\n"
]
}
],
"prompt_number": 13
}
],
"metadata": {}
}
]
}