28 |
#include "gpgene.inc" |
#include "gpgene.inc" |
29 |
#include "gpkey.inc" |
#include "gpkey.inc" |
30 |
|
|
31 |
INTEGER IACT,NUMVOL(20) |
INTEGER IACT,NUMVOL(20),numsens |
32 |
REAL DELOSS, TRAPAR(7),xyzspa(3),VPOS(3),xyzspac(3) |
REAL DELOSS, TRAPAR(7),xyzspa(3),VPOS(3),xyzspac(3) |
33 |
REAL BMAGNET(3),STRPOSL(3),STRPOSG(3) |
REAL BMAGNET(3),STRPOSL(3),STRPOSG(3) |
34 |
INTEGER ONCE |
INTEGER ONCE |
35 |
DATA ONCE /0/ |
DATA ONCE /0/ |
36 |
SAVE ONCE |
SAVE ONCE |
37 |
|
|
38 |
IF(NUMVOL(1).NE.0) THEN |
NSPEPLANE=INT((NUMVOL(2)-1)/6)+1 |
39 |
NSPEPLANE=NUMVOL(1) |
numsens=NUMVOL(2)-(NSPEPLANE-1)*6 |
|
ELSE IF(NUMVOL(1).EQ.0) THEN |
|
|
NSPEPLANE=6 |
|
|
ENDIF |
|
40 |
|
|
41 |
|
|
42 |
VPOS(1)=TRAPAR(1)-STEP/2.*TRAPAR(4) |
VPOS(1)=TRAPAR(1)-STEP/2.*TRAPAR(4) |
72 |
CALL GUFLD(VPOS,BMAGNET) |
CALL GUFLD(VPOS,BMAGNET) |
73 |
|
|
74 |
c |
c |
|
c to be checked |
|
75 |
c |
c |
76 |
xshift=xyzspa(1)+zdown*hallmob*1.e-4*BMAGNET(2)/10. |
xshift=xyzspa(1)+zdown*hallmob*1.e-4*BMAGNET(2)/10. |
77 |
IF(NSPEPLANE.EQ.6) xshift=xyzspa(1)- |
IF(NSPEPLANE.EQ.6) xshift=xyzspa(1)- |
111 |
qfract=0.5*erfc((xqdivjm1-xshift)/(sqrt(2.)*sigxi)) |
qfract=0.5*erfc((xqdivjm1-xshift)/(sqrt(2.)*sigxi)) |
112 |
+ -0.5*erfc((xqdivj-xshift)/(sqrt(2.)*sigxi)) |
+ -0.5*erfc((xqdivj-xshift)/(sqrt(2.)*sigxi)) |
113 |
|
|
114 |
proxtanti(NSPEPLANE,numvol(2),j)= |
proxtanti(NSPEPLANE,numsens,j)= |
115 |
+ proxtanti(NSPEPLANE,numvol(2),j)+delossmev*qfract |
+ proxtanti(NSPEPLANE,numsens,j)+delossmev*qfract |
116 |
IF(GLOBSTRIPX(NSPEPLANE,NUMVOL(2),J).EQ.0.) THEN |
IF(GLOBSTRIPX(NSPEPLANE,numsens,J).EQ.0.) THEN |
117 |
STRPOSL(1)=XSTRIP(J) |
STRPOSL(1)=XSTRIP(J) |
118 |
STRPOSL(2)=0. |
STRPOSL(2)=0. |
119 |
STRPOSL(3)=0. |
STRPOSL(3)=0. |
120 |
CALL GDTOM(STRPOSL,STRPOSG,1) |
CALL GDTOM(STRPOSL,STRPOSG,1) |
121 |
GLOBSTRIPX(NSPEPLANE,NUMVOL(2),J)=STRPOSG(1) |
GLOBSTRIPX(NSPEPLANE,numsens,J)=STRPOSG(1) |
122 |
ENDIF |
ENDIF |
123 |
|
|
124 |
enddo |
enddo |
157 |
qfract=0.5*erfc((yqdivjm1-xyzspa(2))/(sqrt(2.)*sigyi)) |
qfract=0.5*erfc((yqdivjm1-xyzspa(2))/(sqrt(2.)*sigyi)) |
158 |
+ -0.5*erfc((yqdivj-xyzspa(2))/(sqrt(2.)*sigyi)) |
+ -0.5*erfc((yqdivj-xyzspa(2))/(sqrt(2.)*sigyi)) |
159 |
|
|
160 |
proytanti(NSPEPLANE,numvol(2),j)= |
proytanti(NSPEPLANE,numsens,j)= |
161 |
+ proytanti(NSPEPLANE,numvol(2),j)+delossmev*qfract |
+ proytanti(NSPEPLANE,numsens,j)+delossmev*qfract |
162 |
|
|
163 |
IF(GLOBSTRIPY(NSPEPLANE,NUMVOL(2),J).EQ.0.) THEN |
IF(GLOBSTRIPY(NSPEPLANE,numsens,J).EQ.0.) THEN |
164 |
STRPOSL(1)=0. |
STRPOSL(1)=0. |
165 |
STRPOSL(2)=YSTRIP(J) |
STRPOSL(2)=YSTRIP(J) |
166 |
STRPOSL(3)=0. |
STRPOSL(3)=0. |
167 |
CALL GDTOM(STRPOSL,STRPOSG,1) |
CALL GDTOM(STRPOSL,STRPOSG,1) |
168 |
GLOBSTRIPY(NSPEPLANE,NUMVOL(2),J)=STRPOSG(2) |
GLOBSTRIPY(NSPEPLANE,numsens,J)=STRPOSG(2) |
169 |
ENDIF |
ENDIF |
170 |
|
|
171 |
enddo |
enddo |