--- gpamela/gpspe/gpdspe.F 2005/07/25 11:53:21 3.2 +++ gpamela/gpspe/gpdspe.F 2005/12/05 12:15:21 3.3 @@ -1,7 +1,10 @@ * -* $Id: gpdspe.F,v 3.1.1.1 2002/07/11 16:02:13 cafagna Exp $ +* $Id: gpdspe.F,v 3.2 2005/07/25 11:53:21 cafagna Exp $ * * $Log: gpdspe.F,v $ +* Revision 3.2 2005/07/25 11:53:21 cafagna +* Several updates. See history for details +* * Revision 3.1.1.1 2002/07/11 16:02:13 cafagna * First GPAMELA release on CVS * @@ -23,6 +26,7 @@ ************************************************************************ #include "gcunit.inc" #include "gpphit.inc" + PARAMETER (RADDEG=57.295779) PARAMETER (NH=NHSPE,NHM=NHMSPE,NVOL=3) #include "gppdigi.inc" c +SEQ,GPDSPE. @@ -39,6 +43,7 @@ INTEGER NTRA,IDIG,LTRA,NPLANE,LKDN,NTDIGI,JJ INTEGER KDIGI(4),NUMBVD(NVOL) REAL XI,YI,XO,YO,PATH,DE,GPGAUS + REAL VPOS(3),BMAGNET(3),ANGLEX,ANGLEY,XMULT,YMULT,DXPOS,DYPOS * DATA NTRA,LTRA/1,1/ * @@ -138,6 +143,37 @@ PATHSPE(I) = VHITS(8,I) IPARSPE(I) = VHITS(9,I) P0SPE (I) = VHITS(10,I) +C +C ADD RESOLUTION SIMULATION TO XAVSPE +C + ANGLEX=0. + ANGLEY=0. + IF(ZOUTSPE(I).NE.ZINSPE(I)) THEN + ANGLEX=RADDEG*ATAN( ABS(XOUTSPE(I)-XINSPE(I) )/ + + ABS(ZOUTSPE(I)-ZINSPE(I) ) ) + ANGLEY=RADDEG*ATAN( ABS(YOUTSPE(I)-YINSPE(I) )/ + + ABS(ZOUTSPE(I)-ZINSPE(I) ) ) + ENDIF + VPOS(1)=XAVSPE(I) + VPOS(2)=YAVSPE(I) + VPOS(3)=ZAVSPE(I) + CALL GUFLD(VPOS,BMAGNET) + + CALL GPRSPE(ANGLEX,ANGLEY,BMAGNET,XMULT,YMULT,DXPOS,DYPOS) + + XAVSPE(I) = XAVSPE(I) + DXPOS + YAVSPE(I) = YAVSPE(I) + DYPOS + +C +C ADD RESOLUTION OF THE SHIFT INDUCED BY THE MAG. FIELD +C + + IF(ITRPB(I).LT.6) THEN + XAVSPE(I) = XAVSPE(I) - 2.64e-4/4.5*BMAGNET(2) + ELSE IF(ITRPB(I).EQ.6) THEN + XAVSPE(I) = XAVSPE(I) + 2.64e-4/4.5*BMAGNET(2) + ENDIF + ENDDO * * Loop on the hits retrived to fill the CWN common and the DIGI bank