+PATCH,$CORR. +DECK,CORR1. Updates version: 2.01/00 to 2.01/14 +REP,*TITLE*,TITLE,1. LOCATER 2.01/14 07/08/97 00.15.01 +REP,$VERSION,V2_01,1-2. *CMZU: 2.01/14 07/08/97 00.15.01 by Rafik Ouared *CMZU: 2.01/13 29/03/97 21.56.16 by Rafik Ouared *CMZU: 2.01/12 03/03/97 16.15.31 by Rafik Ouared *CMZU: 2.01/11 14/02/97 09.25.42 by Rafik Ouared *CMZU: 2.01/10 26/01/97 14.16.18 by Rafik Ouared *CMZU: 2.01/09 26/11/96 20.08.33 by Rafik Ouared *CMZU: 2.01/08 27/06/96 18.10.47 by F.-H.Heinsius *CMZ : 2.01/07 17/06/96 18.09.04 by F.-H.Heinsius *CMZU: 2.01/06 03/06/96 11.01.29 by Unknown *CMZU: 2.01/05 02/04/96 19.54.02 by F.-H.Heinsius *CMZ : 2.01/04 20/03/96 18.03.38 by F.-H.Heinsius *CMZ : 2.01/03 15/03/96 18.31.02 by F.-H.Heinsius *CMZ : 2.01/02 14/03/96 16.48.58 by F.-H.Heinsius *CMZ : 2.01/01 13/03/96 15.39.42 by F.-H.Heinsius *CMZU: 2.01/00 21/12/95 18.20.11 by Christian Voelcker *-- Author : Christian Voelcker 21/12/95 *________________________________________________________________________ * *::> VERSION 2.01/14 07/08/97 00.15.01 * * TCTRAK modified to avoid conflict between TCTK and TCTR * which is seen in GTSOFF. * TCCALB, TCFFUZ,TCFCIRD modified to avoid dependence of * the reconstruction upon the previous event. *________________________________________________________________________ * *::> VERSION 2.01/13 29/03/97 21.56.15 * Removed redudant code in TCINIB * Fix MZLIFT garbage collection errors in TCVER3,TCVRHX,TCVRTX *________________________________________________________________________ * *::> VERSION 2.01/12 03/03/97 16.15.31 * * New routine TCINIB to read in SV calibration. (M.Doser) * TCFORM modified to allow transportability of RSVX bank * through different platforms. * plus minor modifications in TSTVTX,RSRVTX. *________________________________________________________________________ * *::> VERSION 2.01/11 14/02/97 09.25.42 * * new fix on TCVRHX to prevent zero division (M.Lakata) *________________________________________________________________________ * *::> VERSION 2.01/10 26/01/97 14.16.18 * TCVER3 and TCVRHX modified by M.Lakata to prevent * handling extremely small and large numbers in these routines. * Besides, INSTALL and CJINIT have been updated either. *________________________________________________________________________ * *::> VERSION 2.01/09 26/11/96 20.08.33 * Include the SVX calibration constants, both * for global as for detector specific corrections * max number of hits in TCCIRC set to 50 * SPP elements in TCVRHX are less than 1.D+10 * *________________________________________________________________________ * *::> VERSION 2.01/08 27/06/96 18.10.45 * * Do certain garfield corections not for MC. Smearing is * done in position not in time (were drived for that). * Change mean crate offset from -5.5ns to +2.5 ns. * See: TJDCGT TJTIME TSMINI TSMUSH * Affects mainly error in 1/pxy. * *::> VERSION 2.01/07 17/06/96 18.09.04 * * vertex fit: change GAXTC Parameter (TCVRHX) and reduce CPU time * by calling TCVERT for simple cases in TCVER3. * *::> VERSION 2.01/06 03/06/96 11.01.28 * update of installation script for solaris * *::> VERSION 2.01/05 02/04/96 19.54.02 * * Complete modified TCVER3 vertex fit and updated * assignments of errors (M.Lakata). * Old versions have wrong errors. * INSTALL: remove default path from compile script, * i.e. add P option in SET XA... (FHH). * * List of modified decks * Patch $KUMACS: INSTALL * Patch TCCOMMON: C_MACRO * Patch TC_MAIN: CJINIT * Patch TC_RAWS: TPWPOS TSRPHI * Patch TC_RADON1:RADON1 * Patch TC_CIRC: TXTGET * Patch TC_HELX: TPCNCT * Patch TC_VERT: TCVER3 TCVRHX TCVPCI TCVPCR * Patch TC_UTIL: TCPUSH TCPOP * *::> VERSION 2.01/04 20/03/96 18.03.38 * * INSTALL script from cboff (M.Lakata) * TPWPOS: positive errors for PWC (M.Lakata) * *::> VERSION 2.01/03 15/03/96 18.31.02 * * TCHXLD: Correct error in z=3.5cm for SVX. * INSTALL: New option INC (for include statements) * *::> VERSION 2.01/02 14/03/96 16.48.57 * * New arrays added up in TCLIFT: MTSV1,MTSV2 * TCFORM,TSVPOS modified to fix up bugs in * zebra bank allocations and to add a forth bank * in tsvpos. (R.Ouared) * TCFILL: nr_tracks_founds not filled if no hits * in event. (F.H.Heinsius) * *::> VERSION 2.01/01 13/03/96 15.39.41 * * Updates in TCVER3 vertex fit from M.Lakata: * TXTGET: use error instead of error**2 for PWC/SVX * TCVRHZ: use IQ( +4) instead of Q() * * Fix format statements in TCVRHX. +REP,$KUMACS,HELP,1-32. *CMZU: 2.01/04 18/03/96 16.05.02 by F.-H.Heinsius *-- Obsolete *CMZ : 2.01/03 15/03/96 13.48.57 by F.-H.Heinsius *CMZU: 1.99/11 06/07/95 23.59.28 by Curtis A. Meyer *CMZU: 1.96/03 10/04/95 15.53.43 by Curtis A. Meyer *CMZU: 1.94/02 02/02/95 08.47.08 by Curtis A. Meyer *-- Author : Curtis A. Meyer 02.Nov.1994 +ADD,$KUMACS,INSTALL,0. *CMZU: 2.01/10 22/01/97 16.31.02 by M.T. Lakata *CMZU: 2.01/06 15/05/96 13.50.00 by F.-H.Heinsius *CMZU: 2.01/05 02/04/96 18.46.59 by F.-H.Heinsius *CMZ : 2.01/04 18/03/96 17.11.11 by F.-H.Heinsius *CMZ : 2.01/03 15/03/96 12.50.00 by F.-H.Heinsius +ADD,$KUMACS,INSTALL,29. * 16/03/96 Mark Lakata * Cleaned up install so that it works like cboff * * +REP,$KUMACS,INSTALL,35-71. * goto HELP for instructions * if [src]='X' Then goto help Endif If [src]='?' Then goto help Endif * * SRC Source code directory * if $os .eq. unix then if ( .not. ($FEXIST([SRC]) =1)) then mess Directory [SRC] does not exist. exitm endif endif message Putting source code files in [SRC] * * set defaults * BUILDLEVEL = LIB OBJECTSTAT = FALSE CCODEFLAG = TRUE DEBUGFLAG = FALSE GNUFLAG = FALSE INCFLAG = FALSE INTERNAL = FALSE locversion = '' cboffversion = '' Select . Select CCODE +REP,$KUMACS,INSTALL,77-133. Case $Upper([%I]) In (DEBUG) DEBUGFLAG = TRUE message ' compiling with debug flag (-g -C). ' (ALL) BUILDLEVEL = LIB OBJECTSTAT = KEEP (LIB) BUILDLEVEL = LIB (CAR) car locater.car exitm (SOURCE) BUILDLEVEL = SOURCE (OBJECT) BUILDLEVEL = OBJECT OBJECTSTAT = KEEP (CALIB) Select JDCALIBR message ' Calibration code has been selected. ' (INC) INCFLAG = TRUE message '* Creating #include files' (GNU) GNUFLAG = TRUE message ' Gnu Compilers being used. ' (DBGPRNT) Select DEBFALSE Select DEBPRINT Select DEBUGPAT Select DEBUGFIT Select DEBHELIX Select DEBVERTX message ' Debug print lines activated ' (DBGPRNTX) Select DEBFALSE Select DDDEBUG Select DEBPRINT Select DEBUGRAW Select DEBUGPAT Select DEBUGFIT Select DEBHELIX Select DEBVERTX message ' Extreme Debug print lines activated ' (BXIMPROVE) Select BXIMPROVE message ' BXIMPROVE selected ' (BXUSER) Select BXUSER message ' BXUSER selected ' (NOCCODE) CCODEFLAG = FALSE select -CCODE message ' Deselecting C code ' (HISTOG) Select TCHBOOK message ' Fast Fuzzy Histograms Selected ' (INTERNAL) Select INTERNAL INTERNAL = TRUE message ' Internal Locater commons selected ' (LOCVERSION:*) locversion = $SUBSTRING([%I],12,100) message '* Extracting Locater version '//[locversion] (CBOFFVERSION:*) cboffversion = $SUBSTRING([%I],14,100) message '* Extracting CBOFF version '//[cboffversion] (*) message '****************************************' message Error: Option $Upper([%I]) not understood. message '****************************************' FAIL = TRUE Endcase Enddo If [FAIL] = TRUE then goto help Endif if ([locversion] .ne. '' .and. [cboffversion] = '' ) .or. ([locversion] = '' .and. [cboffversion] .ne. '') then mess 'You must specific both LOCVERSION:x.xx/xx and CBOFFVERSION:y.yy/yy' exitm endif Message * Build Level = [BUILDLEVEL] Case $OS In (UNIX) cboffcmz = $CBCMZ/cboff.cmz (VMS) cboffcmz = CB$CMZ:cboff.cmz Endcase if ($fexist([cboffcmz]) = 1) then file [cboffcmz] -R else mess can not find [cboffcmz], check CBCMZ env var exitm endif +ADD,$KUMACS,INSTALL,145. (SOLARIS) Select SUN (LINUX) Select SUN +REP,$KUMACS,INSTALL,155-179. cext = c ext = f Case $MACHINE In (IBM) ext = fortran (VAX) ext = for (ALPHA) Case $OS In (VMS) ext = for Endcase Endcase * Set FORTRAN -LAN if [OBJECTSTAT] = KEEP Then XACL = -XACLP else XACL = -XADCLP endif IF [INCFLAG] = TRUE Then Case $OS In (UNIX) set '#include "$SEQ.inc"' -INC F77 FileCase Keep ext = F (VMS) set ' INCLUDE 'CB$INC:$SEQ.INC'' -INC F77 Endcase Else set . -inc EndIf * * Set up filenames for the extraction of the fortran code. * Case $OS In (UNIX) Set [SRC]/mklocater.sh [XACL] Set [SRC]/*.[ext] -F F77 Set [SRC]/*.[cext] -F C Set liblocater.a -L (VMS) Set [SRC]mklocater.com [XACL] Set [SRC]*.[ext] -F F77 Set [SRC]*.[cext] -F C Set LOCATER.OLB -L +REP,$KUMACS,INSTALL,188. (HPUX,SGI,SUN,DECS,IBMRT,SOLARIS,LINUX) DEBUGOPT=' -g -C' +REP,$KUMACS,INSTALL,210-276. Case $MACHINE In (HPUX) Set 'f77 -c'//[DEBUGOPT]//' +ppu $compfile' -C f77 Set 'cc -c -O -w '//[DEBUGCCC]//' $compfile' -C C (LINUX) Set 'g77 -c'//[DEBUGOPT]//' -w $compfile' -C f77 Set 'gcc -c'//[DEBUGCCC]//' -w $compfile' -C C (SUN,SOLARIS) Set 'f77 -c'//[DEBUGOPT]//' -w $compfile' -C f77 Set 'gcc -c'//[DEBUGCCC]//' -w $compfile' -C C (IBMRT) Set 'xlf -c'//[DEBUGOPT]//' -qextname $compfile' -C f77 Set 'cc -c -w '//[DEBUGCCC]//' $compfile' -C C (SGI) Set 'f77 -c'//[DEBUGOPT]//' $compfile G 3' -C f77 Set 'cc -c -w '//[DEBUGCCC]//' $compfile' -C C (DECS) Set 'f77 -c -w -Nl99 '//[DEBUGOPT]//' $compfile' -C f77 Set 'cc -c -w '//[DEBUGCCC]//' $compfile' -C C (VAX) Set 'FOR/OBJ=$compfile.OBJ'//[DEBUGOPT]//' $compfile' -C f77 Set 'CC/OBJ=$compfile.obj'//[DEBUGCCC]//' $compfile' -C C * (ALPHA) Case $OS In (VMS) Set 'FOR/SEPAR/OBJ=$compfile.OBJ'//[DEBUGOPT]//' $compfile' -C f77 Set 'CC/OBJ=$compfile.obj'//[DEBUGCCC]//' $compfile' -C C (UNIX) Set 'f77 -c -O -w -Nl99 '//[DEBUGOPT]//' $compfile' -C f77 Set 'cc -c -O -w '//[DEBUGCCC]//' $compfile' -C C Endcase * Endcase * IF [GNUFLAG] = TRUE THEN Set '`which g77` -c'//[DEBUGOPT]//' -w $compfile' -C f77 Set '`which gcc` -c'//[DEBUGCCC]//' -w $compfile' -C C Endif * IF [INTERNAL] = TRUE THEN if [locversion] = '' then Sequence //locater/tccommon else Sequence -V [locversion] //locater/tccommon endif Endif if [cboffversion] = '' then Sequence //cboff/commcb else Sequence -V [cboffversion] //cboff/commcb endif * * DO FORTRAN * set F77 -LAN Cd //locater Case [BUILDLEVEL] In (NONE) message * no code extracted (SOURCE) if [locversion] = '' then Cxtract * else Cxtract -V [locversion] * endif Message * fortran code extracted (OBJECT) if [locversion] = '' then Ccompile * else Ccompile -V [locversion] * endif Message * fortran objects created (LIB) if [locversion] = '' then Clib * else Clib -V [locversion] * endif Message * fortran code added to library EndCase * IF [CCODEFLAG] = TRUE Then * Set C -LAN * Cd //locater/tc_radon2 Case [BUILDLEVEL] In (NONE) message 'no code extracted' (SOURCE) Cxtract * Message * c extracted (OBJECT) CCompile * Message * c object files compiled (LIB) CLib * Message * c code added to library EndCase * Endif if [incflag] = true then mess ********** ! ! WARNING ! ! *************************************** mess The *.inc files may be duplicated in CBINC, and there is mess no guarantee that these include files match them. mess It is your responsibility to make sure that the include files mess are the same, otherwise you will have serious common block mess misalignment. mess The suggested method is to ONLY extract the code, then delete mess all these locally *.inc files, and then mess compile the code outside of CMZ using the -I$(CBINC) flag to mess verify that all the cb software uses the same include files found mess in CBINC. mess ******************************************************************* endif * END: * EXITM HELP: mess 'Command template:' mess 'UNIX: cmz -install locater [