subroutine xcorlt (gp, npoins, xpts, ypts, it) logical Memb(1) integer*2 Memc(1) integer*2 Mems(1) integer Memi(1) integer*4 Meml(1) real Memr(1) double precision Memd(1) complex Memx(1) equivalence (Memb, Memc, Mems, Memi, Meml, Memr, Memd, Memx) common /Mem/ Memd integer gp integer npoins integer it real xpts(*) real ypts(*) real xcr real dxcr real msize real y01(2) real rindef integer fraclv integer xlev integer sp double precision fracpk double precision ph double precision pw integer il integer ir integer pkindx integer i integer npts4 integer itemp integer*2 gtitle(1023 +1) double precision pkfrac double precision tshift double precision minvel double precision maxvel double precision cvel double precision c0 integer npts real han logical zpad integer lo integer toplo integer nrun integer topnrn integer filter real xcrdif real xcr0 integer sfchop logical schop integer svcor integer pkmod0 integer pkmode integer npkmoe integer pksrch logical contft integer contdm integer nmspec integer vinit integer nsmooh integer*2 specns(1023 +1) integer*2 taskne(1023 +1) integer*2 cortep(255 +1) logical pltspc logical plttep logical pltcon logical pltapo logical pltfft logical pltuc logical pltcor logical plttft logical debug integer nlogfd integer logfd(maxlog) double precision spstrt double precision spfnsh double precision spechv double precision spvel double precision sperr double precision spxvel double precision spxerr double precision spxr double precision spevel double precision speerr double precision spwl0 double precision spdwl double precision tvel integer spvqul integer specdc integer speccp integer specpx integer spnl integer spnlf real z0 real sig0 real gam0 real z(npar) real ze(npar) logical specvb logical savevl integer*2 specne(511 +1) integer*2 specid(511 +1) integer*2 skynae(511 +1) double precision testrt(maxtes) double precision tefnsh(maxtes) double precision tempvl(maxtes) double precision temphv(maxtes) double precision tempst(maxtes) double precision twl1(maxtes) double precision twl2(maxtes) integer ntemp integer tempdc(maxtes) integer temppx(maxtes) integer tempft(maxtes) integer tvcor integer tfchop logical tchop logical tcont integer npcor logical overlp integer*2 tempne(511 +1,maxtes) integer*2 tempid(511 +1,maxtes) double precision dlogw double precision wave0 double precision logw0 real deltav integer specsh logical qplot logical newres double precision zvel(maxtes) double precision cz(maxtes) double precision czerr(maxtes) double precision czr(maxtes) double precision xcrmax double precision tcent(maxtes) double precision thght(maxtes) double precision twdth(maxtes) double precision tvw(maxtes) double precision tarms(maxtes) double precision tsrms(maxtes) double precision taa(maxtes) double precision tvshit(maxtes) double precision tsig1(maxtes) double precision tsig2(maxtes) double precision tpcent(maxtes) double precision tphght(maxtes) double precision tpwdth(maxtes) integer tnpfit(maxtes) integer itmax integer npmax logical tschop(maxtes) logical tachop(maxtes) logical tscont(maxtes) logical tdivcn(maxtes) logical toverp(maxtes) double precision sig(maxtes) double precision sigerr(maxtes) double precision gam(maxtes) double precision gamerr(maxtes) real perdeg(maxtes) double precision tczer1 double precision tczer2 double precision czerr1(maxtes) double precision czerr2(maxtes) integer itr(maxtes) common /fixp/ pkfrac, tshift, minvel, maxvel, cvel, c0, npts, han, * zpad, lo,toplo,nrun,topnrn, filter,xcrdif,xcr0,sfchop,schop,svcor *, pkmode, pkmod0,npkmoe,pksrch,contft,contdm,nmspec,specns, nsmooh *,vinit,taskne,cortep common /users/ pltspc, plttep, pltcon, pltapo, pltfft, pltuc, *pltcor, plttft, debug, nlogfd, logfd common /fitp/ spstrt,spfnsh,spechv,spvel,sperr,spxvel,spxerr,spxr, * spevel,speerr,spwl0,spdwl,tvel, spvqul,specdc,speccp,specpx,spnl, *spnlf, z0,sig0,gam0,z,ze,specvb,savevl,specne,specid,skynae common /ptemp/ testrt,tefnsh,tempvl,temphv,tempst,twl1,twl2,ntemp, * tempdc,temppx,tempft,tvcor,tfchop,tchop,tcont,npcor, overlp, *tempne,tempid common /wvscl/ dlogw, wave0, logw0, deltav, specsh common/qpl/ qplot, newres common /answr/ zvel,cz,czerr,czr,xcrmax, tcent,thght,twdth,tvw, *tarms,tsrms, taa, tvshit,tsig1,tsig2,tpcent,tphght,tpwdth, tnpfit, *itmax,npmax,tschop,tachop, tscont,tdivcn,toverp common /answrq/ sig,sigerr,gam,gamerr,perdeg common/errtet/ tczer1, tczer2, czerr1, czerr2 common/templ/ itr integer*2 st0001(33) integer*2 st0002(35) integer*2 st0003(42) integer*2 st0004(30) save integer iyy data (st0001(iyy),iyy= 1, 8) / 88, 67, 79, 82, 76, 73, 83, 84/ data (st0001(iyy),iyy= 9,16) / 58, 32, 37,100, 32, 67,111,114/ data (st0001(iyy),iyy=17,24) /114, 46, 32, 84,101,109,112,108/ data (st0001(iyy),iyy=25,32) / 97,116,101, 58, 32, 37,115, 10/ data (st0001(iyy),iyy=33,33) / 0/ data (st0002(iyy),iyy= 1, 8) / 88, 67, 79, 82, 76, 73, 83, 84/ data (st0002(iyy),iyy= 9,16) / 58, 32,118,101,108,111, 99,105/ data (st0002(iyy),iyy=17,24) /116,121, 32,114, 97,110,103,101/ data (st0002(iyy),iyy=25,32) / 32, 37,102, 32,116,111, 32, 37/ data (st0002(iyy),iyy=33,35) /102, 10, 0/ data (st0003(iyy),iyy= 1, 8) / 88, 67, 79, 82, 76, 73, 83, 84/ data (st0003(iyy),iyy= 9,16) / 58, 32,118,101,108, 91, 49, 93/ data (st0003(iyy),iyy=17,24) / 32, 61, 32, 37, 46, 51,102, 44/ data (st0003(iyy),iyy=25,32) / 32,118,101,108, 91, 37,100, 93/ data (st0003(iyy),iyy=33,40) / 32, 61, 32, 32, 37, 46, 51,102/ data (st0003(iyy),iyy=41,42) / 10, 0/ data (st0004(iyy),iyy= 1, 8) / 88, 67, 79, 82, 76, 73, 83, 84/ data (st0004(iyy),iyy= 9,16) / 58, 32,120, 99,111,114, 32, 61/ data (st0004(iyy),iyy=17,24) / 32, 37, 46, 51,102, 32, 45, 32/ data (st0004(iyy),iyy=25,30) / 37, 46, 51,102, 10, 0/ itemp = itr(it) rindef = 1.6e38 call xprinf(st0001) call pargi (it) call pargsr (tempne(1,itemp)) if (.not.(xcr0 .eq. rindef)) goto 110 xcr = zvel(itemp) goto 111 110 continue xcr = xcr0 111 continue if (.not.(xcrdif .eq. rindef)) goto 120 dxcr = 20. * tvw(itemp) if (.not.(dxcr .lt. 1.d0)) goto 130 dxcr = 300.d0 130 continue goto 121 120 continue dxcr = xcrdif 121 continue if (.not.(dxcr .eq. 0)) goto 140 goto 100 140 continue call xprinf(st0002) call pargr (xcr-dxcr) call pargr (xcr+dxcr) call xffluh(4) call xprinf(st0003) call pargi (ixi) call pargr (xpts(1)) call pargi (npoins) call pargr (xpts(npoins)) call xffluh(4) call xprinf(st0004) call pargr (xcor(1)) call pargr (xcor(npts)) call xffluh(4) goto 100 100 return end c pkmod0 pkmode0 c plttep plttemp c temppx temppix c nsmooh nsmooth c tvshit tvshift c errtet errtest c npoins npoints c spvqul spvqual c fraclv fraclev c tempft tempfilt c fracpk fracpeak c spechv spechcv c toverp toverlap c specns specnums c npkmoe npkmode c contdm contdim c maxtes maxtemps c savevl savevel c specne specname c tczer1 tczerr1 c xcorlt xcorlist c contft contfit c temphv temphcv c tdivcn tdivcon c tczer2 tczerr2 c skynae skyname c overlp overlap c cortep cortemp c pltspc pltspec c specpx specpix c tempvl tempvel c tempst tempshift c taskne taskname c speccp specchop c tempne tempname c pargsr pargstr c newres newresults