| [1350] | 1 | README for SurfaceChecker
|
|---|
| 2 |
|
|---|
| 3 |
|
|---|
| 4 |
|
|---|
| 5 | History:
|
|---|
| 6 | ----------------------------------
|
|---|
| 7 |
|
|---|
| 8 | 19.Dec 05
|
|---|
| 9 | - Code is now using GetPointOnSurface()
|
|---|
| 10 | - Added new elliptic solid EllipticalCone
|
|---|
| 11 | - Added Tet
|
|---|
| 12 |
|
|---|
| 13 | 26.July 05
|
|---|
| 14 | - Added support for segmented torus (fPhi,fPhiSegment)
|
|---|
| 15 |
|
|---|
| 16 | 25.July 05
|
|---|
| 17 | - Sphere, Shell and other G4Sphere objects are now using the same
|
|---|
| 18 | code of SurfacePoint generation.
|
|---|
| 19 | - Added code for
|
|---|
| 20 | * small shells: Q2Shell Q3Shell Q4Shell Q5Shell Q6Shell Q7Shell Q8Shell
|
|---|
| 21 | * special regular spheres: HalfSphere HollowSphere HalfHollowSphere
|
|---|
| 22 |
|
|---|
| 23 | 4.July 05
|
|---|
| 24 | - Added Ellipsoid to the check
|
|---|
| 25 |
|
|---|
| 26 | 1.July 05
|
|---|
| 27 | - SurfaceChecker supports now G4Sphere("aSphere",rmin,rmax,phi,dphi,theta,dtheta) without
|
|---|
| 28 | restricting the parameters.
|
|---|
| 29 | - corrected error in the surface equation of the twisted tubs solid. (The edge of the hyperbolic
|
|---|
| 30 | surface was not compatible with the implementation in G4TwistedTubs).
|
|---|
| 31 |
|
|---|
| 32 | 31.May 05
|
|---|
| 33 | - change in singlesolid.kumac:
|
|---|
| 34 | added an argument in order to specifiy the name of
|
|---|
| 35 | the hbook file directly, e.g
|
|---|
| 36 | PAW>> exec singlesolid hbk/yourfile.hbk
|
|---|
| 37 | - corrected a misleading information in extract.pl
|
|---|
| 38 |
|
|---|
| 39 | 27.May 05
|
|---|
| 40 | - change in testall.pl: additionally executes at the end the paw macro single.kumac
|
|---|
| 41 | the default number of events is set to 100000
|
|---|
| 42 | - added a paw macro single.kumac:
|
|---|
| 43 | analyses systematically all hbook files found in folder hbk ( hbk/run_cone_10000.hbk )
|
|---|
| 44 | and produces two plots
|
|---|
| 45 | - solid-full.ps : comparing all solids in a full range (1e-12 to 1e5 mm)
|
|---|
| 46 | - solid-zoom.ps : comparing all solids in a reduced range (1e-12 to 1e-8 mm)
|
|---|
| 47 | Attention: only files respecting the naming rule run_solidname_nevents.hbk will be considered!
|
|---|
| 48 | - added a paw macro singlesolid.kumac:
|
|---|
| 49 | Can be used to to the same analysis for one single file only. No naming rule for the bhook file.
|
|---|
| 50 |
|
|---|
| 51 | 23.May 05
|
|---|
| 52 | - changed naming of general surface parameters (hbk only): now u,v insted of u,phi
|
|---|
| 53 | - Detector is directly selectable from macro file for the following solids:
|
|---|
| 54 | Torus (360 deg only, test of outer surface)
|
|---|
| 55 | Box (one side only)
|
|---|
| 56 | Sphere (solid sphere, 360 deg)
|
|---|
| 57 | Tube (solid tub, 360 deg)
|
|---|
| 58 | Orb
|
|---|
| 59 | Cone
|
|---|
| 60 | TwistedTubs (test of hyperbolic surface ; all parameters free)
|
|---|
| 61 | TwistedBox (test of 0deg side)
|
|---|
| 62 | TwistedTrd (test of 0deg side)
|
|---|
| 63 | TwistedTrap (regular case: equal endcaps, alpha=0, phi=0, theta=0 ; test of 0deg side)
|
|---|
| 64 | TwistedTrap2 (equal endcaps ; test of 0deg side )
|
|---|
| 65 | TwistedTrap3 (general case ; test of 0deg side )
|
|---|
| 66 | - Added testall.pl: a script to systematically test a list of solids with SurfaceChecker.
|
|---|
| 67 | Produces hbook files in folder hbk, eg. for 500 events and G4Box file will be named hbk/run_box_500.hbk
|
|---|
| 68 |
|
|---|
| 69 | Author:
|
|---|
| 70 | Oliver Link, Oliver.Link@cern.ch
|
|---|
| 71 | Thu May 19 14:50:39 CEST 2005
|
|---|
| 72 |
|
|---|
| 73 |
|
|---|
| 74 | SurfaceChecker
|
|---|
| 75 | ====================================
|
|---|
| 76 |
|
|---|
| 77 | The following two steps have to be executed in order:
|
|---|
| 78 |
|
|---|
| 79 | 1) SurfaceChecker run1.mac > data/yourfile.data
|
|---|
| 80 |
|
|---|
| 81 | Comments:
|
|---|
| 82 | - in run1.mac: select your detector (Box, Torus, Cons, Sphere, Orb, TwistedTrap..)
|
|---|
| 83 | - run1.mac can be replaced by some longer tests,e.g. runLong.mac
|
|---|
| 84 | - runspecial.mac is used to save the random number at the end of
|
|---|
| 85 | a given event. Restart with runSingle.mac at the previous random
|
|---|
| 86 | number position.
|
|---|
| 87 | - You have to redirect the output to a file in the directory
|
|---|
| 88 | "data", with the filename extension ".data".
|
|---|
| 89 |
|
|---|
| 90 | 2) extract.pl
|
|---|
| 91 |
|
|---|
| 92 | This perl script parses the output file (located in the "data"
|
|---|
| 93 | directory) and converts the information into a ntuple. The file will
|
|---|
| 94 | have the same name as your data file (e.g. yourfile.hbk) and will
|
|---|
| 95 | be stored in the directory "hbk".
|
|---|
| 96 | The format of the ntuple (with Id 1) is the following:
|
|---|
| 97 |
|
|---|
| 98 | u,v : general surface parameters
|
|---|
| 99 | x,y,z: generated (true) surface point in cartesian coordinates
|
|---|
| 100 | px,py,pz: vertex position in cartesian coordinates
|
|---|
| 101 | dist: (true) distance between vertex and intersection
|
|---|
| 102 | vx,vy,vz: momentum of particle at vertex
|
|---|
| 103 | rx,ry,rz: reconstructed intersection
|
|---|
| 104 | delta : distance between reconstructed and true intersection
|
|---|
| 105 | theta: angle between momentum and surface normal at intersection
|
|---|
| 106 | |
|---|