工程流体力学水力计算编程(9页).doc





《工程流体力学水力计算编程(9页).doc》由会员分享,可在线阅读,更多相关《工程流体力学水力计算编程(9页).doc(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-工程流体力学水力计算编程-第 10 页流体力学管路水力的计算哈工大姓名:王小亮 学号:1090230113 班号:0902301一.问题提出为了实现在已知参数(总流量、粘度、管长、管径、粗糙度、总作用水头等)的情况下,能直接算出已知管路系统的基本流动参数(流速、分流量、损失因数、雷诺数、沿裎损失因数等)的目的,为此特别编写了简单管路系统流动参数计算的程序。该程序能实现串联和并联管路系统流动参数的计算。需要指明的是,由于本人编程能力有限,且为了能计算书上例题的管路系统,故第二类问题的串联管路系统有且仅有两个串联管子,其余均为三个管子串联或并联。二.数学模型及算法1.算法首先,将已知参数的实际管
2、路系统抽象简化为理想物理模型,并根据管路系统类型进行分类;然后,对其进行理论分析,计算出流动参数的计算方程;最后,通过编程实现对所求流动参数的计算。2.数学模型(1)串联管路系统的第一类问题已知流过串联管路的流量,介质参数(),管路参数(),求所需要的总水头。如下图:设为入口损失因数,对A、B两截面列伯努力方程有根据连续性方程的又由,由公式可以计算出,从而求出h。(2)串联管路系统的第二类问题已知总水头h,介质参数(),管路参数(),求通过的流量如下图:设为入口损失因数,对A、B两截面列伯努力方程有根据连续性方程的由此可得又,由公式可以计算出。将算出的与所取得对比,若二者之差均满足所取得精度,
3、则计算结束,否则令作为新的重新计算为止。最终可得流量(3)并联管路系统的第一类问题已知两点间的压力降(即能量损失)h,介质参数(),管路参数(),求总流量如下图:先取const,(i=1,2,3,下同);由达西公式可求得所以由公式可以计算出,将算出的与所取得对比,若二者之差均满足所取得精度,则计算结束,否则令作为新的重新计算为止。则(4)并联管路系统的第二类问题已知总流量,介质参数(),管路参数(),求各分支管路的流量及能量损失h如下图:根据经验,先取h=const;由此h值根据并联管路第一类问题计算出各分支管路的流量(i=1,2,3,下同);则蒋总流量按如下分配用计算出的流量,结合公式、,可
4、以计算出,从而求出;若中任两个之差满足给定精度,则h为所求值,否则令h=,从头重新计算,直到满足精度为止。三.程序流程图四.程序变量说明及程序清单1.主要变量说明di(i=1,2,3):各管道的直径(m);li(i=1,2,3):各管道的长度(m);dlti(i=1,2,3):各管道的粗糙度(m)nu:流体粘度(m2/s);Vi(i=1,2,3):各管道中的流速(m/s);Rei(i=1,2,3):各管道的雷诺数;lmdi(i=1,2,3):实际各管道的沿裎损失因数;lmdii(i=1,2,3):假设各管道的沿裎损失因数;qvi(i=1,2,3):实际各管道中的流量(m3/s);qvii(i=
5、1,2,3):假设各管道中的流量(m3/s);2.程序清单# include # include double CL (double dlt,double d,double Re) double lmd1,temp,lmd=0,Rec1,Rec2,Rec3; Rec1=2320; Rec2=80*d/dlt; Rec3=4160*pow(d/(2.0*dlt),0.85); if(ReRec1) lmd=64/Re; else if(ReRec2) if(Re1e5) lmd=pow(Re,0.25); else if(Re3e6) lmd=0.0032+0.221*pow(Re,-0.237
6、); else if(Re=1e-6) lmd1=lmd; temp=log(dltsqrt(lmd1)/log(10); lmd=pow(1.0/(-2.0)/temp,2); else lmd=pow(1.74+2.0*log(d/(2.0*dlt)/log(10),-2); return lmd;main() int i=0; double qv,qvt,nu,rou,h,s,ID,DK1,DK2,DK; double l1,l2,l3,d1,d2,d3,dlt1,dlt2,dlt3; double lmd1,lmd2,lmd3,lmd11=0.025,lmd22=0.03,lmd33=
7、0.023; double qv1,qv2,qv3,qv11,qv22,qv33,h1,h2,h3; double V1,V2,V3,Re1,Re2,Re3; printf(请输入管路连接类型:1(串联管路),2(并联管路)n); scanf(%d,&i); if (i=1) int j; printf(请输入管路计算第几类问题:1(第一类问题),2(第二类问题)n); scanf(%d,&j); if(j=1) printf(请输入:管路流量(m3/s),介质粘度(m2/s),入口损失因数n); scanf(%lf,%lf,%lf,&qv,&nu,&s); printf(请依次输入:各管路长
8、度(m)(只有三个)n); scanf(%lf,%lf,%lf,&l1,&l2,&l3); printf(请依次输入:各管路直径(m)(只有三个)n); scanf(%lf,%lf,%lf,&d1,&d2,&d3); printf(请依次输入:各管路粗糙度(m)(只有三个)n); scanf(%lf,%lf,%lf,&dlt1,&dlt2,&dlt3); V1=4*qv/(pi*d1*d1); V2=4*qv/(pi*d2*d2); V3=4*qv/(pi*d3*d3); Re1=V1*d1/nu; Re2=V2*d2/nu; Re3=V3*d3/nu; lmd1=CL(dlt1,d1,Re1
9、); lmd2=CL(dlt2,d2,Re2); lmd3=CL(dlt3,d3,Re3); h=(s*V1*V1+lmd1*l1*V1*V1/d1+pow(V1-V2,2)+lmd2*l2*V2*V2/d2+pow(V2-V3,2)+lmd3*l3*V3*V3/d3+pow(V3,2)/(2*g); printf(所需总水头h(m):%lfn,h); printf(V1=%lf m/stV2=%lf m/stV3=%lf m/sn,V1,V2,V3); printf(Re1=%lftRe2=%lftRe3=%lfn,Re1,Re2,Re3); printf(lmd1=%lftlmd2=%lf
10、tlmd3=%lfn,lmd1,lmd2,lmd3); if(j=2) printf(请输入:总水头h(m),介质粘度(m2/s),入口损失因数n); scanf(%lf,%lf,%lf,&h,&nu,&s); printf(请依次输入:各管路长度(m)(只有两个)n); scanf(%lf,%lf,&l1,&l2); printf(请依次输入:各管路直径(m)(只有两个)n); scanf(%lf,%lf,&d1,&d2); printf(请依次输入:各管路粗糙度(m)(只有两个)n); scanf(%lf,%lf,&dlt1,&dlt2); DK1=pow(d1/d2,2); do DK=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 工程 流体力学 水力 计算 编程

限制150内