]> git.uio.no Git - u/mrichter/AliRoot.git/blame - GEANT321/ggeom/grpar.F
Allow any Cherenkov-like particle to be transported
[u/mrichter/AliRoot.git] / GEANT321 / ggeom / grpar.F
CommitLineData
fe4da5cc 1*
2* $Id$
3*
4* $Log$
5* Revision 1.1.1.1 1995/10/24 10:20:55 cernlib
6* Geant
7*
8*
9#include "geant321/pilot.h"
10*CMZ : 3.21/02 29/03/94 15.41.30 by S.Giani
11*-- Author :
12 SUBROUTINE GRPAR(SHAP,NP,P,NDIV,STEP,C0,IN,GP,NSP,SP)
13C.
14C. ******************************************************************
15C. * *
16C. * ROUTINE TO COMPUTE RMIN AND RMAX FOR THE IN TH DIVISION *
17C. * OF NDIV DIVISIONS STARTING AT C0 WITH STEP OF STEP *
18C. * (FOR ISHAPE 5 & 6) AND TO INSERT THEM INTO THE SHAPE *
19C. * PARAMETER LIST FROM P OUTPUTING THE RESULT AS THE *
20C. * LIST SP. *
21C. * *
22C. * ==>Called by : not used *
23C. * Author A.McPherson ********* *
24C. * *
25C. ******************************************************************
26C.
27#include "geant321/gcunit.inc"
28 DIMENSION P(3),SP(5),GP(5)
29C.
30C. ------------------------------------------------------------------
31C.
32 ISH=SHAP
33 IF(ISH.NE.5)GO TO 5
34 NSP=3
35 SP(3)=P(3)
36 SP(2)=C0+STEP*IN
37 SP(1)=SP(2)-STEP
38 GO TO 99
39C
40 5 IF(ISH.LT.5.OR.ISH.GT.12) GO TO 90
41 IF(ISH.EQ.10) GO TO 90
42C
43 NSP=NP
44 DO 10 I=1,NP
45 10 SP(I)=P(I)
46C
47 IF(ISH.GT.6.AND.ISH.NE.9) GO TO 20
48 SP(2)=C0+STEP*IN
49 SP(1)=SP(2)-STEP
50 GO TO 99
51C
52 20 CONTINUE
53C
54 IF(ISH.GT.9) GO TO 30
55C
56 DR=(GP(3)-GP(2))/NDIV
57 SP(3)=GP(2)+DR*IN
58 SP(2)=SP(3)-DR
59 DR=(GP(5)-GP(4))/NDIV
60 SP(5)=GP(4)+DR*IN
61 SP(4)=SP(5)-DR
62 GO TO 99
63C
64 30 CONTINUE
65C
66C POLYGONS AND POLYCONES.
67C
68 IPNZ=3
69 IF(ISH.EQ.11) IPNZ=4
70 NZ=GP(IPNZ)
71C
72 DO 40 IZ=1,NZ
73C
74 IPZ=IPNZ+IZ*3-2
75 OR=GP(IPZ+1)
76 ST=(GP(IPZ+2)-OR)/NDIV
77 SP(IPZ+2)=OR+ST*IN
78 SP(IPZ+1)=SP(IPZ+2)-ST
79C
80 40 CONTINUE
81C
82 GO TO 99
83C
84 90 CONTINUE
85 WRITE(CHMAIL,1000) ISH
86 CALL GMAIL(0,0)
87C
88 1000 FORMAT(' SHAPE #',I5,' AS A DIVISION IN R NOT YET IMPLEMENTED')
89 99 RETURN
90 END