📄 zhuigan.cpp
字号:
#include <windows.h>
#include <glut.h>
//#include <gl.h>
#include <math.h>
#include<stdio.h>
#include<stdlib.h>
#define n 100
#define n_space 200
double x[n_space];
double x_go=0.0f;
double y_go=0.0f;
GLsizei rsize =1;
GLfloat windowWidth;
GLfloat windowHeight;
void compute()
{
int i,p;
double h=10,k=30,md=7300,cp=800,t0=1000,tw=0,tsp=300000,le=0.1;
double a=tsp/n/(le*le/n_space/n_space)*k/md/cp;
double b=le/n_space*h/k;
double v=b*tw;//==0
double w=2*a+1;
double mat[n_space][3]={0};
mat[0][1]=1+b;
mat[0][2]=-1;
mat[n_space-1][0]=-1;
mat[n_space-1][1]=1+b;
for(i=1;i<n_space-1;i++)
{
mat[i][0]=-a;
mat[i][2]=-a;
mat[i][1]=w;
}
mat[0][2]= mat[0][2]/mat[0][1];
for(i=1;i<n_space;i++)
{
mat[i][1]= mat[i][1]-mat[i][0]*mat[i-1][2];
mat[i][2]=mat[i][2]/mat[i][1];
}
for(i=1;i<n_space-1;i++)
{
x[i]=t0;
}
//开始计算时间步for(i=0;i<=n2;i++)
for(i=0;i<n;i++)
{ x[0]=v; x[n_space-1]=v;
x[0]=x[0]/mat[0][1];
for(p=1;p<n_space;p++)
{
x[p]=(x[p]-mat[p][0]*x[p-1])/mat[p][1];
}
p=p-2;
for(;p>=0;p--)
{
x[p]=x[p]-mat[p][2]*x[p+1];
}
}
for(i=0;i<n_space;i++)
{ if((i+1)%5==0)
printf("\n");
printf("%f ",x[i]);
}
printf("\n");
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -