|
|

楼主 |
发表于 2005-4-1 10:04:57
|
显示全部楼层
[求助]能量方程的源项?不知道这样理解对不对?请看看
不对啊,我用两种方法计算的结果相差很大,不知道为什么?
我是这样做的:
第一种:在void user_gamsor()这样设置
{ 。。。
for(j=1;j<=m1;j++)
for(i=1;i<=l1;i++)
gam(i,j)=thercon(i,j)/spe(i,j);//即Г=k/Cp
for (j=2;j<=m2;j++)
for (i=2;i<=l2;i++)
{ con[j]=con[j]/spe(i,j);
ap[j]=ap[j]/spe(i,j);}
。。。
}
然后在user_output()中输出温度t(i,j)
第二种方法
在void user_gamsor()这样设置
{ 。。。
for(j=1;j<=m1;j++)
for(i=1;i<=l1;i++)
gam(i,j)=thercon(i,j)/spe(i,j);//即Г=k/Cp,不变
for (j=2;j<=m2;j++)
for (i=2;i<=l2;i++)
{ con[j]=con[j]; //不除以spe(i,j)
ap[j]=ap[j];}
。。。
}
在user_output()中这样设置
{for(i = 2; i <= l2; i ++)
for(j =2; j <= m2; j ++)
t(i,j) = t(i,j)/ spe(i,j); //spe(i,j)是各点Cp值。
}
这两种方法算出的温度相差很大,第一种最高温度有1100度,第二种最高温度才300度。更实际结果相比,第二种相差太大,当然第一种结果也有问题。这其中我用了附加源项法处理了第二和三类边界条件,不知道这个有没有影响??
急问为什么啊??哪错了?? |
|