传热学上机程序求解答:矩形薄板,分为8行6列,顶部边界温度200,其余50,编程计算节点温度并打印结果.程序如下,但是最后结果是不收敛,求高手解答问题出在哪里.#include#includeusing namespace std;int

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/26 02:29:05
传热学上机程序求解答:矩形薄板,分为8行6列,顶部边界温度200,其余50,编程计算节点温度并打印结果.程序如下,但是最后结果是不收敛,求高手解答问题出在哪里.#include#includeusin

传热学上机程序求解答:矩形薄板,分为8行6列,顶部边界温度200,其余50,编程计算节点温度并打印结果.程序如下,但是最后结果是不收敛,求高手解答问题出在哪里.#include#includeusing namespace std;int
传热学上机程序求解答:矩形薄板,分为8行6列,顶部边界温度200,其余50,编程计算节点温度并打印结果.
程序如下,但是最后结果是不收敛,求高手解答问题出在哪里.
#include
#include
using namespace std;
int main()
{
int K=100,i,j,it=20.0,m=0,c=8,d=6;//行列数
float TTB=200.0,TRB=50.0,TLB=50.0,TBB=50.0;//边界参数
double EPS,X=1.0;
float a[8][6],b[8][6];
for(i=0;i<8;i++)
for(j=0;j<6;j++)
a[i][j]=20.0;
while(X>0.01)
{
m++;
for(i=0;i<=c;i++)
{
for(j=0;j<=d;j++)
{
b[i][j]=a[i][j];
if(i==0&&0<=j&&j<=d)
a[i][j]=200;//左边界
else if(0 a[i][j]=50;
//下边界
else if(i==c&&0 a[i][j]=50;
else if(0 a[i][j]=50;
else
a[i][j]=(a[i][j+1]+a[i][j-1]+a[i-1][j]+a[i+1][j])/4.0;
}
}
for(i=0;i<=c;i++)
{
for(j=0;j<=d;j++)
{
EPS=fabs(b[i][j]-a[i][j]);
if(EPS>X) X=EPS;
}
}
if(m>1000)
break;
}
if(m>1000)
{cout<<"不收敛!"< else
{cout<<"\n收敛\n\n循环次数:m="< for(i=0;i<8;i++)
{
for(j=0;j<6;j++)
{cout<
}
}
return 0;
}

传热学上机程序求解答:矩形薄板,分为8行6列,顶部边界温度200,其余50,编程计算节点温度并打印结果.程序如下,但是最后结果是不收敛,求高手解答问题出在哪里.#include#includeusing namespace std;int
建议问老师