二维数值传热学C++程序代码_第1页
二维数值传热学C++程序代码_第2页
二维数值传热学C++程序代码_第3页
二维数值传热学C++程序代码_第4页
二维数值传热学C++程序代码_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精心整理#include<stdi o.h>#include<iostream> #include<math .h> #includevfstream> / /*-'. j j !*/ / /从此开始至下一个/*/标记带处之间的代码可以写 在头文件里。/ /计算参数宏定义开始.' I/ /#defineGRID_ROW82 #defineGRID_COLUMN102/网格横纵数目,边界处多出一列处理#defineDX0.05#defineDY0.05/网格单元尺寸,m#defineDEN_COPPER89O0 #defineDEN_ST

2、EEL7850 #defineDEN_CONCRETE2430/材料的密度,kg/(mA3) #defineC_COPPER390 #defineC_STEEL460 #defineC_CONCRETE970/材料比热容,J/(kg*K) #defineCOND_COPPER40O #defineCOND_STEEL20 #defineCOND_CONCRETE1.63材料导热系数,W/(m*K)#defineC0NV5W/(mA2*K)/空气与各种材料的对流换热系数,#definelNITL_TMPRT298/初始温度,K#defineT_C2K(x)(x)+273)/CtoK #defin

3、eT_K2C(x)(x)-273)/KtoC摄氏温度与绝对温度相互转换#defineT_AIR298;/空气温度,K#definet_END3600/计算时长,s#definet_STEP1II时间步长,s#defineCOND_COP_CON3.2467 #defineCOND_COP_STL38.0952#defineCOND_CON_STL3.0143不同材料的两个相邻结点,导热系数取调和平均数,W/(m*K)IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII/计算参数宏定义结束I

4、IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII/enumPropertycopper,steel,concrete,iso834,adiabat, air;/结点属性的枚举类型声明structGriddoublemNodeTGRID_ROWGRID_COLUMN;/结点温度PropertymNodePropertyGRID_ROWGRID_COLUMN;/结点材料属性doublemNodeCGRID_ROWGRID_COLUMN;/结点比热容doublemNodeDenGRID_ROW

5、GRID_COLUMN;结点密度;II结构体Grid定义,此为计算的主要承载数据结构, 将在计算中存储温度数据II函数全局声明开始voidSetProperty(Grid&);/ 属性设置函数 voidlnitlTMPRT(Grid&);/ 温度初始化函数 voidSetNodePara(Grid&);/结点物性参数设置函数 voidCalculateTMPRT(Grid&);/ 温度计算函数,几 乎全部数值计算的承担者voidwrite(int,Grid&);/写文件函数,每隔100秒输 出温度分布文件到当前目录/函数全局说明结束voidSetProp

6、erty(Grid&A) for(intj=0;j<GRID_COLUMN;+j) A.mNodeProperty0j=air;/第一行为空气边界,计算区域外 for(intj=0;j<GRID_COLUMN;+j)A.mNodePropertyGRID_ROW-1j=adiabat;/最后一行为绝热边界,计算区域外 for(inti=0;i<GRID_ROW;+i)if(i>=0&&iv=40)|(i>=61 &&i<GRID_ROW)A.mNodePropertyi0=air;elseA.mNodeProperty

7、i0=iso834;/第一列的空气边界和ISO834边界,计算区域外for(inti=0;i<GRID_ROW;+i)A.mNodePropertyiGRID_COLU MN- 1=air;最后一列,空气边界,计算区域外for(inti=1;i<GRID_ROW-1;+i) for(intj=1;j<GRID_COLU MN- 1;+j) if(i>=1 &&iv=44&&j>=1 &&jv=20)|(i>=61 &&iv GRID_ROW-2&&j>=1 &&am

8、p;jv=(100-(80-i)*(49/19) A.mNodePropertyij=concrete;/混凝土区域elseif(i-20)*(i -20)+(j-25)*(j-25)v=20*20) A.mNodePropertyij=air;/圆孔空气区域elseif(i>=41 &&iv=60&&j>=1 &&jv=90&&(i-20) *(i- 20)+(j-25)*(j-25)>=20*20) A.mNodePropertyij=copper;/金属铜区域的一部分elseif(i>=1 &

9、&iv+40&&j>=21 &&jv=90)A.mNodePropertyij=copper;金属铜区域的另一部分elseA.mNodePropertyij=steel;/剩下的即为金属铁的区域/属性设置函数,将Grid结构体A的所有网格赋予 材料属性(枚举类型Property)voidlnitlTMPRT(Grid&A)for(inti=0;i<GRID_ROW;+i) for(intj=0;j<GRID_COLUMN;+j) A.mNodeTij=INITL_TMPRT;/温度初始化函数,将Grid结构体A的全部结点温度设置

10、为初始温度INITL_TMPRT voidCalculateTMPRT(Grid&A) doubleQE=0,QW=0,QN=0,QS=0; 四个方向传来 的热量for(inti=1;i<GRID_R0W-1;+i)rlsldo。 ONOPas匚apoNWVD+sLLapoNWVllwo二总saseo活aiq>p一>nopsd 匚apoNWVD+sLLapoNWVllwoI II - 厂- * .L- - - 丿活aiq密 ddo。CJNO。* (曰 mJ.apoNE<L曰 J.apoNWH 山 OLaddooase。一 -.K.T 山O韓44肚垂書2 苗冢=(

11、DDMtadodapoNW<)q£s举-M呂曝来肛、r =addooaseo smBadodapoNW<r0±sMS (寸NIAI3OOIC1_M©LO4Sa專曲苗冢=(D,!lDMtado.ldapoNE<)q£_MS厂=vv 山 ovv4nooES =宀0吏煌6一股聖来迪咂肛艰 vv Lvv=v±vy§: - ES4-;-ne4ap活aiqog4Jeq.spease0活aiq卍山ddoolaNOO*(U1D LLapoNEVDmJ.apoNE<)HWO- f -厂" " I i _/7/

12、丁 - xv寻 28OSOSP0 活aiqzoo Joo ONOPas匚apoNWVD+sLLapoNWVllwo活aiq寻 28OSOSP0zoo Joo ONOP(nlmlapoNWV?=mlapoNW<llMO_-活aiqmsIdoo ONOP(nlmlapoNWV?=mlapoNW<llMO二应saseoup >ZOOBEtozE.<.=EtozE.<T5a / V - xvLEseo活aiq卍山ddoo ONOP(nlmlapoNWV?=mlapoNW<llMOLaddooase。Nopas匚apoNwvnlD-lapoNWVllNOLEseo&q

13、uot;ylealqif山 ddo。ONOPas匚apoNwvnlD-lapoNWVllNOLaddooase。 冢=(曰 D 丄 MtadodapoNE<)lp七ms 宀V()elp4 6 存聖来塑咂肛、艰=vvVKVy§:p4-:-ne4apohmo4Jeq.spease0if山 ddoo00吏煌6Ju 一股 存来塑咂肛、鴉=VVV=VVL 丄 VHOVES4-:-ne4apohno4Jeq.spease0活aiq卍山 ddoolcl Nopas匚apoNEVnlD 丄匚apoNW<£HNO寻 28OSOSP0 zoo Joo onopsd 匚apoNwvn

14、lD-lapoNWVllNO/ /<<一msIdo。 ONOPas匚apoNwvnlD-lapoNWVllNO二应saseo空 eaiq zoo Joo ONOPas匚apoNwvnlD±MapoNW<llsorlsldo。 onopsd 匚apoNwvnlD±MapoNW<llso IL/二应saseoNopas匚apoNwvnlD±MapoNW<llsoLEseoif山 ddo。ONOPas匚apoNwvnlD±MapoNW<llsoLaddooase。SO嘶44故 專$药孤二(曰 D±Mtadodapo

15、NE<)q£_MSCaseiso834_QSH2JAmNodeT【+=IjvAmNodeTmInrcoNDICOPPERbreak;caseadiabarrqsho;c - %/7break;defauFoo&aatxa=-aaaa= Z叫、禽14 泮斎 代W;gcharbreak;casesfee 一 = j、的R苹吉耳沛宀 swifch(AmNodep6perty 日Ij-KW/世雪卅食 繭14半斗书QE宀casecoppe二QEllA.mNodeT 日D-KlA.mNodeTm曰)6ONDCOP STbreak;caseain4-:-ne4apSH山O5山山1SI

16、O_nopsd 匚apoNWVD+flmlapoNW<£HWOI 1 - 厂- - >» - - - - 丿K寻 28OSOSP0J.SINOO ONOPas匚apoNWVD+sLLapoNWVllwo"J山山-LSI ONOPas匚apoNWVD+sLLapoNWVllwo二应saseo>p >NOP(nw 匚apoNWVD+flmlapoNW.VllwoJ山山-LSI0NOP(nlmlapoNWV?=mlapoNW<llM0二应saseo活aiq>p >NOP(nlmlapoNWV?=mlapoNW<llMOLE

17、seoONOP(nlmlapoNWV?=mlapoNW<llMOLaddooase。MO瓣44比 尋曲苗冢=(【=DM±ado.ldapoNE.<)=£s 宀=)elp6 聖来封咂肛、畑 VVLvv=vvnovESONOPas匚apoNwvnlD-lapoNWVllNOLaddooase。§帥44妆tg苗冢=(nnEM±adodapoNE.<)=£sl 二;=)elp6聖来塑咂肛、艰=VVL 亠vyvvnoH:p4-:-ne4ap0H5a4Jeq.spease0山山 J.SIC1 NOP(nlmlapoNWV?=mlapoNW

18、<£HMO寻 28OSOSP0J.SINOO 0NOP(nlmlapoNWV?=mlapoNW<llM04Jeq.spease0"J 山山 J.SICJ Nopas匚apoNEVnlD 丄匚apoNW<£HNO寻 28OSOSP0活aiqJ.SINOO ONOPas匚apoNwvnlD-lapoNWVllNO山山is Qzoos ILapoNEV 曰 DJ.apoNE<)HNO.J. 一 十二agsaseo.“ /<、_ _、'、"ylealq"xcl *>NOO* (曰 D ILapoNEV 曰 D

19、J.apoNE<)HNOLEseo活aiqHJ-SIdooqnhodefaf:sf:coAAAA於、处繭降泮斎 代w;gchar - swifch(AmNodepropertyn-Kl曰)=*_W 輒序半斗牺QS宀casecoppe二QSllAmNodeT=!=u-lAmNodeTm曰)6ONDCOPISTbreak;caseainQS»AmNodeT【+二曰.A.mNodeTm曰 rcoNVbreak; casesfeeQS»AmNodeT【+二曰.A.mNodeTm曰 rcoND精心整理STEEL;break;caseconcrete:QS=(A.mNodeTi+

20、1j-A.mNodeTij)*COND_ CON_STL;break;caseiso834:QS=2*(A.mNodeTi+1j-A.mNodeTij)*CON D_STEEL;break;caseadiabat:QS=0; break;I Idefault:std:coutvvi+1vv","vvjvv"结点属性未指 定n"getchar();break; caseconcrete:/i,j点 为砼的时候 switch(A.mNodePropertyij+1) 判断右寻 28OSOSP0 活aiq"山 J.山 MONO。ONOPas匚apoN

21、WVD+sLLapoNWVllwo兰 eaiqJ.SINOO ONOPas匚apoNWVD+sLLapoNWVllwo活aiq"Acl* >NOO* (曰 mJ.apoNE<L曰 J.apoNWH 山 O活aiqzooldo。 ONOPas匚apoNWVD+sLLapoNWVllwoLaddooase。山O帥44妆>p一 >NOP(nlmlapoNWV?=mlapoNW<llMO4 .1 - 厂- .- - - - - .vLEseo'Laddooase。MO韓44肚巫咂 專曲苗冢=(D,!lDMtado.ldapoNE<)q£_

22、MS宀=)elp6 厂股聖 来迪咂肛艰 vv Lvv=vv_vy§: - ES4-;-ne4ap 活aiq4Jeq.spease0活aiqL-SMS活aiqzoo JooONOPas匚apoNwvnlD-lapoNWVllNO:addooaseoNOtg苗冢=(nnEM±adodapoNE.<)=£s 宀=)elp6聖来塑咂肛、艰=VVL 亠vyvvnoH:p4-:-ne4ap 活aiq 0H5a 4Jeq.spease0 寻 28OSOSP0山 J.山MONO。QZO0BEtozE.<.=EtozE.<T5a存来塑咂肛、鴉=VVV=VVL 丄

23、VHOVES4-:-ne4apohno4Jeq.spease0"ylealq寻 28OSOSP0"山 J.山 MONO。ONOPas匚apoNwvnlD-lapoNWVllNO活aiqJ.SINOO ONOPas匚apoNwvnlD-lapoNWVllNO二应saseo"xcl *>NOO*(U1D ILapoNEV 曰 DJ.apoNE<)HNO空 eaiq"山 J.山 MONO。ONOPas匚apoNwvnlD±MapoNW<llsorlsINO。 onopsd 匚apoNwvnlD±MapoNW<llso

24、 IL/二应saseoNopas匚apoNwvnlD±MapoNW<llsoLEseo活aiqzoo JooONOPas匚apoNwvnlD±MapoNW<llsoLaddooase。SO嘶44故 專$药孤二(曰 D±MtadodapoNE<)q£_MS精心整理caseiso834:break;caseadiabat:QS=0;break;default:std:coutvvi+1vv","vvjvv"结点属性未指 定n"getchar();break;caseair:i,j点为空气的时候,温度不改变A.mNodeTij=T_AIR; break;default:break;I IA.mNodeTij=(QE+QN+QS+QW)/(A.mNodeC ij*A.mNodeDenij*DX*DY);精心整理II函数会判断每个结点相邻 4个结点的属性,然后将 四个结点传来的热量加和,最后根据能量守恒计算出中间结点的温度值(时间全显式)voidwrite(intt,Grid&A)charfilename40;intx=1,y=1;sprintf_s(fi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论