孔板的计算C程序 点击:1423 | 回复:9



孙岩军

    
  • 精华:1帖
  • 求助:0帖
  • 帖子:250帖 | 490回
  • 年度积分:0
  • 历史总积分:16643
  • 注册:2004年11月26日
发表于:2006-09-26 15:45:00
楼主
迭代法计算孔板孔径的大小,但是算出的数据有差别我不知道错在那里了,
请各位高手修改,谢谢
运行C语言就可以带入计算.各位朋友不防也算算,看在那里有出入.谢谢!!!!
有什么疑问可以和我电话联系,09515699671,我叫孙严峻!!!!
#include<math.h>
main()
   {  int n;
      const float pai=3.141592653289;
      const float b0=0.500000;
      const float C0=0.606000;
      float Qmax,Qcom,Qmin,M,N,D20,rD,rd,T=0.0,b,D,ReD,CPmax,CPcom,A2,
         L,C,C1,b1,b2,d,d20;
      printf("Qmax,Qcom,Qmin,M,N,D20,rD,rd,T=\n");
      scanf("%f%f%f%f%e%f%e%e%f",&Qmax,&Qcom,&Qmin,&M,&N,&D20,&rD,&rd,&T);
       D=D20*(1+rD*(T-20));
       ReD=4*Qcom/(3600*pai*N*D);
       CPcom=pow(4*Qcom*sqrt(1-pow(b0,4))/(3600*pai*b0*b0*D*D*C0),2)
                  *1/(2*M);
       CPmax=CPcom*pow((Qmax/Qcom),2);
       A2=4*Qcom/(3600*pai*D*D*sqrt(2*25e3*M));
         printf("ReD=%e\n",ReD);
         printf("CPcom=%6.10f\n",CPcom);
         printf("CPmax=%6.10f\n",CPmax);
         printf("A2=%6.10f\n",A2);
      if(ReD>2e5)
     {b=pow(1+pow((0.60/A2),2),-0.25);}
       if(ReD<2e5)
        {b=pow(1+pow((0.60/A2+0.06),2),-0.25);}
          printf("b=%6.10f\n",b);
L=0.0254/D;
C=0.5961+
  0.0261*pow(b,2)-
  0.216*pow(b,8)+
  0.000521*pow(((pow(10,6)*b)/ReD),0.7)+
    ((0.0188+0.0063*pow((19000*b/ReD),0.8)))*pow(b,3.5)*pow((pow(10,6)/ReD),0.3)+
    (0.043+0.080*exp(-10*L)-0.123*exp(-7*L))*(1-0.11*pow((19000*b/ReD),0.8))*
    (pow(b,4)/(1-pow(b,4)))-
  0.031*(2*L/(1-b)-0.8*pow(2*L/(1-b),1.1))*pow(b,1.3);
       b1=pow(1+pow((C/A2),2),-0.25);
         {printf("b1=%6.10f\n",b1);}
C1=0.5961+
  0.0261*pow(b1,2)-
  0.216*pow(b1,8)+
  0.000521*pow(((pow(10,6)*b1)/ReD),0.7)+
    ((0.0188+0.0063*pow((19000*b1/ReD),0.8)))*pow(b1,3.5)*pow((pow(10,6)/ReD),0.3)+
    (0.043+0.080*exp(-10*L)-0.123*exp(-7*L))*(1-0.11*pow((19000*b1/ReD),0.8))*
    (pow(b1,4)/(1-pow(b1,4)))-
  0.031*(2*L/(1-b1)-0.8*pow(2*L/(1-b1),1.1))*pow(b1,1.3);
       b2=pow(1+pow((C1/A2),2),-0.25);
         printf("b2=%6.10f\n",b2);
         printf("b2-b1=%e\n",b2-b1);
  for(n=2;fabs(b2-b1)>1.0e-10;n++)
    {
         b=b1;
         printf("b=%6.10f\n",b);
C=0.5961+
  0.0261*pow(b,2)-
  0.216*pow(b,8)+
  0.000521*pow(((pow(10,6)*b)/ReD),0.7)+
    ((0.0188+0.0063*pow((19000*b/ReD),0.8)))*pow(b,3.5)*pow((pow(10,6)/ReD),0.3)+



孙岩军

  • 精华:1帖
  • 求助:0帖
  • 帖子:250帖 | 490回
  • 年度积分:0
  • 历史总积分:16643
  • 注册:2004年11月26日
发表于:2006-09-29 21:42:00
1楼
怎么没人来看看啊.是不是大家对孔板的计算没什么兴趣啊.还是很多设计院都有自己的计算软件啊,他们都是用什么编写的啊?

哀怜看见棵就1564

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 17回
  • 年度积分:0
  • 历史总积分:31
  • 注册:2006年8月02日
发表于:2006-10-24 14:19:00
2楼
兄弟我也想帮你 可惜不会C语言啊,

哀怜看见棵就1564

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 17回
  • 年度积分:0
  • 历史总积分:31
  • 注册:2006年8月02日
发表于:2006-10-24 14:19:00
3楼
兄弟我也想帮你 可惜不会C语言啊,

sophie

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 8回
  • 年度积分:0
  • 历史总积分:88
  • 注册:2003年2月14日
发表于:2007-03-15 11:28:00
4楼
老大,读别人的程序很痛苦的,你能不能给出数学模型,我自己编啊,还有,我对流出系数的计算也较感兴趣,能不能告知一二,谢谢!

孙岩军

  • 精华:1帖
  • 求助:0帖
  • 帖子:250帖 | 490回
  • 年度积分:0
  • 历史总积分:16643
  • 注册:2004年11月26日
发表于:2007-04-04 13:32:00
5楼
你可以看看孔板流量计的计算公式,那里对流量系数的 计算描述的相当的清楚.给你推荐一本书"孔板流量计设计手册"

实验箱

  • 精华:0帖
  • 求助:0帖
  • 帖子:3帖 | 349回
  • 年度积分:0
  • 历史总积分:458
  • 注册:2005年10月28日
发表于:2007-04-12 20:35:00
6楼
是流量测量节流装置设计手册

孙岩军

  • 精华:1帖
  • 求助:0帖
  • 帖子:250帖 | 490回
  • 年度积分:0
  • 历史总积分:16643
  • 注册:2004年11月26日
发表于:2007-04-14 13:27:00
7楼
是啊。就 是 在那里的。如果你认真仔细看,你就可以看懂我的这个C程序的。

laotu

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 4回
  • 年度积分:0
  • 历史总积分:74
  • 注册:2005年1月12日
发表于:2007-04-16 15:41:00
8楼
有没有限流孔板的计算方法呀

孙岩军

  • 精华:1帖
  • 求助:0帖
  • 帖子:250帖 | 490回
  • 年度积分:0
  • 历史总积分:16643
  • 注册:2004年11月26日
发表于:2007-04-27 18:21:00
9楼
我没有的,还是我给推荐的那本书,你自己看看把!!

热门招聘
相关主题

官方公众号

智造工程师