Project 2 - Rankine cycle Simulator
Comments
- Well done!
- Try to explain the results next time
Graded by Sarang
%Rankine Cycle Simulatorclose allclear allclcdisp('RANKINE CYCLE SIMULATOR')disp('1-2 is isentropic expansion in turbine')disp('2-3 is constant pressure heat rejection in condenser')disp('3-4 is isentropic compression in pump')disp('4-1 is constant pressure heat addition in boiler')p1=input('enter the pressure at the inlet of turbine (in bar)= ');t1=input('enter the temp at the inlet of turbine (in degree C)= ');p2=input('enter the pressure at the inlet of condenser (in bar)= ');%steam condition at the inlet of turbineh1=XSteam('h_pt',p1,t1);s1=XSteam('s_pt',p1,t1);%steam condition at the outlet of turbinesg2=XSteam('sV_p',p2);sf2=XSteam('sL_p',p2);sfg2=sg2-sf2;x2=(s1-sf2)/sfg2;s2=sf2+x2*sfg2;hf2=XSteam('hL_p',p2);hg2=XSteam('hV_p',p2);hfg2=hg2-hf2;h2=hf2+x2*hfg2;t2=XSteam('Tsat_p',p2);%workdone by the turbineW_t=h1-h2;%steam condition at the outlet of condenserp3=p2;t3=XSteam('Tsat_p',p2);h3=XSteam('hL_p',p2);s3=XSteam('sL_p',p2);vf=XSteam('vL_p',p2);t22=t3;%calculation of pump workW_p=vf*(p1-p2)*100;%steam Condition at state 4p4=p1;h4=W_p+h3;s4=s3;t4=XSteam('T_ph',p4,h4);%work netW_net=W_t-W_p;%heat suppliedQ_s=h1-h4;%heat rejectedQ_r=h2-h3;%efficiencyefficiency=(W_net/Q_s);%specific steam consumptionSSC=3600/W_net;tf_sat=XSteam('Tsat_p',p1);sf_sat=XSteam('sL_p',p1);hf_sat=XSteam('hL_p',p1);sg_sat=XSteam('sV_p',p1);hg_sat=XSteam('hV_p',p1);%plotting T-S diagramhold on%for plottin saturation curvetsat1=linspace(0,374,1000);for i=1:length(tsat1)ss1(i)=XSteam('sL_T',tsat1(i));endfor j=1:length(tsat1)ss2(j)=XSteam('sV_T',tsat1(j));endplot(ss1,tsat1,'b') plot(ss2,tsat1,'r')%for saturation temp at p1temp=XSteam('Tsat_p',p1);t=linspace(t4,temp,30);for i=1:length(t) S(i)=XSteam('s_pt',p1,t(i)); hold on endt0=linspace(temp,t1,300);for i=1:length(t0) S0(i)=XSteam('s_pt',p1,t0(i));end %for plotting turbine work plot([s1 s2],[t1 t2],'g') %for heat rejection in condenser plot([s2 s3],[t2 t3],'b') %for pump work plot([s3 s4],[t3 t4],'r') %plotting curved line(constant pressure line in wet region) from outlet of %the pump to the point from where phase change startsplot(S,t,'y')%plotting the phase change region plot([sf_sat sg_sat],[tf_sat tf_sat],'y') %plotting the curved constant pressure line from where the phase change %ends to the superheated point plot(S0,t0,'y')legend('Saturation Curve L','Saturation Curve V','Turbine','condenser','pump','boiler','location','northwest')title('T-S Diagram')xlabel('Entropy')ylabel('Temperature')%plotting H-S diagramfigure(2)hold on%for plotting the saturation curvetsat1=linspace(0,374,1000);for i=1:length(tsat1)hh1(i)=XSteam('hL_T',tsat1(i));endfor j=1:length(tsat1)hh2(j)=XSteam('hV_T',tsat1(j));endplot(ss1,hh1,'b')plot(ss2,hh2,'r')%for plotting tubineplot([s1 s2],[h1 h2],'g')%for condenserplot([s2 s3],[h2 h3],'b')%for plotting pumpplot([s3 s4],[h3 h4],'r')s=linspace(s3,s1,1000);for i=1:length(s)h(i)=XSteam('h_ps',p1,s(i));end%for plotting boiler% plot([s4 s1],[h4 h1],'y')plot(s,h,'y')legend('Saturation Curve L','Saturation Curve V','Turbine','condenser','pump','boiler','location','northwest')title('H-S Diagram')xlabel('Entropy')ylabel('Enthalpy')%outputs%at state 1fprintf('At State Point 1:\r\n')fprintf('P1 is : %f Bar\r\n',p1)fprintf('T1 is : %f Deg Celcius\r\n',t1)fprintf('H1 is : %f KJ/Kg\r\n',h1)fprintf('S1 is : %f KJ/KgK\r\n',s1)%at state 2fprintf('At State Point 2:\r\n')fprintf('P2 is : %f Bar\r\n',p2)fprintf('T2 is : %f Deg Celcius\r\n',t2)fprintf('H2 is : %f KJ/Kg\r\n',h2)fprintf('S2 is : %f KJ/KgK\r\n',s2)fprintf('X is : %f \r\n',x2)%at state 3fprintf('At State Point 3:\r\n')fprintf('P3 is : %f Bar\r\n',p3)fprintf('T3 is : %f Deg Celcius\r\n',t3)fprintf('H3 is : %f KJ/Kg\r\n',h3)fprintf('S3 is : %f KJ/KgK\r\n',s3)%state 4fprintf('At State Point 4:\r\n')fprintf('P4 is : %f Bar\r\n',p4)fprintf('T4 is : %f Deg Celcius\r\n',t4)fprintf('H4 is : %f KJ/Kg\r\n',h4)fprintf('S4 is : %f KJ/KgK\r\n',s4)%calculationsfprintf('Work Done By Turbine : %f kJ/kg\r\n',W_t)fprintf('Work Done By Pump : %f kJ/kg\r\n',W_p)fprintf('Heat Added in The Boiler: %f KJ/kg\r\n',Q_s)fprintf('Heat Rejected in The Condenser: %f KJ/kg\r\n',Q_r)fprintf('Thermal Efficiency is : %f %%\r\n',efficiency*100)fprintf('Specific Steam Consumption : %f KJ/kWh\r\n',SSC)