StEEmcIUMixMaker Class Reference

A class for mixing pi0 candidates. More...

Inheritance diagram for StEEmcIUMixMaker:

StMaker

List of all members.

Public Member Functions

 StEEmcIUMixMaker (const Char_t *name, Int_t size=20)
void mudst (const Char_t *name)
 sets the name of the muDst maker
void points (const Char_t *name)
 sets the name of the point maker
void analysis (const Char_t *name)
 sets the name of the adc-->energy maker
Int_t numberOfCandidates ()
 returns the number of candidates
Int_t numberOfMixedCandidates ()
 returns the number of mixed-background candidates
Int_t numberofFpoint ()
StEEmcIUPair candidate (Int_t c)
 Return a specified candidate pair.
StEEmcIUPair mixedCandidate (Int_t m)
 Returns the specified mixed candidate pair.
Int_t Init ()
 Initialize.
Int_t Make ()
 Process.
void Clear (Option_t *opts="")
 Clear.
void sector (Int_t sector)
void trigger (Int_t trigger)
void minET (Float_t et)
 set minimum ET for pair of points
void maxZ (Float_t z)
 set maximum Zgg for pair of points
void minEpoint (Float_t m)
 minimum energy for a given point
void setTrigMode (Int_t m)
void book ()
 create 1d and 2d histograms
void fill ()
 fill 1d and 2d histograms
void fill (std::vector< TH1F * > &h, StEEmcIUPair pair)
 Fill pairwise distributions.
void fillQA (std::vector< TH2F * > &h, StEEmcIUPair pair)
 Fill qa distributions.
void range (Float_t min, Float_t max)
 Mass range for qa histograms.
void fixedVertex (Float_t x, Float_t y, Float_t z)
 Fix vertex for simple MC.
void floatVertex (Float_t x, Float_t y, Float_t z, Float_t s)
 Smear vertex.
void mixLimit (Int_t m)

Protected Member Functions

void fillPool ()
Bool_t accept (StMuEvent *)
 Accept or reject this event (trigger, qa, etc...).
Bool_t accept (StEEmcIUPoint &p1, StEEmcIUPoint &p2)
 Accept or reject point pairs.
void mixReal ()
 Mix real pairs.
void mixBackground ()
 Mix combinatoric pairs.
 ClassDef (StEEmcIUMixMaker, 1)
 Makes class visible to root.

Protected Attributes

TVector3 mFixedVertex
Float_t mSigmaVertex
Float_t mETcut
Float_t mZcut
Float_t mEpoint
Int_t mTrigMode
Int_t mMixLimits
std::vector< Int_t > mSectorList
std::vector< Int_t > mTriggerList
std::vector< Int_t > numberofFailpoint
std::vector< TH1F * > mH1
 1D histos
std::vector< TH2F * > mH2
 2D histos
std::vector< TH1F * > mH1real
 1D real histos
std::vector< TH2F * > mH2real
 2D real histos
std::vector< TH1F * > mH1mix
 1D mixed histos
std::vector< TH2F * > mH2mix
 2D mixed histos
StMuDstMakermMuDstMaker
 Pointer to MuDst.
StEEmcIUPointMakermEEpoints
 Pointer to points.
StEEmcA2EMakermEEanalysis
 Pointer to ADC 2 energy.
TString mMuDstMakerName
 MuDst name.
TString mPointMakerName
 Point maker name.
TString mAnalysisName
 Analaysis name.
EEmcGeomSimplemEEmcTow
 Pointer to tower geom.
TH1F * hZ1
TH1F * hZ2
StEEmcIUPointVec_t mPoints
 Vector of points to mix into X-->gamma gamma.
std::vector< StEEmcIUPointVec_t > mPool
StEEmcIUPairVec_t mCandidates
 Point pairs mixed on each event.
StEEmcIUPairVec_t mBackground
 Background pairs mixed on each event.
Float_t mMinMass
 Min and max mass for gated quantities.
Float_t mMaxMass
Int_t mPoolSize
 Size of mixed event pool.
TRandom * mRandom
 Random number generator for event mixing.


Detailed Description

A class for mixing pi0 candidates.

This class takes as input points found using StEEmcIUPointMaker or a derivative class. We then loop over all possible pairs of points to find pi0 (eta) --> gamma gamma candidates.

Points from each event are stored in a E_T ranked pool, which we then mix to form combinatoric background candidates. In the future we may create a separate maker for mixed events.

The code allows two cuts:

  1. Trigger list -- the user may specify a list of triggers to process
  2. Sector limits -- by default, points are mixed if in the same sector. The user may specify other sector-wise limits.

Definition at line 22 of file StEEmcIUMixMaker.h.


Constructor & Destructor Documentation

StEEmcIUMixMaker::StEEmcIUMixMaker ( const Char_t *  name,
Int_t  size = 20 
)

Default constructor

Parameters:
name Name of the maker, passed to StMaker constructor
size Size of the mixed-event pool

Defaults

initialize background pool

Definition at line 46 of file StEEmcIUMixMaker.cxx.

References maxZ(), mEEmcTow, mFixedVertex, minEpoint(), minET(), mMixLimits, mPool, mPoolSize, mRandom, mSigmaVertex, mTrigMode, points(), and range().


Member Function Documentation

Bool_t StEEmcIUMixMaker::accept ( StMuEvent event  )  [protected]

Accept or reject this event (trigger, qa, etc...).

no triggers in list, assume wide open

Definition at line 294 of file StEEmcIUMixMaker.cxx.

References mH1, and mTriggerList.

Referenced by Make().

void StEEmcIUMixMaker::fillPool (  )  [protected]

-- fills mixed event pool

get the high-tower in the eemc

get a reference to the list of points with the indexed by trigger

reverse the list of old points

add points from the current event

make sure point is beneath a valid tower

high-tower trigger mode, reject if it's the high tower

push point into vector

reverse yet again

and truncate to the maximum pool size

Definition at line 412 of file StEEmcIUMixMaker.cxx.

References StEEmcElement::adc(), StEEmcTower::etabin(), EEmcGeomSimple::getTower(), StEEmcA2EMaker::hightower(), mEEanalysis, mEEmcTow, mPoints, mPool, mPoolSize, mTrigMode, points(), StEEmcTower::sector(), and StEEmcTower::subsector().

Referenced by Make().

Int_t StEEmcIUMixMaker::Init (  )  [virtual]

Initialize.

initialize histograms

Reimplemented from StMaker.

Definition at line 74 of file StEEmcIUMixMaker.cxx.

References book(), mAnalysisName, mEEanalysis, mEEpoints, mMuDstMaker, mMuDstMakerName, and mPointMakerName.

Int_t StEEmcIUMixMaker::Make (  )  [virtual]

Process.

Check trigger, run QA, etc...

Get the list of points

Not enough points in event

Construct all pairs of real events

Construct combinatoric background

fill histograms

Fill the event pool with points from current event.

Reimplemented from StMaker.

Definition at line 91 of file StEEmcIUMixMaker.cxx.

References accept(), fill(), fillPool(), kStOK, mEEpoints, mH1, mixBackground(), mixReal(), mMuDstMaker, mPoints, and StEEmcIUPointMaker::points().

void StEEmcIUMixMaker::mixBackground (  )  [protected]

Mix combinatoric pairs.

get the high-tower in the eemc

get a reference to the list of points with the indexed by trigger

loop over all points in current event

loop over all points in ranked pool

Require points to be in specified sectors

same sector

add to background

Definition at line 209 of file StEEmcIUMixMaker.cxx.

References StEEmcElement::adc(), StEEmcA2EMaker::hightower(), mBackground, mEEanalysis, mFixedVertex, mMuDstMaker, mPoints, mPool, mRandom, mSectorList, mSigmaVertex, points(), and StEEmcIUPoint::sector().

Referenced by Make().

void StEEmcIUMixMaker::mixLimit ( Int_t  m  )  [inline]

By default, only points in the same sector are mixed toghether. Setting mMixLimits>0 allow points to be mixed which are mMixLimits sectors away.

Definition at line 102 of file StEEmcIUMixMaker.h.

References mMixLimits.

void StEEmcIUMixMaker::mixReal (  )  [protected]

Mix real pairs.

Verify that we have a valid (or user specified) event vertex

mix all pairs of points, avoiding self-pairs

Require points to be in specified sectors

same sector

Definition at line 137 of file StEEmcIUMixMaker.cxx.

References mCandidates, mFixedVertex, mMuDstMaker, mPoints, mRandom, mSectorList, mSigmaVertex, and StEEmcIUPoint::sector().

Referenced by Make().

void StEEmcIUMixMaker::sector ( Int_t  sector  )  [inline]

add a sector to the list of sectors to process

Parameters:
sector An EEmc sector, [0,11]

Definition at line 193 of file StEEmcIUMixMaker.h.

References mSectorList.

void StEEmcIUMixMaker::setTrigMode ( Int_t  m  )  [inline]

Sets the trigger mode for combinatoric background mixing. Points will be saved from event-to-event in a "pool". By default, any or all points in an event can get into the pool (default=0, minbias). If high-tower is selected, we do not allow points beneath the highest tower in the event (the triggered tower) to enter the pool. If jet-patch is selected... well, we don't know how to handle this yet so it behaves like minbias.

Parameters:
m,: 0=minbias, 1=high-tower, 2=jet patch

Definition at line 80 of file StEEmcIUMixMaker.h.

References mTrigMode.

void StEEmcIUMixMaker::trigger ( Int_t  trigger  )  [inline]

add a trigger to the list of triggers to process

Parameters:
trigger An offline trigger ID

Definition at line 194 of file StEEmcIUMixMaker.h.

References mTriggerList.


Member Data Documentation

Float_t StEEmcIUMixMaker::mEpoint [protected]

-- min epoint

Definition at line 112 of file StEEmcIUMixMaker.h.

Referenced by minEpoint().

Float_t StEEmcIUMixMaker::mETcut [protected]

-- min ET

Definition at line 110 of file StEEmcIUMixMaker.h.

Referenced by minET().

TVector3 StEEmcIUMixMaker::mFixedVertex [protected]

-- fixed vertex

Definition at line 107 of file StEEmcIUMixMaker.h.

Referenced by fixedVertex(), mixBackground(), mixReal(), and StEEmcIUMixMaker().

Int_t StEEmcIUMixMaker::mMixLimits [protected]

-- Allow mixing of points mMixLimits sectors away

Definition at line 117 of file StEEmcIUMixMaker.h.

Referenced by accept(), mixLimit(), and StEEmcIUMixMaker().

std::vector< StEEmcIUPointVec_t > StEEmcIUMixMaker::mPool [protected]

Pool of points saved from event to event for background mixing. We rank each event by the adc response of the high tower, in bins 100 adc counts wide.

Definition at line 161 of file StEEmcIUMixMaker.h.

Referenced by fillPool(), mixBackground(), and StEEmcIUMixMaker().

std::vector<Int_t> StEEmcIUMixMaker::mSectorList [protected]

-- list of sectors to process

Definition at line 119 of file StEEmcIUMixMaker.h.

Referenced by mixBackground(), mixReal(), and sector().

Float_t StEEmcIUMixMaker::mSigmaVertex [protected]

-- smear fixed vertex

Definition at line 108 of file StEEmcIUMixMaker.h.

Referenced by floatVertex(), mixBackground(), mixReal(), and StEEmcIUMixMaker().

std::vector<Int_t> StEEmcIUMixMaker::mTriggerList [protected]

-- list of triggers to process

Definition at line 120 of file StEEmcIUMixMaker.h.

Referenced by accept(), and trigger().

Int_t StEEmcIUMixMaker::mTrigMode [protected]

-- trigger mode for mixing

Definition at line 114 of file StEEmcIUMixMaker.h.

Referenced by fillPool(), setTrigMode(), and StEEmcIUMixMaker().

Float_t StEEmcIUMixMaker::mZcut [protected]

-- min Z

Definition at line 111 of file StEEmcIUMixMaker.h.

Referenced by maxZ().


The documentation for this class was generated from the following files:

Generated on Fri Feb 10 04:28:02 2012 for StRoot by  doxygen 1.5.9