diff --git a/MDD/mdd.c b/MDD/mdd.c index 760e7596e25052bfe60af4f711a25e0d38910140..5da9828e8b6ab9b05b834a3cf8fa47dc10351749 100644 --- a/MDD/mdd.c +++ b/MDD/mdd.c @@ -431,7 +431,7 @@ int main (int argc, char **argv) hdr[0].ntr = nstationA*nstationB; if (!one_file) { strcpy(filename, file_out); - sprintf(number,"Station%03ld\0",jstation+1); + sprintf(number,"Station%03ld",jstation+1); name_ext(filename, number); if (verbose>3) fprintf(stderr,"writing to file %s\n", filename); fpout = fopen( filename, "w+" ); diff --git a/fdacrtmc/fdacrtmc.c b/fdacrtmc/fdacrtmc.c index a574c917568da8f47508c2b5f3726f57b2448662..6d7a087b1ce43dd9640110aca0594023b4543288 100644 --- a/fdacrtmc/fdacrtmc.c +++ b/fdacrtmc/fdacrtmc.c @@ -35,6 +35,7 @@ int PlaneWaveDecompositionUpDownRTMImagingCondition(migPar *mig, fftPlansPar *ff int initializeFFTwPlans(fftPlansPar* fftPlans); int CreateUDPlaneWaveImagingFFTPlans(fftPlansPar *fftPlans,size_t nt,size_t nz); int Create1DWavenumberTransformPlans(fftPlansPar *fftPlans,size_t nx,size_t nz); +int Create2DWavenumberTransformPlan(fftPlansPar *fftPlans,size_t nz,size_t nx); int destroyFFTwPlans(fftPlansPar* fftPlans); int deallocateCompressionField(); diff --git a/fdacrtmc/getParameters.c b/fdacrtmc/getParameters.c index 514e509b6a624b79a76dd652bc6ffb03111be1e6..62bff0882b082265c9b71c5acaf098517c57b669 100644 --- a/fdacrtmc/getParameters.c +++ b/fdacrtmc/getParameters.c @@ -3,6 +3,7 @@ #include<stdbool.h> #include<math.h> #include<float.h> +#include<time.h> #include"fdacrtmc.h" #include"par.h" @@ -17,6 +18,8 @@ int prepareFDOperators(modPar *mod, bndPar *bnd, decompPar *decomp); int setWisdomPath(char *path); void printWisdomPath(); int initFFTW(void); +int initPML(modPar *mod, bndPar *bnd, int verbose); +int readRcvCoordinates(modPar *mod, srcPar *rcv, recPar *rec, int verbose); int initializeCompressionField(migPar *mig); @@ -307,7 +310,7 @@ int getParameters(modPar *mod, srcPar *src, srcPar *rcv, bndPar *bnd, snaPar *sn if(rec->rec)createRcvCoordinates(mod,rcv,rec,*verbose); // From File - if(rec->file_loc){readRcvCoordinates(mod,rcv,rec,verbose);rec->rec=1;} + if(rec->file_loc){readRcvCoordinates(mod,rcv,rec,*verbose);rec->rec=1;} /*******************************/ /* Read Temporal Sampling Rate */ @@ -646,7 +649,7 @@ if(!getparint("mig_mm",&tmpint))tmpint=0;if(tmpint)mig->mm=true;else mig->mm=fal /******************/ /* Initialize PML */ /******************/ - if(bnd->pml) initPML(mod,bnd); + if(bnd->pml) initPML(mod,bnd,*verbose); /**********************************/ /* Dispersion & Stability Factors */ diff --git a/fdacrtmc/mvingAvg.c b/fdacrtmc/mvingAvg.c index 0d04fa8ae684736a8af860c0549207ff8c8d172d..44cbb651f35c14bb25dbbc2a206d3052bcbf05c5 100644 --- a/fdacrtmc/mvingAvg.c +++ b/fdacrtmc/mvingAvg.c @@ -847,7 +847,7 @@ int mvAvg2d9Sgn(size_t n1, size_t n2, float* in, float* out){ * Delft University of Technology * 21.11.2017 */ - float sum[7]; + float sum[9]; size_t i1,i2,j; for(i2=0;i2<n2;i2++)out[ i2]=in[ i2]; //Copy Data @@ -912,7 +912,7 @@ int mvAvg2d9Sgn(size_t n1, size_t n2, float* in, float* out){ out[i1*n2+i2]=copysignf(in[i1*n2+i2],sum[0]+sum[1]+sum[2]+sum[3]+sum[4]+sum[5]+sum[6]+sum[7]+sum[8]);i2++; }else continue; if(i2<n2-4){ - sum[6]==in[(i1-4)*n2+i2+4]+in[(i1-3)*n2+i2+4]+in[(i1-2)*n2+i2+4]+in[(i1-1)*n2+i2+4]+in[i1*n2+i2+4]+in[(i1+1)*n2+i2+4]+in[(i1+2)*n2+i2+4]+in[(i1+3)*n2+i2+4]+in[(i1+4)*n2+i2+4]; + sum[6]=in[(i1-4)*n2+i2+4]+in[(i1-3)*n2+i2+4]+in[(i1-2)*n2+i2+4]+in[(i1-1)*n2+i2+4]+in[i1*n2+i2+4]+in[(i1+1)*n2+i2+4]+in[(i1+2)*n2+i2+4]+in[(i1+3)*n2+i2+4]+in[(i1+4)*n2+i2+4]; out[i1*n2+i2]=copysignf(in[i1*n2+i2],sum[0]+sum[1]+sum[2]+sum[3]+sum[4]+sum[5]+sum[6]+sum[7]+sum[8]);i2++; } out[(i1+1)*n2-4]=in[(i1+1)*n2-4];out[(i1+1)*n2-3]=in[(i1+1)*n2-3];out[(i1+1)*n2-2]=in[(i1+1)*n2-2];out[(i1+1)*n2-1]=in[(i1+1)*n2-1]; diff --git a/fdacrtmc/prepareFDOperators.c b/fdacrtmc/prepareFDOperators.c index 510c69b1d5253cc051202087e9fc5ac6f98c2aae..803474461be7d9eb84fa2874c4cfdee83db3c544 100644 --- a/fdacrtmc/prepareFDOperators.c +++ b/fdacrtmc/prepareFDOperators.c @@ -11,6 +11,11 @@ int mvAvg2d9EmbdSgn(size_t n2, float* in, float* out, size_t s1, size_t s2, size int readModelData( modPar *mod,char *filename,float *data); int writeModelData(modPar *mod,char* filename,float *data); int writesufile(char *filename, float *data, size_t n1, size_t n2, float f1, float f2, float d1, float d2); +void vwarn(char *fmt, ...); +int mvAvg2d3(size_t n1, size_t n2, float* in, float* out); +int mvAvg2d5(size_t n1, size_t n2, float* in, float* out); +int mvAvg2d7(size_t n1, size_t n2, float* in, float* out); +int mvAvg2d9(size_t n1, size_t n2, float* in, float* out); int prepareFDOperators(modPar *mod, bndPar *bnd, decompPar *decomp){ float cp2, cs2, cs11, cs12, cs21, cs22, mul, mu, lamda2mu, lamda; diff --git a/fdacrtmc/readRcvCoordinates.c b/fdacrtmc/readRcvCoordinates.c index 8db9471bf4ac86205d062dee2d733b86e9021393..4117e6c482ee7865d0cf07d3e1b4ffaf240238a1 100644 --- a/fdacrtmc/readRcvCoordinates.c +++ b/fdacrtmc/readRcvCoordinates.c @@ -195,7 +195,7 @@ int readRcvCoordinates(modPar *mod, srcPar *rcv, recPar *rec, int verbose){ zTMP[i] =rcv->z[j]; j++; }else if(rcv->ind[j]>arr[k].loc){ - if(arr[k].ind=(size_t)-1){k++;continue;} //Skip this value! + if(arr[k].ind==(size_t)-1){k++;continue;} //Skip this value! locTMP[i] =arr[k].loc; xiTMP[i] =xi[arr[k].ind]; ziTMP[i] =zi[arr[k].ind]; @@ -215,7 +215,7 @@ int readRcvCoordinates(modPar *mod, srcPar *rcv, recPar *rec, int verbose){ zTMP[i] =rcv->z[j]; j++; }else if((rcv->typ[j]-1)*8+rcv->orient[j]<arr[k].typ){ - if(arr[k].ind=(size_t)-1){k++;continue;} //Skip this value! + if(arr[k].ind==(size_t)-1){k++;continue;} //Skip this value! locTMP[i] =arr[k].loc; xiTMP[i] =xi[arr[k].ind]; ziTMP[i] =zi[arr[k].ind]; diff --git a/fdelmodc3D/alloc3D.c b/fdelmodc3D/alloc3D.c index cda6c8dc5874b4c158f9981295ed733e754593ba..34dae60410e33460ba07ef1200938a71b59d5c9d 100644 --- a/fdelmodc3D/alloc3D.c +++ b/fdelmodc3D/alloc3D.c @@ -37,7 +37,7 @@ void ***alloc3float(modPar mod) } } else if (mod.nfy==1) { // 2D model - fprintf(stderr,"Allocating 2D model ny=%d with nx=%d and nz=%d\n",n3,n2,n1); + fprintf(stderr,"Allocating 2D model ny=%ld with nx=%ld and nz=%ld\n",n3,n2,n1); if ((p[0][0]=(void*)malloc(n2*n1*size))==NULL) { free(p); return NULL; diff --git a/marchenko3D/fmute3D.c b/marchenko3D/fmute3D.c index 79fbe1cb277ab861259ae44d817a9b1255d6f8f2..56152cf9098553d6db33077e67b9011624cb10d3 100644 --- a/marchenko3D/fmute3D.c +++ b/marchenko3D/fmute3D.c @@ -114,8 +114,7 @@ int main (int argc, char **argv) tmpdata = (float *)malloc(size*sizeof(float)); hdrs_in1 = (segy *)calloc(nxmax*nymax,sizeof(segy)); - nx1,ny1 = readData3D(fp_in1, tmpdata, hdrs_in1, nt1); - nxy = nx1*ny1; + nxy = readData3D(fp_in1, tmpdata, hdrs_in1, nt1); if (nxy == 0) { fclose(fp_in1); if (verbose) vmess("end of file_mute data reached"); @@ -143,8 +142,7 @@ int main (int argc, char **argv) else fp_in2=stdin; if (fp_in2 == NULL) verr("error on opening input file_shot=%s", file_shot); - nx2,ny2 = readData3D(fp_in2, tmpdata2, hdrs_in2, nt2); - nxy = nx2*ny2; + nxy = readData3D(fp_in2, tmpdata2, hdrs_in2, nt2); if (nxy == 0) { fclose(fp_in2); if (verbose) vmess("end of file_shot data reached"); @@ -452,8 +450,7 @@ int main (int argc, char **argv) /*================ Read next record for muting ================*/ if (file_mute != NULL) { - nx1, ny1 = readData3D(fp_in1, tmpdata, hdrs_in1, nt1); - nxy = nx1*ny1; + nxy = readData3D(fp_in1, tmpdata, hdrs_in1, nt1); if (nxy == 0) { fclose(fp_in1); if (verbose) vmess("end of file_mute data reached"); @@ -477,8 +474,7 @@ int main (int argc, char **argv) /*================ Read next shot record(s) ================*/ - nx2,ny2 = readData3D(fp_in2, tmpdata2, hdrs_in2, nt2); - nxy = nx2*ny2; + nxy = readData3D(fp_in2, tmpdata2, hdrs_in2, nt2); if (nxy == 0) { if (verbose) vmess("end of file_shot data reached"); fclose(fp_in2); diff --git a/marchenko3D/readData3D.c b/marchenko3D/readData3D.c index 45e827af1fe05806c10cd81d71b7aa6cff5d42b7..bd64d333bcf1bf2db0291eddc82db504046dc7fb 100644 --- a/marchenko3D/readData3D.c +++ b/marchenko3D/readData3D.c @@ -50,5 +50,5 @@ long readData3D(FILE *fp, float *data, segy *hdrs, long n1) } nx = itrace/ny; - return nx, ny; + return nx*ny; } diff --git a/utils/snap2shot.c b/utils/snap2shot.c index 18d01081e78b195ff76f541648559d1fbf75be01..227a5762a58e89f7aab7e721618f76348e670c88 100644 --- a/utils/snap2shot.c +++ b/utils/snap2shot.c @@ -63,7 +63,7 @@ int main (int argc, char **argv) long nxs, nys, nzs, nts, ntrs, ret, file_det; long it, ix, iy, iz, ixr, nxr, dnumb, numb, pos, nxmax; long nzstart, nzend, dnz; - int *sx, *sy; + int *sx, *sy, pf; segy *hdr_snap, *hdr_rcv; initargs(argc, argv); @@ -85,7 +85,8 @@ int main (int argc, char **argv) ptr = strstr(file_snap,numb1); pos = ptr - file_snap + 1; - sprintf(fbegin,"%*.*s", pos-1, pos-1, file_snap); + pf = pos-1; + sprintf(fbegin,"%*.*s", pf, pf, file_snap); sprintf(fend,"%s", file_snap+pos); file_det = 1;