Commons in TRCDES patch

Valery Yazkov
<DUBNA>

Table of Contents

DecTblCher
December 1998

Table of Contents




KEEP DecTblCher contains common-block /DecTblCher/ which is used for decoding data of Cherenkov detector. The array dimensions are defined by a few parameters:



NbFeraCher: Maximal number of FERA blocks which could be used for recording data from Cherenkov detector are calculated as a sum of numbers of different type blocks.
NbRegCher: Number of register blocks (1).
NbAdcCher: Number of ADC blocks (2).
MxChnlCher: Maximal channel number for FERA blocks (15).



Needed for decoding information are stored to next arrays:



iArmCher: The cell of this array iArmCher(i,j) contains the spectrometer arm number for hit recorded by i-th channel of j-th block. If cell contains 0 then data are ignored.
iPhTbCher: The cell of this array iPhTbCher(i,j) contains the phototube number for amlitude recorded by i-th channel of j-th block.
MyBlcFoundCher: if cell of this array MyBlcFoundCher(i) equals 0 then description of i-th block should be found in run data block. In alternative case the decoding will give error message (IsOK>0). For cell value which is -1 data from this block are not expected and description are not needed.
PedestalCher: For ADC only. The cell of this array PedestalCher(i,j) contains the pedestal value for i-th channel of j-th block (now pedestal subtraction not implemented in DecodeCherenkov yet).



Now these arrays are filled in one of the set of Block Datas which correspond to run number. But in closest future it will be replaced by read from detector.dat file.

DecTblDC
December 1998

Table of Contents




KEEP DecTblDC contains common-block /DecTblDC/ which is used for decoding data of drift chambers. These data are contained in three data blocks: DC0, DC1 and DC2.

The array dimensions are defined by two parameters:



MxDrvDC: Maximal driver number (7).
MxPlateDC: Maximal plate number (7).



Needed for decoding information are stored to next arrays:



iArmDC0: The cell of this array iArmDC0(i,j) contains the spectrometer arm number for data from i-th plate of j-th driver. Data block is DC0. If cell contains -1 then decoding terminates.
iArmDC1: The same for data block DC1.
iArmDC2: The same for data block DC2.
ixyDC0: Contents of ixyDC0(i,j) define the kind of DC plane which is correspond to i-th plate of j-th driver: 1 [IMAGE ] X-plane, 2 [IMAGE ] Y-plane, 3 [IMAGE ] W-plane. Data block is DC0.
ixyDC1: The same for data block DC1 (without W-planes).
ixyDC2: The same for data block DC2 (without W-planes).
nPlDC0: The cell of this array iArmDC0(i,j) contains the plane number for data from i-th plate of j-th driver. Data block is DC0.
nPlDC1: The same for data block DC1.
nPlDC2: The same for data block DC2.
MnPltDC0: The cell of this array iArmDC0(i,j) contains the minimal plate number for DC-plane which corresponds to i-th plate of j-th driver. It is used for calculation a wire number. Data block is DC0.
MnPltDC1: The same for data block DC1.
MnPltDC2: The same for data block DC2.
T0DriftDC0: For i-th plate of j-th driver T0DriftDC0(i,j) contains parameter T0 for drift distance.
T0DriftDC1: The same for data block DC1.
T0DriftDC2: The same for data block DC2.
A12DriftDC0: For i-th plate of j-th driver A12DriftDC0(i,j,1) contains parameter A1 for drift distance and A12DriftDC0(i,j,2) contains parameter A2.
A12DriftDC1: The same for data block DC1.
A12DriftDC2: The same for data block DC2.



Drift distances d are calculated by function:


d = A1 (t-T0) + A2 (t-T0)2 .

Here t is measured time and A1, A2 and T0 are fit parameters.

Now these arrays are filled in one of the set of Block Datas which correspond to run number. But in closest future it will be replaced by read from detector.dat file.

DecTblDeDx
December 1998

Table of Contents




KEEP DecTblDeDx contains common-block /DecTblDeDx/ which is used for decoding data of DeDx detector. The array dimensions are defined by a few parameters:



NbFeraDeDx: Maximal number of FERA blocks which could be used for recording data from DeDx detector (are calculated as a sum of numbers of different type blocks).
NbRegDeDx: Number of register blocks (2).
NbAdcDeDx: Number of ADC blocks (5).
MxChnlDeDx: Maximal channel number for FERA blocks (15).



Needed for decoding information are stored to next arrays:



PlaneDeDx: The cell of this array PlaneDeDx(i,j) contains the plane number for hit recorded by i-th channel of j-th block. If cell contains 0 then data are ignored.
iSlabDeDx: The cell of this array iSlabDeDx(i,j) contains the slab number for hit recorded by i-th channel of j-th block.
MyBlcFoundDeDx: if cell of this array MyBlcFoundDeDx(i) equals 0 then description of i-th block should be found in run data block. In alternative case the decoding will give error message (IsOK>0). For cell value which is -1 data from this block are not expected and description are not needed.
PedestalDeDx: For ADC only. The cell of this array PedestalDeDx(i,j) contains the pedestal value for i-th channel of j-th block (now pedestal subtraction not implemented in DecodeDeDx yet).



Now these arrays are filled in one of the set of Block Datas which correspond to run number. But in closest future it will be replaced by read from detector.dat file.

DecTblHHod
December 1998

Table of Contents




KEEP DecTblHHod contains common-block /DecTblHodH/ which is used for decoding data of Horizontal hodoscope. The array dimensions are defined by two parameters:



NbFeraHodH: Maximal number of FERA blocks which could be used for recording data from Horizontal hodoscope (2).
MxChnlHodH: Maximal channel number for FERA blocks (15).



Needed for decoding information are stored to next arrays:



iArmHodH: The cell of this array iArmHodH(i,j) contains the spectrometer arm number for hit recorded by i-th channel of j-th block. If cell contains 0 then data are ignored.
iSlabHodH: The cell of this array iSlabHodH(i,j) contains the slab number for hit recorded by i-th channel of j-th block.
MyBlcFoundHodH: if cell of this array MyBlcFoundHodH(i) equals 0 then description of i-th block should be found in run data block. In alternative case the decoding will give error message (IsOK>0). For cell value which is -1 data from this block are not expected and description are not needed.
DelayHodH: The cell of this array DelayHodH(i,j) contains the relative delay value for i-th channel of j-th block. These delays is difference of times measured by slabs for the case of really simultaneous hits. Now delays subtraction not implemented in DecodeHodHor yet.



Now these arrays are filled in one of the set of Block Datas which correspond to run number. But in closest future it will be replaced by read from detector.dat file.

DecTblMSGC
December 1998

Table of Contents




KEEP DecTblMSGC contains common-block /DecTblMSGC/ which is used for decoding data of MSGC detector. The array dimensions are defined by two parameters:



NbBlcMSGC: Maximal number of data blocks for MSGC detector (1).
MxChnlMSGC: Maximal number of channels for data blocks (512).



Needed for decoding information are stored to next array:



PedestalMSGC: The cell of this array PedestalMSGC(i,j) contains the pedestal value for i-th channel of j-th block (now pedestal subtraction not implemented in DecodeMSGC yet).



Now these arrays are filled in one of the set of Block Datas which correspond to run number. But in closest future it will be replaced by read from detector.dat file.

DecTblMuon
December 1998

Table of Contents




KEEP DecTblMuon contains common-block /DecTblMuon/ which is used for decoding data of Muon detector. The array dimensions are defined by two parameters:



NbFeraMuon: Maximal number of FERA blocks which could be used for recording data from Preshower detector (2).
MxChnlMuon: Maximal channel number for FERA blocks (15).



Needed for decoding information are stored to next arrays:



iArmMuon: The cell of this array iArmMuon(i,j) contains the spectrometer arm number for hit recorded by i-th channel of j-th block. If cell contains 0 then data are ignored.
iSlabMuon: The cell of this array iSlabMuon(i,j) contains the slab number for amlitude recorded by i-th channel of j-th block.
MyBlcFoundMuon: if cell of this array MyBlcFoundMuon(i) equals 0 then description of i-th block should be found in run data block. In alternative case the decoding will give error message (IsOK>0). For cell value which is -1 data from this block are not expected and description are not needed.
PedestalMuon: The cell of this array PedestalMuon(i,j) contains the pedestal value for i-th channel of j-th block (now pedestal subtraction not implemented in DecodeMuon yet).



Now these arrays are filled in one of the set of Block Datas which correspond to run number. But in closest future it will be replaced by read from detector.dat file.

DecTblPrSh
December 1998

Table of Contents




KEEP DecTblPrSh contains common-block /DecTblPrSh/ which is used for decoding data of Preshower detector. The array dimensions are defined by two parameters:



NbFeraPrSh: Maximal number of FERA blocks which could be used for recording data from Preshower detector (1).
MxChnlPrSh: Maximal channel number for FERA blocks (15).



Needed for decoding information are stored to next arrays:



iArmPrSh: The cell of this array iArmPrSh(i,j) contains the spectrometer arm number for hit recorded by i-th channel of j-th block. If cell contains 0 then data are ignored.
iSlabPrSh: The cell of this array iSlabPrSh(i,j) contains the slab number for amlitude recorded by i-th channel of j-th block.
MyBlcFoundPrSh: if cell of this array MyBlcFoundPrSh(i) equals 0 then description of i-th block should be found in run data block. In alternative case the decoding will give error message (IsOK>0). For cell value which is -1 data from this block are not expected and description are not needed.
PedestalPrSh: The cell of this array PedestalPrSh(i,j) contains the pedestal value for i-th channel of j-th block (now pedestal subtraction not implemented in DecodePreShower yet).



Now these arrays are filled in one of the set of Block Datas which correspond to run number. But in closest future it will be replaced by read from detector.dat file.

DecTblScFi
December 1998

Table of Contents




KEEP DecTblScFi contains common-block /DecTblScFi/ which is used for decoding data of ScFi detector. The array dimensions are defined by a few parameters:



NbFeraScFi: Maximal number of FERA blocks which could be used for recording data from ScFi detector (are calculated as a sum of numbers of different type blocks).
NbRegScFi: Number of register blocks (2).
NbTdcScFi: Number of TDC blocks (16).
NbAdcScFi: Number of ADC blocks (2).
MxChnlScFi: Maximal channel number for FERA blocks (31).



Needed for decoding information are stored to next arrays:



PlaneScFi: The cell of this array PlaneScFi(i,j) contains the plane number for hit recorded by i-th channel of j-th block. If cell contains 0 then data are ignored.
iSlabScFi: For TDC the cell of this array iSlabScFi(i,j) contains the slab number for hit recorded by i-th channel of j-th block. For ADC it contains the phototube number.
MyBlcFoundScFi: if cell of this array MyBlcFoundScFi(i) equals 0 then description of i-th block should be found in run data block. In alternative case the decoding will give error message (IsOK>0). For cell value which is -1 data from this block are not expected and description are not needed.
DelayScFi: For TDC only. The cell of this array DelayScFi(i,j) contains relative delay value for i-th channel of j-th block. These delays are differences of times measured by slabs for the case of really simultaneous hits. Now delays subtraction not implemented in DecodeScFi yet.
PedestalScFi: For ADC only. The cell of this array PedestalScFi(i,j) contains the pedestal value for i-th channel of j-th block (now pedestal subtraction not implemented in DecodeScFi yet).



Now these arrays are filled in one of the set of Block Datas which correspond to run number. But in closest future it will be replaced by read from detector.dat file.

DecTblVHod
December 1998

Table of Contents




KEEP DecTblVHod contains common-block /DecTblHodV/ which is used for decoding data of Vertical hodoscope. The array dimensions are defined by two parameters:



NbFeraHodV: Maximal number of FERA blocks which could be used for recording data from Vertical hodoscope (3).
MxChnlHodV: Maximal channel number for FERA blocks (15).



Needed for decoding information are stored to next arrays:



iArmHodV: The cell of this array iArmHodV(i,j) contains the spectrometer arm number for hit recorded by i-th channel of j-th block. If cell contains 0 then data are ignored.
iSlabHodV: The cell of this array iSlabHodV(i,j) contains the slab number for hit recorded by i-th channel of j-th block.
MyBlcFoundHodV: if cell of this array MyBlcFoundHodV(i) equals 0 then description of i-th block should be found in run data block. In alternative case the decoding will give error message (IsOK>0). For cell value which is -1 data from this block are not expected and description are not needed.
DelayHodV: The cell of this array DelayHodV(i,j) contains the relative delay value for i-th channel of j-th block. These delays is difference of times measured by slabs for the case of really simultaneous hits. Now delays subtraction not implemented in DecodeHodVer yet.



Now these arrays are filled in one of the set of Block Datas which correspond to run number. But in closest future it will be replaced by read from detector.dat file.

HodDC
December 1998

Table of Contents

KEEP HodDC contains common-block /HodDC/ which accumulates data from Vertical and Horizontal hodoscopes in format dedicated for using in DC tracking (subroutines DecodeHodVer and DecodeHodHor). The array dimensions are defined by parameter MxHitHod which is defined in KEEP ParamDC.

An updated version of the description of the common block /HodDC/ is stored in the postscript file hoddc.ps

InCher
December 1998

Table of Contents

KEEP InCher contains common-block /InDataCher/ which accumulates decoded data for Cherenkov detector (subroutine DecodeCherenkov). The array dimensions are defined by parameter MaxNbHitCher.

An updated version of the description of the common block /InDataCher/ is stored in the postscript file incher.ps

InDC
December 1998

Table of Contents

An updated version of the description of the common block /InDataDC/ is stored in the postscript file indc.ps

InDeDx
December 1998

Table of Contents

An updated version of the description of the common block /InDataDeDx/ is stored in the postscript file indedx.ps

InHodH
December 1998

Table of Contents

An updated version of the description of the common block /InDataHodH/ is stored in the postscript file inhodh.ps

InHodV
December 1998

Table of Contents

An updated version of the description of the common block /InDataHodV/ is stored in the postscript file inhodv.ps

InMSGC
December 1998

Table of Contents

An updated version of the description of the common block /InDataMSGC/ is stored in the postscript file inmsgc.ps

InMuon
December 1998

Table of Contents

An updated version of the description of the common block /InDataMUON/ is stored in the postscript file inmuon.ps

InNeur
December 1998

Table of Contents

An updated version of the description of the common block /InDataNeur/ is stored in the postscript file inneur.ps

InPrSh
December 1998

Table of Contents

An updated version of the description of the common block /InDataPrSh/ is stored in the postscript file inprsh.ps

InScFi
December 1998

Table of Contents

An updated version of the description of the common block /InDataScFi/ is stored in the postscript file inscfi.ps

DC parameters
July 2000

Table of Contents



A description of the DC parameters is stored in the postscript file paramdc.ps

TmTrxDC
July 2000

Table of Contents


An updated version of the description of the common block /TmTrxDC/ is stored in the postscript file tmtrxdc.ps



KEEP TmTrxDC contains common-block /TmTrxDC/ which accumulates results of tracking (subroutine FndTrxDC) and momentum calculation with drift chambers (subroutine Plab0DC) and with upstream detectors (subroutine Plab0Up). The array dimensions are defined by parameters MxDetUpStrDC, MxPlUpStrDC, MxNbTrDC, MxPlxyDC. The last two parameters are defined in KEEP ParamDC.



MxDetUpStrDC: Number of detectors upstream the magnet (3). These are MSGC (a sequential number is 1), SciFi (2) and DeDx (3).
MxPlUpStrDC: Maximal number of planes for upstream detectors (4).
MxNbTrDC: Maximal allowed number of tracks for spectrometer arm (10).
MxPlxyDC: Maximal number of planes for one projection (X or Y) for spectrometer arm (6).



Information about tracks are stored to next arrays:



NbTrDC: The cell of this array NbTrDC(i) contains a number of tracks which have been found with drift times in drift chambers of i-th arm. For each track a presence of corresponding slabs in vertical and horizontal hodoscopes is taken into account.
HdTrDC: This array contains data about track candidates and hodoscope slabs which were used at the track reconstruction. For j-th projection (j=1/2,i.e X/Y) of n-th track in i-th arm the cell HdTrDC(1,j,n,i) contains sequential number of track candidates with hit wire numbers (subroutine ProcessingDC). The cell HdTrDC(3,j,n,i) contains a number of the first and the last plane combination for track candidate. The cell HdTrDC(2,j,n,i) contains a pointer to the common-block /HodDC/ for data about slabs hit by the track in vertical (j=1) and horizontal (j=2) hodoscopes.
ParTrDC: For n-th track in i-th arm array ParTrDC contains parameters of straight line which fits the track. Coordinates (X, Y and Z) of any points of this line are determined by the next system of equation (t is a free parameter):


X = ParTrDC(1,1,n,i) + t*ParTrDC(1,2,n,i)


Y = ParTrDC(2,1,n,i) + t*ParTrDC(2,2,n,i)


Z = ParTrDC(3,1,n,i) + t*ParTrDC(3,2,n,i)

Plab0TrDC: For n-th track in i-th arm the cell Plab0TrDC(4,n,i) contains the momentum of particle calculated using track parameters in drift chambers and a primary beam position at the target only. Projections of the particle momentum upstream the magnet are in cells Plab0TrDC(k,n,i) (k=1/2/3 means X/Y/Z components)
XlcUpTrcDC: The cell XlcUpTrcDC(n,m,l,i) contains local X-coordinate in m-th plane of l-th upstream detector (see description of MxDetUpStrDC) for n-th track in i-th arm. Parameters of tracks upstream the magnet are defined by momentum projections (Plab0TrDC) and primary beam coordinates on the target.
NbPlTrDC: The cell NbPlTrDC(j,n,i) contains a number of DC planes of j-th orientation (j=1/2/3 --> X/Y/W) which are included to n-th track in i-th arm.
LsHitTrDC: For n-th track in i-th arm the cell LsHitTrDC(m,j,n,i) contains reference to a pointer to common-block /InDataDC/ for joined hit in m-th DC plane of j-th orientation (j=1/2/3 --> X/Y/W).A pointer value could be calculated with equation:


Pnt = (LsHitTrDC(m,j,n,i) + 1)/2

If LsHitTrDC(m,j,n,i)=2*Pnt, a drift distance was added to wire coordinate. If LsHitTrDC(m,j,n,i)=2*(Pnt - 1) a drift distance was subtracted from wire coordinate.

CrHitTrDC: The cell CrHitTrDC(m,j,n,i) contains local X-coordinate measured by m-th plane of drift chambers. The meanings of indices m, j, n and i are as for LsHitTrDC.
SLnCrTrDC: The cell SLnCrTrDC(m,j,n,i) contains local X-coordinate measured by m-th plane of drift chambers and corrected for magnetic field inside drift chambers. These corrected measurements should be fit by straight line. The meanings of indices m, j, n and i are as for LsHitTrDC.
DrHitTrDC: The cell DrHitTrDC(m,j,n,i) contains drift distance measured by m-th plane of drift chambers. The meanings of indices m, j, n and i are as for LsHitTrDC.
ResPlTrDC: The cell ResPlTrDC(m,j,n,i) contains squared difference between local X-coordinate measured by m-th plane of drift chambers and local X-coordinate of straight line which fits track. The meanings of indices m, j, n and i are as for LsHitTrDC.
ResTrDC: For n-th track in i-th arm ResTrDC(n,i) contains a sum of squared differences (residual sum) between local X-coordinate measured by DC planes and local X-coordinate of straight line which fits the track. Magnetic field is taken into account.
LngTrDC: For n-th track in i-th arm the cell LngTrDC(n,i) contains a length of track from a target to a corresponded plane of vertical hodoscope.
NbResTrDC: This array is not used now and will be removed.

NbTrUp: The cell of this array NbTrUp(i) contains a number of tracks (extended tracks) in i-th arm for which corresponding hits in both planes of fiber detector have been found.
PntTrUp: For n-th extended track (see NbTrUp) in i-th arm PntTrUp(n,i) contains pointer to a sequential number of track found with downstream detectors only (see NbTrDC).
Plab0TrUp: For n-th extended (see NbTrUp) track in i-th arm the cell Plab0TrUp(4,n,i) contains momentum of particle calculated using track parameters in drift chambers and a primary beam position at the target only. Projections of the momentum upstream the magnet are in cells Plab0TrUp(k,n,i) (k=1/2/3 --> X/Y/Z). The values of these projection are calculated taking into account the measurements fiber detector.
XlcTrUp: The cell XlcTrUp(n,m,l,i) contains local X-coordinate in m-th plane of l-th upstream detector (see description of MxDetUpStrDC) for n-th extended (see NbTrUp) track in i-th arm. Parameters of tracks upstream the magnet are defined by momentum projections (Plab0TrUp) and primary beam coordinates on the target.
HitTrUp: The cell HitTrUp(n,m,l,i) contains a pointer to input data common-blocks (/InDataMSGC/, /InDataScFi/ and /InDataDeDx/) for joined hits in the upstream detectors. If a value is 0 then there is no hit in allowed range around track coordinate. The meanings of indices n, m, l and i are as for XlcTrUp.
GoodPairTrUp: If a value of GoodPairTrUp is 0 then in both arms there are extended track which have been used for relative momentum calculation. A negative value means that there was no attempts to calculate relative momentum of pair for the event. A value of GoodPairTrUp of 1 means bad (negative) particle mass are given to subroutine QcalcDC which calculates a relative momentum.
QPairTrUp: The cell QPairTrUp(4) contains a value of relative momentum of pi+pi- pair (pions as default). A values of relative momentum projections are put to QPairTrUp(k) (k=1/2/3 --> Qx/Qy/Ql).
NbTrWiresFoundDC: The cell NbTrWiresFoundDC(j,i) contains a number of track candidates which were found with hit wire numbers in j-th projection (j=1/2 --> X/Y) of i-th arm

Before each event reading the values of NbTrDC and NbTrUp are set by zero in subroutine ResetDC but content of other arrays do not filled by 0. Therefore it is needed to take into account only first NbTrDC (NbTrUp) cells of corresponded arrays.

critDC
July 2000

Table of Contents

A description of the relevant variables is stored in the postscript file critdc.ps

fitTrkDC
July 2000

Table of Contents

A description of the relevant variables is stored in the postscript file fittrkdc.ps

kalmflt
July 2000

Table of Contents

A description of the relevant variables is stored in the postscript file kalmflt.ps

vertexfltup
July 2000

Table of Contents

A description of the relevant variables is stored in the postscript file vertexfltup.ps