#include #include #include "surferC.h" #include "gp.h" void writecgd_(double *u, double *v, double *w, double *cc, int *nx, int *ny, int *nz, int *t, int *PPRANK) { int i,j,k,e; int dim; char s[256]; FILE *fptr; int npts[3]; /* Debugging */ /* printf("at beginning of datbfile\n"); */ if(*PPRANK != 0 ) return; e=1; char varname[2]="T"; char * rootname = GP_sfetch("rootname","surfer","WARNING"); double boxL = GP_dfetch("length",1.,"DEFAULT"); double dx = boxL/(*nx-2.); sprintf(s, "%s-%s-%d.cgd",rootname,varname,*t); npts[0]=*nx; npts[1]=*ny; npts[2]=*nz; fptr = fopen(s, "wb"); fprintf(fptr,"3 x y z %d %d %d \n",*nx -2*e,*ny -2*e,*nz-2*e); for(dim=0;dim<3;dim++) { for(i=0;i<(npts[dim]-2*e);i++) { double coord; coord=-boxL/2.0 + dx*0.5 + dx*i; fprintf(fptr,"%g ",coord); } fprintf(fptr,"\n"); } for(i=e;i<*nx-e;i++) for(j=e;j<*ny-e;j++) for(k=e;k<*nz-e;k++) { fprintf(fptr,"%g \n",*(cc + i + j* *nx + k * *nx * *ny)); } fclose(fptr); }