from __future__ import division
print "Example: 5.1 - Page: 150\n\n"
# Solution
#*****Data*****#
Th = 550 + 273## [K]
Tl = 27 + 273## [K]
#************#
# The theoretical efficiency of a heat engine is given by:
# eta = Net Work Output/Net Work Input
# eta = Wnet/Qin
# eta = (Qin - Qout)/Qin = (Th - Tl)/Th
eta = (Th - Tl)/Th#
print "The theoretical efficiency of heat engine is %.1f %%"%(eta * 100)
from __future__ import division
print "Example: 5.2 - Page: 150\n\n"
# Solution
#*****Data*****#
Th = 810## [K]
Tl = 300## [K]
#*************#
# Solution (a)
eta = (Th - Tl)/Th#
print "(a) The efficiency of the heat engine is %.1f %%\n"%(eta*100)#
# Solution (b)
Th = 1366## [K]
Tl = 300## [K]
eta = (Th - Tl)/Th#
print "(b) The efficiency of the heat engine is %.1f %%\n"%(eta*100)#
# Solution (c)
Th = 810## [K]
Tl = 344## [K]
eta = (Th - Tl)/Th#
print "(c) The efficiency of the heat engine is %.1f %%\n"%(eta*100)#
from __future__ import division
print "Example: 5.3 - Page: 151\n\n"
# Solution
#*****Data*****#
Th = 650 + 273## [K]
Tl = 30 + 273## [K]
Qh = 585## [kJ/cycle]
#*************#
# Solution (a)
# From Eqn. (5.9)
eta = (Th - Tl)/Th#
print "(a) The efficiency of the Carnot engine is %.1f %%\n"%(eta*100)#
# Soluton (b)
# From the knowledge of the ratio of heat and temperature between the two regions:
Ql = Qh*Tl/Th## [kJ]
print "(b) Heat released to cold reservoir is %d kJ\n"%(Ql)#
from __future__ import division
print "Example: 5.4 - Page: 151\n\n"
# Solution
#*****Data*****#
m = 1## [kg]
Tl = 273## [K]
Th = 295## [K]
Ql = 335## [kJ/kg]
#*************#
# Solution (a)
# The coeffecient of performance of refrigerating machine is:
# COP = Ql/Wnet = Tl/(Th - Tl)
Wnet = Ql*(Th - Tl)/Tl## [kJ]
print "Minimum Work requirement is %d kJ\n"%(round(Wnet))#
# Solution (b)
# Amount of heat released:
# Wnet = Qh - Ql
Qh = Wnet + Ql## [kJ]
print "Amount of heat released to the surrounding is %d kJ\n"%(round(Qh))#
from __future__ import division
print "Example: 5.5 - Page: 152\n\n"
# Solution
#*****Data*****#
Th = 373## [K]
Tl = 275## [K]
Qh = 50## [kJ]
#*************#
# Solution (a)
# Theral Efficiency of the engine can be given as:
# eta_HE = Wnet/Qh#
# Wnet = Qh*COP = Qh*(Th - Tl)/Th#
Wnet = Qh*(Th - Tl)/Th## [kJ]
print "Minimum Work Required is %.1f kJ\n"%(Wnet)#
# Solution (b)
eta = (Th - Tl)/Th#
print "The efficiency of Heat Engine is %.3f\n"%(eta)#
# Solution (c)
# Amount of heat released can be calculated as:
# eta = Net Work Output/Net Work Input#
# eta = Wnet/Qin#
# eta = (Qin - Qout)/Qin#
Qin = Qh## [kJ]
Qout = Qin*(1 - eta)#
print "Amount of Heat released is %.1f kJ\n"%(Qout)#
from __future__ import division
print "Example: 5.6 - Page: 153\n\n"
# Solution
#*****Data*****#
W = 5## [hp]
Q = 7000## [J/s]
Th = 400 + 273## [K]
Tl = 24 + 273## [K]
#*************#
W = 5*745.7## [W]
thermal_eta = W/Q#
theoretical_eta = (Th - Tl)/Th#
if theoretical_eta <= thermal_eta:
print "Claim is Valid"
else:
print "Claim is not Valid"
from __future__ import division
print "Example: 5.7 - Page: 162\n\n"
# Solution
#*****Data*****#
n = 1## [mol]
deltaH_fusion = 6500## [J/mol]
T_Tr = 273## [transition temperature, K]
P = 1## [atm]
#************#
# By Eqn. (9.40)
deltaS_fusion = deltaH_fusion/T_Tr## [J/mol K]
print "Change in Entropy is %.2f J/mol K"%(deltaS_fusion)#
from __future__ import division
from math import log
print "Example: 5.8 - Page: 164\n\n"
# Solution
#*****Data*****#
V1 = 5## [L]
V2 = 50## [L]
n = 5## [moles]
R = 1.987## [cal/mol K]
#**************#
# Change in entropy for an isothermal change for an ideal gas:
# deltaS = n*R*log(P1/P2) = n*R*log(V2/V1)
deltaS = n*R*log(V2/V1)## [cal/degree]
print "Change in Entropy is %.3f eu"%(deltaS)#
from __future__ import division
from math import log
print "Example: 5.9 - Page: 164\n\n"
# Solution
#*****Data*****#
n = 8## [mol]
R = 8.314## [J/mol K]
T2 = 700## [K]
T1 = 350## [K]
Cp = (5/2)*R## [J/mol K]
#*************#
deltaS = n*Cp*log(T2/T1)## [J/K]
print "deltaS is %.2f J/K"%(deltaS)#
R*log(V2/V1)#// [cal/degree]
print "Change in Entropy is %.3f eu"%(deltaS)#
from __future__ import division
from math import log
print "Example: 5.10 - Page: 164\n\n"
# Solution
#*****Data*****#
n = 5## [moles]
T1 = 300## [K]
T2 = 400## [K]
P1 = 3## [bars]
P2 = 12## [bars]
Cp = 26.73## [J/mol K]
R = 8.314## [K/mol K]
#*************#
deltaS = n*((Cp*log(T2/T1)) + (R*log(P1/P2)))## [kJ/K]
print "Change in Entropy is %f kJ/K"%(deltaS)#
from __future__ import division
from math import log
print "Example: 5.11 - Page: 166\n\n"
# Solution
#*****Data*****#
N = 1## [kmol]
xA = 0.21## [for Oxygen]
xB = 0.79## [for Nitrogen]
R = 8.314## [kJ/kmol K]
#*************#
deltaS = - (N*R*(xA*log(xA) + xB*log(xB)))## [kJ/mol K]
print "Entropy Change is %.2f kJ/kmol K"%(deltaS)#
from __future__ import division
from math import log
print "Example: 5.12 - Page: 167\n\n"
# Solution
#*****Data*****#
Vol_O2 = 5.6## [L]
Vol_H2 = 16.8## [L]
R = 1.987## [cal/mol K]
#*************#
xA = Vol_O2/22.4## [mole fraction O2]
xB = Vol_H2/22.4## [mle fraaction H2]
N = xA + xB## [total number of moles]
# From Eqn. 5.21:
deltaS = - (N*R*(xA*log(xA) + xB*log(xB)))## [cal/K]
print "Change in Entropy is %.3f cal/K"%(deltaS)#
from __future__ import division
from math import log
print "Example: 5.13 - Page: 168\n\n"
# Solution
#*****Data*****#
m = 80## [mass of Argon, g]
T1 = 300## [K]
T2 = 500## [K]
Cv = 0.3122## [kJ/kg K]
#**************#
Mw = 40## [Molecular Weight of Argon]
n = m/Mw## [moles]
deltaS = n*Cv*log(T2/T1)## [kJ/K]
print "Entropy Change is %.3f kJ/K"%(deltaS)#
from __future__ import division
from math import log,exp
print "Example: 5.14 - Page: 168\n\n"
# Solution
#*****Data*****#
deltaS = 1## [kJ/kg K]
Cv = 0.918## [kJ/kg K]
T1 = 273 + 18## [K]
#*************#
# Let the upper temperature be T.
# deltaS = integrate('Cv/T','T',T1,T)#
# deltaS = Cv*log(T/T1)
T = T1*exp(deltaS/Cv)## [K]
print "The upper temperature of the process is %.3f K"%(T)#
from __future__ import division
from scipy.optimize import fsolve
from sympy.mpmath import quad
print "Example: 5.15 - Page: 169\n\n"
# Solution
#*****Data*****#
m1 = 5## [kg]
m2 = 20## [kg]
C = 4.2## [kJ/kg K]
T1 = 350## [K]
T2 = 250## [K]
#**************#
# Suppose the final temperature is T
#deff('[y] = f(T)','y = m1*C*(T1 - T) - m2*C*(T - T2)')#
def f(T):
y = m1*C*(T1 - T) - m2*C*(T - T2)
return y
T = fsolve(f, 7)[0]## [K]
# Change in entropy of Hot Water:
deltaS1 = m1*C*quad(lambda T:(1/T),[T1,T])## [kJ/K]
# Change in Entopy of Hot Water:
deltaS2 = m2*C*quad('(1/T)','T',T2,T)## [kJ/K]
deltaS = deltaS1 + deltaS2## [kJ/K]
print "Change in Entropy is %.3f kJ/K"%(deltaS)#
from __future__ import division
from scipy.optimize import fsolve
from sympy.mpmath import quad
print "Example: 5.16 - Page: 169\n\n"
# Solution
#*****Data*****#
m = 12## [g]
T1 = 294## [K]
T2 = 574## [K]
T = 505## [melting point, K]
H_fusion = 4.5## [cal/K]
C_solid = 0.052## [cal/g K]
C_liquid = 0.062## [cal/g K]
#*************#
# Entropy Change in heating 12 g of metal from T1 to T
deltaS1 = m*C_solid*quad(lambda T:(1/T),[T1,T])## [kJ/K]
# Entropy Change in fusion of metal:
deltaS2 = m*H_fusion/T## [kJ/K]
# Entropy Change in heating liquid metal from 505 K to 574 K
deltaS3 = m*C_liquid*quad(lambda T:(1/T),[T,T2])## [kJ/K]
deltaS = deltaS1 + deltaS2 + deltaS3## [kJ/K]
print "Change in Entropy is %.3f kJ/K"%(deltaS)#
from __future__ import division
from scipy.optimize import fsolve
from sympy.mpmath import quad
print "Example: 5.17 - Page: 170\n\n"
# Solution
#*****Data*****#
#deff('[y] = Cp(T)','y = 7.25 + 2.28*10**(-3)*T')#
def Cp(T):
y = (7.25 + 2.28*10**(-3)*T)/T
return y
T1 = 273 + 137## [K]
T2 = 273 + 877## [K]
#************#
deltaS = quad(Cp,[T1,T2])## [cal/K]
print "Change in Entropy is %.3f cal/K"%(deltaS)#
from __future__ import division
from scipy.optimize import fsolve
from sympy.mpmath import quad
from math import log
print "Example: 5.18 - Page: 170\n\n"
# Solution
#*****Data*****#
m_iron = 40## [kg]
T1 = 625## [K]
m_water = 160## [kg]
T2 = 276## [K]
C_iron = 0.45## [kJ/kg K]
C_water = 4.185## [kJ/kg K]
#**************#
#deff('[y] = f(T)','y = m_iron*C_iron*(T1 - T) - m_water*C_water*(T - T2)')#
def f(T):
y = m_iron*C_iron*(T1 - T) - m_water*C_water*(T - T2)
return y
T = fsolve(f, 7)## [K]
# Change in Entropy of the iron casting can be estimated as:
deltaS1 = m_iron*C_iron*log(T/T1)## [kJ/K]
# Change in Entropy of Water is given by:
deltaS2 = m_water*C_water*log(T/T2)## [kJ/K]
deltaS = deltaS1 + deltaS2## [kJ/K]
print "Total Entropy Change is %.2f kJ/K"%(deltaS)#
from __future__ import division
from math import log
print "Example: 5.19 - Page: 172\n\n"
# Solution
#*****Data*****#
Cp = 21## [J/kmol]
T1 = 300## [K]
T2 = 500## [K]
S1 = 150## [Entropy at T1, J/kmol]
#*************#
# This is a constant Entropy process. Therefore:
deltaS = Cp*log(T2/T1)## [J/kmol]
S2 = S1 + deltaS## [J/kmol]
print "Entropy at 500 K is %.2f J/kmol"%(S2)#
from __future__ import division
print "Example: 5.20 - Page: 173\n\n"
# Solution
#*****Data*****#
T1_oil = 273 + 150## [K]
T2_oil = 50 +273## [K]
m_water = 4000## [kg]
T1_water = 273 + 20## [K]
T2_water = 273 + 130## [K]
C_water = 4.185## [kJ/kg K]
C_oil = 2.5## [kJ/kg K]
#***************#
# For oil:
deltaT_oil = T1_oil - T2_oil## [K]
# For water:
deltaT_water = T2_water - T1_water## [K]
# The mass flow rate of oil can be measured by the enthalpy balance over the process:
m_oil = m_water*C_water*deltaT_water/(deltaT_oil*C_oil)## [kg]
# Change in the Entropy of oil:
deltaS_oil = m_oil*C_oil*log(T2_oil/T1_oil)## [kJ/K]
# Change in Entropy of water:
deltaS_water = m_water*C_water*log(T2_water/T1_water)## [kJ/K]
deltaS = deltaS_oil + deltaS_water## [kJ/K]
print "Total Entropy Change is %.2f kJ/K"%(deltaS)#
from __future__ import division
print "Example: 5.21 - Page: 174\n\n"
# Solution
#*****Data*****#
t = 20*60## [s]
P = 650## [W]
T = 273 + 250## [K]
#*************#
Q = P*t/1000## [kJ]
deltaS = Q/T## [kJ/K]
print "Change in Entropy is %.2f kJ/K"%(deltaS)#
from __future__ import division
print "Example: 5.22 - Page: 174\n\n"
# Solution
#*****Data*****#
T1 = 400## [K]
P1 = 300## [kPa]
V1 = 1## [cubic m]
V2 =2## [cubic m]
R = 8.314## [kJ/kmol K]
#**************#
# Since the system is well insulated, there is no scope of transferring heat between system & surrounding.
deltaQ = 0## [kJ]
deltaW = 0## [kJ]
# By first law of thermodynamics:
deltaU =deltaQ - deltaW## [kJ]
# As the internal energy of the gas depends only on temperature,
deltaT = 0## [K]
T2 = T1 + deltaT## [K]
P2 = (P1*V1/T1)*(T2/V2)## [kPa]
n = P1*V1/(R*T1)## [kmol]
deltaS_system = n*R*log(P1/P2)## [kJ/K]
# Since process is adiabatic:
deltaS_surrounding = 0## [kJ/K]
deltaS = deltaS_system + deltaS_surrounding## [kJ/K]
print "Change in Entropy of the gas is %.4f kJ/K"%(deltaS)#
print "Example: 5.23 - Page: 174\n\n"
# This problem involves proving a relation in which no mathematics and no calculations are involved.
# For prove refer to this example 5.23 on page number 174 of the book.
print " This problem involves proving a relation in which no mathematics and no calculations are involved.\n\n"
print " For prove refer to this example 5.23 on page 174 of the book."
from __future__ import division
from sympy.mpmath import quad
from scipy.optimize import fsolve
print "Example: 5.24 - Page: 182\n\n"
# Solution
# From Example 5.18 (Pg: 170)
#*****Data*****#
m_iron = 40## [kg]
T1 = 625## [K]
m_water = 160## [kg]
T2 = 276## [K]
C_iron = 0.45## [kJ/kg K]
C_water = 4.185## [kJ/kg K]
#**************#
#deff('[y] = f(T)','y = m_iron*C_iron*(T1 - T) - m_water*C_water*(T - T2)')#
def f(T):
y = m_iron*C_iron*(T1 - T) - m_water*C_water*(T - T2)
return y
T = fsolve(f, 7)[0]## [K]
# Change in Entropy of the iron casting can be estimated as:
deltaS1 = m_iron*C_iron*quad(lambda T:(1/T),[T1,T])## [kJ/K]
# Change in Entropy of Water is given by:
deltaS2 = m_water*C_water*quad(lambda T:(1/T),[T2,T])## [kJ/K]
deltaS = deltaS1 + deltaS2## [kJ/K]
# By Eqn. 5.63:
W_lost = T2 * deltaS## [kJ]
print "Work lost is %.2f kJ"%(W_lost)#
from __future__ import division
from sympy.mpmath import quad
from scipy.optimize import fsolve
print "Example: 5.25 - Page: 182\n\n"
# Solution
# *****Data******#
m_oil = 4750## [kg]
T1_oil = 515## [K]
T2_oil = 315## [K]
m_water = 9500## [kg]
T1_water = 290## [K]
Cp_oil = 3.2## [kJ/kg K]
Cp_water = 4.185## [kJ/kg K]
#*****************#
# From enthalpy Balance:
#def('[y] = f(T2_water)','y = m_oil*Cp_oil*(T1_oil - T2_oil) - m_water*Cp_water*(T2_water - T1_water)')#
def f(T2_water):
y = m_oil*Cp_oil*(T1_oil - T2_oil) - m_water*Cp_water*(T2_water - T1_water)
return y
T2_water = fsolve(f, 7)[0]## [K]
# Change in the Entropy of oil:
deltaS_oil = m_oil*Cp_oil*quad(lambda T : (1/T),[T1_oil,T2_oil])## [kJ/K]
# Change in Entropy of water:
deltaS_water = m_water*Cp_water*quad(lambda T: (1/T),[T1_water,T2_water])## [kJ/K]
deltaS = deltaS_oil + deltaS_water## [kJ/K]
print "Total Entropy Change is %.2f kJ/K\n"%(deltaS)#
if deltaS > 0:
print "Since deltaS is a positive quantity, process is irreversible\n"
else:
print "Since deltaS is a negative quantity, process is reversible\n"