diff --git a/Make_include_template b/Make_include_template new file mode 100644 index 0000000000000000000000000000000000000000..6d0d98175c624b2cd9899cd774f3a7b7e876d679 --- /dev/null +++ b/Make_include_template @@ -0,0 +1,135 @@ +# Makefile for general rules + +# To Change the compile environment to your current system you should set: +# -1- ROOT variable to the directory where you found this file +# -2- if needed use a different compiler (CC) if gcc is not available +# -3- on Solaris system use RANLIB=ranlib which is defined below + +# the current directory (in vi ":r!pwd") +ROOT=/Users/jan/src/OpenSource + +######################################################################## +# C compiler; change this only if you are using a different C-compiler + +#GNU +#CC = gcc-mp-5 +CC = gcc +FC = gfortran +# Linux gcc version 4.x +OPTC = -O3 -ffast-math +#to include parallelisation with OpenMP +OPTC += -fopenmp + +# for better performing code you can try: +#OPTC = -O3 -fno-trapping-math -ffast-math -funroll-all-loops -mavx -fomit-frame-pointer -mfpmath=sse -ftree-vectorizer-verbose=1 +# Linux gcc version 3.x +#OPTC = -O3 -ffast-math -funroll-all-loops -mfpmath=sse + +#for double precision use FFTlib and emmod +#OPTC += -DDOUBLE +#OPTF += -fdefault-double-8 -fdefault-real-8 + +#Cray +#CC=cc +#FC=ftn +#OPTC = -O2 +#OPTF = -O2 + +#Intel +#CC = icc +#FC = ifort +### Linux +##OPTC = -O3 -no-prec-div -qopt-report-phase=vec,openmp +##OPTF = -O3 -no-prec-div -qopt-report-phase=vec,openmp +#OPTC = -O3 -no-prec-div -xCORE-AVX2 +#OPTF = -O3 -no-prec-div -xCORE-AVX2 +##to include parallelisation with OpenMP +#OPTC += -qopenmp + +# Apple OSX intel 11.1.076 snow leopard 10.6.2 +#OPTC = -O3 -msse3 -no-prec-div -vec-report2 -fno-builtin-__sprintf_chk + +#PGI +#CC = pgcc +#FC = pgf90 +#OPTC = -fast -Minfo=vect -Mvect=simd:256 -Msafeptr +#OPTC = -fast -Minfo=vect -Mvect=simd:256 -Msafeptr -Mprof=lines +#OPTF = -fast +#LDFLAGS = -fast -Minfo=vect -Mvect=simd:256 -Msafeptr + +#Pathscale +#CC = cc +#FC = ftn +#OPTC = -Ofast -OPT:Ofast -fno-math-errno +#OPTF = -Ofast -OPT:Ofast -fno-math-errno + +#Apple OSX clang/gcc (10.9) llvm +#CC = clang +#OPTC = -Ofast +#LDFLAGS = -Ofast + +#AMD Open64 +#CC = opencc +#FC = openf95 +#OPTC = -Ofast +#OPTF = -Ofast +#LDFLAGS = -static -Ofast + +############################################################################# +# FOR FFT LIBRARIES +#AMD ACML 4.4.0 +#AMDROOT = /home/thorbcke/amdsdk/v1.0/acml/open64_64 +#OPTC += -DACML440 -I$(AMDROOT)/include +#LIBSM = -L$(AMDROOT)/lib -lacml -lfortran -lffio -lrt -lm + +############################################################################# +# Some convenient abbreviations + +B = $(ROOT)/bin +I = $(ROOT)/include +L = $(ROOT)/lib + +######################################################################## +# standard CFLAGS +CFLAGS = -I$I -I. + +############################################################################# +# the archiver +AR = ar + +############################################################################# +# ar FLAGS +ARFLAGS = rv + +############################################################################# +# ranlib definition +RANLIB = ar -s +# on Sun SOLARIS use: +#RANLIB = ranlib + + +.SUFFIXES : .o .c .cc .f .a .F90 +.c.o : + $(CC) -c $(CFLAGS) $(OPTC) $< +.c.a : + $(CC) -c $(CFLAGS) $(OPTC) $< + $(AR) $(ARFLAGS) $@ $*.o + rm -f $*.o +.o.a : + $(AR) $(ARFLAGS) $@ $*.o + rm -f $*.o +.f.o : + $(FC) -c $(FFLAGS) $(OPTF) $< +.F90.o : + $(FC) -c $(FFLAGS) $(OPTF) $< +.f.a : + $(FC) -c $(FFLAGS) -I$I $< + $(AR) $(ARFLAGS) $@ $*.o + rm -f $*.o +.cc.a : + $(C++) -c $(C++FLAGS) -I$I $< + $(AR) $(ARFLAGS) $@ $*.o + rm -f $*.o +.cc.o : + $(C++) -c $(C++FLAGS) $< + diff --git a/README b/README index cbeda68421694176adaf926f954ac3e9f2189ec6..1ed73f9332a0aaad2ab00ced0c4c6504c3aeedb7 100644 --- a/README +++ b/README @@ -36,7 +36,7 @@ INSTALLATION ------------- 1) To compile and link the code you first have to set the ROOT variable in the Make_include file which can be found in the directory where you have found this README. - You can use Make_include_template as a first start: cp Make_include_template Make_include +You can use Make_include_template as a first start: cp Make_include_template Make_include 2) Check the compiler and CFLAGS options in the file Make_include and adapt to the system you are using. The default options are set for a the GNU C-compiler on a Linux system. A Fortran or C++ compiler are not needed to compile the code. The Makefile has been tested with GNU make. diff --git a/fdelmodc/applySource.c b/fdelmodc/applySource.c index 68da5e7ffcd7e1a2ecd8ed5733a8c8be0499a102..74d19650569cef760b5b5c1649195cbdba25c69e 100644 --- a/fdelmodc/applySource.c +++ b/fdelmodc/applySource.c @@ -114,12 +114,9 @@ int applySource(modPar mod, srcPar src, wavPar wav, bndPar bnd, int itime, int i if (verbose>=4 && itime==0) { vmess("Source %d positioned at grid ix=%d iz=%d",isrc, ix, iz); } - if (verbose>5) { - vmess("Source %d at grid [ix=%d,iz=%d] at itime %d has value %e",isrc, ix,iz, itime, src_ampl); - } - /* cosine squared windowing to reduce edge effects on shot arrays */ if ( (src.n>1) && src.window) { + scl = 1.0; if (isrc < src.window) { scl = cos(0.5*M_PI*(src.window - isrc)/src.window); } @@ -138,6 +135,11 @@ int applySource(modPar mod, srcPar src, wavPar wav, bndPar bnd, int itime, int i /* this is now set to 1.0 */ src_ampl *= (1.0/mod.dx)*l2m[ix*n1+iz]; + if (verbose>5) { + vmess("Source %d at grid [ix=%d,iz=%d] at itime %d has value %e",isrc, ix,iz, itime, src_ampl); + } + + /* Force source */ if (src.type == 6) { diff --git a/fdelmodc/demo/SrcPositions1.txt b/fdelmodc/demo/SrcPositions1.txt index 44722ad2c2fcdf610b58af7f57bfe12e19eb86ec..321f1b79d02e6e0e47244575bea42c104d0a2dca 100644 --- a/fdelmodc/demo/SrcPositions1.txt +++ b/fdelmodc/demo/SrcPositions1.txt @@ -1 +1,301 @@ -150.000000 0.000000 +(552.000000, 1704.000000) +(555.000000, 1704.000000) +(558.000000, 1704.000000) +(561.000000, 1704.000000) +(564.000000, 1704.000000) +(567.000000, 1704.000000) +(570.000000, 1704.000000) +(573.000000, 1704.000000) +(576.000000, 1704.000000) +(579.000000, 1704.000000) +(582.000000, 1704.000000) +(585.000000, 1704.000000) +(588.000000, 1704.000000) +(591.000000, 1704.000000) +(594.000000, 1704.000000) +(597.000000, 1704.000000) +(600.000000, 1704.000000) +(603.000000, 1704.000000) +(606.000000, 1704.000000) +(609.000000, 1704.000000) +(612.000000, 1704.000000) +(615.000000, 1704.000000) +(618.000000, 1704.000000) +(621.000000, 1704.000000) +(624.000000, 1704.000000) +(627.000000, 1704.000000) +(630.000000, 1704.000000) +(633.000000, 1704.000000) +(636.000000, 1704.000000) +(639.000000, 1704.000000) +(642.000000, 1704.000000) +(645.000000, 1704.000000) +(648.000000, 1704.000000) +(651.000000, 1704.000000) +(654.000000, 1704.000000) +(657.000000, 1704.000000) +(660.000000, 1704.000000) +(663.000000, 1704.000000) +(666.000000, 1704.000000) +(669.000000, 1704.000000) +(672.000000, 1704.000000) +(675.000000, 1704.000000) +(678.000000, 1704.000000) +(681.000000, 1704.000000) +(684.000000, 1704.000000) +(687.000000, 1704.000000) +(690.000000, 1704.000000) +(693.000000, 1704.000000) +(696.000000, 1704.000000) +(699.000000, 1704.000000) +(702.000000, 1704.000000) +(705.000000, 1704.000000) +(708.000000, 1704.000000) +(711.000000, 1704.000000) +(714.000000, 1704.000000) +(717.000000, 1704.000000) +(720.000000, 1704.000000) +(723.000000, 1704.000000) +(726.000000, 1704.000000) +(729.000000, 1704.000000) +(732.000000, 1704.000000) +(735.000000, 1704.000000) +(738.000000, 1704.000000) +(741.000000, 1704.000000) +(744.000000, 1704.000000) +(747.000000, 1704.000000) +(750.000000, 1704.000000) +(753.000000, 1704.000000) +(756.000000, 1704.000000) +(759.000000, 1704.000000) +(762.000000, 1704.000000) +(765.000000, 1704.000000) +(768.000000, 1704.000000) +(771.000000, 1704.000000) +(774.000000, 1704.000000) +(777.000000, 1704.000000) +(780.000000, 1704.000000) +(783.000000, 1704.000000) +(786.000000, 1704.000000) +(789.000000, 1704.000000) +(792.000000, 1704.000000) +(795.000000, 1704.000000) +(798.000000, 1704.000000) +(801.000000, 1704.000000) +(804.000000, 1704.000000) +(807.000000, 1704.000000) +(810.000000, 1704.000000) +(813.000000, 1704.000000) +(816.000000, 1704.000000) +(819.000000, 1704.000000) +(822.000000, 1704.000000) +(825.000000, 1704.000000) +(828.000000, 1704.000000) +(831.000000, 1704.000000) +(834.000000, 1704.000000) +(837.000000, 1704.000000) +(840.000000, 1704.000000) +(843.000000, 1704.000000) +(846.000000, 1704.000000) +(849.000000, 1704.000000) +(852.000000, 1704.000000) +(855.000000, 1704.000000) +(858.000000, 1704.000000) +(861.000000, 1704.000000) +(864.000000, 1704.000000) +(867.000000, 1704.000000) +(870.000000, 1704.000000) +(873.000000, 1704.000000) +(876.000000, 1704.000000) +(879.000000, 1704.000000) +(882.000000, 1704.000000) +(885.000000, 1704.000000) +(888.000000, 1704.000000) +(891.000000, 1704.000000) +(894.000000, 1704.000000) +(897.000000, 1704.000000) +(900.000000, 1704.000000) +(903.000000, 1704.000000) +(906.000000, 1704.000000) +(909.000000, 1704.000000) +(912.000000, 1704.000000) +(915.000000, 1704.000000) +(918.000000, 1704.000000) +(921.000000, 1704.000000) +(924.000000, 1704.000000) +(927.000000, 1704.000000) +(930.000000, 1704.000000) +(933.000000, 1704.000000) +(936.000000, 1704.000000) +(939.000000, 1704.000000) +(942.000000, 1704.000000) +(945.000000, 1704.000000) +(948.000000, 1704.000000) +(951.000000, 1704.000000) +(954.000000, 1704.000000) +(957.000000, 1704.000000) +(960.000000, 1704.000000) +(963.000000, 1704.000000) +(966.000000, 1704.000000) +(969.000000, 1704.000000) +(972.000000, 1704.000000) +(975.000000, 1704.000000) +(978.000000, 1704.000000) +(981.000000, 1704.000000) +(984.000000, 1704.000000) +(987.000000, 1704.000000) +(990.000000, 1704.000000) +(993.000000, 1704.000000) +(996.000000, 1704.000000) +(999.000000, 1704.000000) +(1002.000000, 1704.000000) +(1005.000000, 1704.000000) +(1008.000000, 1704.000000) +(1011.000000, 1704.000000) +(1014.000000, 1704.000000) +(1017.000000, 1704.000000) +(1020.000000, 1704.000000) +(1023.000000, 1704.000000) +(1026.000000, 1704.000000) +(1029.000000, 1704.000000) +(1032.000000, 1704.000000) +(1035.000000, 1704.000000) +(1038.000000, 1704.000000) +(1041.000000, 1704.000000) +(1044.000000, 1704.000000) +(1047.000000, 1704.000000) +(1050.000000, 1704.000000) +(1053.000000, 1704.000000) +(1056.000000, 1704.000000) +(1059.000000, 1704.000000) +(1062.000000, 1704.000000) +(1065.000000, 1704.000000) +(1068.000000, 1704.000000) +(1071.000000, 1704.000000) +(1074.000000, 1704.000000) +(1077.000000, 1704.000000) +(1080.000000, 1704.000000) +(1083.000000, 1704.000000) +(1086.000000, 1704.000000) +(1089.000000, 1704.000000) +(1092.000000, 1704.000000) +(1095.000000, 1704.000000) +(1098.000000, 1704.000000) +(1101.000000, 1704.000000) +(1104.000000, 1704.000000) +(1107.000000, 1704.000000) +(1110.000000, 1704.000000) +(1113.000000, 1704.000000) +(1116.000000, 1704.000000) +(1119.000000, 1704.000000) +(1122.000000, 1704.000000) +(1125.000000, 1704.000000) +(1128.000000, 1704.000000) +(1131.000000, 1704.000000) +(1134.000000, 1704.000000) +(1137.000000, 1704.000000) +(1140.000000, 1704.000000) +(1143.000000, 1704.000000) +(1146.000000, 1704.000000) +(1149.000000, 1704.000000) +(1152.000000, 1704.000000) +(1155.000000, 1704.000000) +(1158.000000, 1704.000000) +(1161.000000, 1704.000000) +(1164.000000, 1704.000000) +(1167.000000, 1704.000000) +(1170.000000, 1704.000000) +(1173.000000, 1704.000000) +(1176.000000, 1704.000000) +(1179.000000, 1704.000000) +(1182.000000, 1704.000000) +(1185.000000, 1704.000000) +(1188.000000, 1704.000000) +(1191.000000, 1704.000000) +(1194.000000, 1704.000000) +(1197.000000, 1704.000000) +(1200.000000, 1704.000000) +(1203.000000, 1704.000000) +(1206.000000, 1704.000000) +(1209.000000, 1704.000000) +(1212.000000, 1704.000000) +(1215.000000, 1704.000000) +(1218.000000, 1704.000000) +(1221.000000, 1704.000000) +(1224.000000, 1704.000000) +(1227.000000, 1704.000000) +(1230.000000, 1704.000000) +(1233.000000, 1704.000000) +(1236.000000, 1704.000000) +(1239.000000, 1704.000000) +(1242.000000, 1704.000000) +(1245.000000, 1704.000000) +(1248.000000, 1704.000000) +(1251.000000, 1704.000000) +(1254.000000, 1704.000000) +(1257.000000, 1704.000000) +(1260.000000, 1704.000000) +(1263.000000, 1704.000000) +(1266.000000, 1704.000000) +(1269.000000, 1704.000000) +(1272.000000, 1704.000000) +(1275.000000, 1704.000000) +(1278.000000, 1704.000000) +(1281.000000, 1704.000000) +(1284.000000, 1704.000000) +(1287.000000, 1704.000000) +(1290.000000, 1704.000000) +(1293.000000, 1704.000000) +(1296.000000, 1704.000000) +(1299.000000, 1704.000000) +(1302.000000, 1704.000000) +(1305.000000, 1704.000000) +(1308.000000, 1704.000000) +(1311.000000, 1704.000000) +(1314.000000, 1704.000000) +(1317.000000, 1704.000000) +(1320.000000, 1704.000000) +(1323.000000, 1704.000000) +(1326.000000, 1704.000000) +(1329.000000, 1704.000000) +(1332.000000, 1704.000000) +(1335.000000, 1704.000000) +(1338.000000, 1704.000000) +(1341.000000, 1704.000000) +(1344.000000, 1704.000000) +(1347.000000, 1704.000000) +(1350.000000, 1704.000000) +(1353.000000, 1704.000000) +(1356.000000, 1704.000000) +(1359.000000, 1704.000000) +(1362.000000, 1704.000000) +(1365.000000, 1704.000000) +(1368.000000, 1704.000000) +(1371.000000, 1704.000000) +(1374.000000, 1704.000000) +(1377.000000, 1704.000000) +(1380.000000, 1704.000000) +(1383.000000, 1704.000000) +(1386.000000, 1704.000000) +(1389.000000, 1704.000000) +(1392.000000, 1704.000000) +(1395.000000, 1704.000000) +(1398.000000, 1704.000000) +(1401.000000, 1704.000000) +(1404.000000, 1704.000000) +(1407.000000, 1704.000000) +(1410.000000, 1704.000000) +(1413.000000, 1704.000000) +(1416.000000, 1704.000000) +(1419.000000, 1704.000000) +(1422.000000, 1704.000000) +(1425.000000, 1704.000000) +(1428.000000, 1704.000000) +(1431.000000, 1704.000000) +(1434.000000, 1704.000000) +(1437.000000, 1704.000000) +(1440.000000, 1704.000000) +(1443.000000, 1704.000000) +(1446.000000, 1704.000000) +(1449.000000, 1704.000000) +(1452.000000, 1704.000000) diff --git a/fdelmodc/demo/fdelmodc_plane.scr b/fdelmodc/demo/fdelmodc_plane.scr index 7d5512635d6ac2bd8974cbd170e7dcdddf84b2f8..cf4f1335d47ca76d43e70701085d92fff276dcd6 100755 --- a/fdelmodc/demo/fdelmodc_plane.scr +++ b/fdelmodc/demo/fdelmodc_plane.scr @@ -35,7 +35,7 @@ time ../fdelmodc \ dtrcv=0.004 \ xsrc=1000 zsrc=1700 nshot=1 plane_wave=1 nsrc=301 \ src_type=1 tmod=3.0 src_velo=1800 src_angle=5 \ - ntaper=21 \ + ntaper=21 src_window=101 \ left=4 right=4 bottom=4 top=4 \ tsnap1=0.1 tsnap2=3.0 dtsnap=0.1 \ sna_type_ss=1 sna_type_pp=1