diff --git a/marchenko/demo/twoD/README b/marchenko/demo/twoD/README index e4549dbd2f057b9cc8fca6d23be68eee2c3f5c35..ff1a0b1cbc6a66369faa72ebe2152a0e7ec48e09 100644 --- a/marchenko/demo/twoD/README +++ b/marchenko/demo/twoD/README @@ -1,6 +1,7 @@ Description of files: 1a) model.scr computes the model -1b) shots.scr creates the shots +1b) shots_slurm/pbs.scr creates the shots and submit jobs to slurm or PBS +1c) check.scr after the jobs on shots_*.scr are finished checks if all shots are there 2) direct.scr creates the direct arrival to be removed from the shots 3) remove_direct.scr remove the direct wave from the shots 4) initialFocus.scr model G_d the intitial focusing function => iniFocus_z1100_x0_rp.su diff --git a/marchenko/demo/twoD/clean b/marchenko/demo/twoD/clean index 085f0557f80ea4ee096c73abfa9b42a078e823bb..0d2611c04c3751b3c7d36314cb089b3fcdc6b864 100755 --- a/marchenko/demo/twoD/clean +++ b/marchenko/demo/twoD/clean @@ -1,4 +1,4 @@ #!/bin/bash -rm *.su *.bin *.txt *.eps nep +rm *.su *.bin *.txt *.eps nep *.asci diff --git a/marchenko/demo/twoD/direct.scr b/marchenko/demo/twoD/direct.scr index 2caae885125572541343958d0129cefefff2cc05..48ef53e850d9ee80f8b91027b36fbcbd7d825037 100755 --- a/marchenko/demo/twoD/direct.scr +++ b/marchenko/demo/twoD/direct.scr @@ -19,7 +19,7 @@ fdelmodc \ src_type=7 \ src_orient=1 \ src_injectionrate=1 \ - rec_type_vz=1 \ + rec_type_vz=0 \ rec_type_p=1 \ rec_int_vz=2 \ rec_delay=0.3 \ diff --git a/marchenko/demo/twoD/initialFocus.scr b/marchenko/demo/twoD/initialFocus.scr deleted file mode 100755 index d19ab84411de82c585b3505a09429fdf8edf23f5..0000000000000000000000000000000000000000 --- a/marchenko/demo/twoD/initialFocus.scr +++ /dev/null @@ -1,78 +0,0 @@ -#!/bin/bash - -export PATH=$HOME/src/OpenSource/bin:$PATH: - -dx=2.5 -dt=0.0005 - -makemod sizex=6000 sizez=2000 dx=$dx dz=$dx cp0=1900 ro0=1200 \ - orig=-3000,0 file_base=synclDown.su verbose=2 \ - intt=def x=-3000,500,3000 z=195,195,195 poly=1 cp=1950 ro=3700 \ - intt=def x=-3000,3000 z=600,600 poly=0 cp=2050 ro=1750 \ - intt=def x=-3000,3000 z=680,680 poly=0 cp=2150 ro=2220 \ - intt=def x=-3000,3000 z=780,780 poly=0 cp=2230 ro=1700 \ - intt=def x=-3000,-2200,-1500,0,1300,2100,3000 z=520,580,680,840,680,600,500 poly=2 cp=2400 ro=2800 \ - -makewave fp=20 dt=$dt file_out=wave.su nt=4096 t0=0.1 scale=1 - -dxshot=10 -ishot=300 -nshots=301 - -export OMP_NUM_THREADS=1 -mkdir -p shots -mkdir -p jobs - -while (( ishot < nshots )) -do - - (( xsrc = -3000 + ${ishot}*${dxshot} )) - echo xsrc=$xsrc - file_rcv=shots/iniFocus_z1100_x${xsrc}.su - - cat << EOF > jobs/pbs_$ishot.job -#!/bin/bash -# -#PBS -q medium -#PBS -N mod_${xsrc} -#PBS -j eo -#PBS -m n -#PBS -l nodes=1 -#PBS -V - - -export PATH=\$HOME/src/OpenSource/bin:\$PATH: -cd \$PBS_O_WORKDIR - -export OMP_NUM_THREADS=4 - - fdelmodc \ - file_cp=synclDown_cp.su ischeme=1 iorder=4 \ - file_den=synclDown_ro.su \ - file_src=wave.su \ - file_rcv=$file_rcv \ - src_type=1 \ - src_orient=1 \ - src_injectionrate=1 \ - rec_type_vz=0 \ - rec_type_p=1 \ - rec_int_vz=2 \ - rec_delay=0.1 \ - dtrcv=0.004 \ - verbose=2 \ - tmod=2.100 \ - dxrcv=10.0 \ - xrcv1=-3000 xrcv2=3000 \ - zrcv1=0 zrcv2=0 \ - xsrc=$xsrc zsrc=1100 \ - ntaper=200 \ - left=2 right=2 top=2 bottom=2 -EOF - - qsub jobs/pbs_$ishot.job - - (( ishot = $ishot + 1)) -done - - - diff --git a/marchenko/demo/twoD/marchenko.scr b/marchenko/demo/twoD/marchenko.scr index f95998a2780188857fc06b35912c6f0cf2224bf4..fcbb45ccb77f50f142d07a4824e889363e309a95 100755 --- a/marchenko/demo/twoD/marchenko.scr +++ b/marchenko/demo/twoD/marchenko.scr @@ -8,8 +8,23 @@ export OMP_NUM_THREADS=1 fmute file_shot=shots/iniFocus_z1100_x0_rp.su file_out=p0plus.su above=-1 shift=-10 verbose=1 check=1 hw=4 #apply the Marchenko algorithm -marchenko file_shot=../shots/refl_rp.su file_tinv=p0plus.su nshots=601 verbose=1 \ +marchenko file_shot=shots/refl_rp.su file_tinv=p0plus.su nshots=601 verbose=1 \ tap=0 niter=15 hw=8 shift=7 smooth=3 \ file_green=pgreen.su file_gplus=Gplus0.su file_gmin=Gmin0.su \ file_f1plus=f1plus0.su file_f1min=f1min0.su file_f2=f2.su +#compare Green's funtions on Marhcenko and reference result +suwind key=gx min=0 max=0 itmax=511 < pgreen.su | sumax mode=abs outpar=nepmg +suwind key=gx min=0 max=0 itmax=511 < referenceP_rp.su | sumax mode=abs outpar=neprf +mg=`cat nepmg | awk '{print $1}'` +rf=`cat neprf | awk '{print $1}'` +value=${value/[eE][+][0]/*10^} +mg=${mg/[eE][+][0]/*10^} +rf=${rf/[eE][+][0]/*10^} +rm nep* +scale=$(echo "scale=3; ($rf)/($mg)" | bc -l) +echo $scale + +(suwind key=gx min=0 max=0 itmax=511 < pgreen.su | sugain scale=$scale; \ + suwind key=gx min=0 max=0 < referenceP_rp.su) | suxgraph + diff --git a/marchenko/demo/twoD/referenceShot.scr b/marchenko/demo/twoD/referenceShot.scr index 9496e59e36fffb31874103b2a1a6daaa27d0c838..4c015f6baa98c092e3210801e3a6caff68fd34ad 100755 --- a/marchenko/demo/twoD/referenceShot.scr +++ b/marchenko/demo/twoD/referenceShot.scr @@ -1,9 +1,4 @@ #!/bin/bash -#PBS -N fdelmod -#PBS -q verylong -#PBS -l nodes=1 -#PBS -k eo -#PBS -j eo export PATH=$HOME/src/OpenSource/bin:$PATH: @@ -17,10 +12,10 @@ makewave fp=20 dt=$dt file_out=wave.su nt=4096 t0=0.1 scale=1 export OMP_NUM_THREADS=8 fdelmodc \ - file_cp=../syncl_cp.su ischeme=1 iorder=4 \ - file_den=../syncl_ro.su \ + file_cp=syncl_cp.su ischeme=1 iorder=4 \ + file_den=syncl_ro.su \ file_src=wave.su \ - file_rcv=referenceP_z1100_x0.su \ + file_rcv=referenceP.su \ src_type=1 \ src_orient=1 \ src_injectionrate=1 \ @@ -35,7 +30,8 @@ fdelmodc \ xrcv1=-3000 xrcv2=3000 \ zrcv1=0 zrcv2=0 \ xsrc=0 zsrc=1100 \ - file_snap=backpropref.su tsnap1=0.1 dtsnap=0.010 tsnap2=2.100 dxsnap=10 dzsnap=10 zsnap1=0 zsnap2=2000 xsnap1=-2250 xsnap2=2250 \ + file_snap=backpropref.su tsnap1=0.1 dtsnap=0.010 tsnap2=2.100 \ + dxsnap=10 dzsnap=10 zsnap1=0 zsnap2=2000 xsnap1=-2250 xsnap2=2250 sna_type_vz=0 \ ntaper=200 \ left=2 right=2 top=2 bottom=2 diff --git a/marchenko/demo/twoD/remove_direct.scr b/marchenko/demo/twoD/remove_direct.scr index 1fb2c04e25ca9436057f09ebd308210c37ccdfa8..0881615c381aba1f42314c7cc226ba18edb05496 100755 --- a/marchenko/demo/twoD/remove_direct.scr +++ b/marchenko/demo/twoD/remove_direct.scr @@ -29,3 +29,5 @@ do done +rm refl.su shotz0.su direct.su + diff --git a/marchenko/demo/twoD/shots.scr b/marchenko/demo/twoD/shots.scr deleted file mode 100755 index 8e97a142f686db3a301d3f40f457a2924379a2ea..0000000000000000000000000000000000000000 --- a/marchenko/demo/twoD/shots.scr +++ /dev/null @@ -1,75 +0,0 @@ -#!/bin/bash -#PBS -N fdelmod -#PBS -q long -#PBS -l nodes=1 -#PBS -k eo -#PBS -j eo - -export PATH=$HOME/src/OpenSource/bin:$PATH: - -dt=0.0005 -makewave w=fw fmin=0 flef=5 frig=80 fmax=100 dt=$dt file_out=wavefw.su nt=4096 t0=0.3 scale=0 scfft=1 - -./model.scr - -mkdir -p shots -mkdir -p jobs - -dxshot=10 -ishot=50 -nshots=601 -nshots=51 -zsrc=0 - -while (( ishot < nshots )) -do - - (( xsrc = -3000 + ${ishot}*${dxshot} )) - - echo ishot=$ishot xsrc=$xsrc zsrc=$zsrc - - cat << EOF > jobs/pbs_$ishot.job -#!/bin/bash -# -#PBS -q medium -#PBS -N mod_${xsrc} -#PBS -j eo -#PBS -m n -#PBS -l nodes=1 -#PBS -V - -export PATH=\$HOME/src/OpenSource/bin:\$PATH: -cd \$PBS_O_WORKDIR - - export OMP_NUM_THREADS=4 - file_rcv=shots/shots_${xsrc}.su - - fdelmodc \ - file_cp=syncl_cp.su ischeme=1 iorder=4 \ - file_den=syncl_ro.su \ - file_src=wavefw.su \ - file_rcv=\$file_rcv \ - src_type=7 \ - src_orient=1 \ - src_injectionrate=1 \ - rec_type_vz=1 \ - rec_type_p=1 \ - rec_int_vz=2 \ - rec_delay=0.3 \ - dtrcv=0.004 \ - verbose=2 \ - tmod=4.392 \ - dxrcv=10.0 \ - xrcv1=-3000,-3000,-3000 xrcv2=3000,3000,3000 \ - zrcv1=0,1000,1600 zrcv2=0,1000,1600 \ - xsrc=$xsrc zsrc=$zsrc \ - ntaper=200 \ - left=2 right=2 top=2 bottom=2 -EOF - -qsub jobs/pbs_$ishot.job - - (( ishot = $ishot + 1)) - -done -