LongTermGains.C File Reference

#include <vector>
#include <iostream>
#include <iomanip>
#include "emcDataManager.h"
#include "emcCalFEMFactory.h"
#include "emcTracedFEM.h"
#include "PHTimeStamp.h"

Include dependency graph for LongTermGains.C:

Go to the source code of this file.

Functions

int trim (const std::vector< float > &x, const float &alpha, float &tmean, float &wmean, float &tvar, float &wvar, int &k, std::vector< float > &sx)
 Helper macro to ease spotting problems in long term evolution of PbSc gains.
void inspect (const emcTracedFEM &g, float tmean, float tvar)
void LongTermGains (int ifem=65, const float varthreshold=3, const char *inputdir="/phenix/u/aphecetc/Run4Gains")


Function Documentation

void inspect const emcTracedFEM g,
float  tmean,
float  tvar
 

Definition at line 111 of file LongTermGains.C.

References emcTracedFEM::GetNumberOfChannels(), and emcTracedFEM::GetNumberOfItems().

void LongTermGains int  ifem = 65,
const float  varthreshold = 3,
const char *  inputdir = "/phenix/u/aphecetc/Run4Gains"
 

Definition at line 146 of file LongTermGains.C.

References emcCalFEMFactory::Create(), emcDataManager::GetInstance(), emcTracedFEM::GetNumberOfChannels(), emcTracedFEM::GetNumberOfItems(), emcManageable::kFile_ASCII, emcDataManager::Read(), emcManageable::SetSource(), and emcDataManager::SetSourceDir().

int trim const std::vector< float > &  x,
const float &  alpha,
float &  tmean,
float &  wmean,
float &  tvar,
float &  wvar,
int &  k,
std::vector< float > &  sx
 

Helper macro to ease spotting problems in long term evolution of PbSc gains.

Before using this one, you must use emcChannelEvolution class to produce a directory with ASCII files containing the gains for the (long) period you want to consider.

Then you do compile it under ROOT

a) check that you have a rootlogon.C containing : { gSystem->SetIncludePath("-Iyour_install_zone_if_needed/include -I${OFFLINE_MAIN}/include"); } b) root[0] gSystem->Load("libemcCalibGFX.so"); root[1] gSystem->Load("libemcOMascii.so"); root[2] .L LongTermGains.C++ root[3] LongTermGain(ifem,varthreshold,inputdir) where ifem is the absolute FEM number you're interested in (from 0 to 107) and inputdir the directory where the ASCII Gain files are located (w/o the Gains suffix).

This will show you the trimmed mean number of items (aka "piece of line") per fem channel, together with the variance of that. For good looking channel, the variance should be close to zero. If the variance is above a given threshold, a dump of the actual number of items per channel will be output so you can spot the guiltly guys, and then you might use emcChannelEvolution again to plot those.

Definition at line 39 of file LongTermGains.C.