📄 output.h
字号:
float **ArrayCopy(float **sA,int DimensionX,int DimensionY)
{
float **p;
p=(float **)malloc(DimensionX*sizeof(float *));
for(int i=0;i<DimensionX;i++)
{
p[i]=(float *)malloc(DimensionY*sizeof(float));
memcpy(p[i],sA[i],DimensionY*sizeof(float));
}
printf("%f %f\n",sA[100][100],p[100][100]);
return p;
}
void WriteToGrd(float **temp,int x,int y,char *file)
{
FILE *fp1;
char filename[256];
sprintf(filename,"%s/%s.grd",myDirectory,file);
if((fp1=fopen(filename,"w"))==NULL)
{
printf("Can't open file %s",filename);
return;
}
fprintf(fp1,"DSAA\n");
fprintf(fp1,"%d %d\n",x,y);
fprintf(fp1,"%d %d\n",0,x-1);
fprintf(fp1,"%d %d\n",0,y-1);
fprintf(fp1,"%d %d\n",-1000,1000);
for(int j=(y-1);j>=0;j--)
{
for(int i=0;i<x;i++)
{
fprintf(fp1," %f",1.0*temp[i][j]);
}
fprintf(fp1,"\n");
}
fclose(fp1);
}
float **ReadFromGrd(int& x,int& y,char *file1)
{
FILE *fp1;
float **temp;
char *tstr;
int ti1,ti2,tj1,tj2,tk1,tk2;
if((fp1=fopen(file1,"r"))==NULL)
{
printf("Can't open file %s",file1);
return NULL;
}
fscanf(fp1,"%s",tstr);
fscanf(fp1,"%d %d",&x,&y);
temp=DefineArray(x,y);
fscanf(fp1,"%d %d",&ti1,&ti2);
fscanf(fp1,"%d %d",&tj1,&tj2);
fscanf(fp1,"%d %d",&tk1,&tk2);
for(int i=0;i<x;i++)
{
for(int j=0;j<y;j++)
{
fscanf(fp1," %f",&temp[i][j]);
}
}
fclose(fp1);
return temp;
}
//---------------------------------------------------
void ImaginaryRealCompute(float **t1,float **t2,int x,int y,char *f1,char *f2)
{
FILE *fp1,*fp2;
char filename1[256],filename2[256];
sprintf(filename1,"%s/%s.grd",myDirectory,f1);
sprintf(filename2,"%s/%s.grd",myDirectory,f2);
if((fp1=fopen(filename1,"w"))==NULL)
{
printf("Can't open file %s",filename1);
return;
}
fprintf(fp1,"DSAA\n");
fprintf(fp1,"%d %d\n",x,y);
fprintf(fp1,"%d %d\n",0,x-1);
fprintf(fp1,"%d %d\n",0,y-1);
fprintf(fp1,"%d %d\n",-1000,1000);
if((fp2=fopen(filename2,"w"))==NULL)
{
printf("Can't open file %s",filename2);
return;
}
fprintf(fp2,"DSAA\n");
fprintf(fp2,"%d %d\n",x,y);
fprintf(fp2,"%d %d\n",0,x-1);
fprintf(fp2,"%d %d\n",0,y-1);
fprintf(fp2,"%d %d\n",-3.5,3.5);
for(int i=0;i<x;i++)
{
for(int j=0;j<y;j++)
{
fprintf(fp1," %f",sqrt(t1[i][j]*t1[i][j]+t2[i][j]*t2[i][j]));
fprintf(fp2," %f",atan2(t1[i][j],t2[i][j]));
}
fprintf(fp1,"\n");
fprintf(fp2,"\n");
}
fclose(fp1);
fclose(fp2);
FreeArray(t1,x);
}
//-----------------------------------------
void outputEHn(char* file1,char myDirectory[])
{
FILE *fp1;
int i,j,k;
float t;
char filename[256];
sprintf(filename,"%s/%s",myDirectory,file1);
if((fp1=fopen(file1,"w"))==NULL)
{
printf("Can't open file %s",filename);
return;
}
for(i=IoMin;i<=IoMax;i++)
{
fprintf(fp1," %f",0.5*(Ez[i][JoMin]+Ez[i][JoMin-1]));
fprintf(fp1," %f",Hx[i][JoMin-1]);
fprintf(fp1," %f",0.5*(Ez[i][JoMax]+Ez[i][JoMax+1]));
fprintf(fp1," %f",Hx[i][JoMax]);
}
fprintf(fp1,"\n");
for(j=JoMin;j<=JoMax;j++)
{
fprintf(fp1," %f",0.5*(Ez[IoMax][j]+Ez[IoMax+1][j]));
fprintf(fp1," %f",Hy[IoMax][j]);
fprintf(fp1," %f",0.5*(Ez[IoMin][j]+Ez[IoMin-1][j]));
fprintf(fp1," %f",Hy[IoMin-1][j]);
}
fprintf(fp1,"\n");
fclose(fp1);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -