03/13/2003 Proton ID 1
A Object Oriented Code for FPD Trigger Studies
Wagner de Paula CarvalhoUniversidade do Estado do Rio de Janeiro (UERJ)
Proton ID 03/13/2003
03/13/2003 Proton ID 2
MI Rejection Studies - W. Carvalho
Create a FPD_Hits class to hold all trigger information
FPD_Hits inherits from FPD_Particle:
class FPD_Hits : public FPD_Particle {...}
This allows us to easily use the FPD tracking program (by Barreto, Oguri & Carley) to study the trigger patterns and generate new sets of trigger equations
Overview
03/13/2003 Proton ID 3
MI Rejection Studies - W. Carvalho
A FPD_Particle object propagates across the Tevatron lattice and has the following member variables:
FPD_Vector vec : x,y,z - spatial coordinates
xs,ys - slopes of momentum in xz and yz planes
zs =
int charge
double mass
double beam momentum
FPD_Particle Review
03/13/2003 Proton ID 4
MI Rejection Studies - W. Carvalho
Member variables:
string arm_flag[4] : array to hold the name (UP,DOWN,IN,OUT) of the hit
arm for each FPD station
FPD_Vector initial_particle_vector : save initial state FPD_Vector
FPD_Vector potn_particle_vector : save FPD_Vectors at FPD station n
int potn_hits[6] : array to hold fiber hits map (U,U’,X,X’,V,V’) at station n
int potn_hits[3] : array to hold segment hits map (U,X,V) at station n
n = 1 A1,P1 ; n = 2 A2,P2 ; n = 3 D1 ; n = 4 D2 ;
FPD_Hits
03/13/2003 Proton ID 5
MI Rejection Studies - W. Carvalho
Member functions (methods):
FPD_Hits uses methods from:
FPD_Particle : as it inherits from this class, a FPD_Hits propagates
as a FPD_Particle ;
FPDdetector class from Mike Martens with a few modifications (for the sake of uniformity) ;
Some code of myself .
FPD_Hits
03/13/2003 Proton ID 6
MI Rejection Studies - W. Carvalho
A few modifications were made to FPD_Particle’s method Propagate, to remove hard-wired values of beam widths and pots positioning ;
They were moved to the header file BeamPotsParameters.hpp ;
Detector related methods like: accelerator detector coordinate transformation, position fiber hits and fiber hits segment hits, were kept in a separate header, FPD_Detector.hpp ;
A few more FPD_Hits features
03/13/2003 Proton ID 7
MI Rejection Studies - W. Carvalho
To test the code I’m using the trigger equations tabulated by Mike Martens (see http://waldo.fnal.gov/~martens/cvs/fnal/fpd/equations/). There are 3 equation flavors: PU, PI and DI. The other spectrometers’ equations (PD,PO,AU,AD,AI,AO) are equal to some of these;
PU equations have been more exhaustively used to test the program. Apparently, all original equations keep passing when beam energy is set to 1000GeV/c, as used by Martens. Need to perform more “calibration” tests, including for pbeam = 980GeV/c, as some recent changes to the code have to be certified;
Only a few tests were made on PI and DI equations;
No numbers included due to very recent modifications that I do not trust yet!!.
Testing the code
03/13/2003 Proton ID 8
MI Rejection Studies - W. Carvalho
Finish, certify and freeze this code. One possible major modification is change FPD_Particle::Propagate to automatically fill FPD_Hits variables as the particle propagates;
Start playing with different pot positions and compare with original equations;
Set pots positions to their current operational values and generate new sets of equations. I’ll start by DI spectrometer, in order to be able to implement the equations into the firmware;
Modify code to take plane by plane geometry/alignment into account.
Plans for the future