BrCombineTrack
class description - source file - inheritance tree
private:
void ClearClonesArrays()
void CombineD12D34(BrEventNode* InputTable, BrEventNode* OutputTable)
void CombineMIDST1T2(BrEventNode* InputTable)
void CombineT1T2(BrEventNode* InputTable)
void CombineT3T4T5(BrEventNode* InputTable, BrEventNode* OututTable)
void CreateClonesArrays()
BrTrack12* GetTrack12WithSameT2Tr(BrDetectorTrack* t2tr_p)
void GetTrack34WithSameT4TR(BrDetectorTrack* t4tr_p, BrTrack34** strack, int* NumFound)
Int_t GetTrackingLevel(Char_t* detector)
void ReadFieldParameters(Char_t* filename)
void ReadSimulationParameters(Char_t* filename)
void Track12MIDSToTarget()
void Track12ToTarget()
void Track345ToTarget()
public:
BrCombineTrack BrCombineTrack(Char_t* Name, Char_t* Title)
BrCombineTrack BrCombineTrack(Char_t* Name, Char_t* Title, Char_t* simparfile, Char_t* fieldfile)
BrCombineTrack BrCombineTrack(Char_t* Name, Char_t* title, Char_t* simparfile, Char_t* fieldfile, BrDetectorVolume* tpc1, BrDetectorVolume* tpc2, BrDetectorVolume* dc3, BrDetectorVolume* dc4, BrDetectorVolume* dc5, BrDetectorVolume* d1, BrDetectorVolume* d2, BrDetectorVolume* d3, BrDetectorVolume* d4, BrDetectorVolume* m0)
BrCombineTrack BrCombineTrack(BrCombineTrack&)
BrCombineTrack BrCombineTrack()
void ~BrCombineTrack()
void AddDetectorVolume(BrDetectorVolume* vol)
TClass* Class()
virtual void Event(BrEventNode* InputTable, BrEventNode* OutputTable)
BrDetectorVolume* GetDetectorVolume(Char_t* vol)
virtual TClass* IsA()
void ListDetectorParameters()
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void Streamer(TBuffer& b)
private:
BrDetectorVolume* fVolume_p[50]
Int_t NumDetectorVolumes
BrClonesArray* Tracks12
BrClonesArray* T2Match
BrClonesArray* Tracks34
BrClonesArray* Tracks45
BrClonesArray* Tracks345
Bool_t fSimulationParametersRead
Bool_t fFieldParametersRead
Int_t pr_opt[20]
Float_t t1_par[10]
Float_t t2_par[10]
Float_t h1_par[10]
Float_t t1t2_par[10]
Float_t t3_par[10]
Float_t t4_par[10]
Float_t t5_par[10]
Float_t t345_par[10]
Float_t t2m_par[10]
Float_t b0
Float_t b1
Float_t b2
Float_t b3
Float_t b4
The BrCombineTrack class provides an interface to the BRAHMS
Tracking Combining between detectors
BrCombineTrack():BrModule()
Default Constructor.
BrCombineTrack(Text_t *Name,Char_t *Title)
:BrModule(Name,Title)
Set volume parameters to null,
Create clones arrays for internal use
Read simulation parameters from default file (simpar.dat) in current directory
BrCombineTrack(Text_t *Name,Char_t *Title,Char_t *simparfile,Char_t *fieldfile)
:BrModule(Name,Title)
Set volume parameters to null,
Create clones arrays for internal use
Read simulation parameters from file specified in parameter
BrCombineTrack(Char_t *Name,Char_t *Title,Char_t *simparfile,Char_t *fieldfile,
BrDetectorVolume *tpc1,BrDetectorVolume *tpc2,
BrDetectorVolume *dc3,BrDetectorVolume *dc4,BrDetectorVolume *dc5,
BrDetectorVolume *d1,BrDetectorVolume *d2,BrDetectorVolume *d3,BrDetectorVolume *d4,
BrDetectorVolume *m0) : BrModule(Name,Title)
Set volume parameters to null,
Create clones arrays for internal use
Read simulation parameters from file specified in parameter
Set volume parameters as given in arguments. This contstructor eliminates the need
to use 10 statements of AddDetectorVolume
void CreateClonesArrays()
Create the clones arrays used for internal structures.
void ClearClonesArrays()
Clear the clones arrays used for internal structures.
~BrCombineTrack()
Destructor
Delete the fVolume_p parameters
void Event(BrEventNode* InputTable,BrEventNode* OutputTable)
Execute the actions necessary for combining the different tracks.
void CombineT1T2(BrEventNode *InputTable)
Loop over the tracks found in T2 and convert the local to global coordinates,
project the track to the center of the magnet.
It will project the tracks in T1 forward to the center plane of
the magnet. It will do the calculation in the local coordinate
system of D2 which is most useful for this purpose.
It will make simple corrections due to path length differences.
void Track12ToTarget()
This routine will loop over all tracks found using their position
in T1 as a starting point for backward tracking. It will
calculate Tx and Ty at the target position, calculate the
scattering angle using the information for the track positions
at the entrance to D1 ie on a virtual plane.
void CombineT3T4T5(BrEventNode *InputTable,BrEventNode *OutputTable)
This routine will independently lookup local tracks in T4 and T3
and look for combinations which will match in the center of the
magnet D3. It is required that a track be within the real volume
of the magnet at this point. In addition a status flag is set if
in addition is outside a fidicual cut in x and y. The matching has
cut parameters dx, dy and daly where the position of two tracks must
be better than in x y and the y direction cosine in order for the
matching to be accepted.
The same procedure is repeated for T4 and T5. Two sets of new
objects are created, namely track34 and track45.
void GetTrack34WithSameT4TR(BrDetectorTrack* t4tr_p,BrTrack34 *strack[max_t34t4tr],Int_t* NumFound)
Loop over tracks that were combined in T3 and T4 and pick the ones that have the
same Detector Track in T4 as in the argument. Routine meant to be used to look
for track34's that have same t4tr as track45.
void CombineD12D34(BrEventNode *InputTable,BrEventNode *OutputTable)
This routine will take tracks from T3/T4/T5 and project them
to T2 and find candidates for the track.
If found it will update parts of the real track information.
BrTrack12* GetTrack12WithSameT2Tr(BrDetectorTrack *t2tr_p)
void Track345ToTarget()
This routine will loop over all tracks found using their position
in T2 as a starting point for backward tracking. It will
the Tx and Ty at the target position, calculate the scattering
angle using the information for the track positions at the
entrance to D1, ie on a virtual plane. The momentum is taken
from the values obtained from the T3/T4/T5 tracking.
void CombineMIDST1T2(BrEventNode *InputTable)
Loop over tracks in T1/T2 and see how well they match and
create candidates for tracks
This is a first primitive attempt on match tracks through
the magnet M0.
void Track12MIDSToTarget()
This routine will loop over all tracks found using their position
in T1 as a starting point for backward tracking. It will
calculate Tx and Ty at the target position, calculate the
scattering angle using the information for the track positions
TPC1.
The target Tx and Ty are in the SPEC coordinate system ie at
z' = 0 (ie. on the beam axis parallel to the M0 front face)
Int_t GetTrackingLevel(Char_t *detector)
void ReadSimulationParameters( Char_t *filename )
void ReadFieldParameters( Char_t *filename )
void AddDetectorVolume(BrDetectorVolume* vol)
BrDetectorVolume* GetDetectorVolume(const Char_t *vol) const
void ListDetectorParameters()
Inline Functions
TClass* Class()
TClass* IsA()
void ShowMembers(TMemberInspector& insp, char* parent)
void Streamer(TBuffer& b)
BrCombineTrack BrCombineTrack(BrCombineTrack&)
ROOT page - Class index - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.