用c语言编程计算水力学习题,工程流体力学水力计算编程.docx

工程流体力学水力计算编程

流体力学管路水力的计算哈工大姓名:王小亮学号:1090230113 班号:0902301一.问题提出为了实现在已知参数(总流量、粘度、管长、管径、粗糙度、总作用水头等)的情况下,能直接算出已知管路系统的基本流动参数(流速、分流量、损失因数、雷诺数、沿裎损失因数等)的目的,为此特别编写了简单管路系统流动参数计算的程序。该程序能实现串联和并联管路系统流动参数的计算。需要指明的是,由于本人编程能力有限,且为了能计算书上例题的管路系统,故第二类问题的串联管路系统有且仅有两个串联管子,其余均为三个管子串联或并联。二.数学模型及算法1.算法首先,将已知参数的实际管路系统抽象简化为理想物理模型,并根据管路系统类型进行分类;然后,对其进行理论分析,计算出流动参数的计算方程;最后,通过编程实现对所求流动参数的计算。2.数学模型(1)串联管路系统的第一类问题已知流过串联管路的流量,介质参数(),管路参数(),求所需要的总水头。如下图:设为入口损失因数,对A、B两截面列伯努力方程有根据连续性方程的又由,由公式可以计算出,从而求出h。(2)串联管路系统的第二类问题已知总水头h,介质参数(),管路参数(),求通过的流量如下图:设为入口损失因数,对A、B两截面列伯努力方程有根据连续性方程的由此可得又,,由公式可以计算出。将算出的与所取得对比,若二者之差均满足所取得精度,则计算结束,否则令作为新的重新计算为止。最终可得流量(3)并联管路系统的第一类问题已知两点间的压力降(即能量损失)h,介质参数(),管路参数(),求总流量如下图:先取const,(i=1,2,3,下同);由达西公式可求得所以由公式可以计算出,将算出的与所取得对比,若二者之差均满足所取得精度,则计算结束,否则令作为新的重新计算为止。则(4)并联管路系统的第二类问题已知总流量,介质参数(),管路参数(),求各分支管路的流量及能量损失h如下图:根据经验,先取h=const;由此h值根据并联管路第一类问题计算出各分支管路的流量(i=1,2,3,下同);则蒋总流量按如下分配用计算出的流量,结合公式、,可以计算出,从而求出;若中任两个之差满足给定精度,则h为所求值,否则令h=,从头重新计算,直到满足精度为止。三.程序流程图四.程序变量说明及程序清单1.主要变量说明di(i=1,2,3):各管道的直径(m);li(i=1,2,3):各管道的长度(m);dlti(i=1,2,3):各管道的粗糙度(m)nu:流体粘度(m^2/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):实际各管道中的流量(m^3/s);qvii(i=1,2,3):假设各管道中的流量(m^3/s);2.程序清单# include # include # define pi 3.1415926# define g 9.81double CL (double dlt,doubled,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(Re=1e-6) { lmd1=lmd;temp=log(dlt/(3.7*d)+2.51/Re/sqrt(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); }returnlmd;}main(){inti=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,

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值