[807] | 1 | |
---|
| 2 | SUBROUTINE UGLAST |
---|
| 3 | * |
---|
| 4 | * Termination routine to print histograms and statistics |
---|
| 5 | * |
---|
| 6 | #include "geant321/gcflag.inc" |
---|
| 7 | #include "geant321/gckine.inc" |
---|
| 8 | #include "geant321/gctrak.inc" |
---|
| 9 | #include "calor.inc" |
---|
| 10 | #include "celoss.inc" |
---|
| 11 | #include "histo.inc" |
---|
| 12 | * |
---|
| 13 | CHARACTER*20 parnam,matnam |
---|
| 14 | CHARACTER*4 unit1,unit2 |
---|
| 15 | * |
---|
| 16 | * *** run summary |
---|
| 17 | PRINT 749 |
---|
| 18 | call GFPART (Ikine,parnam,ityp,dum,duc,dut,udu,idu) |
---|
| 19 | call GFMATE (Imat ,matnam,dua,duz,dud,dur,dui,udu,idu) |
---|
| 20 | CALL GEVKEV (pkine(1),Ekine,unit1) |
---|
| 21 | PRINT 750, Ievent,parnam,Ekine,unit1,sizeX,matnam |
---|
| 22 | PRINT 749 |
---|
| 23 | * |
---|
| 24 | fnorm = 1./Ievent |
---|
| 25 | * |
---|
| 26 | * *** total energy deposit |
---|
| 27 | Etot = fnorm*Etot |
---|
| 28 | Etot2 = fnorm*Etot2 |
---|
| 29 | rms = sqrt(abs(Etot2-Etot**2)) |
---|
| 30 | * |
---|
| 31 | CALL GEVKEV (Etot,aveE,unit1) |
---|
| 32 | CALL GEVKEV (rms ,rmsE ,unit2) |
---|
| 33 | PRINT 752, aveE,unit1,rmsE,unit2 |
---|
| 34 | * |
---|
| 35 | * *** track length of primary track |
---|
| 36 | TrLen = fnorm*TrLen |
---|
| 37 | TrLen2 = fnorm*TrLen2 |
---|
| 38 | rms = sqrt(abs(TrLen2-TrLen**2)) |
---|
| 39 | PRINT 753, TrLen,rms |
---|
| 40 | * |
---|
| 41 | * *** compare with csda range from table |
---|
| 42 | call GFTMAT(Imat,ikine,'RANG',1,pkine(1),csdaRang,dum,ixst) |
---|
| 43 | PRINT 763, csdaRang |
---|
| 44 | * |
---|
| 45 | * *** projected range of primary track |
---|
| 46 | XTrLen = fnorm*XTrLen |
---|
| 47 | XTrLen2 = fnorm*XTrLen2 |
---|
| 48 | rms = sqrt(abs(XTrLen2-XTrLen**2)) |
---|
| 49 | PRINT 754, XTrLen,rms |
---|
| 50 | * |
---|
| 51 | * *** nb of steps and step size of primary track |
---|
| 52 | fNbStep = fnorm*NbStep |
---|
| 53 | fNbStep2 = fnorm*NbStep2 |
---|
| 54 | rms1 = sqrt(abs(fNbStep2-fNbStep**2)) |
---|
| 55 | * |
---|
| 56 | StepLen = fnorm*StepLen |
---|
| 57 | StepLen2 = fnorm*StepLen2 |
---|
| 58 | rms2 = sqrt(abs(StepLen2-StepLen**2)) |
---|
| 59 | PRINT 755, fNbStep,rms1,StepLen,rms2 |
---|
| 60 | * |
---|
| 61 | * *** transmission coefficients |
---|
| 62 | absorbed = fnorm*100*kcoef(1) |
---|
| 63 | transmit = fnorm*100*kcoef(2) |
---|
| 64 | reflected = fnorm*100*kcoef(3) |
---|
| 65 | PRINT 756, absorbed, transmit, reflected |
---|
| 66 | * |
---|
| 67 | PRINT 749 |
---|
| 68 | * |
---|
| 69 | * *** geant termination |
---|
| 70 | CALL GLAST |
---|
| 71 | * |
---|
| 72 | * *** close HIGZ |
---|
| 73 | CALL HPLEND |
---|
| 74 | * |
---|
| 75 | * *** Save histo |
---|
| 76 | if (iswit(2).eq.1) then |
---|
| 77 | write(6,99) fileName |
---|
| 78 | 99 format(/,15x,'histogram file --> Name: ',A25) |
---|
| 79 | CALL HRPUT(0,fileName,'N') |
---|
| 80 | endif |
---|
| 81 | * |
---|
| 82 | * *** formats |
---|
| 83 | 749 FORMAT(/, 60(1H-),/) |
---|
| 84 | 750 FORMAT( 1X,'The run is',I8,1X,A10,' of',F8.2,A4,' through ', |
---|
| 85 | & E12.4,' cm of ',A10) |
---|
| 86 | 752 FORMAT( 1X,'Total Energy deposited = ', |
---|
| 87 | & F8.3, A4,' +- ', F8.3, A4) |
---|
| 88 | 753 FORMAT(/,1X,'Track length of primary track = ', |
---|
| 89 | & E12.5,' cm +- ', E12.5,' cm') |
---|
| 90 | 763 FORMAT( 1X,'csda Range from table = ', |
---|
| 91 | & E12.5,' cm') |
---|
| 92 | 754 FORMAT(/,1X,'Projected range = ', |
---|
| 93 | & E12.5,' cm +- ', E12.5,' cm') |
---|
| 94 | 755 FORMAT(/,1X,'Nb of steps of primary track = ', |
---|
| 95 | & F6.2,' +- ', F6.2, |
---|
| 96 | & 3X,'Step size = ', E12.5,' cm +- ', E12.5,' cm') |
---|
| 97 | 756 FORMAT(/,1X,'absorbed = ',F6.2,' %',3X,'transmit = ', F6.2,' %', |
---|
| 98 | & 3X,'reflected = ', F6.2,' %') |
---|
| 99 | * |
---|
| 100 | END |
---|