Difference: MuSunMTA_PK (1 vs. 7)

Revision 72011-04-22 - PeterWinter

Line: 1 to 1
 
META TOPICPARENT name="LinuxPK"
Changed:
<
<

input tree structure

main

  • important pointers
  • important functions and classes
    • fillhists = new FillHistBase *[3];
      n_fillhist = 0; // number of modules (global variable)
      if(g_modSwitches.MusunTPCClusterFinder) {
      fillhists[n_fillhist++] = new MusunTPCClusterFinder;
      }
      if(g_modSwitches.MusunTPCWfdAnalysis) {
      fillhists[n_fillhist++] = new MusunTPCWfdAnalysis;
      }
      if(g_modSwitches.MusunNeutronAnalysis) {
      fillhists[n_fillhist++] = new MusunNeutronAnalysis;
      }
      These modSwitches are set in MTAGlobals.C
    • void *root_event_loop(void *arg)
      • for (Long64_t jentry=start; jentry<stop;jentry++) { // entry loop
        for(int i=0; i < n_fillhist; i++) {
        q = fillhists[i]->ProcessGenericEntry(g_mtaEvent); // analysis loop
        ...
        }
        #ifdef EVENTDISPLAY
        if(evdisp_trigger->ProcessEntry(g_mtaEvent)) break;

class MusunTPCClusterFinder : public FillHistBase

The main result of this class is that a new TTPCCluster class TCloneArray is attached to the TMusunMTAEvent, which contains the original
TMusunWfdPulse + additional track information stored in the TTPCCluster class.

Public Member Functions


MusunTPCClusterFinder ()
virtual ~MusunTPCClusterFinder ()
int ProcessEntry ( MTAEvent *mtaEvent)

MusunTPCClusterFinder ()
virtual ~MusunTPCClusterFinder ()
int ProcessEntry ( MTAEvent *mtaEvent)
int getTrackSeed ( int *sa)
double getPadX ( int padno)
double getPadZ ( int padno)
int get1stNeighbors ( int padno, int nn)
int get2ndNeighbors ( int padno, int nn)
int isPadHasPulse ( int padno, int stime, int *sa)
void updateXZTrackParameters ( int *npadnos)
void updateYTrackParameters ( int padno, int stime, int *sa)
int getNextClosestPad ( int *sa, int *sl)
bool isPadInCone ( int padno)
int isPulseInWindow ( int padno, int *sa)
double getPadDistance ( int pad1, int pad2)
void updateTrackParameters ( int padno, int pulset, int *sa)
int isPadHasGoodPulse ( int padno, int pulset, int *sa)
int isFusionPulse ( int padno, int pulset, int *sa)
bool isMuStop ( int padno, int pulset, int *sa)
void addMuStopNeighbors ( int padno, int pulset, int *sa)
void doBackwardSearch ( int *sa)
bool isPadInBWCone ( int padno)
bool isBeamSpot ( int padno)
double getPadDistanceZ ( int pad1, int pad2)
int getPadRow ( int padno)
int getPadColumn ( int padno)
void addThisToTrack ( int no)

int MusunTPCClusterFinder::ProcessEntry(MTAEvent *mtaEvent)

  • pointers and data members (also from class)
    • TMusunMTAEvent *fMusunMTAEvent = mtaEvent->GetMusunMTAEvent();
    • TRunInfoEvent *fRunInfoEvent = mtaEvent->GetRunInfoEvent();
    • TMusunEvent *event = mtaEvent->GetMusunEvent();
    • TMuEntrance *muent = event->GetMuEntrance();
    • TClonesArray &wC = *(event->GetMusunWfdPulse()); // &wC is reference to object on rhs
    • cluster search up to 10 clusters that can have 20 pulses, each pulse has 10 parameters
      double clusters[20][20][10] = { { { 0. } } } ;
      int timegroups[20][2] = { 0 } ; // time and number of pulse info
      int tw = ClusterSearchWindow ; // timewindow, this parameter need to be set again...

class TTPCCluster : public TObject

Does TTPCCluster store the pulses again or just pointers?

Public Member Functions


TTPCCluster ()
virtual ~TTPCCluster ()
void Clear (Option_t *option="")
void SetNmusunfadcpulse (Int_t n)
void SetNmusunwfdpulse (Int_t nw)
void SetSeedPadNo (Int_t spn)
void SetSeedPulseTime (Int_t spt)
void SetSeedPulseEnergy (Int_t spe)
void SetSeedPulseAmplitude (Int_t spa)
void SetSeedPulseLength (Int_t spl)
void SetSeedPulseBaseTime (Int_t spb)
void SetSeedPulseSigma (Double_t sps)
void SetSeedPulseChisq (Double_t spc)
void SetSeedDriftTime (Int_t sdt)
void SetTrackHasMuStop (Bool_t thms)
void SetMuStopPulseBaseTime (Int_t mpb)
void SetMuStopPadNo (Int_t mpn)
void SetMuStopPulseTime (Int_t mpt)
void SetMuStopPulseEnergy (Int_t mpe)
void SetMuStopPulseAmplitude (Int_t mpa)
void SetMuStopPulseLength (Int_t mpl)
void SetMuStopPulseSigma (Double_t mps)
void SetMuStopPulseChisq (Double_t mpc)
void SetMuStopDriftTime (Int_t msdt)
void SetTrackHasFusion (Bool_t thf)
void SetFusionPulseBaseTime (Int_t fpb)
void SetFusionPadNo (Int_t fpn)
void SetFusionPulseTime (Int_t fpt)
void SetFusionPulseEnergy (Int_t fpe)
void SetFusionPulseAmplitude (Int_t fpa)
void SetFusionPulseLength (Int_t fpl)
void SetFusionPulseSigma (Double_t fps)
void SetFusionPulseChisq (Double_t fpc)
void SetNumberofAllPulsesInEvent (Int_t noap)
void SetTrackNumberOfPulses (Int_t nop)
void SetAvePulseLength (Double_t apl)
void SetAveTimeDiffPermm (Double_t atd)
void SetTrackStartPad (Int_t tsp)
void SetTrackEndPad (Int_t tep)
void SetTrackXZlength (Double_t txzl)
void SetTrackTotalEnergy (Int_t tte)
void SetTrackLastPulseEnergy (Int_t tlpe)
void SetTrackLastPulseDriftTime (Int_t tlpdt)
void SetTrackSecondLastPulseEnergy (Int_t tslpe)
void SetHasSeparateFusion (Bool_t hsf)
void SetTrackHasFusionTrack (Bool_t thft)
void SetNeedExtraAttention (Bool_t nea)
void SetTrackFitPar0 (Double_t fp0)
void SetTrackFitPar1 (Double_t fp1)
void SetTrackFitChisq (Double_t fpc)
void SetMuEntranceX (Float_t mex)
void SetMuEntranceY (Float_t mey)
void SetMuEntranceT (Int_t met)
void SetRunNumber (Int_t runn)
void SetEventNumber (Int_t evtn)
TMusunFadcPulse * AddMusunFadcPulse ( TMusunFadcPulse *p)
TMusunWfdPulse * AddMusunWfdPulse ( TMusunWfdPulse * w)
virtual Int_t GetNmusunfadcpulse () const
virtual TClonesArray * GetMusunFadcPulse () const
virtual Int_t GetNmusunwfdpulse () const
virtual TClonesArray * GetMusunWfdPulse () const
Int_t GetSeedPadNo () const
Int_t GetSeedPulseBaseTime () const
Int_t GetSeedPulseTime () const
Int_t GetSeedPulseEnergy () const
Int_t GetSeedPulseAmplitude () const
Int_t GetSeedPulseLength () const
Double_t GetSeedPulseSigma () const
Double_t GetSeedPulseChisq () const
Int_t GetSeedDriftTime () const
Bool_t GetTrackHasMuStop () const
Int_t GetMuStopPadNo () const
Int_t GetMuStopPulseBaseTime () const
Int_t GetMuStopPulseTime () const
Int_t GetMuStopPulseEnergy () const
Int_t GetMuStopPulseAmplitude () const
Int_t GetMuStopPulseLength () const
Double_t GetMuStopPulseSigma () const
Double_t GetMuStopPulseChisq () const
Int_t GetMuStopDriftTime () const
Bool_t GetTrackHasFusion () const
Int_t GetFusionPadNo () const
Int_t GetFusionPulseBaseTime () const
Int_t GetFusionPulseTime () const
Int_t GetFusionPulseEnergy () const
Int_t GetFusionPulseAmplitude () const
Int_t GetFusionPulseLength () const
Double_t GetFusionPulseSigma () const
Double_t GetFusionPulseChisq () const
Int_t GetNumberofAllPulsesInEvent () const
Int_t GetTrackNumberOfPulses () const
Double_t GetAvePulseLength () const
Double_t GetAveTimeDiffPermm () const
Int_t GetTrackStartPad () const
Int_t GetTrackEndPad () const
Double_t GetTrackXZlength () const
Int_t GetTrackTotalEnergy () const
Int_t GetTrackLastPulseEnergy () const
Int_t GetTrackLastPulseDriftTime () const
Int_t GetTrackSecondLastPulseEnergy () const
Bool_t GetHasSeparateFusion () const
Bool_t GetTrackHasFusionTrack () const
Bool_t GetNeedExtraAttention () const
Double_t GetTrackFitPar0 () const
Double_t GetTrackFitPar1 () const
Double_t GetTrackFitChisq () const
Float_t GetMuEntranceX () const
Float_t GetMuEntranceY () const
Int_t GetMuEntranceT () const
Int_t GetRunNumber () const
Int_t GetEventNumber () const

class EventDisplayTrigger

  • pointers and data members
  • classes and functions

wave form display

  • // this is second MTA canvas feTrackCanvas = new TCanvas("feTrackCanvas","Musun TPC Muon Tracks", 700, 0, 900, 800);
  • feTrackDisplay = new TMuonTrackEventDisplay();
  • feTrackDisplay-> SetCanvas(feTrackCanvas);

Public Member Functions

TMuonTrackEventDisplay ()
virtual ~TMuonTrackEventDisplay ()
void MakePads ()
void Build ()
void Clear ()
void SetTimeRange (Double_t tlow, Double_t thigh)
void Draw ()
int DisplayData (Double_t tlow, Double_t thigh)
int getPadRow ( int padno)
int getPadColumn ( int padno)
Color_t GetColor ( int egy, int amp)
virtual void AddHigherLevelObjects ()
virtual void Print ( int i=0, char *suffix=NULL)

pad grid display

  • class TMuBasicEventDisplay : public TBasicEventDisplay
    overloads TBasicEventDisplay and really draws the TPC grid
  • void *root_event_loop(void *arg)
    • for (Long64_t jentry=start; jentry<stop;jentry++) { // entry loop
      for(int i=0; i < n_fillhist; i++) {
      q = fillhists[i]->ProcessGenericEntry(g_mtaEvent); // analysis loop
      ...
      }
      #ifdef EVENTDISPLAY
      if(evdisp_trigger->ProcessEntry(g_mtaEvent)) break;

>
>
Please go to https://muon.npl.washington.edu/twiki/bin/view/Main/MuSunMTA_PK
 
META FILEATTACHMENT attachment="pic1.png" attr="" comment="" date="1295228804" name="pic1.png" path="pic1.png" size="8561" stream="pic1.png" tmpFilename="/tmp/okzvzZyjVs" user="PeterKammel" version="1"

Revision 62011-01-17 - PeterKammel

Line: 1 to 1
 
META TOPICPARENT name="LinuxPK"
Added:
>
>

input tree structure

 

main

Line: 49 to 56
 
  • class TMuBasicEventDisplay : public TBasicEventDisplay
    overloads TBasicEventDisplay and really draws the TPC grid
  • void *root_event_loop(void *arg)
    • for (Long64_t jentry=start; jentry<stop;jentry++) { // entry loop
      for(int i=0; i < n_fillhist; i++) {
      q = fillhists[i]->ProcessGenericEntry(g_mtaEvent); // analysis loop
      ...
      }
      #ifdef EVENTDISPLAY
      if(evdisp_trigger->ProcessEntry(g_mtaEvent)) break;
Added:
>
>

META FILEATTACHMENT attachment="pic1.png" attr="" comment="" date="1295228804" name="pic1.png" path="pic1.png" size="8561" stream="pic1.png" tmpFilename="/tmp/okzvzZyjVs" user="PeterKammel" version="1"

Revision 52011-01-15 - PeterKammel

Line: 1 to 1
 
META TOPICPARENT name="LinuxPK"

main

  • important pointers
Line: 6 to 6
 
    • g_mtaEvent = new MTAEvent;
    • TOdbEvent *g_odb = 0;
  • important functions and classes
Changed:
<
<
    • fillhists = new FillHistBase *[3];
      n_fillhist = 0; // number of modules (global variable)
      if(g_modSwitches.MusunTPCClusterFinder) {
      fillhists[n_fillhist++] = new MusunTPCClusterFinder;
      }
      if(g_modSwitches.MusunTPCWfdAnalysis) {
      fillhists[n_fillhist++] = new MusunTPCWfdAnalysis;
      }
      if(g_modSwitches.MusunNeutronAnalysis) {
      fillhists[n_fillhist++] = new MusunNeutronAnalysis;
      }
>
>
    • fillhists = new FillHistBase *[3];
      n_fillhist = 0; // number of modules (global variable)
      if(g_modSwitches.MusunTPCClusterFinder) {
      fillhists[n_fillhist++] = new MusunTPCClusterFinder;
      }
      if(g_modSwitches.MusunTPCWfdAnalysis) {
      fillhists[n_fillhist++] = new MusunTPCWfdAnalysis;
      }
      if(g_modSwitches.MusunNeutronAnalysis) {
      fillhists[n_fillhist++] = new MusunNeutronAnalysis;
      }
      These modSwitches are set in MTAGlobals.C
 
    • void *root_event_loop(void *arg)
      • for (Long64_t jentry=start; jentry<stop;jentry++) { // entry loop
        for(int i=0; i < n_fillhist; i++) {
        q = fillhists[i]->ProcessGenericEntry(g_mtaEvent); // analysis loop
        ...
        }
        #ifdef EVENTDISPLAY
        if(evdisp_trigger->ProcessEntry(g_mtaEvent)) break;

class MusunTPCClusterFinder : public FillHistBase

Line: 29 to 28
 Does TTPCCluster store the pulses again or just pointers?

Public Member Functions

Changed:
<
<
TTPCCluster ()
virtual ~TTPCCluster ()
void Clear (Option_t *option="")
void SetNmusunfadcpulse (Int_t n)
void SetNmusunwfdpulse (Int_t nw)
void SetSeedPadNo (Int_t spn)
void SetSeedPulseTime (Int_t spt)
void SetSeedPulseEnergy (Int_t spe)
void SetSeedPulseAmplitude (Int_t spa)
void SetSeedPulseLength (Int_t spl)
void SetSeedPulseBaseTime (Int_t spb)
void SetSeedPulseSigma (Double_t sps)
void SetSeedPulseChisq (Double_t spc)
void SetSeedDriftTime (Int_t sdt)
void SetTrackHasMuStop (Bool_t thms)
void SetMuStopPulseBaseTime (Int_t mpb)
void SetMuStopPadNo (Int_t mpn)
void SetMuStopPulseTime (Int_t mpt)
void SetMuStopPulseEnergy (Int_t mpe)
void SetMuStopPulseAmplitude (Int_t mpa)
void SetMuStopPulseLength (Int_t mpl)
void SetMuStopPulseSigma (Double_t mps)
void SetMuStopPulseChisq (Double_t mpc)
void SetMuStopDriftTime (Int_t msdt)
void SetTrackHasFusion (Bool_t thf)
void SetFusionPulseBaseTime (Int_t fpb)
void SetFusionPadNo (Int_t fpn)
void SetFusionPulseTime (Int_t fpt)
void SetFusionPulseEnergy (Int_t fpe)
void SetFusionPulseAmplitude (Int_t fpa)
void SetFusionPulseLength (Int_t fpl)
void SetFusionPulseSigma (Double_t fps)
void SetFusionPulseChisq (Double_t fpc)
void SetNumberofAllPulsesInEvent (Int_t noap)
void SetTrackNumberOfPulses (Int_t nop)
void SetAvePulseLength (Double_t apl)
void SetAveTimeDiffPermm (Double_t atd)
void SetTrackStartPad (Int_t tsp)
void SetTrackEndPad (Int_t tep)
void SetTrackXZlength (Double_t txzl)
void SetTrackTotalEnergy (Int_t tte)
void SetTrackLastPulseEnergy (Int_t tlpe)
void SetTrackLastPulseDriftTime (Int_t tlpdt)
void SetTrackSecondLastPulseEnergy (Int_t tslpe)
void SetHasSeparateFusion (Bool_t hsf)
void SetTrackHasFusionTrack (Bool_t thft)
void SetNeedExtraAttention (Bool_t nea)
void SetTrackFitPar0 (Double_t fp0)
void SetTrackFitPar1 (Double_t fp1)
void SetTrackFitChisq (Double_t fpc)
void SetMuEntranceX (Float_t mex)
void SetMuEntranceY (Float_t mey)
void SetMuEntranceT (Int_t met)
void SetRunNumber (Int_t runn)
void SetEventNumber (Int_t evtn)
TMusunFadcPulse * AddMusunFadcPulse ( TMusunFadcPulse *p)
TMusunWfdPulse * AddMusunWfdPulse ( TMusunWfdPulse * w)
virtual Int_t GetNmusunfadcpulse () const
virtual TClonesArray * GetMusunFadcPulse () const
virtual Int_t GetNmusunwfdpulse () const
virtual TClonesArray * GetMusunWfdPulse () const
Int_t GetSeedPadNo () const
Int_t GetSeedPulseBaseTime () const
Int_t GetSeedPulseTime () const
Int_t GetSeedPulseEnergy () const
Int_t GetSeedPulseAmplitude () const
Int_t GetSeedPulseLength () const
Double_t GetSeedPulseSigma () const
Double_t GetSeedPulseChisq () const
Int_t GetSeedDriftTime () const
Bool_t GetTrackHasMuStop () const
Int_t GetMuStopPadNo () const
Int_t GetMuStopPulseBaseTime () const
Int_t GetMuStopPulseTime () const
Int_t GetMuStopPulseEnergy () const
Int_t GetMuStopPulseAmplitude () const
Int_t GetMuStopPulseLength () const
Double_t GetMuStopPulseSigma () const
Double_t GetMuStopPulseChisq () const
Int_t GetMuStopDriftTime () const
Bool_t GetTrackHasFusion () const
Int_t GetFusionPadNo () const
Int_t GetFusionPulseBaseTime () const
Int_t GetFusionPulseTime () const
Int_t GetFusionPulseEnergy () const
Int_t GetFusionPulseAmplitude () const
Int_t GetFusionPulseLength () const
Double_t GetFusionPulseSigma () const
Double_t GetFusionPulseChisq () const
Int_t GetNumberofAllPulsesInEvent () const
Int_t GetTrackNumberOfPulses () const
Double_t GetAvePulseLength () const
Double_t GetAveTimeDiffPermm () const
Int_t GetTrackStartPad () const
Int_t GetTrackEndPad () const
Double_t GetTrackXZlength () const
Int_t GetTrackTotalEnergy () const
Int_t GetTrackLastPulseEnergy () const
Int_t GetTrackLastPulseDriftTime () const
Int_t GetTrackSecondLastPulseEnergy () const
Bool_t GetHasSeparateFusion () const
Bool_t GetTrackHasFusionTrack () const
Bool_t GetNeedExtraAttention () const
Double_t GetTrackFitPar0 () const
Double_t GetTrackFitPar1 () const
Double_t GetTrackFitChisq () const
Float_t GetMuEntranceX () const
Float_t GetMuEntranceY () const
Int_t GetMuEntranceT () const
Int_t GetRunNumber () const
Int_t GetEventNumber () const
>
>

TTPCCluster ()
virtual ~TTPCCluster ()
void Clear (Option_t *option="")
void SetNmusunfadcpulse (Int_t n)
void SetNmusunwfdpulse (Int_t nw)
void SetSeedPadNo (Int_t spn)
void SetSeedPulseTime (Int_t spt)
void SetSeedPulseEnergy (Int_t spe)
void SetSeedPulseAmplitude (Int_t spa)
void SetSeedPulseLength (Int_t spl)
void SetSeedPulseBaseTime (Int_t spb)
void SetSeedPulseSigma (Double_t sps)
void SetSeedPulseChisq (Double_t spc)
void SetSeedDriftTime (Int_t sdt)
void SetTrackHasMuStop (Bool_t thms)
void SetMuStopPulseBaseTime (Int_t mpb)
void SetMuStopPadNo (Int_t mpn)
void SetMuStopPulseTime (Int_t mpt)
void SetMuStopPulseEnergy (Int_t mpe)
void SetMuStopPulseAmplitude (Int_t mpa)
void SetMuStopPulseLength (Int_t mpl)
void SetMuStopPulseSigma (Double_t mps)
void SetMuStopPulseChisq (Double_t mpc)
void SetMuStopDriftTime (Int_t msdt)
void SetTrackHasFusion (Bool_t thf)
void SetFusionPulseBaseTime (Int_t fpb)
void SetFusionPadNo (Int_t fpn)
void SetFusionPulseTime (Int_t fpt)
void SetFusionPulseEnergy (Int_t fpe)
void SetFusionPulseAmplitude (Int_t fpa)
void SetFusionPulseLength (Int_t fpl)
void SetFusionPulseSigma (Double_t fps)
void SetFusionPulseChisq (Double_t fpc)
void SetNumberofAllPulsesInEvent (Int_t noap)
void SetTrackNumberOfPulses (Int_t nop)
void SetAvePulseLength (Double_t apl)
void SetAveTimeDiffPermm (Double_t atd)
void SetTrackStartPad (Int_t tsp)
void SetTrackEndPad (Int_t tep)
void SetTrackXZlength (Double_t txzl)
void SetTrackTotalEnergy (Int_t tte)
void SetTrackLastPulseEnergy (Int_t tlpe)
void SetTrackLastPulseDriftTime (Int_t tlpdt)
void SetTrackSecondLastPulseEnergy (Int_t tslpe)
void SetHasSeparateFusion (Bool_t hsf)
void SetTrackHasFusionTrack (Bool_t thft)
void SetNeedExtraAttention (Bool_t nea)
void SetTrackFitPar0 (Double_t fp0)
void SetTrackFitPar1 (Double_t fp1)
void SetTrackFitChisq (Double_t fpc)
void SetMuEntranceX (Float_t mex)
void SetMuEntranceY (Float_t mey)
void SetMuEntranceT (Int_t met)
void SetRunNumber (Int_t runn)
void SetEventNumber (Int_t evtn)
TMusunFadcPulse * AddMusunFadcPulse ( TMusunFadcPulse *p)
TMusunWfdPulse * AddMusunWfdPulse ( TMusunWfdPulse * w)
virtual Int_t GetNmusunfadcpulse () const
virtual TClonesArray * GetMusunFadcPulse () const
virtual Int_t GetNmusunwfdpulse () const
virtual TClonesArray * GetMusunWfdPulse () const
Int_t GetSeedPadNo () const
Int_t GetSeedPulseBaseTime () const
Int_t GetSeedPulseTime () const
Int_t GetSeedPulseEnergy () const
Int_t GetSeedPulseAmplitude () const
Int_t GetSeedPulseLength () const
Double_t GetSeedPulseSigma () const
Double_t GetSeedPulseChisq () const
Int_t GetSeedDriftTime () const
Bool_t GetTrackHasMuStop () const
Int_t GetMuStopPadNo () const
Int_t GetMuStopPulseBaseTime () const
Int_t GetMuStopPulseTime () const
Int_t GetMuStopPulseEnergy () const
Int_t GetMuStopPulseAmplitude () const
Int_t GetMuStopPulseLength () const
Double_t GetMuStopPulseSigma () const
Double_t GetMuStopPulseChisq () const
Int_t GetMuStopDriftTime () const
Bool_t GetTrackHasFusion () const
Int_t GetFusionPadNo () const
Int_t GetFusionPulseBaseTime () const
Int_t GetFusionPulseTime () const
Int_t GetFusionPulseEnergy () const
Int_t GetFusionPulseAmplitude () const
Int_t GetFusionPulseLength () const
Double_t GetFusionPulseSigma () const
Double_t GetFusionPulseChisq () const
Int_t GetNumberofAllPulsesInEvent () const
Int_t GetTrackNumberOfPulses () const
Double_t GetAvePulseLength () const
Double_t GetAveTimeDiffPermm () const
Int_t GetTrackStartPad () const
Int_t GetTrackEndPad () const
Double_t GetTrackXZlength () const
Int_t GetTrackTotalEnergy () const
Int_t GetTrackLastPulseEnergy () const
Int_t GetTrackLastPulseDriftTime () const
Int_t GetTrackSecondLastPulseEnergy () const
Bool_t GetHasSeparateFusion () const
Bool_t GetTrackHasFusionTrack () const
Bool_t GetNeedExtraAttention () const
Double_t GetTrackFitPar0 () const
Double_t GetTrackFitPar1 () const
Double_t GetTrackFitChisq () const
Float_t GetMuEntranceX () const
Float_t GetMuEntranceY () const
Int_t GetMuEntranceT () const
Int_t GetRunNumber () const
Int_t GetEventNumber () const
 

class EventDisplayTrigger

  • pointers and data members
  • classes and functions
Line: 43 to 42
 
Changed:
<
<
>
>
 

Public Member Functions

Changed:
<
<
TMuonTrackEventDisplay ()
virtual ~TMuonTrackEventDisplay ()
void MakePads ()
void Build ()
void Clear ()
void SetTimeRange (Double_t tlow, Double_t thigh)
void Draw ()
int DisplayData (Double_t tlow, Double_t thigh)
int getPadRow ( int padno)
int getPadColumn ( int padno)
Color_t GetColor ( int egy, int amp)
virtual void AddHigherLevelObjects ()
virtual void Print ( int i=0, char *suffix=NULL)
>
>
TMuonTrackEventDisplay ()
virtual ~TMuonTrackEventDisplay ()
void MakePads ()
void Build ()
void Clear ()
void SetTimeRange (Double_t tlow, Double_t thigh)
void Draw ()
int DisplayData (Double_t tlow, Double_t thigh)
int getPadRow ( int padno)
int getPadColumn ( int padno)
Color_t GetColor ( int egy, int amp)
virtual void AddHigherLevelObjects ()
virtual void Print ( int i=0, char *suffix=NULL)
 

pad grid display

Added:
>
>
  • void *root_event_loop(void *arg)
    • for (Long64_t jentry=start; jentry<stop;jentry++) { // entry loop
      for(int i=0; i < n_fillhist; i++) {
      q = fillhists[i]->ProcessGenericEntry(g_mtaEvent); // analysis loop
      ...
      }
      #ifdef EVENTDISPLAY
      if(evdisp_trigger->ProcessEntry(g_mtaEvent)) break;

Revision 42011-01-15 - PeterKammel

Line: 1 to 1
 
META TOPICPARENT name="LinuxPK"

main

  • important pointers
Line: 8 to 8
 
  • important functions and classes
    • fillhists = new FillHistBase *[3];
      n_fillhist = 0; // number of modules (global variable)
      if(g_modSwitches.MusunTPCClusterFinder) {
      fillhists[n_fillhist++] = new MusunTPCClusterFinder;
      }
      if(g_modSwitches.MusunTPCWfdAnalysis) {
      fillhists[n_fillhist++] = new MusunTPCWfdAnalysis;
      }
      if(g_modSwitches.MusunNeutronAnalysis) {
      fillhists[n_fillhist++] = new MusunNeutronAnalysis;
      }
    • void *root_event_loop(void *arg)
Changed:
<
<
      • for (Long64_t jentry=start; jentry<stop;jentry++) { // entry loop
        for(int i=0; i < n_fillhist; i++) {
        q = fillhists[i]->ProcessGenericEntry(g_mtaEvent); // analysis loop
>
>
      • for (Long64_t jentry=start; jentry<stop;jentry++) { // entry loop
        for(int i=0; i < n_fillhist; i++) {
        q = fillhists[i]->ProcessGenericEntry(g_mtaEvent); // analysis loop
        ...
        }
        #ifdef EVENTDISPLAY
        if(evdisp_trigger->ProcessEntry(g_mtaEvent)) break;
 

class MusunTPCClusterFinder : public FillHistBase

Added:
>
>
The main result of this class is that a new TTPCCluster class TCloneArray is attached to the TMusunMTAEvent, which contains the original
TMusunWfdPulse + additional track information stored in the TTPCCluster class.
 

Public Member Functions


MusunTPCClusterFinder ()
virtual ~MusunTPCClusterFinder ()
int ProcessEntry ( MTAEvent *mtaEvent)

MusunTPCClusterFinder ()
virtual ~MusunTPCClusterFinder ()
int ProcessEntry ( MTAEvent *mtaEvent)
int getTrackSeed ( int *sa)
double getPadX ( int padno)
double getPadZ ( int padno)
int get1stNeighbors ( int padno, int nn)
int get2ndNeighbors ( int padno, int nn)
int isPadHasPulse ( int padno, int stime, int *sa)
void updateXZTrackParameters ( int *npadnos)
void updateYTrackParameters ( int padno, int stime, int *sa)
int getNextClosestPad ( int *sa, int *sl)
bool isPadInCone ( int padno)
int isPulseInWindow ( int padno, int *sa)
double getPadDistance ( int pad1, int pad2)
void updateTrackParameters ( int padno, int pulset, int *sa)
int isPadHasGoodPulse ( int padno, int pulset, int *sa)
int isFusionPulse ( int padno, int pulset, int *sa)
bool isMuStop ( int padno, int pulset, int *sa)
void addMuStopNeighbors ( int padno, int pulset, int *sa)
void doBackwardSearch ( int *sa)
bool isPadInBWCone ( int padno)
bool isBeamSpot ( int padno)
double getPadDistanceZ ( int pad1, int pad2)
int getPadRow ( int padno)
int getPadColumn ( int padno)
void addThisToTrack ( int no)
Line: 21 to 24
 
    • TMuEntrance *muent = event->GetMuEntrance();
    • TClonesArray &wC = *(event->GetMusunWfdPulse()); // &wC is reference to object on rhs
    • cluster search up to 10 clusters that can have 20 pulses, each pulse has 10 parameters
      double clusters[20][20][10] = { { { 0. } } } ;
      int timegroups[20][2] = { 0 } ; // time and number of pulse info
      int tw = ClusterSearchWindow ; // timewindow, this parameter need to be set again...
Added:
>
>

class TTPCCluster : public TObject

Does TTPCCluster store the pulses again or just pointers?

Public Member Functions

TTPCCluster ()
virtual ~TTPCCluster ()
void Clear (Option_t *option="")
void SetNmusunfadcpulse (Int_t n)
void SetNmusunwfdpulse (Int_t nw)
void SetSeedPadNo (Int_t spn)
void SetSeedPulseTime (Int_t spt)
void SetSeedPulseEnergy (Int_t spe)
void SetSeedPulseAmplitude (Int_t spa)
void SetSeedPulseLength (Int_t spl)
void SetSeedPulseBaseTime (Int_t spb)
void SetSeedPulseSigma (Double_t sps)
void SetSeedPulseChisq (Double_t spc)
void SetSeedDriftTime (Int_t sdt)
void SetTrackHasMuStop (Bool_t thms)
void SetMuStopPulseBaseTime (Int_t mpb)
void SetMuStopPadNo (Int_t mpn)
void SetMuStopPulseTime (Int_t mpt)
void SetMuStopPulseEnergy (Int_t mpe)
void SetMuStopPulseAmplitude (Int_t mpa)
void SetMuStopPulseLength (Int_t mpl)
void SetMuStopPulseSigma (Double_t mps)
void SetMuStopPulseChisq (Double_t mpc)
void SetMuStopDriftTime (Int_t msdt)
void SetTrackHasFusion (Bool_t thf)
void SetFusionPulseBaseTime (Int_t fpb)
void SetFusionPadNo (Int_t fpn)
void SetFusionPulseTime (Int_t fpt)
void SetFusionPulseEnergy (Int_t fpe)
void SetFusionPulseAmplitude (Int_t fpa)
void SetFusionPulseLength (Int_t fpl)
void SetFusionPulseSigma (Double_t fps)
void SetFusionPulseChisq (Double_t fpc)
void SetNumberofAllPulsesInEvent (Int_t noap)
void SetTrackNumberOfPulses (Int_t nop)
void SetAvePulseLength (Double_t apl)
void SetAveTimeDiffPermm (Double_t atd)
void SetTrackStartPad (Int_t tsp)
void SetTrackEndPad (Int_t tep)
void SetTrackXZlength (Double_t txzl)
void SetTrackTotalEnergy (Int_t tte)
void SetTrackLastPulseEnergy (Int_t tlpe)
void SetTrackLastPulseDriftTime (Int_t tlpdt)
void SetTrackSecondLastPulseEnergy (Int_t tslpe)
void SetHasSeparateFusion (Bool_t hsf)
void SetTrackHasFusionTrack (Bool_t thft)
void SetNeedExtraAttention (Bool_t nea)
void SetTrackFitPar0 (Double_t fp0)
void SetTrackFitPar1 (Double_t fp1)
void SetTrackFitChisq (Double_t fpc)
void SetMuEntranceX (Float_t mex)
void SetMuEntranceY (Float_t mey)
void SetMuEntranceT (Int_t met)
void SetRunNumber (Int_t runn)
void SetEventNumber (Int_t evtn)
TMusunFadcPulse * AddMusunFadcPulse ( TMusunFadcPulse *p)
TMusunWfdPulse * AddMusunWfdPulse ( TMusunWfdPulse * w)
virtual Int_t GetNmusunfadcpulse () const
virtual TClonesArray * GetMusunFadcPulse () const
virtual Int_t GetNmusunwfdpulse () const
virtual TClonesArray * GetMusunWfdPulse () const
Int_t GetSeedPadNo () const
Int_t GetSeedPulseBaseTime () const
Int_t GetSeedPulseTime () const
Int_t GetSeedPulseEnergy () const
Int_t GetSeedPulseAmplitude () const
Int_t GetSeedPulseLength () const
Double_t GetSeedPulseSigma () const
Double_t GetSeedPulseChisq () const
Int_t GetSeedDriftTime () const
Bool_t GetTrackHasMuStop () const
Int_t GetMuStopPadNo () const
Int_t GetMuStopPulseBaseTime () const
Int_t GetMuStopPulseTime () const
Int_t GetMuStopPulseEnergy () const
Int_t GetMuStopPulseAmplitude () const
Int_t GetMuStopPulseLength () const
Double_t GetMuStopPulseSigma () const
Double_t GetMuStopPulseChisq () const
Int_t GetMuStopDriftTime () const
Bool_t GetTrackHasFusion () const
Int_t GetFusionPadNo () const
Int_t GetFusionPulseBaseTime () const
Int_t GetFusionPulseTime () const
Int_t GetFusionPulseEnergy () const
Int_t GetFusionPulseAmplitude () const
Int_t GetFusionPulseLength () const
Double_t GetFusionPulseSigma () const
Double_t GetFusionPulseChisq () const
Int_t GetNumberofAllPulsesInEvent () const
Int_t GetTrackNumberOfPulses () const
Double_t GetAvePulseLength () const
Double_t GetAveTimeDiffPermm () const
Int_t GetTrackStartPad () const
Int_t GetTrackEndPad () const
Double_t GetTrackXZlength () const
Int_t GetTrackTotalEnergy () const
Int_t GetTrackLastPulseEnergy () const
Int_t GetTrackLastPulseDriftTime () const
Int_t GetTrackSecondLastPulseEnergy () const
Bool_t GetHasSeparateFusion () const
Bool_t GetTrackHasFusionTrack () const
Bool_t GetNeedExtraAttention () const
Double_t GetTrackFitPar0 () const
Double_t GetTrackFitPar1 () const
Double_t GetTrackFitChisq () const
Float_t GetMuEntranceX () const
Float_t GetMuEntranceY () const
Int_t GetMuEntranceT () const
Int_t GetRunNumber () const
Int_t GetEventNumber () const
 

class EventDisplayTrigger

  • pointers and data members
  • classes and functions
Changed:
<
<
>
>
 
Changed:
<
<
00010   // this is second MTA canvas
00011   feTrackCanvas = new TCanvas("feTrackCanvas","Musun TPC Muon Tracks", 700, 0, 900, 800);
00012   feTrackDisplay = new [[http://muon.npl.washington.edu/exp/MuSun/html/html/classTMuonTrackEventDisplay.html][TMuonTrackEventDisplay]]();
00013   feTrackDisplay-> [[http://muon.npl.washington.edu/exp/MuSun/html/html/classTBasicEventDisplay.html#01ac143f5a3dff4f26671dface86d9b9][SetCanvas]](feTrackCanvas);
>
>

wave form display

  • // this is second MTA canvas feTrackCanvas = new TCanvas("feTrackCanvas","Musun TPC Muon Tracks", 700, 0, 900, 800);
  • feTrackDisplay = new TMuonTrackEventDisplay();
  • feTrackDisplay-> SetCanvas(feTrackCanvas);

Public Member Functions

TMuonTrackEventDisplay ()
virtual ~TMuonTrackEventDisplay ()
void MakePads ()
void Build ()
void Clear ()
void SetTimeRange (Double_t tlow, Double_t thigh)
void Draw ()
int DisplayData (Double_t tlow, Double_t thigh)
int getPadRow ( int padno)
int getPadColumn ( int padno)
Color_t GetColor ( int egy, int amp)
virtual void AddHigherLevelObjects ()
virtual void Print ( int i=0, char *suffix=NULL)
 
Added:
>
>

pad grid display

Revision 32011-01-13 - PeterKammel

Line: 1 to 1
 
META TOPICPARENT name="LinuxPK"

main

  • important pointers
Line: 12 to 12
 

class MusunTPCClusterFinder : public FillHistBase

Public Member Functions

Changed:
<
<
MusunTPCClusterFinder ()
virtual ~MusunTPCClusterFinder ()
int ProcessEntry ( MTAEvent *mtaEvent)
MusunTPCClusterFinder ()
virtual ~MusunTPCClusterFinder ()
int ProcessEntry ( MTAEvent *mtaEvent)
int getTrackSeed ( int *sa)
double getPadX ( int padno)
double getPadZ ( int padno)
int get1stNeighbors ( int padno, int nn)
int get2ndNeighbors ( int padno, int nn)
int isPadHasPulse ( int padno, int stime, int *sa)
void updateXZTrackParameters ( int *npadnos)
void updateYTrackParameters ( int padno, int stime, int *sa)
int getNextClosestPad ( int *sa, int *sl)
bool isPadInCone ( int padno)
int isPulseInWindow ( int padno, int *sa)
double getPadDistance ( int pad1, int pad2)
void updateTrackParameters ( int padno, int pulset, int *sa)
int isPadHasGoodPulse ( int padno, int pulset, int *sa)
int isFusionPulse ( int padno, int pulset, int *sa)
bool isMuStop ( int padno, int pulset, int *sa)
void addMuStopNeighbors ( int padno, int pulset, int *sa)
void doBackwardSearch ( int *sa)
bool isPadInBWCone ( int padno)
bool isBeamSpot ( int padno)
double getPadDistanceZ ( int pad1, int pad2)
int getPadRow ( int padno)
int getPadColumn ( int padno)
void addThisToTrack ( int no)
>
>

MusunTPCClusterFinder ()
virtual ~MusunTPCClusterFinder ()
int ProcessEntry ( MTAEvent *mtaEvent)

MusunTPCClusterFinder ()
virtual ~MusunTPCClusterFinder ()
int ProcessEntry ( MTAEvent *mtaEvent)
int getTrackSeed ( int *sa)
double getPadX ( int padno)
double getPadZ ( int padno)
int get1stNeighbors ( int padno, int nn)
int get2ndNeighbors ( int padno, int nn)
int isPadHasPulse ( int padno, int stime, int *sa)
void updateXZTrackParameters ( int *npadnos)
void updateYTrackParameters ( int padno, int stime, int *sa)
int getNextClosestPad ( int *sa, int *sl)
bool isPadInCone ( int padno)
int isPulseInWindow ( int padno, int *sa)
double getPadDistance ( int pad1, int pad2)
void updateTrackParameters ( int padno, int pulset, int *sa)
int isPadHasGoodPulse ( int padno, int pulset, int *sa)
int isFusionPulse ( int padno, int pulset, int *sa)
bool isMuStop ( int padno, int pulset, int *sa)
void addMuStopNeighbors ( int padno, int pulset, int *sa)
void doBackwardSearch ( int *sa)
bool isPadInBWCone ( int padno)
bool isBeamSpot ( int padno)
double getPadDistanceZ ( int pad1, int pad2)
int getPadRow ( int padno)
int getPadColumn ( int padno)
void addThisToTrack ( int no)
 

int MusunTPCClusterFinder::ProcessEntry(MTAEvent *mtaEvent)

  • pointers and data members (also from class)
Line: 21 to 21
 
    • TMuEntrance *muent = event->GetMuEntrance();
    • TClonesArray &wC = *(event->GetMusunWfdPulse()); // &wC is reference to object on rhs
    • cluster search up to 10 clusters that can have 20 pulses, each pulse has 10 parameters
      double clusters[20][20][10] = { { { 0. } } } ;
      int timegroups[20][2] = { 0 } ; // time and number of pulse info
      int tw = ClusterSearchWindow ; // timewindow, this parameter need to be set again...
Deleted:
<
<

 \ No newline at end of file
Added:
>
>

class EventDisplayTrigger

  • pointers and data members
  • classes and functions
00010   // this is second MTA canvas
00011   feTrackCanvas = new TCanvas("feTrackCanvas","Musun TPC Muon Tracks", 700, 0, 900, 800);
00012   feTrackDisplay = new [[http://muon.npl.washington.edu/exp/MuSun/html/html/classTMuonTrackEventDisplay.html][TMuonTrackEventDisplay]]();
00013   feTrackDisplay-> [[http://muon.npl.washington.edu/exp/MuSun/html/html/classTBasicEventDisplay.html#01ac143f5a3dff4f26671dface86d9b9][SetCanvas]](feTrackCanvas);

Revision 22011-01-13 - PeterKammel

Line: 1 to 1
 
META TOPICPARENT name="LinuxPK"

main

  • important pointers
Line: 9 to 9
 
    • fillhists = new FillHistBase *[3];
      n_fillhist = 0; // number of modules (global variable)
      if(g_modSwitches.MusunTPCClusterFinder) {
      fillhists[n_fillhist++] = new MusunTPCClusterFinder;
      }
      if(g_modSwitches.MusunTPCWfdAnalysis) {
      fillhists[n_fillhist++] = new MusunTPCWfdAnalysis;
      }
      if(g_modSwitches.MusunNeutronAnalysis) {
      fillhists[n_fillhist++] = new MusunNeutronAnalysis;
      }
    • void *root_event_loop(void *arg)
      • for (Long64_t jentry=start; jentry<stop;jentry++) { // entry loop
        for(int i=0; i < n_fillhist; i++) {
        q = fillhists[i]->ProcessGenericEntry(g_mtaEvent); // analysis loop
Deleted:
<
<

class MusunTPCWfdAnalysis : public FillHistBase

 \ No newline at end of file
Added:
>
>

class MusunTPCClusterFinder : public FillHistBase

Public Member Functions

MusunTPCClusterFinder ()
virtual ~MusunTPCClusterFinder ()
int ProcessEntry ( MTAEvent *mtaEvent)
MusunTPCClusterFinder ()
virtual ~MusunTPCClusterFinder ()
int ProcessEntry ( MTAEvent *mtaEvent)
int getTrackSeed ( int *sa)
double getPadX ( int padno)
double getPadZ ( int padno)
int get1stNeighbors ( int padno, int nn)
int get2ndNeighbors ( int padno, int nn)
int isPadHasPulse ( int padno, int stime, int *sa)
void updateXZTrackParameters ( int *npadnos)
void updateYTrackParameters ( int padno, int stime, int *sa)
int getNextClosestPad ( int *sa, int *sl)
bool isPadInCone ( int padno)
int isPulseInWindow ( int padno, int *sa)
double getPadDistance ( int pad1, int pad2)
void updateTrackParameters ( int padno, int pulset, int *sa)
int isPadHasGoodPulse ( int padno, int pulset, int *sa)
int isFusionPulse ( int padno, int pulset, int *sa)
bool isMuStop ( int padno, int pulset, int *sa)
void addMuStopNeighbors ( int padno, int pulset, int *sa)
void doBackwardSearch ( int *sa)
bool isPadInBWCone ( int padno)
bool isBeamSpot ( int padno)
double getPadDistanceZ ( int pad1, int pad2)
int getPadRow ( int padno)
int getPadColumn ( int padno)
void addThisToTrack ( int no)

int MusunTPCClusterFinder::ProcessEntry(MTAEvent *mtaEvent)

  • pointers and data members (also from class)
    • TMusunMTAEvent *fMusunMTAEvent = mtaEvent->GetMusunMTAEvent();
    • TRunInfoEvent *fRunInfoEvent = mtaEvent->GetRunInfoEvent();
    • TMusunEvent *event = mtaEvent->GetMusunEvent();
    • TMuEntrance *muent = event->GetMuEntrance();
    • TClonesArray &wC = *(event->GetMusunWfdPulse()); // &wC is reference to object on rhs
    • cluster search up to 10 clusters that can have 20 pulses, each pulse has 10 parameters
      double clusters[20][20][10] = { { { 0. } } } ;
      int timegroups[20][2] = { 0 } ; // time and number of pulse info
      int tw = ClusterSearchWindow ; // timewindow, this parameter need to be set again...

 \ No newline at end of file

Revision 12011-01-12 - PeterKammel

Line: 1 to 1
Added:
>
>
META TOPICPARENT name="LinuxPK"

main

  • important pointers
  • important functions and classes
    • fillhists = new FillHistBase *[3];
      n_fillhist = 0; // number of modules (global variable)
      if(g_modSwitches.MusunTPCClusterFinder) {
      fillhists[n_fillhist++] = new MusunTPCClusterFinder;
      }
      if(g_modSwitches.MusunTPCWfdAnalysis) {
      fillhists[n_fillhist++] = new MusunTPCWfdAnalysis;
      }
      if(g_modSwitches.MusunNeutronAnalysis) {
      fillhists[n_fillhist++] = new MusunNeutronAnalysis;
      }
    • void *root_event_loop(void *arg)
      • for (Long64_t jentry=start; jentry<stop;jentry++) { // entry loop
        for(int i=0; i < n_fillhist; i++) {
        q = fillhists[i]->ProcessGenericEntry(g_mtaEvent); // analysis loop

class MusunTPCWfdAnalysis : public FillHistBase

 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback