工程热力学上机实验报告

  • 格式:docx
  • 大小:31.00 KB
  • 文档页数:16

工程热力学上机实验报告

第一篇:工程热力学上机实验报告

工程热力学上机实验报告

姓名:

专业:能源与动力

学号:朗肯循环

对蒸汽动力循环的基本循环——朗肯循环,其工作原理是,从锅炉出来的高温T1,高压p1的过热水蒸气经汽轮机绝热膨胀做工至低压p2的乏汽,在冷凝器中凝结成饱和液体,经水泵升压至p1下的未饱和过冷液体,进入锅炉加热至过热蒸汽,再进入汽轮机绝热膨胀做功,周而复始的将热能转换为机械能,图1为理想朗肯循环工作过程的水蒸气T—S图。循环中:

工质在锅炉中的加热量:q1=h1-h4 在冷凝器中的放热量:q2=h2-h3 在汽轮机中的做功量:w1=h1-h2 在水泵中的耗功量:w2=h4-h3 循环热效率n=(q1-q2)/q1=1-(h2-h3)/(h1-h4)如忽略泵功,h3=h4 则循环效率:n=(h1-h2)/(h1-h3)=1-(h2-h3)/(h1-h3)程序如右图

1、实验初始参数:P1=4Mpa,t1=450摄氏度,p2=6kpa如下图

P1,P2不变改变初温t1,结果如图

t1,P2不变改变初温p1,结果如图

t1,P1不变改变初温p2,结果如图

当汽机绝热内效率nex=0.85,此时实际不可逆循环的热效率nt=0.33226925

二,再热循环

循环热效率:n=((h1-hb)+(ha-h2)-(h4-h3))/((h1-h4)+(ha-hb))如忽略泵功,h3=h4 则循环效率:n=((h1-hb)+(ha-h2))/((h1-h3)+(ha-hb))如果过分提高压力p1,而不响应提高t1,将引起乏汽敢赌x2减小,产生不利后果。为此,将新蒸汽膨胀至某一中间压力pb后撤出汽轮机,导入锅炉中的特设的再热器或其他换热设备中,使之再加热后,再倒入汽轮机继续膨胀至背压p2.即为再热循环。图2为再热循环工作过程的T-S图。程序如右下面3个图

2、初始参数

P1=12Mpa,t1=500摄氏度,终压p2=6kpa, 第一个再热循环的再热压力pa1=3Mpa, 另一个再热循环的压力为pa2=0.6Mpa

顺序1-3

2、初始参数

P1=12Mpa,t1=500摄氏度,终压p2=6kpa, 第一个再热循环的再热压力pa1=3Mpa, 另一个再热循环的压力为pa2=0.6Mpa 结果如右图

经程序运行,比较朗肯循环和在再热循环的效率发现:相同初始参数和相同背压下,再热循环效率较高。

当汽机绝热内效率nex=0.85,此时实际不可逆循环的热效率nt=0.3812862 0.3777485三、一次抽气回热循环

为提高循环平均吸热温度,在汽轮机膨胀做功过程中,取出一部分蒸汽用以回热给水,使循环平均吸热温度有所提高,而平均官方热温度不变,热效率相应也随之提高。

如图为一级抽气回热循环的T-S图。循环热效率:

n=((h1-ha)+(1-a)(ha-h2)-(h6-h5)-(1-a)(h4-h3))/(h1-h6)若忽略泵功,循环效率:

n=((h1-ha)+(1-a)(ha-h2))/(h1-h5)其中a由图回热器的热平衡方程求的: a=(h5-h3)/(ha-h3)=(ha’-h2’)/(ha-h2’)程序如右图

1、实验初始参数: P1=5Mpa,t1=450摄氏度

抽气压力pa=0.5Mpa,p2=6kpa 实验结果如图

当汽机绝热内效率nex=0.85,此时实际不可逆循环的热效率nt=0.72267255

四、心得

经过这两次的工程热力学上机实验,发现可以用电脑来简化计算步骤。巩固了所学热力学知识,掌握了系统热力计算的基本概念和计算方法,得到了所求问题的计算结果,但是这只是一些简单的题目,在更复杂的问题上可更上一层楼。

第二篇:上机实验报告格式

请各位同学按照下列格式写:否则按照0分记

上机实验报告格式

Matlab学习第?次上机实验报告(第?次)

姓名:班级:上机时间:

1.上机内容

2.建模及算法分析

3.程序

4.小结

5.参考文献

将文档发到我的邮箱里面

********************第三篇:上机实验报告

一. 题目1. 建立一个学生档案,内容包括学号,姓名,年龄,性别,数学,物理和英语3门功课成绩。要求实现以下功能:1)数据输入;2)查询某个学生的成绩;3)按平均排列输出;4)统计某门课各分数段人数;5)删除某个学生记录;2. 编程实现对二位数进行加,减,乘运算,每运行一次程序做10道题,完成后给出成绩(每题10分)。二. 设计思想和模块划分1.1.先定义所需要的条件,例如,姓名,学号,性别,三门功课的成绩,平均分等。2.输入姓名,学号,性别,年龄,三门功课的成绩后,就输出相应的姓名,学号,性别,年龄,三门功课的成绩。3.打印表头;4.在求出平均分,并打印出平均分。5.在查找学生,并打印出学生的相关资料;并按照平均分的高低排列;6.在统计学生各科成绩是否》=60分,如果是就是通过,否就是没通过,最后打印出最后的结果。7.删除学生,选中删除的学生,如果确定要,那么该学生的一切记录就变为0;2.1.随机调用函数,产生两个其值为10到99的随机整数分别放在c,d中用作运算时的运算数。2.随机调用函数,产生一个值为1到3 的随机整数放入b中,用来选择不同的运算。根据b的值选择不同的运算。当b=1时,去进行c+d的运算练习;当b=2 时,去进行c-d的运算练习;当b=3时,去进行c×d的运算练习。每完成一个算题就给出是否正确的信息。3.根据答案正确与否统计。正确时,显示’right’;错误时,显示’wrong’。4.步骤1.2.3.4.重复10次。5.输出学生成绩。三. 运行结果1.Input

the 1

student :num:03name:wfage:18sex:fmath:98phy:75eng:65Input

the 2

student :num:06name:scage:17sex:fmath:78phy:45eng:65Input

the 3

student :num:09name:ytage:17sex:mmath:69phy:75eng:501.readin 2.finds 3.del 4.tj 5.exit1-----------------------------table----num

name age sex math phy eng ave------3 wf 18 f 98.0 75.0 65.0

79.3------9 yt 17 m 69.0 75.0 50.0 64.7-------6 sc 17 f 78.0 45.0

65.0 62.7-------1.readin 2.finds 3.del 4.tj 5.exit2Into number:3---num name age sex math phy eng ave---3 wf 18 f 98.0 75.0 65.0

79.3----1.readin 2.finds 3.del 4.tj 5.exit3Into number:6---num

name age sex math phy eng ave---6 sc 17 f 78.0 45.0 65.0 62.6---true? Y/Ny1----------------table------------------num name age

sex math phy eng ave----3 wf 18 f 98.0 75.0 65.0 79.3-----9 yt 17

m 69.0 75.0 50.0 64.7-----0 0 0 f 0.0 0.0 0.0 0.0-----1.readin 2.finds

3.del 4.tj 5.exit4 1.input the math 2.input the phy 3.input the eng

1math: pass num is :3 no pass num

is :02.32+82=114right!97*15=1455right!99-58=41right!76-66=10right!58+13=71right!37+49=86right!99+52=151right!49*69=5462wrong!73-38=31wrong!86+34=120right!mark is 80四. 主要错误改正方法1.在本题的编写过程中常出现begin 和end 不配对,只要始它们的个数相同就可以了,就可以了。在程序中常出现的’unknown identifier’没有定义的错误,只要在程序前加上定义,就可以了。还有就是type mismatch’的类型不匹配,只要根据前后内容,重新定义,就可以了。2.在本题编写中,题目要求是两个两位数运算,如果写成c:=random(100)在运行过程中,就会出现一位数运算,只要把它写成c:=random(90)+10,就可以了。五. 实习小结1.第一题的程序编写比较复杂,需要较多的定义,因而在后面的程序部分,就常出现标识符重复,而导致的类型不匹配。还有就是每个部分编好后,上下不能连接,而无法调用。2.第二题较第一题简单,和书上的例题类似,所以,比较简单,但从中也出现一些不问题。以上两大题中出现的问题,要在同学的帮助下,才能完成。总的来说两题程序比较困难六. 程序清单1.program twins;const

m=3;n=3;typestudent=recordnum:integer;name:string[3];age:integer;sex:char;s:array[1..n] of

real;math,eng,phy:real;ave:real;end;sarr=array[1..m] of

student;ta=array [1..m] of

student;f=string[6];varstu:sarr;ct:ta;k,d:integer;procedure

readin(var stu:sarr);const wrong='0<=data<=100 ,again!';var

j,i:integer;a:student;beginwriteln;writeln('Input ',m,' num name

sex math phy eng',' of student.');for j:=1 to m

dobeginwriteln;writeln('Input the ',j,' student :');with a

dobeginwrite('num:');readln(num);write('name:');readln(name);write('age:');readln(age);write('sex:');readln(sex);while(sex<>'m')and(sex<>'f')dobeginwrite('sex:');readln(sex)end;for i:=1 to n do

begincase i of1:begin

write('math:');readln(s[i]);while(s[i]<0)or(s[i]>100)dobeginwriteln(wrong);write('math:');readln(s[i]);end;end;2:begin