*
* $Id$
*
* $Log$
*
*CMZ :  3.00/00 14/11/2000  09.13.05  by  Emiliano Mocchiutti
*CMZ :  2.01/00 05/04/2000  14.35.18  by  Marialuigia Ambriola
*CMZ :  2.00/00 03/03/2000  15.39.06  by  Francesco Cafagna
*CMZ :  1.00/02 08/02/96  17.12.36  by  Francesco Cafagna
*-- Author :    Francesco Cafagna   08/02/96
      SUBROUTINE GPCATV
************************************************************************
*                                                                      *
* Volumes definition for the TOP  anticoincidence counters             *
* Called by: GPGEO                                                     *
*                                                                      *
* Author: Francesco Cafagna, 08/02/96 16.58.49                         *
*                                                                      *
************************************************************************
#include "gpgeo.inc"
#include "gpmed.inc"
*
      INTEGER IROT,IVOLU,N,NMED,NUM
      REAL X,Y,Z
*EM:
      NMED=MSCIN
*
*  Define the CATL     volume
*
      CALL GSVOLU('CATL','BOX ',NMED,CATL, 3,IVOLU)
*
*  Define the CATT     volume
*
      CALL GSVOLU('CATT','BOX ',NMED,CATT, 3,IVOLU)
*
      NMED=MN2
*
*  Define the CATH     volume
*
      CALL GSVOLU('CATH','BOX ',NMED,CATH, 3,IVOLU)
*
*  Define the CATF     volume
*
      CALL GSVOLU('CATF','BOX ',NMED,CATF, 3,IVOLU)
*
      NMED=MAL
*
*  Define the CATB     volume
*
      CALL GSVOLU('CATB','BOX ',NMED,CATB, 3,IVOLU)
*
*  Define the CATO     volume
*
      CALL GSVOLU('CATO','BOX ',NMED,CATO, 3,IVOLU)
*
*  Define the CATP     volume
*
      CALL GSVOLU('CATP','BOX ',NMED,CATP, 3,IVOLU)
*
* Positioning volume CATT     into the mother CATB
*
      N = 1
C      X= CATL(1)-CATB(1)
C      Y= CATL(2)+(2.*CATT(2)-CATB(2))
      X = -CATT(1)
      Y = 0.
      Z = 0.
      CALL GSPOS('CATT',N,'CATB',X,Y,Z,0,'ONLY')
      N = 2
      X = -X
      Y = -Y
      Z = 0.
      CALL GSPOS('CATT',N,'CATB',X,Y,Z,0,'ONLY')
*
* Positioning volume CATL     into the mother CATB
*
      N = 1
C      X = -CATT(1)-(2.*CATL(1)-CATB(1))
C      Y = CATT(2)-CATB(2)
      X = -(2*CATT(1)+CATL(1))
      Y = 0.
      Z = 0.
      CALL GSPOS('CATL',N,'CATB',X,Y,Z,0,'ONLY')
      N = 2
      X = -X
      Y = -Y
      Z = 0.
      CALL GSPOS('CATL',N,'CATB',X,Y,Z,0,'ONLY')
*
* Positioning volume CATH     into the mother CATB
*
      N = 1
      X = 0.
      Y = 0.
      Z = 0.
      CALL GSPOS('CATH',N,'CATB',X,Y,Z,0,'ONLY')
*
* Positioning volume CATF     into the mother CATB
*
      N = 1
      X = -(2*CATT(1)+CATL(1))
      Y = CATL(2)+CATF(2)
      Z = 0.
      CALL GSPOS('CATF',N,'CATB',X,Y,Z,0,'ONLY')
      N = 2
      X = X
      Y = -Y
      Z = 0.
      CALL GSPOS('CATF',N,'CATB',X,Y,Z,0,'ONLY')
      N = 3
      X = -X
      Y = Y
      Z = 0.
      CALL GSPOS('CATF',N,'CATB',X,Y,Z,0,'ONLY')
      N = 4
      X = X
      Y = -Y
      Z = 0.
      CALL GSPOS('CATF',N,'CATB',X,Y,Z,0,'ONLY')

*
* Positioning volume CATP  into the mother CATB
*
      N = 1
      X = -CATH(1)+CATP(1)
      Y = 0.
      Z = 0.
      CALL GSPOS('CATP',N,'CATB',X,Y,Z,0,'ONLY')
      N = 2
      X = -X
      Y = Y
      Z = 0.
      CALL GSPOS('CATP',N,'CATB',X,Y,Z,0,'ONLY')
*
* Positioning volume CATO  into the mother CATB
*
      N = 1
      X = 0.
      Y = -CATH(2)+CATO(2)
      Z = 0.
      CALL GSPOS('CATO',N,'CATB',X,Y,Z,0,'ONLY')
      N = 2
      X = X
      Y = -Y
      Z = 0.
      CALL GSPOS('CATO',N,'CATB',X,Y,Z,0,'ONLY')
*
      RETURN
      END
