Difference between revisions of "Tracking resolution estimator (REZEST)"

From GlueXWiki
Jump to: navigation, search
(Getting the code: link to r3499, bug fix)
(superceded by gluex doc, reference provided)
Line 1: Line 1:
 
The "rezest" package contains FORTRAN routines that calculate estimates of the momentum and angular resolutions for charged particles in GlueX. Simplifying assumptions are made and the resolutions functions are calculated analytically a là the Particle Data Group.
 
The "rezest" package contains FORTRAN routines that calculate estimates of the momentum and angular resolutions for charged particles in GlueX. Simplifying assumptions are made and the resolutions functions are calculated analytically a là the Particle Data Group.
  
The principal subroutine is documented in the source code file rezest_fdc_cdc.F:
+
This wiki page has been supercede by [http://argus.phys.uregina.ca/cgi-bin/private/DocDB/ShowDocument?docid=1015 GlueX-doc-1050]
 
+
<pre>
+
      SUBROUTINE REZEST_FDC_CDC(P, LAMBDA, M,
+
    X    DP_OVER_P, DPHI_TOT, DTHETA_TOT)
+
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+
C
+
C This routine estimates the resolution in GlueX for charged particles
+
C in tranverse momentum, azimuthal angle, and polar angle.
+
C
+
C Input arguments, all REAL*4
+
C
+
C    P        Magnitude of total momentum (GeV/c)
+
C    LAMBDA  Dip angle, difference in polar angle in lab between track
+
C              and pi/2 (i. e., 90 degrees) (radians)
+
C    M        Mass of the particle (GeV/c^2)
+
C
+
C Output arguments, all REAL*4
+
C
+
C    DP_OVER_P  Relative resolution in transverse momentum ("sigma_{p_t}/p_t")
+
C    DPHI_TOT  Resolution in azimuthal angle ("sigma_phi")
+
C    DTHETA_TOT Resolution in polar angle ("sigma_theta")
+
C
+
C The routine combines the measurements in the FDC and CDC where
+
C appropriate. Parameters describing the geometry and materials are
+
C defined in the routine REZEST_COMPONENTS which appears below.
+
C
+
</pre>
+
 
+
=Getting the code=
+
 
+
Two methods:
+
 
+
# Get the [http://www.jlab.org/~marki/misc/rezest_3499.tar tar ball].
+
# Check it out from the subversion repository:
+
  svn checkout -r3499 https://halldsvn.jlab.org/repos/trunk/home/marki/gluex/rezest
+
 
+
=Building the files=
+
 
+
There is a simple makefile in the directory:
+
 
+
<pre>
+
> cd <rezest directory>
+
> make
+
gfortran -g  -c -o rezest.o rezest.F
+
gfortran -g  -c -o rezest_fdc_cdc.o rezest_fdc_cdc.F
+
ar rcv librezest.a rezest.o rezest_fdc_cdc.o
+
a - rezest.o
+
a - rezest_fdc_cdc.o
+
gfortran -g  -c -o rezest_point.o rezest_point.F
+
gfortran -o rezest_point rezest_point.o -L. -lrezest
+
gfortran -g  -c -o rezest_point_comp.o rezest_point_comp.F
+
gfortran -o rezest_point_comp rezest_point_comp.o -L. -lrezest
+
</pre>
+
 
+
This creates three files that you care about:
+
 
+
# librezest.a: the object library
+
# rezest_point: a binary
+
# rezest_point_comp: a binary
+
 
+
=Using the files=
+
 
+
==librezest.a==
+
 
+
Link this into your own program to retrieve resolution values.
+
 
+
==rezest_point==
+
 
+
This stand-alone binary will accept three arguments on standard input (space separated on a single line) and will write the resolution values on standard output.
+
 
+
Input:
+
# total magnitude of momentum in GeV/c
+
# dip angle in radians (see definition above in the source code snippet)
+
# mass in GeV/c<sup>2</sup>
+
 
+
Output:
+
# relative resolution in transverse momentum
+
# resolution in azimuthal angle
+
# resolution in polar angle
+
 
+
For example:
+
 
+
<pre>
+
> rezest_point
+
1.0 1.22 0.139
+
  2.8597742E-02  1.6185496E-02  8.1181811E-04
+
</pre>
+
 
+
says that a 1 GeV/c particle traveling in a direction 1.22 radians forward of the transverse direction with a mass of 139 MeV has an estimated <math>\sigma_{p_t}/p_t = 2.9\%</math>, <math>\sigma_\phi = 16</math>&nbsp;mR, and <math>\sigma_\theta = 0.8</math>&nbsp;mR.
+
 
+
==rezest_point_comp==
+
 
+
Same as rezest_point except that the individual components of the resolution are listed. Note that the first three numbers being output are the same as for rezest_point.
+
 
+
Output:
+
# relative resolution in transverse momentum
+
# resolution in azimuthal angle
+
# resolution in polar angle
+
# resolution in curvature (<math>1/R_{\rm curvature}</math>) due to multiple scattering in the CDC in inverse meters
+
# same for FDC
+
# resolution in curvature due to position resolution in the CDC
+
# same for FDC
+
# total resolution in curvature in the CDC
+
# same for the FDC
+
# resolution in azimuthal angle (<math>\phi</math>) due to multiple scattering in the CDC in radians
+
# same for FDC
+
# resolution in azimuthal angle due to position resolution in the CDC
+
# same for FDC
+
# resolution in azimuthal angle due to curvature resolution in the CDC
+
# same for FDC
+
# total resolution in azimuthal angle in the CDC
+
# same for the FDC
+
# resolution in polar angle (<math>\theta</math>) due to multiple scattering in the CDC in radians
+
# same for FDC
+
# resolution in polar angle due to position resolution in the CDC in radians
+
# same for FDC
+
# total resolution in polar angle in the CDC
+
# same for the FDC
+
 
+
For example:
+
 
+
<pre>
+
> rezest_point_comp
+
1.0 1.22 0.139
+
  2.8597742E-02  1.6185496E-02  8.1181811E-04  4.2887099E-02
+
  2.2642065E-02  1.3919008E-02  0.1605156      4.5089267E-02
+
  0.1621047      2.5197803E-03  3.1950074E-04  5.0111138E-04
+
  2.4516270E-03  1.7020071E-02  4.7496673E-02  1.7212879E-02
+
  4.7560975E-02  2.5197803E-03  3.1950074E-04  7.7741774E-04
+
  7.9118297E-04  2.6369814E-03  8.5325917E-04
+
</pre>
+
(All values in the output actually appear on one line.)
+

Revision as of 16:13, 2 April 2008

The "rezest" package contains FORTRAN routines that calculate estimates of the momentum and angular resolutions for charged particles in GlueX. Simplifying assumptions are made and the resolutions functions are calculated analytically a là the Particle Data Group.

This wiki page has been supercede by GlueX-doc-1050