相变传热与流体流动数值分析作业3.docx
- 文档编号:24474372
- 上传时间:2023-05-27
- 格式:DOCX
- 页数:22
- 大小:412.99KB
相变传热与流体流动数值分析作业3.docx
《相变传热与流体流动数值分析作业3.docx》由会员分享,可在线阅读,更多相关《相变传热与流体流动数值分析作业3.docx(22页珍藏版)》请在冰豆网上搜索。
相变传热与流体流动数值分析作业3
相变传热与流体流动数值分析
作业3
学院(系):
能源与动力学院
专业:
能源与动力工程
********
学号:
********
指导教师:
宋永臣教授
完成日期:
2012.3.6
大连理工大学
DalianUniversityofTechnology
TheFiniteVolumeMethodforConvection-DiffusionProblems
Subject:
ApropertyΦistransportedbymeansofconvectionanddiffusionthroughtheone-dimensionaldomainsketchedinFigure1.Thegoverningequationis
;boundaryconditionsareΦ0=1atx=0andΦL=0atx=L.UsingfiveequallyspacedcellsforconvectionanddiffusioncalculatethedistributionofΦafunctionofxforcase:
(i)Case1:
u=0.1m/s;
(ii)Case2:
u=2.5m/s;
(iii)Case3:
u=2.5m/swith20gridnodes;
Thefollowingdataapply:
LengthL=1.0m,ρ=1.0kg/m3,Γ=0.1kg/m/s.
Solution:
(I)Thecentraldifferencingscheme:
//王佳琪-作业-中心差分.cpp:
定义控制台应用程序的入口点。
//
#include
#include
#include
#include
#include
#include
#include
#include
#include
#defineN5
usingnamespacestd;
inti;
doubleaw[N],b[N],ae[N],f[N],x[N];
/*-------追赶法求解数组-------*/
voidtdma()
{
doublel[N],u[N],y[N];
for(i=1;i { u[0]=b[0];l[0]=0; l[i]=aw[i]/u[i-1]; u[i]=b[i]-l[i]*ae[i-1]; } y[0]=f[0]; for(i=1;i y[i]=f[i]-l[i]*y[i-1]; x[N-1]=y[N-1]/u[N-1]; for(i=N-2;i>=0;i--) x[i]=(y[i]-ae[i]*x[i+1])/u[i]; } voidmain() { voidOutput(); /*---------定义变量及边界条件---------*/ doubleF,D,u,ρ,Γ,x,L,φA,φB,Sp[N]; u=0.1;ρ=1;Γ=0.1;L=1;φA=1;φB=0; x=L/N;F=ρ*u;D=Γ/x; /*---------网格离散---------*/ for(i=0;i { if(i==0) { aw[i]=0;ae[i]=-(D-F/2);Sp[i]=-(2*D+F);f[i]=(2*D+F)*φA; } elseif(i==N-1) { ae[i]=0;aw[i]=-(D+F/2);Sp[i]=-(2*D-F);f[i]=(2*D-F)*φB; } else { aw[i]=-(D+F/2);ae[i]=-(D-F/2);Sp[i]=0;f[i]=0; } b[i]=-aw[i]-ae[i]-Sp[i]; } tdma(); Output(); } voidOutput() { /*---------后处理文件生成---------*/ ostringstreamname; name.str(""); name<<"central_.plt"; ofstreamout(name.str().c_str()); out<<"Title=central"< for(i=0;i { out< } } Results: (i)case1: u=0.1m/s;N=5; (ii)Case2: u=2.5m/s;N=5; (iii)case3: u=2.5m/s;N=20; Discussion: Fromthefigure,wecanseetheagreementswiththeanalyticalsolutionareverygoodincase1andcase3.Whileincase2,becauseofthefinitegridwithahighspeed,thenumericalsolutionappearstooscillate,called‘wiggles’.Inoneword,thecentraldifferencingschemedoesn’tadapttothehighpecletnumber(F/D>2). (II)Theupwinddifferencingscheme: //王佳琪-作业3-迎风.cpp: 定义控制台应用程序的入口点。 // #include"stdafx.h" #include #include #include #include #include #include #include #include #defineN5 usingnamespacestd; inti; doubleaw[N],b[N],ae[N],f[N],x[N]; /*-------追赶法求解数组-------*/ voidtdma() { doublel[N],u[N],y[N]; for(i=1;i { u[0]=b[0];l[0]=0; l[i]=aw[i]/u[i-1]; u[i]=b[i]-l[i]*ae[i-1];} y[0]=f[0]; for(i=1;i y[i]=f[i]-l[i]*y[i-1]; x[N-1]=y[N-1]/u[N-1]; for(i=N-2;i>=0;i--)x[i]=(y[i]-ae[i]*x[i+1])/u[i]; } voidmain() { voidOutput(); doubleFw1,Fw,Fe1,Fe,Dw,De,u,ρ,Γ,x,L,φA,φB,Sp[N]; u=0.1;ρ=1;Γ=0.1;L=1;φA=1;φB=0; x=L/N;Fw=Fe=ρ*u;Dw=De=Γ/x; Fw1=0>Fw? 0: Fw; Fe1=0>(-Fe)? 0: (-Fe); /*---------网格离散---------*/ for(i=0;i { if(i==0) {aw[i]=0;ae[i]=-(De-Fe1);Sp[i]=-(2*Dw+Fw1);f[i]=(2*Dw+Fw1)*φA;} elseif(i==N-1) {aw[i]=-(Dw+Fw1);ae[i]=0;Sp[i]=-(2*De+Fe1);f[i]=(2*De-Fe1)*φB;} else {aw[i]=-(Dw+Fw1);ae[i]=-(De+Fe1);Sp[i]=0;f[i]=0;} b[i]=-aw[i]-ae[i]-Sp[i]; } tdma(); Output(); } voidOutput() { ostringstreamname; name.str(""); name<<"upwind.plt"; ofstreamout(name.str().c_str()); out<<"Title=upwind"< for(i=0;i out< } Results: (i)case1: u=0.1m/s;N=5; (ii)Case2: u=2.5m/s;N=5; Discussion: Theupwinddifferencingschemeproducesamuchmorerealisticsolutionthanthecentraldifferencingscheme,however,notveryclosetotheexactsolutionnearboundaryB.Thatisbecausethatitsaccuracyisonlyfirstorder,whilethecentraldifferencingissecondorder. (III)Thehybriddifferencingscheme: //王佳琪-作业-混合.cpp: 定义控制台应用程序的入口点。 // #include"stdafx.h" #include #include #include #include #include #include #include #include #defineN5 usingnamespacestd; inti; doubleaw[N],b[N],ae[N],f[N],x[N]; /*-------追赶法求解数组-------*/ voidtdma() { doublel[N],u[N],y[N]; for(i=1;i { u[0]=b[0];l[0]=0; l[i]=aw[i]/u[i-1]; u[i]=b[i]-l[i]*ae[i-1];} y[0]=f[0]; for(i=1;i y[i]=f[i]-l[i]*y[i-1]; x[N-1]=y[N-1]/u[N-1]; for(i=N-2;i>=0;i--)x[i]=(y[i]-ae[i]*x[i+1])/u[i]; } voidmain() { voidOutput(); doubleFw1,Fw,Fe1,Fe,Dw,De,u,ρ,Γ,x,L,φA,φB,Sp[N]; u=2.5;ρ=1;Γ=0.1;L=1;φA=1;φB=0; x=L/N;Fw=Fe=ρ*u;Dw=De=Γ/x; if(Fw<0&&(Dw+Fw/2)<0)Fw1=0; elseif(Fw<0&&(Dw+Fw/2)>0)Fw1=(Dw+Fw/2); elseif(Fw>0&&(Dw+Fw/2)<0)Fw1=Fw; elseif(0 elseif(0<(Dw+Fw/2)&&(Dw+Fw/2) if((-Fe)<0&&(De-Fe/2)<0)Fe1=0; elseif((-Fe)<0&&(De-Fe/2)>0)Fe1=(De-Fe/2); elseif((-Fe)>0&&(De-Fe/2)<0)Fe1=(-Fe); elseif(0<(-Fe)&&(-Fe)<(De-Fe/2))Fe1=(De-Fe/2); elseif(0<(De-Fe/2)&&(De-Fe/2)<(-Fe))Fe1=(-Fe); /*---------网格离散---------*/ for(i=0;i { if(i==0) {aw[i]=0;ae[i]=-Fe1;Sp[i]=-(2*Dw+Fw1);f[i]=(2*Dw+Fw1)*φA;} elseif(i==N-1) {aw[i]=-Fw1;ae[i]=0;Sp[i]=-(2*De+Fe1);f[i]=(2*De-Fe1)*φB;} else {aw[i]=-Fw1;ae[i]=-Fe1;Sp[i]=0;f[i]=0;} b[i]=-aw[i]-ae[i]-Sp[i]; } tdma(); Output(); } voidOutput() {doublem=25; ostringstreamname; name.str(""); name<<"hybrid.plt"; ofstreamout(name.str().c_str()); out<<"Title=hybrid"< for(i=0;i out< } Results: (i)Case1: u=2.5m/s;N=5; (ii)Case2: u=2.5m/s;N=25; Discussion: Onacombinationofcentralandupwinddifferencingschemes,thehybridschemeprovidesamuchmorerealisticsolutionandagreestheexactsolutionverywell.Themorenodes,themoreaccuratetheresultis. (IV)Thepower-lawscheme: //王佳琪-作业-指数.cpp: 定义控制台应用程序的入口点。 // #include"stdafx.h" #include #include #include #include #include #include #include #include #defineN5 usingnamespacestd; inti; doubleaw[N],b[N],ae[N],f[N],x[N]; /*-------追赶法求解数组-------*/ voidtdma() { doublel[N],u[N],y[N]; for(i=1;i { u[0]=b[0];l[0]=0; l[i]=aw[i]/u[i-1]; u[i]=b[i]-l[i]*ae[i-1];} y[0]=f[0]; for(i=1;i y[i]=f[i]-l[i]*y[i-1]; x[N-1]=y[N-1]/u[N-1]; for(i=N-2;i>=0;i--)x[i]=(y[i]-ae[i]*x[i+1])/u[i]; } voidmain() { voidOutput(); ofstreamnote; doubleFw,Fw1,Fe,Fe1,Dw,De,u,ρ,Γ,x,L,φA,φB,Sp[N],p,p1,Pew,Pee,q,q1; u=2.5;ρ=1;Γ=0.1;L=1;φA=1;φB=0; x=L/N; Fw=Fe=ρ*u; Dw=De=Γ/x; Pew=Fw/Dw; Pee=Fe/De; Fw1=0>Fw? 0: Fw; Fe1=0>(-Fe)? 0: (-Fe); p=pow((1-0.1*fabs(Pew)),5); p1=0>p? 0: p; q=pow((1-0.1*fabs(Pee)),5); q1=0>q? 0: q; /*---------网格离散---------*/ for(i=0;i { if(i==0) { aw[i]=0;ae[i]=-(Fe1+De*q1);Sp[i]=-(2*Dw+Fw1);f[i]=(2*Dw+Fw1)*φA; } elseif(i==N-1) { aw[i]=-(Fw1+Dw*p1);ae[i]=0;Sp[i]=-(2*De+Fe1);f[i]=(2*De-Fe1)*φB; } else { aw[i]=-(Fw1+Dw*p1);ae[i]=-(Fe1+De*q1);Sp[i]=0;f[i]=0; } b[i]=-aw[i]-ae[i]-Sp[i]; } tdma(); Output(); } voidOutput() {doublem=25; ostringstreamname; name.str(""); name<<"power-law.plt"; ofstreamout(name.str().c_str()); out<<"power-low"< for(i=0;i { out< } } Result: (i)Case1: u=2.5m/s;N=5; (ii)Case2: u=2.5m/s;N=25; Discussion: Thisresultismoreaccuratethanthethreeformerschemes.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 相变 传热 流体 流动 数值 分析 作业