From 1e95911b8a77934d44fc6d2d88b5e4a143f5a7d8 Mon Sep 17 00:00:00 2001 From: JanThorbecke <janth@xs4all.nl> Date: Thu, 11 Jul 2019 10:17:25 +0200 Subject: [PATCH] port to OSX clang with MKL --- MDD/computeMatrixInverse.c | 2 +- MDD/mdd.c | 2 +- MDD/readShotData.c | 2 +- Makefile | 22 +-- corrvir/corrvir.c | 4 +- fdelmodc/getWaveletHeaders.c | 4 +- fdelmodc3D/alloc3D.c | 2 +- fdelmodc3D/getBeamTimes3D.c | 4 +- fdelmodc3D/getParameters3D.c | 6 +- fdelmodc3D/getWaveletHeaders3D.c | 6 +- fdelmodc3D/writeRec3D.c | 2 +- fdelrtmc/fdelrtmc.h | 2 +- marchenko/readShotData.c | 4 +- marchenko/readTinvData.c | 4 +- marchenko3D/fmute3D.c | 4 +- marchenko3D/getFileInfo3D.c | 245 +------------------------------ marchenko3D/homogeneousg3D.c | 3 +- marchenko3D/readData3D.c | 2 +- marchenko3D/readShotData3D.c | 6 +- marchenko3D/readTinvData3D.c | 4 +- raytime/getWaveletHeaders.c | 4 +- utils/getFileInfo.c | 4 +- utils/getFileInfo3D.c | 6 +- utils/kxwfilter.c | 2 +- utils/snap2shot.c | 6 +- utils/syn2d.c | 8 +- 26 files changed, 61 insertions(+), 299 deletions(-) mode change 100644 => 120000 marchenko3D/getFileInfo3D.c diff --git a/MDD/computeMatrixInverse.c b/MDD/computeMatrixInverse.c index a4ba57f..fd4eee6 100644 --- a/MDD/computeMatrixInverse.c +++ b/MDD/computeMatrixInverse.c @@ -335,7 +335,7 @@ void computeMatrixInverse(complex *matrix, int nxm, int rthm, float eps_a, float S0 = S[0]; neig = 0; for (i=0; i<N; i++) { - if (verbose=4) fprintf(stderr,"S[%d] = %e ",i,S[i]); + if (verbose==4) fprintf(stderr,"S[%d] = %e ",i,S[i]); Si = S[i]; if ((Si/S0) > numacc) { S[i]=1.0/S[i]; neig++; } else S[i] = 0.0; diff --git a/MDD/mdd.c b/MDD/mdd.c index cf19175..760e759 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%03d\0",jstation+1); + sprintf(number,"Station%03ld\0",jstation+1); name_ext(filename, number); if (verbose>3) fprintf(stderr,"writing to file %s\n", filename); fpout = fopen( filename, "w+" ); diff --git a/MDD/readShotData.c b/MDD/readShotData.c index 20f953e..a6205bf 100644 --- a/MDD/readShotData.c +++ b/MDD/readShotData.c @@ -42,7 +42,7 @@ int readShotData(char *filename, float xmin, float dx, float *xrcv, float *xsrc, fseek(fp, 0, SEEK_SET); nread = fread( &hdr, 1, TRCBYTES, fp ); assert(nread == TRCBYTES); - if (hdr.scalco < 0) scl = 1.0/fabs(hdr.scalco); + if (hdr.scalco < 0) scl = 1.0/fabs((float)hdr.scalco); else if (hdr.scalco == 0) scl = 1.0; else scl = hdr.scalco; fseek(fp, 0, SEEK_SET); diff --git a/Makefile b/Makefile index 209ae99..477383c 100644 --- a/Makefile +++ b/Makefile @@ -3,14 +3,16 @@ all: mkdirs cd FFTlib ; $(MAKE) cd fdelmodc ; $(MAKE) install - cd fdelmodc3D ; $(MAKE) install + cd fdelmodc3D ; $(MAKE) install cd utils ; $(MAKE) install - cd marchenko ; $(MAKE) install - cd marchenko3D ; $(MAKE) install + cd marchenko ; $(MAKE) install + cd marchenko3D ; $(MAKE) install cd corrvir ; $(MAKE) install cd raytime ; $(MAKE) install cd MDD ; $(MAKE) install +# cd fdelrtmc ; $(MAKE) install + mkdirs: -mkdir -p lib -mkdir -p include @@ -19,10 +21,11 @@ mkdirs: clean: cd FFTlib ; $(MAKE) $@ cd fdelmodc ; $(MAKE) $@ - cd fdelmodc3D ; $(MAKE) $@ + cd fdelmodc3D ; $(MAKE) $@ + cd fdelrtmc ; $(MAKE) $@ cd utils ; $(MAKE) $@ - cd marchenko ; $(MAKE) $@ - cd marchenko3D ; $(MAKE) $@ + cd marchenko ; $(MAKE) $@ + cd marchenko3D ; $(MAKE) $@ cd corrvir ; $(MAKE) $@ cd raytime ; $(MAKE) $@ cd MDD ; $(MAKE) $@ @@ -30,10 +33,11 @@ clean: realclean: cd FFTlib ; $(MAKE) $@ cd fdelmodc ; $(MAKE) $@ - cd fdelmodc3D ; $(MAKE) $@ + cd fdelmodc3D ; $(MAKE) $@ + cd fdelrtmc ; $(MAKE) $@ cd utils ; $(MAKE) $@ - cd marchenko ; $(MAKE) $@ - cd marchenko3D ; $(MAKE) $@ + cd marchenko ; $(MAKE) $@ + cd marchenko3D ; $(MAKE) $@ cd corrvir ; $(MAKE) $@ cd raytime ; $(MAKE) $@ cd MDD ; $(MAKE) $@ diff --git a/corrvir/corrvir.c b/corrvir/corrvir.c index 2a17e98..94b5137 100644 --- a/corrvir/corrvir.c +++ b/corrvir/corrvir.c @@ -203,7 +203,7 @@ int main (int argc, char **argv) if (nbm==0) { /* read only headers */ nbufmax = 0; for (i=0; i<ntrace; i++) { - if(i % 100000 == 0) fprintf(stderr,"i=%d out of %d\n", i, ntrace); + if(i % 100000 == 0) fprintf(stderr,"i=%d out of %ld\n", i, ntrace); offset = i*trace_sz; ret = fseeko(fpin , offset, SEEK_SET); if (ret<0) perror("fseeko"); @@ -222,7 +222,7 @@ int main (int argc, char **argv) r = (float *)calloc(ntfft,sizeof(float)); c = (complex *)calloc((nf),sizeof(complex)); for (i=0; i<ntrace; i++) { - if(i % 100000 == 0) fprintf(stderr,"i=%d out of %d\n", i, ntrace); + if(i % 100000 == 0) fprintf(stderr,"i=%d out of %ld\n", i, ntrace); offset = i*trace_sz; ret = fseeko(fpin , offset, SEEK_SET); if (ret<0) perror("fseeko"); diff --git a/fdelmodc/getWaveletHeaders.c b/fdelmodc/getWaveletHeaders.c index 5bff375..31799c4 100644 --- a/fdelmodc/getWaveletHeaders.c +++ b/fdelmodc/getWaveletHeaders.c @@ -28,10 +28,10 @@ int getWaveletHeaders(char *file_src, int n1, int n2, float *gx, float *sx, floa assert( fp != NULL); nread = fread( &hdr, 1, TRCBYTES, fp ); assert(nread == TRCBYTES); - if (hdr.scalco < 0) scl = 1.0/fabs(hdr.scalco); + if (hdr.scalco < 0) scl = 1.0/fabs((float)hdr.scalco); else if (hdr.scalco == 0) scl = 1.0; else scl = hdr.scalco; - if (hdr.scalel < 0) scll = 1.0/fabs(hdr.scalel); + if (hdr.scalel < 0) scll = 1.0/fabs((float)hdr.scalel); else if (hdr.scalel == 0) scll = 1.0; else scll = hdr.scalel; trace_sz = (size_t)sizeof(float)*(n1)+TRCBYTES; diff --git a/fdelmodc3D/alloc3D.c b/fdelmodc3D/alloc3D.c index 139d1b1..cda6c8d 100644 --- a/fdelmodc3D/alloc3D.c +++ b/fdelmodc3D/alloc3D.c @@ -49,7 +49,7 @@ void ***alloc3float(modPar mod) } } else { // 3D model - fprintf(stderr,"Allocating 3D model \n"); + //fprintf(stderr,"Allocating 3D model \n"); if ((p[0][0]=(void*)malloc(n3*n2*n1*size))==NULL) { free(p[0]); free(p); diff --git a/fdelmodc3D/getBeamTimes3D.c b/fdelmodc3D/getBeamTimes3D.c index 3cfbf98..4bd4a22 100644 --- a/fdelmodc3D/getBeamTimes3D.c +++ b/fdelmodc3D/getBeamTimes3D.c @@ -152,7 +152,7 @@ long writeBeams3D(modPar mod, snaPar sna, long ixsrc, long iysrc, long izsrc, strcpy(filename, sna.file_beam); if (fileno) { - sprintf(number,"_%03d",fileno); + sprintf(number,"_%03ld",fileno); name_ext(filename, number); } if (verbose>2) vmess("Writing beam data to file %s", filename); @@ -248,4 +248,4 @@ long writeBeams3D(modPar mod, snaPar sna, long ixsrc, long iysrc, long izsrc, if (sna.type.ss) fclose(fpss); return 0; -} \ No newline at end of file +} diff --git a/fdelmodc3D/getParameters3D.c b/fdelmodc3D/getParameters3D.c index 25b7f22..8683bc5 100644 --- a/fdelmodc3D/getParameters3D.c +++ b/fdelmodc3D/getParameters3D.c @@ -155,7 +155,7 @@ long getParameters3D(modPar *mod, recPar *rec, snaPar *sna, wavPar *wav, srcPar if (!getparlong("ny",&ny)) ny=nx; dy=dx; sub_y0=-0.5*(ny-1)*(dy); - fprintf(stderr,"get param ny=%d dy=%f y0=%f\n", ny, dy, sub_y0); + fprintf(stderr,"get param ny=%ld dy=%f y0=%f\n", ny, dy, sub_y0); } mod->dz = dz; mod->dx = dx; @@ -275,10 +275,10 @@ criteria we have imposed.*/ vmess("*******************************************"); vmess("*************** model info ****************"); vmess("*******************************************"); - if (mod.nfx == 1) { + if (mod->nfx == 1) { vmess(" 1-dimensional model is read from file"); } - else if (mod.nfy == 1) { + else if (mod->nfy == 1) { vmess(" 2-dimensional model is read from file"); } else { diff --git a/fdelmodc3D/getWaveletHeaders3D.c b/fdelmodc3D/getWaveletHeaders3D.c index 3247420..1afe10b 100644 --- a/fdelmodc3D/getWaveletHeaders3D.c +++ b/fdelmodc3D/getWaveletHeaders3D.c @@ -29,10 +29,10 @@ long getWaveletHeaders3D(char *file_src, long n1, long n2, float *gx, float *sx, assert( fp != NULL); nread = fread( &hdr, 1, TRCBYTES, fp ); assert(nread == TRCBYTES); - if (hdr.scalco < 0) scl = 1.0/fabs(hdr.scalco); + if (hdr.scalco < 0) scl = 1.0/fabs((float)hdr.scalco); else if (hdr.scalco == 0) scl = 1.0; else scl = hdr.scalco; - if (hdr.scalel < 0) scll = 1.0/fabs(hdr.scalel); + if (hdr.scalel < 0) scll = 1.0/fabs((float)hdr.scalel); else if (hdr.scalel == 0) scll = 1.0; else scll = hdr.scalel; trace_sz = (size_t)sizeof(float)*(n1)+TRCBYTES; @@ -51,4 +51,4 @@ long getWaveletHeaders3D(char *file_src, long n1, long n2, float *gx, float *sx, } fclose(fp); return 0; -} \ No newline at end of file +} diff --git a/fdelmodc3D/writeRec3D.c b/fdelmodc3D/writeRec3D.c index 35349c2..f2c0bc1 100644 --- a/fdelmodc3D/writeRec3D.c +++ b/fdelmodc3D/writeRec3D.c @@ -65,7 +65,7 @@ long writeRec3D(recPar rec, modPar mod, bndPar bnd, wavPar wav, long ixsrc, long /* fileno has a non-zero value (from fdelmodc.c) if the number of samples exceeds rec_ntsam. */ strcpy(filename, rec.file_rcv); if (fileno) { - sprintf(number,"_%03d",fileno); + sprintf(number,"_%03ld",fileno); name_ext(filename, number); } #ifdef MPI diff --git a/fdelrtmc/fdelrtmc.h b/fdelrtmc/fdelrtmc.h index 3009338..f391b45 100644 --- a/fdelrtmc/fdelrtmc.h +++ b/fdelrtmc/fdelrtmc.h @@ -402,4 +402,4 @@ typedef struct _recPar{ #ifndef WISDOMDIR #define WISDOMDIR "/tmp/fftw/" -#endif \ No newline at end of file +#endif diff --git a/marchenko/readShotData.c b/marchenko/readShotData.c index a619799..80e43fc 100644 --- a/marchenko/readShotData.c +++ b/marchenko/readShotData.c @@ -43,10 +43,10 @@ int nx, int nxs, float fxsb, float dxs, int ntfft, int mode, float scale, float fseek(fp, 0, SEEK_SET); nread = fread( &hdr, 1, TRCBYTES, fp ); assert(nread == TRCBYTES); - if (hdr.scalco < 0) scl = 1.0/fabs(hdr.scalco); + if (hdr.scalco < 0) scl = 1.0/fabs((float)hdr.scalco); else if (hdr.scalco == 0) scl = 1.0; else scl = hdr.scalco; - if (hdr.scalel < 0) scel = 1.0/fabs(hdr.scalel); + if (hdr.scalel < 0) scel = 1.0/fabs((float)hdr.scalel); else if (hdr.scalel == 0) scel = 1.0; else scel = hdr.scalel; diff --git a/marchenko/readTinvData.c b/marchenko/readTinvData.c index 028d4c2..11ef1a4 100644 --- a/marchenko/readTinvData.c +++ b/marchenko/readTinvData.c @@ -45,10 +45,10 @@ int readTinvData(char *filename, float *xrcv, float *xsrc, float *zsrc, int *xnx fseek(fp, 0, SEEK_SET); nread = fread( &hdr, 1, TRCBYTES, fp ); assert(nread == TRCBYTES); - if (hdr.scalco < 0) scl = 1.0/fabs(hdr.scalco); + if (hdr.scalco < 0) scl = 1.0/fabs((float)hdr.scalco); else if (hdr.scalco == 0) scl = 1.0; else scl = hdr.scalco; - if (hdr.scalel < 0) scel = 1.0/fabs(hdr.scalel); + if (hdr.scalel < 0) scel = 1.0/fabs((float)hdr.scalel); else if (hdr.scalel == 0) scel = 1.0; else scel = hdr.scalel; fseek(fp, 0, SEEK_SET); diff --git a/marchenko3D/fmute3D.c b/marchenko3D/fmute3D.c index 627c745..79fbe1c 100644 --- a/marchenko3D/fmute3D.c +++ b/marchenko3D/fmute3D.c @@ -61,7 +61,7 @@ char *sdoc[] = { NULL}; /**************** end self doc ***********************************/ -long main (int argc, char **argv) +int main (int argc, char **argv) { FILE *fp_in1, *fp_in2, *fp_out, *fp_chk, *fp_psline1, *fp_psline2; long verbose, shift, k, nx1, ny1, nt1, nx2, ny2, nt2, nxy; @@ -508,4 +508,4 @@ long main (int argc, char **argv) return 0; -} \ No newline at end of file +} diff --git a/marchenko3D/getFileInfo3D.c b/marchenko3D/getFileInfo3D.c deleted file mode 100644 index fd00cee..0000000 --- a/marchenko3D/getFileInfo3D.c +++ /dev/null @@ -1,244 +0,0 @@ -#define _FILE_OFFSET_BITS 64 -#define _LARGEFILE_SOURCE - -#include <assert.h> -#include <stdio.h> -#include <stdlib.h> -#include <errno.h> -#include <math.h> -#include "segy.h" - -#define MAX(x,y) ((x) > (y) ? (x) : (y)) -#define MIN(x,y) ((x) < (y) ? (x) : (y)) -#define NINT(x) ((long)((x)>0.0?(x)+0.5:(x)-0.5)) - -/** -* gets sizes, sampling and min/max values of a SU file -* -* AUTHOR: -* Jan Thorbecke (janth@xs4all.nl) -* The Netherlands -**/ - -void vmess(char *fmt, ...); -void verr(char *fmt, ...); -int optncr(int n); - -long getFileInfo3D(char *filename, long *n1, long *n2, long *n3, long *ngath, float *d1, float *d2, float *d3, float *f1, float *f2, float *f3, float *sclsxgxsygy, long *nxm) -{ - FILE *fp; - size_t nread, data_sz; - off_t bytes, ret, trace_sz, ntraces; - long sx_shot, sy_shot, gx_start, gx_end, gy_start, gy_end, itrace, one_shot, igath, end_of_file, fldr_shot; - long verbose=1, igy, nsx, nsy; - float scl, *trace, dxsrc, dxrcv, dysrc, dyrcv; - segy hdr; - - if (filename == NULL) { /* read from input pipe */ - *n1=0; - *n2=0; - *n3=0; - return -1; /* Input pipe */ - } - else fp = fopen( filename, "r" ); - if (fp == NULL) verr("File %s does not exist or cannot be opened", filename); - nread = fread( &hdr, 1, TRCBYTES, fp ); - assert(nread == TRCBYTES); - ret = fseeko( fp, 0, SEEK_END ); - if (ret<0) perror("fseeko"); - bytes = ftello( fp ); - - *n1 = hdr.ns; - if ( (hdr.trid == 1) && (hdr.dt != 0) ) { - *d1 = ((float) hdr.dt)*1.e-6; - *f1 = ((float) hdr.delrt)/1000.; - } - else { - *d1 = hdr.d1; - *f1 = hdr.f1; - } - *f2 = hdr.f2; - *f3 = hdr.gy; - - data_sz = sizeof(float)*(*n1); - trace_sz = sizeof(float)*(*n1)+TRCBYTES; - ntraces = (long) (bytes/trace_sz); - - if (hdr.scalco < 0) scl = 1.0/fabs(hdr.scalco); - else if (hdr.scalco == 0) scl = 1.0; - else scl = hdr.scalco; - - *sclsxgxsygy = scl; - /* check to find out number of traces in shot gather */ - - one_shot = 1; - itrace = 1; - igy = 1; - fldr_shot = hdr.fldr; - sx_shot = hdr.sx; - sy_shot = hdr.sy; - gx_start = hdr.gx; - gy_start = hdr.gy; - gy_end = gy_start; - trace = (float *)malloc(hdr.ns*sizeof(float)); - fseeko( fp, TRCBYTES, SEEK_SET ); - - while (one_shot) { - nread = fread( trace, sizeof(float), hdr.ns, fp ); - assert (nread == hdr.ns); - if (hdr.gy != gy_end) { - gy_end = hdr.gy; - igy++; - } - gx_end = hdr.gx; - nread = fread( &hdr, 1, TRCBYTES, fp ); - if (nread==0) break; - if ((sx_shot != hdr.sx) || (sy_shot != hdr.sy) || (fldr_shot != hdr.fldr) ) break; - itrace++; - } - - if (itrace>1) { - *n2 = itrace/igy; - *n3 = igy; - if (*n2>1) { - dxrcv = (float)(gx_end - gx_start)/(float)(*n2-1); - } - else { - dxrcv = 1.0/scl; - } - if (*n3>1) { - dyrcv = (float)(gy_end - gy_start)/(float)(*n3-1); - } - else { - dyrcv = 1.0/scl; - } - *d2 = fabs(dxrcv)*scl; - *d3 = fabs(dyrcv)*scl; - if (NINT(dxrcv*1e3) != NINT(fabs(hdr.d2)*1e3)) { - if (dxrcv != 0) *d2 = fabs(dxrcv)*scl; - else *d2 = hdr.d2; - } - } - else { - *n2 = MAX(hdr.trwf, 1); - *n3 = 1; - *d2 = hdr.d2; - *d3 = 1.0; - dxrcv = hdr.d2; - dyrcv = 0.0; - } - -/* check if the total number of traces (ntraces) is correct */ - -/* expensive way to find out how many gathers there are */ - -// fprintf(stderr, "ngath = %li dxrcv=%f d2=%f scl=%f \n", *ngath, dxrcv, *d2, scl); - if (*ngath == 0) { - *n2 = 0; - *n3 = 0; - - end_of_file = 0; - one_shot = 1; - igath = 0; - fseeko( fp, 0, SEEK_SET ); - dxrcv = *d2; - dyrcv = *d3; - - while (!end_of_file) { - nread = fread( &hdr, 1, TRCBYTES, fp ); - if (nread != TRCBYTES) { break; } - fldr_shot = hdr.fldr; - sx_shot = hdr.sx; - gx_start = hdr.gx; - gx_end = hdr.gx; - sy_shot = hdr.sy; - gy_start = hdr.gy; - gy_end = hdr.gy; - - itrace = 1; - igy = 1; - while (one_shot) { - fseeko( fp, data_sz, SEEK_CUR ); - if (hdr.gx != gx_end) dxrcv = MIN(dxrcv,abs(hdr.gx-gx_end)); - if (hdr.gy != gy_end) { - igy++; - gy_end = hdr.gy; - dyrcv = MIN(dyrcv,abs(hdr.gy-gy_end)); - } - gx_end = hdr.gx; - nread = fread( &hdr, 1, TRCBYTES, fp ); - if (nread != TRCBYTES) { - one_shot = 0; - end_of_file = 1; - break; - } - if ((sx_shot != hdr.sx) || (sy_shot != hdr.sy) || (fldr_shot != hdr.fldr)) break; - itrace++; - } - if (itrace>1) { - *n2 = MAX(itrace/igy,*n2); - *n3 = igy; - if (*n2>1) { - dxrcv = (float)(gx_end - gx_start)/(float)(*n2-1); - } - else { - dxrcv = 1.0/scl; - } - if (*n3>1) { - dyrcv = (float)(gy_end - gy_start)/(float)(*n3-1); - } - else { - dyrcv = 1.0/scl; - } - dxsrc = (float)(hdr.sx - sx_shot)*scl; - dysrc = (float)(hdr.sy - sy_shot)*scl; - } - else { - *n2 = MAX(MAX(hdr.trwf, 1),*n2); - *n3 = 1; - *d2 = hdr.d2; - *d3 = 1.0; - dxrcv = hdr.d2/scl; - dyrcv = 1.0/scl; - } - if (verbose>1) { - fprintf(stderr," . Scanning shot %li (%li) with %li traces dxrcv=%.2f dxsrc=%.2f %li %li dyrcv=%.2f dysrc=%.2f %li %li\n",sx_shot,igath,itrace,dxrcv*scl,dxsrc,gx_end,gx_start,dyrcv*scl,dysrc,gy_end,gy_start); - } - if (itrace != 0) { /* end of shot record */ - fseeko( fp, -TRCBYTES, SEEK_CUR ); - igath++; - } - else { - end_of_file = 1; - } - } - *ngath = igath; - *d2 = dxrcv*scl; - *d3 = dyrcv*scl; - } - else { - /* read last trace header */ - - fseeko( fp, -trace_sz, SEEK_END ); - nread = fread( &hdr, 1, TRCBYTES, fp ); - *ngath = ntraces/((*n2)*(*n3)); - } -// *nxm = NINT((*xmax-*xmin)/dxrcv)+1; - *nxm = (long)ntraces; - - fclose( fp ); - free(trace); - - return 0; -} - -long disp_fileinfo3D(char *file, long n1, long n2, long n3, float f1, float f2, float f3, float d1, float d2, float d3, segy *hdrs) -{ - vmess("file %s contains", file); - vmess("*** n1 = %li n2 = %li n3 = %li ntftt=%li", n1, n2, n3, (long)optncr((int)n1)); - vmess("*** d1 = %.5f d2 = %.5f d3 = %.5f", d1, d2, d3); - vmess("*** f1 = %.5f f2 = %.5f f3 = %.5f", f1, f2, f3); - vmess("*** fldr = %li sx = %li sy = %li", hdrs[0].fldr, hdrs[0].sx, hdrs[0].sy); - - return 0; -} diff --git a/marchenko3D/getFileInfo3D.c b/marchenko3D/getFileInfo3D.c new file mode 120000 index 0000000..d9078c9 --- /dev/null +++ b/marchenko3D/getFileInfo3D.c @@ -0,0 +1 @@ +../utils/getFileInfo3D.c \ No newline at end of file diff --git a/marchenko3D/homogeneousg3D.c b/marchenko3D/homogeneousg3D.c index 22c887e..8a09ecb 100644 --- a/marchenko3D/homogeneousg3D.c +++ b/marchenko3D/homogeneousg3D.c @@ -26,6 +26,7 @@ void corr(float *data1, float *data2, float *cov, long nrec, long nsam, float dt void convol(float *data1, float *data2, float *con, long nrec, long nsam, float dt, long shift); long readSnapData3D(char *filename, float *data, segy *hdrs, long nsnaps, long nx, long ny, long nz, long sx, long ex, long sy, long ey, long sz, long ez); +long getFileInfo3D(char *filename, long *n1, long *n2, long *n3, long *ngath, float *d1, float *d2, float *d3, float *f1, float *f2, float *f3, float *sclsxgxsygy, long *nxm); //void kxwfilter(float *data, long nt, long nx, float dt, float dx, float fmin, float fmax, float angle, float cp, float perc); void timeDiff(float *data, long nsam, long nrec, float dt, float fmin, float fmax, long opt); @@ -562,4 +563,4 @@ void conjugate(float *data, long nsam, long nrec, float dt) free(rdata); return; -} \ No newline at end of file +} diff --git a/marchenko3D/readData3D.c b/marchenko3D/readData3D.c index 8cef449..45e827a 100644 --- a/marchenko3D/readData3D.c +++ b/marchenko3D/readData3D.c @@ -13,7 +13,7 @@ **/ -int readData3D(FILE *fp, float *data, segy *hdrs, long n1) +long readData3D(FILE *fp, float *data, segy *hdrs, long n1) { size_t nread; long oneshot, itrace, sx, sy, fldr, gy, nx, ny; diff --git a/marchenko3D/readShotData3D.c b/marchenko3D/readShotData3D.c index c25327f..2dc337f 100644 --- a/marchenko3D/readShotData3D.c +++ b/marchenko3D/readShotData3D.c @@ -44,10 +44,10 @@ long readShotData3D(char *filename, float *xrcv, float *yrcv, float *xsrc, float fseek(fp, 0, SEEK_SET); nread = fread( &hdr, 1, TRCBYTES, fp ); assert(nread == TRCBYTES); - if (hdr.scalco < 0) scl = 1.0/fabs(hdr.scalco); + if (hdr.scalco < 0) scl = 1.0/fabs((float)hdr.scalco); else if (hdr.scalco == 0) scl = 1.0; else scl = hdr.scalco; - if (hdr.scalel < 0) scel = 1.0/fabs(hdr.scalel); + if (hdr.scalel < 0) scel = 1.0/fabs((float)hdr.scalel); else if (hdr.scalel == 0) scel = 1.0; else scel = hdr.scalel; @@ -135,4 +135,4 @@ long readShotData3D(char *filename, float *xrcv, float *yrcv, float *xsrc, float free(trace); return 0; -} \ No newline at end of file +} diff --git a/marchenko3D/readTinvData3D.c b/marchenko3D/readTinvData3D.c index f1bee84..572ed3d 100644 --- a/marchenko3D/readTinvData3D.c +++ b/marchenko3D/readTinvData3D.c @@ -47,10 +47,10 @@ long readTinvData3D(char *filename, float *xrcv, float *yrcv, float *xsrc, float fseek(fp, 0, SEEK_SET); nread = fread( &hdr, 1, TRCBYTES, fp ); assert(nread == TRCBYTES); - if (hdr.scalco < 0) scl = 1.0/fabs(hdr.scalco); + if (hdr.scalco < 0) scl = 1.0/fabs((float)hdr.scalco); else if (hdr.scalco == 0) scl = 1.0; else scl = hdr.scalco; - if (hdr.scalel < 0) scel = 1.0/fabs(hdr.scalel); + if (hdr.scalel < 0) scel = 1.0/fabs((float)hdr.scalel); else if (hdr.scalel == 0) scel = 1.0; else scel = hdr.scalel; fseek(fp, 0, SEEK_SET); diff --git a/raytime/getWaveletHeaders.c b/raytime/getWaveletHeaders.c index 5bff375..31799c4 100644 --- a/raytime/getWaveletHeaders.c +++ b/raytime/getWaveletHeaders.c @@ -28,10 +28,10 @@ int getWaveletHeaders(char *file_src, int n1, int n2, float *gx, float *sx, floa assert( fp != NULL); nread = fread( &hdr, 1, TRCBYTES, fp ); assert(nread == TRCBYTES); - if (hdr.scalco < 0) scl = 1.0/fabs(hdr.scalco); + if (hdr.scalco < 0) scl = 1.0/fabs((float)hdr.scalco); else if (hdr.scalco == 0) scl = 1.0; else scl = hdr.scalco; - if (hdr.scalel < 0) scll = 1.0/fabs(hdr.scalel); + if (hdr.scalel < 0) scll = 1.0/fabs((float)hdr.scalel); else if (hdr.scalel == 0) scll = 1.0; else scll = hdr.scalel; trace_sz = (size_t)sizeof(float)*(n1)+TRCBYTES; diff --git a/utils/getFileInfo.c b/utils/getFileInfo.c index 61ff7ba..5aec1a4 100644 --- a/utils/getFileInfo.c +++ b/utils/getFileInfo.c @@ -60,7 +60,7 @@ int getFileInfo(char *filename, int *n1, int *n2, int *ngath, float *d1, float * ntraces = (int) (bytes/trace_sz); // fprintf(stderr,"data_sz %ld trace_sz %lld bytes = %lld\n", data_sz, trace_sz, bytes); - if (hdr.scalco < 0) scl = 1.0/fabs(hdr.scalco); + if (hdr.scalco < 0) scl = 1.0/fabs((float)hdr.scalco); else if (hdr.scalco == 0) scl = 1.0; else scl = hdr.scalco; @@ -144,7 +144,7 @@ int getFileInfo(char *filename, int *n1, int *n2, int *ngath, float *d1, float * if ((sx_shot != hdr.sx) || (fldr_shot != hdr.fldr) ) break; } if (itrace>1) { - dxrcv = (float)fabs(gx_end - gx_start)/((float)(itrace-1)); + dxrcv = (float)abs(gx_end - gx_start)/((float)(itrace-1)); dxsrc = (float)(hdr.sx - sx_shot)*scl; *n2 = MAX(*n2,itrace); } diff --git a/utils/getFileInfo3D.c b/utils/getFileInfo3D.c index fd00cee..d914fc7 100644 --- a/utils/getFileInfo3D.c +++ b/utils/getFileInfo3D.c @@ -64,7 +64,7 @@ long getFileInfo3D(char *filename, long *n1, long *n2, long *n3, long *ngath, fl trace_sz = sizeof(float)*(*n1)+TRCBYTES; ntraces = (long) (bytes/trace_sz); - if (hdr.scalco < 0) scl = 1.0/fabs(hdr.scalco); + if (hdr.scalco < 0) scl = 1.0/fabs((float)hdr.scalco); else if (hdr.scalco == 0) scl = 1.0; else scl = hdr.scalco; @@ -159,11 +159,11 @@ long getFileInfo3D(char *filename, long *n1, long *n2, long *n3, long *ngath, fl igy = 1; while (one_shot) { fseeko( fp, data_sz, SEEK_CUR ); - if (hdr.gx != gx_end) dxrcv = MIN(dxrcv,abs(hdr.gx-gx_end)); + if (hdr.gx != gx_end) dxrcv = MIN(dxrcv,labs(hdr.gx-gx_end)); if (hdr.gy != gy_end) { igy++; gy_end = hdr.gy; - dyrcv = MIN(dyrcv,abs(hdr.gy-gy_end)); + dyrcv = MIN(dyrcv,labs(hdr.gy-gy_end)); } gx_end = hdr.gx; nread = fread( &hdr, 1, TRCBYTES, fp ); diff --git a/utils/kxwfilter.c b/utils/kxwfilter.c index 8689028..9168325 100644 --- a/utils/kxwfilter.c +++ b/utils/kxwfilter.c @@ -80,7 +80,7 @@ void kxwfilt(complex *data, float k, float dx, int nkx, float a1, float perc) filter = (float *)malloc(nkx*sizeof(float)); band = fabs(2*kpos); - ntap = (int)fabs((int)(perc*band/dkx)); + ntap = (int)abs((int)(perc*band/dkx)); kfilt = fabs(dkx*ntap); if (perc > 0) { diff --git a/utils/snap2shot.c b/utils/snap2shot.c index 4218a2b..18d0108 100644 --- a/utils/snap2shot.c +++ b/utils/snap2shot.c @@ -54,7 +54,7 @@ char *sdoc[] = { " fray ..................... File containing the raytimes of the first arrivals", NULL}; -void main (int argc, char **argv) +int main (int argc, char **argv) { FILE *fp_snap, *fp_rcv; char *file_snap, *file_rcv, file_tmp[150], ins[100], fbegin[100], fend[100], fins[100], fin2[100], numb1[100], *ptr; @@ -201,5 +201,5 @@ void main (int argc, char **argv) free(rcvdata); free(hdr_rcv); free(hdr_snap); - return; -} \ No newline at end of file + return 0; +} diff --git a/utils/syn2d.c b/utils/syn2d.c index 5686f3b..2e87e9e 100644 --- a/utils/syn2d.c +++ b/utils/syn2d.c @@ -160,11 +160,11 @@ int main (int argc, char **argv) nts = n1; - if (hdrs[0].scalco < 0) scl = 1.0/fabs(hdrs[0].scalco); + if (hdrs[0].scalco < 0) scl = 1.0/fabs((float)hdrs[0].scalco); else if (hdrs[0].scalco == 0) scl = 1.0; else scl = hdrs[0].scalco; - if (hdrs[0].scalel < 0) scel = 1.0/fabs(hdrs[0].scalel); + if (hdrs[0].scalel < 0) scel = 1.0/fabs((float)hdrs[0].scalel); else if (hdrs[0].scalel == 0) scel = 1.0; else scel = hdrs[0].scalel; @@ -287,7 +287,7 @@ int main (int argc, char **argv) for (j = nt; j < optn; j++) shotdata[i*optn+j] = 0.0; } - if (hdrs_in[0].scalco < 0) scl = 1.0/fabs(hdrs_in[0].scalco); + if (hdrs_in[0].scalco < 0) scl = 1.0/fabs((float)hdrs_in[0].scalco); else if (hdrs_in[0].scalco == 0) scl = 1.0; else scl = hdrs_in[0].scalco; @@ -638,7 +638,7 @@ void synthesis(float *shotdata, float *syndata, int nx, int nt, int nxs, int nts ixsrc = NINT((xsrc - fxs)/dxs); - if (abs(xrcv[0]-xsrc) > 0.5*nx*dx) { iox = 0; inx = nx-off; } + if (fabsf(xrcv[0]-xsrc) > 0.5*nx*dx) { iox = 0; inx = nx-off; } else { iox = off; inx = nx; } t0 = wallclock_time(); -- GitLab