Commit 7220cf76 authored by thomas.forbriger's avatar thomas.forbriger Committed by thomas.forbriger
Browse files

added new option: align offset shifted traces vertically in travel time

This is a legacy commit from before 2015-03-01.
It may be incomplete as well as inconsistent.
See COPYING.legacy and README.history for details.
reduction mode


SVN Path:     http://gpitrsvn.gpi.uni-karlsruhe.de/repos/TFSoftware/trunk
SVN Revision: 4852
SVN UUID:     67feda4a-a26e-11df-9d6e-31afc202ad0c
parent 12a124ab
......@@ -26,6 +26,7 @@ c REVISIONS and CHANGES
c 17/03/98 V1.0 Thomas Forbriger
c 19/06/03 V1.1 remember trace number in file
c 14/11/11 V1.2 store minimum and maximum offset too
c 12/11/12 V1.3 store offset shift
c
c==============================================================================
c
......@@ -43,7 +44,7 @@ c
character*4 auxid(maxtraces)
character*6 instype(maxtraces)
real toffset(maxtraces), dt(maxtraces)
real roffset(maxtraces)
real roffset(maxtraces), offsetshift(maxtraces)
real maxval(maxtraces), average(maxtraces), minval(maxtraces)
real maxoffset, minoffset
c
......@@ -54,7 +55,8 @@ c must expect to need maxsamples of time values (tos)
c
common /refract_data/ nsamples, firstsample, filename, source,
& station, channel, auxid, instype,
& toffset, roffset, dt, fileindex, traceinfile,
& toffset, roffset, offsetshift,
& dt, fileindex, traceinfile,
& maxval, average, minval, data, timeofsample,
& nfiles, ntraces, firstinchain, chain, revchain,
& firstinrevchain, maxoffset, minoffset
......
......@@ -27,6 +27,8 @@ c 17/03/98 V1.0 Thomas Forbriger
c 24/05/00 V1.1 activated
c 29/07/00 V1.2 introduced opt_Tannotate
c 26/11/10 V1.3 support additional file formats
c 12/11/2012 V1.4 optionally do not apply additional travel time
c reduction to offset shifted traces
c
c==============================================================================
c
......@@ -60,6 +62,7 @@ c scaling
real opt_Sexp, opt_Samp, opt_Sclip, opt_Svel, opt_Sminoff, opt_Sradius
integer opt_Smode
logical opt_Sinv, opt_Savg, opt_Sxrange, opt_Strange, opt_Sreduce
logical opt_Sosnoreduce
c
c common blocks
common /refract_optS/ opt_Ttitle, opt_Txlabel, opt_Tylabel,
......@@ -76,6 +79,7 @@ c common blocks
& opt_Ccycle, opt_Cswap, opt_Egrid, opt_Ewiggle,
& opt_Ebubble, opt_Epicks, opt_Ewave, opt_Ett,
& opt_ECpicks, opt_ECwave, opt_ECtt, opt_Sinv,
& opt_Savg, opt_Sxrange, opt_Strange, opt_Sreduce
& opt_Savg, opt_Sxrange, opt_Strange, opt_Sreduce,
& opt_Sosnoreduce
c
c ----- END OF refract_opt.inc -----
......@@ -28,6 +28,7 @@ c 11/01/2001 V1.1 had to introduce plfplag_hypoffset
c 17/06/2003 V1.2 introduced plflag_tracenum
c 09/09/2004 V1.3 introduced plflag_tracename
c 14/11/2011 V1.4 remember whether minoff is forced on command line
c 12/11/2012 V1.5 optionally do not time shift offset shifted traces
c
c==============================================================================
c
......@@ -115,6 +116,9 @@ c
c reduction velocity in km/s
real plpar_vred
c
c do not apply time shift to offset shifted traces
logical plflag_osnoreduce
c
c switch different modes
c ----------------------
c
......@@ -155,7 +159,7 @@ c common blocks
& elem_syntt, elem_picks, plflag_subscale
common /refract_verb/ debug, verbose
common /refract_flags/ flag_pick, flag_replot
common /refract_reduce/ plflag_reduce, plpar_vred
common /refract_reduce/ plflag_reduce, plpar_vred, plflag_osnoreduce
common /refract_pick/ plpar_pickmode
common /refract_holdstring/ plstring_lastwarn
c
......
......@@ -33,6 +33,7 @@ c 09/09/2004 V1.5 introduced new option plflag_tracename
c 04/12/2009 V1.6 use correct DIN notation for units
c 26/11/2010 V1.7 provide means to select file formats
c 14/11/2011 V1.8 remember whether minoff is forced
c 12/11/2012 V1.9 new option -Sn
c
c==============================================================================
c
......@@ -62,7 +63,7 @@ c CVS Id
& '$Id$')
c commandline
integer maxopt
parameter(maxopt=60)
parameter(maxopt=61)
character*3 optid(maxopt)
character*120 optarg(maxopt)
logical optset(maxopt), opthasarg(maxopt)
......@@ -111,6 +112,9 @@ c seismograms scaling
data optid(57) /'-Sh'/
data opthasarg(57) /.FALSE./
data optarg(57) /'-'/
data optid(61) /'-Sn'/
data opthasarg(61) /.FALSE./
data optarg(61) /'-'/
c
c additionals
data (optid(i), i=55,56) /'-Lt','-Ta'/
......@@ -189,6 +193,7 @@ c seismogram scaling
read(optarg(53), *) opt_Sminoff
read(optarg(54), *) opt_Sradius
plflag_hypoffset=optset(57)
opt_Sosnoreduce=optset(61)
c
c titles, label, legends
opt_Ttitle=version
......@@ -233,6 +238,7 @@ c
plpar_remav=opt_Savg
plflag_invers=opt_Sinv
plflag_reduce=opt_Sreduce
plflag_osnoreduce=opt_Sosnoreduce
plpar_vred=opt_Svel
c
plflag_grid=opt_Egrid
......
......@@ -37,6 +37,7 @@ c error, since all traces are read up to the last
c trace and sff_skiptrace as well as sff_rtracei
c will close the file upon reading the last trace
c 14/11/2011 V1.8 store minimum and maximum offset
c 12/11/2012 V1.9 store offset shift
c
c==============================================================================
c
......@@ -256,6 +257,7 @@ c extract info
& sffu_offset(scs,sc1,sc2,0.,rcs,rc1,rc2,0.)
endif
roffset(ntraces)=roffset(ntraces)+offshift
offsetshift(ntraces)=offshift
if (ntraces.eq.1) then
minoffset=roffset(ntraces)
maxoffset=roffset(ntraces)
......
......@@ -26,6 +26,8 @@ c REVISIONS and CHANGES
c 30/04/98 V1.0 Thomas Forbriger
c 03/07/98 V1.1 new clear concept - leave clipping to pgplot
c 04/07/98 V1.2 introduced traveltime reduction
c 12/11/12 V1.3 do not apply travel time reduction, if offset of
c seismograms is shifted intentionally
c
c==============================================================================
cS
......@@ -63,7 +65,7 @@ c
c the baseline of the curve must be 0. or average
c
logical result
real vppm, ttmin, ttmax
real vppm, ttmin, ttmax, offshift
real realtime
c
c factor "world coordinates -> normalized device coordinates"
......@@ -121,8 +123,10 @@ c
c now check TIME SCALE
ttmin=toffset(i)
ttmax=toffset(i)+(nsamples(i)-1)*dt(i)
trv_tmin=realtime(tov_tmin, roffset(i))
trv_tmax=realtime(tov_tmax, roffset(i))
offshift=0.
if (plflag_osnoreduce) offshift=offsetshift(i)
trv_tmin=realtime(tov_tmin, roffset(i)-offshift)
trv_tmax=realtime(tov_tmax, roffset(i)-offshift)
if ((ttmin.ge.trv_tmax).or.(ttmax.le.trv_tmin)) result=.false.
endif
c
......
......@@ -32,6 +32,7 @@ c 17/06/2003 V1.3 introduced plflag_tracenum
c 09/09/2004 V1.4 introduced plflag_tracenum
c 26/11/2010 V1.5 provide help regarding file formats
c 17.12.2010 V1.6 format selection was missing in quick help
c 12/11/2012 V1.7 new option -Sn
c
c==============================================================================
c
......@@ -53,7 +54,7 @@ c go
print *,' [-Fp file] [-Fa file] [-Ft file] [-Fm file]'
print *,' [-Sx x1,x2] [-St t1,t2] [-Se exp] [-Sa lev]'
print *,' [-Sc lev] [-Sm mode] [-Sr vel] [-Si] [-SM]'
print *,' [-SR radius] [-SO minoff] [-Sh]'
print *,' [-Sn] [-SR radius] [-SO minoff] [-Sh]'
print *,' [-C] [-L] [-R radius] [-O minoff]'
print *,' file [t:n,n-n] [o:s] [s:i,s,w] [n:name]'
print *,' [h:h,l,s] [r:r,g,b] [f:format]'
......@@ -180,6 +181,10 @@ c
print *,' 3: scale all traces to first trace of input'
print *,' dataset as reference'
print *,'-Sr vel set traveltime reduction velocity'
print *,'-Sn if traveltime reduction is used an trace'
print *,' offset is shifted intentionally by a file'
print *,' specific option, shift traces only'
print *,' vertically, not along reduction slope'
print *,'-Si invert polarity'
print *,'-SM remove average'
print *,'-SR radius offset scale will be given in degrees on'
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment