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

📄 write_avs_field_file.c

📁 一个关于LB的经典程序。希望大家有好的东东就那出来
💻 C
字号:
#include "global.h"#include "defines.h"void write_avs_field_file(int t){	int 	x,y;	char 	name[200], RE[10],dummy=(char)12;	int 	Re;	float 	u,v,w=0.0,rho,			min_xx=0.0,			max_xx=(float)max_x, 			min_yy=0.0,			max_yy=(float)max_y, 			min_zz=0.0,			max_zz=1.0;	FILE *fp=NULL;		/* Reynolds number ? */	Re=(int)((max_y-1)*u_0/((2.0*tau-1.0)/6.0)+0.5);		strcpy(name,"DC.");	sprintf(RE,"%d",Re);	strcat(name,RE);	strcat(name,".");	sprintf(RE,"%d",t);	strcat(name,RE);	strcat(name,".fld");		fp = fopen(name,"w");	if (fp==(FILE*)NULL)	{		printf("error opening %s\n",name);		exit(0);	}	fprintf(fp,"# AVS field file\n");	fprintf(fp,"#\n");	fprintf(fp,"ndim=2\n");	fprintf(fp,"dim1=%d\n",max_x);	fprintf(fp,"dim2=%d\n",max_y);	fprintf(fp,"nspace=2\n");	fprintf(fp,"veclen=3\n");	fprintf(fp,"data=float\n");	fprintf(fp,"field=uniform\n");	fprintf(fp,"min_ext=%f %f\n",min_xx,min_yy);	fprintf(fp,"max_ext=%f %f\n",max_xx,max_yy);	putc(dummy,fp);	putc(dummy,fp);	for(y=0;y<max_y;y++)	{		for(x=0;x<max_x;x++)		{			rho=(float)(f[1][y][x]+f[2][y][x]+f[3][y][x]+f[4][y][x]+f[5][y][x]+f[6][y][x]+f[7][y][x]+f[8][y][x]+f[0][y][x]);			u=(float)(faktor*((f[1][y][x]-f[3][y][x]+f[5][y][x]+f[8][y][x]-f[6][y][x]-f[7][y][x])/rho));			v=(float)(faktor*((f[2][y][x]-f[4][y][x]+f[5][y][x]+f[6][y][x]-f[7][y][x]-f[8][y][x])/rho));			fwrite(&u,sizeof(float),1,fp);			fwrite(&v,sizeof(float),1,fp);						rho=(float)((rho-rho_0)/3.0);			fwrite(&rho,sizeof(float),1,fp);		}	}	fwrite(&min_xx,sizeof(float),1,fp);	fwrite(&max_xx,sizeof(float),1,fp);	fwrite(&min_yy,sizeof(float),1,fp);	fwrite(&max_yy,sizeof(float),1,fp);	fclose(fp);		printf("wrote %s\n",name);}

⌨️ 快捷键说明

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