BRAT 2.4.5
Class index
Full class index
brahmlib
BRAHMS
ROOT page

BrC1AdcGainCalModule


class description - source file - inheritance tree

class BrC1AdcGainCalModule : public BrChkvCalModule

    private:
void EvaluateGain(TH1F*, TF1*, Int_t) void MakeAdcCalHist(Int_t tube) protected:
virtual void ReadAscii() virtual void SaveAscii() public:
BrC1AdcGainCalModule BrC1AdcGainCalModule() BrC1AdcGainCalModule BrC1AdcGainCalModule(Char_t* Name, Char_t* Title) BrC1AdcGainCalModule BrC1AdcGainCalModule(BrC1AdcGainCalModule&) virtual void ~BrC1AdcGainCalModule() virtual void Begin() static TClass* Class() virtual void DefineHistograms() virtual void End() virtual void Event(BrEventNode*, BrEventNode*) virtual void Finish() virtual void Init() virtual TClass* IsA() const BrVector3D PointToC1BackPlane(BrDetectorTrack* t2track) virtual void Print(Option_t* option = "B") const void SetMaxGainLimit(Float_t mx = 400) void SetMinGainLimit(Float_t mn = 20) void SetMomentumCut(Float_t cutL = 4, Float_t cutH = 6) void SetWindowWidth(Float_t w = 3.5) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members

    private:
BrDetectorVolume* fC1Volume BrDetectorVolume* fT2Volume BrPlane3D fC1BackPlane Float_t fMaxGainLimit max limit for reasonable gain Float_t fMinGainLimit min limit for reasonable gain Float_t fMomentumCutHigh maximum momentum Float_t fMomentumCutLow minimum momentum Float_t fWindowWidth TH1F** fAdc TH1F** fAdcCal TH1F* fSum TH1F* fSumW TH1F* fChi2

Class Description

 Gain calibration module for C1. The gain is calibrated by finding
 the peak in the adc spectrum that are generated by tracks
 with a momentum between 4 and 6 hitting in the middle of a tube.

 In the inNode passed to the event method there should be FFSracks
 (in a BrDataTable) and raw C1 data (DigC1).

 When gain calibrating C1 with this module it is very important
 that the C1 geometry is aligned properly - if it's not, the tube
 might get a smaller fraction of the generated Cherenkov photons
 (compared to if the track hits right in the middle of the tube),
 and the gain calibration constant will be wrong.


BrC1AdcGainCalModule() : BrChkvCalModule()
 default constructor
 DO NOT USE

BrC1AdcGainCalModule(Char_t *Name, Char_t *Title) : BrChkvCalModule(Name, Title)
 Named Constructor

~BrC1AdcGainCalModule()
 destructor


void DefineHistograms()
 Book histograms (called from BrModule::Book)


void Init()
 Job-level initialisation

void Begin()
 Called once per run


void Event(BrEventNode* inNode, BrEventNode* outNode)
 Procedure:
 1. Get FFS track table and check if there's any tracks
 1. Get DigC1 object.
 2. Loop over tracks and select tracks in momentum range
 3. Check if the track hits in the middle of a tube
 4. Subtract pedestal and fill histogram

PointToC1BackPlane(BrDetectorTrack* t2track)
 Returns the position (in local C1 coordinates) of the
 t2 track intersection with C1 backplane.

void End()
 Called once at end of each run


void Finish()
 Job-level finalisation

void EvaluateGain(TH1F* h, TF1* fit, Int_t tube)
--------------------------------------------------
 fit ADC distribution to get the peak channel.
 this channel will be the gain passed to the calibration
 parameter element
--------------------------------------------------

void MakeAdcCalHist(Int_t tube)
 PRIVATE METHOD:
 Multiply ADC by gain (divide by ADC at peak)
 and fill calibrated adc histogram

void SaveAscii()

void ReadAscii()

void Print(Option_t* option) const
 Print module information
 See BrModule::Print for options.
 In addition this module defines the Option:
 <fill in here>



Inline Functions


                        void SetMaxGainLimit(Float_t mx = 400)
                        void SetMinGainLimit(Float_t mn = 20)
                        void SetMomentumCut(Float_t cutL = 4, Float_t cutH = 6)
                        void SetWindowWidth(Float_t w = 3.5)
                     TClass* Class()
                     TClass* IsA() const
                        void ShowMembers(TMemberInspector& insp, char* parent)
                        void Streamer(TBuffer& b)
                        void StreamerNVirtual(TBuffer& b)
        BrC1AdcGainCalModule BrC1AdcGainCalModule(BrC1AdcGainCalModule&)

This page automatically generated by script docBrat by Christian Holm

Copyright ; 2002 BRAHMS Collaboration <brahmlib@rcf.rhic.bnl.gov>
Last Update on 2001/11/05 06:57:37 $ by ouerdane $

Validate HTML
Validate CSS