]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - GEANT321/ggeom/ggdspe.F
Merging the VirtualMC branch to the main development branch (HEAD)
[u/mrichter/AliRoot.git] / GEANT321 / ggeom / ggdspe.F
diff --git a/GEANT321/ggeom/ggdspe.F b/GEANT321/ggeom/ggdspe.F
deleted file mode 100644 (file)
index 66a8eab..0000000
+++ /dev/null
@@ -1,252 +0,0 @@
-*
-* $Id$
-*
-* $Log$
-* Revision 1.1.1.1  1999/05/18 15:55:17  fca
-* AliRoot sources
-*
-* Revision 1.1.1.1  1995/10/24 10:20:49  cernlib
-* Geant
-*
-*
-#include "geant321/pilot.h"
-*CMZ :  3.21/02 29/03/94  15.41.28  by  S.Giani
-*-- Author :
-      SUBROUTINE GGDSPE (JVO, NPAR, PAR, NL, NDIV, ORIG, STEP)
-C.
-C.    ******************************************************************
-C.    *                                                                *
-C.    *    SUBR. GGDSPE (JVO,NPAR,PAR,NL*,NDIV*,ORIG*,STEP*)           *
-C.    *                                                                *
-C.    *   Computes the actual division parameters of the mother volume *
-C.    *    at address JVO with actual parameters in NPAR, PAR          *
-C.    *   Returns the division parameters NDIV, ORIG, STEP and the     *
-C.    *    number of different division cells NL                       *
-C.    *                                                                *
-C.    *   Called by : GGDVLP                                           *
-C.    *   Author    : S.Banerjee                                       *
-C.    *               (Original algorithms of A.McPherson)             *
-C.    *                                                                *
-C.    ******************************************************************
-C.
-#include "geant321/gcbank.inc"
-#include "geant321/gcflag.inc"
-#include "geant321/gcunit.inc"
-C.
-      PARAMETER (NPAMAX=50)
-C.
-      DIMENSION PAR(*)
-C.
-      REAL      PARM(NPAMAX)
-      INTEGER   IDTYP(12)
-      SAVE IDTYP
-      DATA      IDTYP / 1, 1, 1, 1, 2, 2, 3, 3, 4, 1, 6, 6/
-C.
-C.    ------------------------------------------------------------------
-*
-* *** Get the division parameters from JVOLUM structure and check if
-*         these have to be developed
-*
-      JIN   = LQ(JVO-1)
-      IAXIS = Q(JIN+1)
-      NDIV  = Q(JIN+3)
-      ORIG  = Q(JIN+4)
-      STEP  = Q(JIN+5)
-*
-      ISHM  = Q(JVO+2)
-      IDTY  = IDTYP(ISHM)
-      NPARM = Q(JVO+5)
-      IF (NPARM.GT.0) THEN
-         CALL UCOPY (Q(JVO+7), PARM, NPARM)
-      ELSE
-         NPARM = NPAR
-         CALL VFILL (PARM, NPARM, -1.0)
-      ENDIF
-*
-* *** Find the actual division parameters
-*
-      IF (IDTY.EQ.1) THEN
-*
-* BOX, TRD1, TRD2, TRAP, PARA
-*
-         IF (ISHM.EQ.4) THEN
-            IPAR = 1
-         ELSE IF (ISHM.EQ.10) THEN
-            IPAR = IAXIS
-         ELSE
-            IPAR = IAXIS + ISHM - 1
-         ENDIF
-         IF (PARM(IPAR).LT.0.0) ORIG = -PAR(IPAR)
-         IF (STEP.LE.0.0) THEN
-            STEP = (PAR(IPAR) - ORIG) / NDIV
-         ELSE IF (NDIV.LE.0) THEN
-            NDIV = (PAR(IPAR) - ORIG + 0.001) / STEP
-         ENDIF
-         IF (PARM(IPAR).LT.0.0) ORIG = -0.5 * STEP * NDIV
-         IF (ISHM.EQ.1.OR.ISHM.EQ.10.OR.(ISHM.EQ.2.AND.IAXIS.EQ.2)) THEN
-            NL = 1
-         ELSE
-            NL = NDIV
-         ENDIF
-*
-      ELSE IF (IDTY.EQ.4) THEN
-*
-* SPHE
-*
-         IF (IAXIS.EQ.1.OR.IAXIS.EQ.2) THEN
-            IAX1 = 2*IAXIS - 1
-            IAX2 = IAX1 + 1
-            IF (PARM(IAX1).LT.0.0) ORIG = PAR(IAX1)
-            IF (STEP.LE.0.0) THEN
-               STEP = (PAR(IAX2) - ORIG) / NDIV
-            ELSE IF (NDIV.LE.0) THEN
-               NDIV = (PAR(IAX2) - ORIG + 0.001) / STEP
-            ENDIF
-            IF (PARM(IAX1).LT.0.0) ORIG = 0.5*(ORIG+PAR(IAX2)-STEP*NDIV)
-            NL = NDIV
-         ELSE
-            IF (STEP.LE.0.0.OR.NDIV.LE.0) THEN
-               DP = PAR(6) - PAR(5)
-               IF (DP.LT.0.0) DP = DP + 360.0
-               IF (ORIG.LT.PAR(5)) ORIG = ORIG + 360.0
-               IF (ORIG-PAR(5).GT.DP) THEN
-                  PMIN = PAR(5)
-                  GO TO 910
-               ENDIF
-               DP = PAR(6) - ORIG
-               IF (DP.LT.0.0) DP = DP + 360.0
-               IF (NDIV.LE.0) THEN
-                  NDIV = (DP + 0.001) /STEP
-                  IF (NDIV.LE.0) GO TO 920
-               ELSE
-                  STEP = DP / NDIV
-               ENDIF
-            ENDIF
-            NL = 1
-         ENDIF
-*
-      ELSE IF (IDTY.EQ.2.OR.IDTY.EQ.3.OR.IDTY.EQ.6) THEN
-*
-* TUBE, TUBS, CONE, CONS, PGON, PCON
-*
-         IF (IAXIS.EQ.3) THEN
-            IF (IDTY.NE.6) THEN
-               IF (IDTY.EQ.2) THEN
-                  IPAR = 3
-               ELSE
-                  IPAR = 1
-               ENDIF
-           
-               IF (PARM(IPAR).LT.0.0) ORIG = -PAR(IPAR)
-               IF (STEP.LE.0.0) THEN
-                  STEP = (PAR(IPAR) - ORIG) / NDIV
-               ELSE IF (NDIV.LE.0) THEN
-                  NDIV = (PAR(IPAR) - ORIG + 0.001) / STEP
-               ENDIF
-               IF (PARM(IPAR).LT.0.0) ORIG = -0.5 * STEP * NDIV
-               IF (IDTY.EQ.2) THEN
-                  NL = 1
-               ELSE
-                  NL = NDIV
-               ENDIF
-            ELSE
-               IF (ISHM.EQ.11) THEN
-                  NZ = PAR(4)
-               ELSE
-                  NZ = PAR(3)
-               ENDIF
-               IF (NDIV.LE.0.OR.STEP.LE.0.0.OR.NZ.GT.0) GO TO 930
-               NL = NDIV
-            ENDIF
-*
-         ELSE IF (IAXIS.EQ.2) THEN
-            IF (STEP.LE.0.0.OR.NDIV.LE.0) THEN
-               IF (ISHM.EQ.5.OR.ISHM.EQ.7) THEN
-                  PMIN = ORIG
-                  PMAX = ORIG + 360.0
-                  DP   = 360.0
-               ELSE IF (ISHM.EQ.6.OR.ISHM.EQ.8) THEN
-                  PMIN = PAR(NPAR-1)
-                  PMAX = PAR(NPAR)
-                  DP   = PMAX - PMIN
-               ELSE
-                  PMIN = PAR(1)
-                  DP   = PAR(2)
-                  PMAX = PMIN + DP
-                  ORIG = PMIN
-               ENDIF
-               IF (DP.LT.0.0) DP = DP + 360.0
-               IF (ORIG.LT.PMIN) ORIG = ORIG + 360.0
-               IF (ORIG-PMIN.GT.DP) GO TO 910
-               DP = PMAX - ORIG
-               IF (DP.LT.0.0) DP = DP + 360.0
-               IF (NDIV.LE.0) THEN
-                  NDIV = (DP + 0.001) / STEP
-                  IF (NDIV.LE.0) GO TO 920
-               ELSE
-                  STEP = DP / NDIV
-               ENDIF
-            ENDIF
-            NL = 1
-*
-         ELSE
-            IF (IDTY.NE.6) THEN
-               IF (IDTY.EQ.2) THEN
-                  IAX1 = 1
-                  IAX2 = 2
-               ELSE
-                  IAX1 = 2
-                  IAX2 = 3
-               ENDIF
-               IF (PARM(IAX1).LT.0.0) ORIG = PAR(IAX1)
-               IF (STEP.LE.0.0) THEN
-                  STEP = (PAR(IAX2) - ORIG) / NDIV
-               ELSE IF (NDIV.LE.0) THEN
-                  NDIV = (PAR(IAX2) - ORIG + 0.001) / STEP
-               ENDIF
-               IF (PARM(IAX1).LT.0.0)
-     +            ORIG = ORIG + 0.5 * (PAR(IAX2)-ORIG-STEP*NDIV)
-               NL = NDIV
-            ELSE
-               IF (STEP.LE.0.0.OR.NDIV.LE.0) THEN
-                  IF (ISHM.EQ.11) THEN
-                     NZ = PAR(4)
-                  ELSE
-                     NZ = PAR(3)
-                  ENDIF
-                  GO TO 930
-               ENDIF
-               NL = NDIV
-            ENDIF
-         ENDIF
-*
-      ELSE
-         GO TO 900
-      ENDIF
-      GO TO 999
-*
-  900 WRITE (CHMAIL, 1001) ISHM, IAXIS
-      GO TO 990
-*
-  910 WRITE (CHMAIL, 1002) ISHM, IAXIS, PMIN, DP, ORIG
-      GO TO 990
-*
-  920 WRITE (CHMAIL, 1003) ISHM, IAXIS, NDIV, DP, STEP
-      GO TO 990
-*
-  930 WRITE (CHMAIL, 1004) ISHM, IAXIS, NDIV, NZ, STEP
-*
-  990 CALL GMAIL (0, 0)
-      IEORUN = 1
-*
- 1001 FORMAT (' GGDSPE : Invalid call ISHM,IAXIS=',2I5)
- 1002 FORMAT (' GGDSPE : Error ISHM,IAXIS,PMIN,DP,ORIG=',2I5,3G12.4)
- 1003 FORMAT (' GGDSPE : Error ISHM,IAXIS,NDIV,DP,STEP=',3I5,2G12.4)
- 1004 FORMAT (' GGDSPE : Error ISHM,IAXIS,NDIV,NZ,STEP=',4I5,G12.4)
-*                                                             END GGDSPE
-  999 END
-
-
-
-
-