⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 global.h

📁 这是一个用SIMPLE法模拟的矩形流场的程序
💻 H
字号:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#define maxnum 100
//定义φ变量
#define u(i,j)    (f[i][j][1])                 //u(i,j)        x方向的速度u(假定初值及修正值);
#define v(i,j)    (f[i][j][2])                 //u(i,j)        y方向的速度v;
#define dp(i,j)   (f[i][j][3])                 //dp(i,j)       压力修正 p'
#define tem(i,j)   (f[i][j][4])                //tem(i,j)      温度
#define u0(i,j)    (f0[i][j][1])                 //u0(i,j)        x方向的速度u(当前时刻初始值);
#define v0(i,j)    (f0[i][j][2])                 //u0(i,j)        y方向的速度v;
#define tem0(i,j)  (f0[i][j][3])                 //tem0(i,j)       温度初始值

void mesh();		//划分网格
void acf();			//计算A(P)
void bound();		//边界条件
void init();		//初始条件
void simple();		//simple算法
void solve();		//解方程组
void output();		//输出
void temperature();			//求解温度场

int i;				
int j;
int n;				//标定不同变量的下标

//用户设置参数
double x;			//x方向长度
double y;			//y方向长度
int l;				//x方向压力节点数
int m;				//y方向压力节点数
double dx;			//空间步长
double dy;
double xp[maxnum];	//x方向压力节点坐标
double yp[maxnum];  //y方向压力节点坐标
double xu[maxnum];
double yu[maxnum];
double xv[maxnum];
double yv[maxnum];
double dt;			//时间步长
int inlen;			//入口网格数
int inlen1;
int inlen2;
int outlen;			//出口网格数
int outlen1;
int outlen2;
int outlen3;
double tin1,tin2;
double t;			//流动时间
int time;		//迭代次数

//物性参数
double den;			//密度
double dif[5];			//扩散系数 dif[1]粘性系数,dif[4]温度系数
double temd;		//温度扩散系数
double p[maxnum][maxnum];//压力
double f[maxnum][maxnum][10];//计算后求得的变量的值
double f0[maxnum][maxnum][10];//当前时刻变量的值
double vin;			//入口速度
double vin1;
double vin2;
double vout;		//出口速度
double factor;		//确定出口速度的系数f
double flowin;		//入口质量流量
double relaxp;		//p松弛因子
double relax;		//方程组松弛因子

//方程求解参数
double flow;		//对流通量F
double d;			//扩散通量D
double adf;			//A(P)
double ae[maxnum][maxnum][10];//离散方程系数
double aw[maxnum][maxnum][10];
double an[maxnum][maxnum][10];
double as[maxnum][maxnum][10];
double ap[maxnum][maxnum][10];
double ap0[maxnum][maxnum][10];
double b[maxnum][maxnum][10];
double remain;
double dv;			//v校正	
double du;			//u校正
int ist;			//x方向第一个求解节点
int jst;			//y方向第一个求解节点
double minp;		//压力最小值

FILE * filehandle1;
FILE * filehandle2;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -