C语言在流体力学中的应用实例

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

#include

#include

#define PI 3.1415926

#define FOMA T1 printf("Please input the ld's beginning value as ld1= ld2= :\n");

#define FOMA T2 scanf("ld1=%lfld2=%lf\n",&ld11,&ld21);

#define FOMA T3 printf("The answers are:\n");

#define FOMA T4 printf("ld1=%lf v1=%lf\nld2=%lf v2=%lf\nQ=%lf n=%d\n",ld1,V1,ld2,V2,Q,n);

#define FOMA T5 printf("e1=%lf Re1=%lf k1=%lf\ne2=%lf Re2=%lf k2=%lf\n",e1,fRe(fv1(ld1,ld2),d1),k1,e2,fRe(fv2(ld1,ld2),d2),k2);

double

Ce=0.5,L1=300.0,d1=0.6,K1=0.0015,L2=240.0,d2=0.9,K2=0.0003,V=1.0e-6,H=6.0,g=9.807; double fv1(double x1,double x2)

{ double c1,c2,c3,v;

c1=L1/d1;

c2=L2/d2*pow(d1/d2,4);

c3=Ce+pow(1-pow(d1/d2,2),2)+pow(d1/d2,4);

v=sqrt(2*g*H/(c1*x1+c2*x2+c3));

return v;

}

double fv2(double x1,double x2)

{ double c1,c2,c3,v;

c1=L1/d1*pow(d2/d1,4);

c2=L2/d2;

c3=Ce*pow(d2/d1,4)+pow(1-pow(d2/d1,2),2)+1;

v=sqrt(2*g*H/(c1*x1+c2*x2+c3));

return v;

}

double fld(double k,double Re)

{ double ld;

ld=0.0055*(1+pow(20000*k+1.0E6/Re,1/3.0));

return ld;

}

double fRe(double v,double d)

{ double Re;

Re=v*d/V;

return Re;

}

double fe(double x1,double x2)

{ double e;

e=fabs((x1-x2)/x2);

return e;

}

void main()

{ double k1,k2;

double ld11=0,ld12=0,ld21=0,ld22=0,v11=0,v12=0,v21=0,v22=0,Re1=0,Re2=0, e1=0,e2=0,ld1=0,ld2=0,V1=0,V2=0,Q=0;

int n=1;

k1=K1/d1;

k2=K2/d2;

FOMA T1

FOMA T2

v11=fv1(ld11,ld21);

Re1=fRe(v11,d1);

ld12=fld(k1,Re1);

v21=fv2(ld12,ld21);

Re2=fRe(v21,d2);

ld22=fld(k2,Re2);

e1=fe(ld11,ld12);

e2=fe(ld21,ld22);

while((e1>=0.001)||(e2>=0.001))

{ ld11=ld12;

ld21=ld22;

v11=fv1(ld11,ld21);

Re1=fRe(v11,d1);

ld12=fld(k1,Re1);

v21=fv2(ld12,ld21);

Re2=fRe(v21,d2);

ld22=fld(k2,Re2);

e1=fe(ld11,ld12);

e2=fe(ld21,ld22);

n=n+1;

}

ld1=ld12;

ld2=ld22;

V1=fv1(ld1,ld2);

V2=fv2(ld1,ld2);

Q=V1*PI*pow(d1,2)/4.0;

FOMA T3

FOMA T4

FOMA T5

}

相关文档
最新文档