* * $Id: gptofv.F,v 3.3 2006/04/09 23:29:22 cafagna Exp $ * * $Log: gptofv.F,v $ * Revision 3.3 2006/04/09 23:29:22 cafagna * Several new things, among this: ND and CARD * * Revision 3.2 2005/06/21 02:42:29 cafagna * Major modification to the geometry and to the random number chain * * Revision 3.1.1.1 2002/07/11 16:02:01 cafagna * First GPAMELA release on CVS * * *CMZ : 2.01/00 05/04/2000 14.35.18 by Marialuigia Ambriola *CMZ : 2.00/00 03/03/2000 15.39.05 by Francesco Cafagna *CMZ : 1.02/00 21/10/99 16.30.25 by Francesco Cafagna *CMZ : 1.00/02 18/03/96 17.18.03 by Francesco Cafagna *-- Author : Francesco Cafagna 05/12/95 SUBROUTINE GPTOFV ************************************************************************ * * * Volumes definition for the scintillators counters * * Called by: GPGEO * * Author: Francesco Cafagna, 05/12/95 13.39.41 * * * ************************************************************************ #include "gpgeo.inc" #include "gpmed.inc" * INTEGER IROT,IVOLU,N,NMED,NUM REAL X,Y,Z * NMED=MAL * * Define the S1 volume * CALL GSVOLU('S1 ','BOX ',NMED,S1, 3,IVOLU) * * Define the S2 volume * CALL GSVOLU('S2 ','BOX ',NMED,S2, 3,IVOLU) * NMED=MN2 * * Define the S1A volume * CALL GSVOLU('S1A ','BOX ',NMED,S1A, 3,IVOLU) * * Define the S2A volume * CALL GSVOLU('S2A ','BOX ',NMED,S2A, 3,IVOLU) * * Define the S3A volume * CALL GSVOLU('S3A ','BOX ',NMED,S3A, 3,IVOLU) * NMED=MMYL * * Define the S11M volume * CALL GSVOLU('S11M','BOX ',NMED,S11M, 3,IVOLU) * * Define the S12M volume * CALL GSVOLU('S12M','BOX ',NMED,S12M, 3,IVOLU) * * Define the S21M volume * CALL GSVOLU('S21M','BOX ',NMED,S21M, 3,IVOLU) * * Define the S22M volume * CALL GSVOLU('S22M','BOX ',NMED,S22M, 3,IVOLU) * * Define the S31M volume * CALL GSVOLU('S31M','BOX ',NMED,S31M, 3,IVOLU) * * Define the S32M volume * CALL GSVOLU('S32M','BOX ',NMED,S32M, 3,IVOLU) * * * Change medium just for S4. * NMED=MSCIN * * Define the S4 volume * CALL GSVOLU('S4 ','BOX ',NMED,S4, 3,IVOLU) * * Start subvolume definition. * * * Define the S11Y volume * CALL GSVOLU('S11Y','BOX ',NMED,S11Y, 3,IVOLU) * * Define the S12X volume * CALL GSVOLU('S12X','BOX ',NMED,S12X, 3,IVOLU) * * Define the S21X volume * CALL GSVOLU('S21X','BOX ',NMED,S21X, 3,IVOLU) * * Define the S22Y volume * CALL GSVOLU('S22Y','BOX ',NMED,S22Y, 3,IVOLU) * * Define the S31Y volume * CALL GSVOLU('S31Y','BOX ',NMED,S31Y, 3,IVOLU) * * Define the S32X volume * CALL GSVOLU('S32X','BOX ',NMED,S32X, 3,IVOLU) c$$$<<<<<<< gptofv.F c$$$======= c$$$c ml: 21/12/04: c$$$ NMED=MAL c$$$* c$$$* Define the SC11 volume c$$$* c$$$ CALL GSVOLU('SC11','BOX ',NMED,SC11, 3,IVOLU) c$$$* c$$$* Define the SC12 volume c$$$* c$$$ CALL GSVOLU('SC12','BOX ',NMED,SC12, 3,IVOLU) c$$$* c$$$* Define the SC21 volume c$$$* c$$$ CALL GSVOLU('SC21','BOX ',NMED,SC21, 3,IVOLU) c$$$* c$$$* Define the SC22 volume c$$$* c$$$ CALL GSVOLU('SC22','BOX ',NMED,SC22, 3,IVOLU) c$$$ c$$$>>>>>>> 3.3 c* c* Define the STOF volume c* c NMED=MAL c CALL GSVOLU('STOF','BOX ',NMED,STOF, 3,IVOLU) c* c* Define the SGLU volume c* cC COLLA ARALDITICA (DA VERIFICARNE LA COMPOSIZIONE) c NMED=MSIC c CALL GSVOLU('SGLU','BOX ',NMED,SGLU, 3,IVOLU) c* c* Define the SPV1 volume c* c NMED=? (PVC espanso) c CALL GSVOLU('SPV1','BOX ',NMED,SPV1, 3,IVOLU) c* c* Define the SMYL volume c* c NMED=? (MYLAR) c CALL GSVOLU('SMYL','BOX ',NMED,SMYL, 3,IVOLU) c* c* Define the SPV2 volume c* c NMED=? (PVC espanso) c CALL GSVOLU('SPV2','BOX ',NMED,SPV2, 3,IVOLU) cc end ml. * * Positioning volumes * X=0. Y=0. Z=0. CALL GSPOS('S1A ',N,'S1 ',X,Y,Z,0,'ONLY') * X=0. Z=-S1A(3)+HGLUTOF+HPVCMIN+S12M(3) DO I=1,NS12X N= I Y= -S1A(2) + HMYLTOF + (2*I-1)*S12M(2) CALL GSPOS('S12M',N,'S1A ',X,Y,Z,0,'ONLY') ENDDO Y= 0. Z=-S1A(3)+HGLUTOF+HPVCMIN+2*S12M(3)+S11M(3) DO I=1,NS11Y N= I X= -S1A(1) + HMYLTOF + (2*I-1)*S11M(1) CALL GSPOS('S11M',N,'S1A ',X,Y,Z,0,'ONLY') ENDDO C Z=-S1A(3)+HGLUTOF+HPVCMAX+S12M(3) C CALL GSPOS('S12M',N,'S1A ',X,Y,Z,0,'ONLY') C Z=-S1A(3)+HGLUTOF+0.4+2*S12M(3)+S11M(3) C CALL GSPOS('S11M',N,'S1A ',X,Y,Z,0,'ONLY') * X=0. Y=0. Z=0. CALL GSPOS('S2A ',N,'S2 ',X,Y,Z,0,'ONLY') * Y= 0. Z=-S2A(3)+HGLUTOF+S22M(3) DO I=1,NS22Y N= I X= -S2A(1) + HMYLTOF + (2*I-1)*S22M(1) CALL GSPOS('S22M',N,'S2A ',X,Y,Z,0,'ONLY') ENDDO * X= 0. Z=-S2A(3)+HGLUTOF+2*S22M(3)+S21M(3) DO I=1,NS21X N= I Y= -S2A(2) + HMYLTOF+ (2*I-1)*S21M(2) CALL GSPOS('S21M',N,'S2A ',X,Y,Z,0,'ONLY') ENDDO C Z=-S2A(3)+HGLUTOF+S22M(3) C CALL GSPOS('S22M',N,'S2A ',X,Y,Z,0,'ONLY') C Z=-S2A(3)+HGLUTOF+2*S22M(3)+S21M(3) C CALL GSPOS('S21M',N,'S2A ',X,Y,Z,0,'ONLY') * X= 0. Z=-S3A(3)+HAIRS3+S32M(3) DO I=1,NS32X N= I Y= -S3A(2)+ (2*I-1)*S32M(2) CALL GSPOS('S32M',N,'S3A ',X,Y,Z,0,'ONLY') ENDDO * Y= 0. Z= -S3A(3)+HAIRS3+2*S32M(3)+HAIRS3+S31M(3) DO I=1,NS31Y N= I X= -S3A(1)+(2*I-1)*S31M(1) CALL GSPOS('S31M',N,'S3A ',X,Y,Z,0,'ONLY') ENDDO * C Z=-S3A(3)+HAIRS3+S32M(3) C CALL GSPOS('S32M',N,'S3A ',X,Y,Z,0,'ONLY') C Z=-S32(3)+HAIRS3+2*S32M(3)+HAIRS3+S31M(3) C CALL GSPOS('S31M',N,'S3A ',X,Y,Z,0,'ONLY') **************************************** c ml: 21/12/04: X=0. Y= 0. Z= 0. N=1 c ml: 27/10/04: c DO I=1,NS11Y c N= I c X= -S11M(1) + HMYLTOF + (2*I-1)*S11Y(1) CALL GSPOS('S11Y',N,'S11M',X,Y,Z,0,'ONLY') c ENDDO c end ml. * X= 0. Y=0. Z= 0. N=1 c ml: 27/10/04 C DO I=1,NS12X C N= I C Y= -S11M(2) + HMYLTOF + (2*I-1)*S12X(2) CALL GSPOS('S12X',N,'S12M',X,Y,Z,0,'ONLY') C ENDDO c end ml. * X=0. y=0. Z= 0. N=1 C DO I=1,NS21X C N= I c Y= -S21M(2) + HMYLTOF+ (2*I-1)*S21X(2) CALL GSPOS('S21X',N,'S21M',X,Y,Z,0,'ONLY') C ENDDO * X=0. Y= 0. Z= 0. N=1 C DO I=1,NS22Y C N= I C X= -S22M(1) + HMYLTOF + (2*I-1)*S22Y(1) CALL GSPOS('S22Y',N,'S22M',X,Y,Z,0,'ONLY') C ENDDO c* c* Positioning volumes into S11: c+ c X=0. c Y=0. c Z=-S11(3)+SMYL(3) c N=1 c CALL GSPOS('SMYL',N,'SMYL',X,Y,Z,0,'ONLY') c Z=Z+SMYL(3)+S11Y(3) c DO I=1,NS11Y c N= I c X= -S11(1) + (2*I-1)*S11Y(1) c CALL GSPOS('S11Y',N,'S11 ',X,Y,Z,0,'ONLY') c ENDDO c N=2 c Z=Z+S11Y(3)+SMYL(3) c CALL GSPOS('SMYL',N,'SMYL',X,Y,Z,0,'ONLY') c Z=Z+SMYL(3)+SPV1(3) c N=1 c CALL GSPOS('SPV1',N,'SPV1',X,Y,Z,0,'ONLY') c Z=Z+SPV1(3)+SGLU(3) c N=1 c CALL GSPOS('SGLU',N,'SGLU',X,,Y,Z,0,'ONLY') c Z=Z+SGLU(3)+STOF(3) c N=1 c CALL GSPOS('STOF',N,'STOF',X,Y,Z,0,'ONLY') c* c* Positioning volumes into S12: c* c Z=-S12(3)+STOF(3) c N=2 c CALL GSPOS('STOF',N,'STOF',X,Y,Z,0,'ONLY') c Z=Z+STOF(3)+SGLU(3) c CALL GSPOS('SGLU',N,'SGLU',X,Y,Z,0,'ONLY') c Z=Z+SGLU(3)+SPV2 Y= 0. Z= -S31M(3)+HMYLTOF+S31Y(3) N=1 C DO I=1,NS31Y C N= I C X= -S31M(1) + HMYLTOF+(2*I-1)*S31Y(1) X= -S31M(1) + 2*(HMYLTOF/2)+S31Y(1) CALL GSPOS('S31Y',N,'S31M',X,Y,Z,0,'ONLY') C ENDDO * X= 0. Z= -S32M(3)+HMYLTOF+S32X(3) N=1 C DO I=1,NS32X C N= I C Y= -S32M(2) + HMYLTOF+ (2*I-1)*S32X(2) Y= -S32M(2) + 2*(HMYLTOF/2)+ S32X(2) CALL GSPOS('S32X',N,'S32M',X,Y,Z,0,'ONLY') C ENDDO * RETURN END