E01-020 ESPACE Updates


New Target Model

target_update.tar.gz

This update adds a new target model to represent the tubular (cigar) cells which were used in the deuteron experiment. Beside having a new target model (model 4), the entire calculation of the energy loss was moved from the header file (the eloss line) to espace. A new entry is now required instead of the eloss line in the header file to count for the thickness of the cell side-wall and end-caps. For example the following header file is used for run # 1436:

reaction             c   (e,e,p)
e0                   r 1 2843.6
particle_r           c   hadron
specr                r 5 2.61171 -63.6831 0.000 0.030 0.060
specr_offset         r 3  0.000485 0.00 0.000981
particle_l           c   lepton
specl                r 5 9.6516 13.9909 0.000 0.030 0.060
specl_offset         r 3 0.001223 0.000  -0.000305
target               r 8 15.00 0.0723 1.0 1.0 4 4.066 2.033 2.033
tar_offset           r 3 0.00 0.00 0.00
tar_angle            r 2 666.666666 666.666666
isotope1_name        c   1H
isotope1             r 3 1.000 1.00 1.000
reconstruct          r 1 2.0
cell_thickness       r 3 0.0127 0.0127 0.0124
beam_vertex          r 1 1

In this header file the last 3 parameters of the target line are the cell side-wall cylindrical diameter, downstream end-cap spherical radius and its height respectively. In general, the radius of the spherical cap and its height are equal. The cell_thickness line includes the thickness of the side-wall, downstream and upstream end-caps respectively. All numbers are given in centimeters. After this update, the eloss line in the header file would not be needed anymore for any other target type!

To install this update, copy the target_update.tar.gz file to the top source directory (espace/src/r*) and execute there the following command before you make espace:

tar -xvzf target_update.tar.gz


Energy Loss Corrected Momentum

px_update.tar.gz

The ntuple (external) variables px and px_loss (variables # 98 and # 99 respectively in the espace_lib/block_data_var.f subroutine) were both swapped (reversed) for the left and right spectrometers. For example if you plot spec_l_px you get spec_r_px and vise versa! The reason of this bug was found in the following lines from the espace_lib/variable.f subroutine:

      else if (ivar .EQ. 98 ) then
         if ( ispectro .EQ. 1 ) then
            dvar = pe
         else if ( ispectro .EQ. 2 ) then
            dvar = px
         else
            dvar = rbig
         endif
      else if (ivar .EQ. 99 ) then
         if ( ispectro .EQ. 1 ) then
            dvar = pe_loss
         else if ( ispectro .EQ. 2 ) then
            dvar = px_loss
         else
            dvar = rbig
         endif

The value of pe is ALWAYS the corrected lepton momentum for energy loss, but here it is associated wrongly with spectrometer # 1 (right arm) instead of associating it with the lepton arm. Similar discussion for px and the hadron momentum. This bug was fixed by modifying these lines as:

      else if (ivar .EQ. 98 ) then
         if ( ispectro .EQ. ilepton ) then
            dvar = pe
         else if ( ispectro .EQ. ihadron ) then
            dvar = px
         else
            dvar = rbig
         endif
      else if (ivar .EQ. 99 ) then
         if ( ispectro .EQ. ilepton ) then
            dvar = pe_loss
         else if ( ispectro .EQ. ihadron ) then
            dvar = px_loss
         else
            dvar = rbig
         endif

Here, ilepton = 2 and ihadron = 1, are the standard internal espace variables for experiment E01-020 (electron is left and proton is right). After this update, the relations between these espace external and internal variables are fixed:

spec_l_px -> pe
spec_r_px -> px
spec_l_px_loss -> pe_loss
spec_r_px_loss -> px_loss

To install this update, copy the px_update.tar.gz file to the top source directory (espace/src/r*) and execute there the following command before you make espace:

tar -xvzf px_update.tar.gz

This espace file is the most recent espace executable for linux.