*-- Author : Stephen Burke 13/03/95
SUBROUTINE FFHTHS(J1,J2,NPS,IMAP)
**********************************************************************
* *
* Fill per-hit monitoring histograms *
* *
* J1 and J2 are the indices of the first and last planes with hits *
* NPS is the number of planar segments *
* IMAP is the supermodule map *
* *
**********************************************************************
* sin and cos of the wedge angle
*KEEP,FKNPL.
*
* Per-track values can go in H1WORK; note that LTRUE and LFIRST must
* be set at least per event.
*
* This is about 36k words long; the remaining common blocks are
* about 3.6k in total. Some of this could be in /H1WORK/, but the
* blocks would have to be reorganised.
*
* /FKPROJ/
* /FKFILT/
* /FKSMTH/
* /FKINT/
* /FKRSID/
* /FKTRUE/
* /FKDBG/
*KEEP,FKFLAG.
*KEEP,FFSTEE.
*KEEP,FKRSID.
*KEEP,FKMEAS.
*KEEP,FKSMTH.
*KEEP,FFGEO.
*KEEP,FTHIST.
* indices of filter farm histos
*KEND.
*KEEP,BCS.
*KEEP,BOSMDL.
C ------BOSMDL
C ------
*KEEP,STFUNCT.
* index of element before row number IROW
* index of L'th element of row number IROW
* L'th integer element of the IROW'th row of bank with index IND
* L'th real element of the IROW'th row of bank with index IND
*KEND.
**********************************************************************
* Drift residuals
CALL SHS(3+II,0,SNGL(RSMT(1,JPL)))
IF (NPS.GT.1) CALL SHS(74+II,0,SNGL(RSMT(1,JPL)))
* Radius residuals for all hits, not just "good" ones
C IF (MES(JPL).EQ.2) CALL SHS(6,0,SNGL(RSMT(2,JPL)))
CALL SHS(6,0,RRES)
* Residuals vs. Q
CALL SHD(68,0,SNGL(RSMT(1,JPL)),Q)
CALL SHD(69,0,SNGL(RSMT(1,JPL)),Q)
C IF (MES(JPL).EQ.2) CALL SHD(70,0,SNGL(RSMT(2,JPL)),Q)
CALL SHD(70,0,RRES,Q)
* Unpack drift sign and hit number
CALL SBIT1(MASK,IWR)
CALL SBIT1(MASK,IWR)
CALL SBIT1(MASK,IWR)
CALL SBIT1(MASK2,IWR)
CALL SBIT1(MASK2,IWR)
CALL SBIT1(MASK2,IWR)
* Corrected drift distance
CALL SHS(77,0,DD(IWR)*(-1)**ISGN)
CALL SHS(78,0,DD(IWR)*(-1)**ISGN)
IF (DUNC.LT.0.5) CALL SHS(82+II,0,SNGL(RSMT(1,JPL)))
* Absolute drift coordinate
* Checksums (4 wire groups)
CALL SHS(77+2*II,0,C1)
IF (ABS(C1).LT.0.1) CALL SHS(78+2*II,0,C2)
IF (MASK2.EQ.15) CALL SHS(86+II,0,C2W)
CALL SHS(88+II,0,C2W)
* The rest are debug only
* Residuals vs. supermodule map
CALL SHD(64+II,0,SNGL(RSMT(1,JPL)),FLOAT(IMAP))
& CALL SHD(67,0,SNGL(RSMT(2,JPL)),FLOAT(IMAP))
*