CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Public Attributes
HcalDetDiagLaserData Class Reference

Public Member Functions

void add_statistics (double *data, int nTS)
 
void change_status (int val)
 
bool get_average_amp (double *ave, double *rms)
 
bool get_average_amp1 (double *ave, double *rms)
 
bool get_average_time (double *ave, double *rms)
 
bool get_average_time1 (double *ave, double *rms)
 
int get_overflow ()
 
int get_overflow1 ()
 
bool get_reference (double *val, double *rms, double *time, double *time_rms)
 
int get_statistics ()
 
int get_statistics1 ()
 
int get_status ()
 
int get_undeflow ()
 
int get_undeflow1 ()
 
double GetEnergy (double *data, int n)
 
double GetTime (double *data, int n=10)
 
 HcalDetDiagLaserData ()
 
void reset ()
 
void reset1 ()
 
void set_data (float val, float rms, float time, float time_rms)
 
void set_reference (float val, float rms, float time, float time_rms)
 
void set_statistics (int stat)
 
void set_statistics1 (int stat)
 

Public Attributes

float ds_amp
 
float ds_rms
 
float ds_time
 
float ds_time_rms
 
bool IsRefetence
 
double n
 
double n1
 
float nBadEnergy
 
float nBadTime
 
float nChecks
 
int overflow
 
int overflow1
 
float ref_amp
 
float ref_rms
 
float ref_time
 
float ref_time_rms
 
int status
 
int undeflow
 
int undeflow1
 
double Xe
 
double Xe1
 
double Xt
 
double Xt1
 
double XXe
 
double XXe1
 
double XXt
 
double XXt1
 

Detailed Description

Definition at line 113 of file HcalDetDiagLaserMonitor.cc.

Constructor & Destructor Documentation

HcalDetDiagLaserData::HcalDetDiagLaserData ( )
inline

Member Function Documentation

void HcalDetDiagLaserData::add_statistics ( double *  data,
int  nTS 
)
inline

Definition at line 133 of file HcalDetDiagLaserMonitor.cc.

References alignCSCRings::e, GetEnergy(), GetTime(), n, n1, overflow, overflow1, lumiQTWidget::t, undeflow, undeflow1, Xe, Xe1, Xt, Xt1, XXe, XXe1, XXt, and XXt1.

Referenced by HcalDetDiagLaserMonitor::analyze().

133  {
134  double e=GetEnergy(data,nTS);
135  double t=GetTime(data,nTS);
136  if(e<20){ undeflow++;undeflow1++; }else if(e>10000){ overflow++;overflow1++; }else{
137  n++; Xe+=e; XXe+=e*e; Xt+=t; XXt+=t*t;
138  n1++; Xe1+=e; XXe1+=e*e; Xt1+=t; XXt1+=t*t;
139  }
140  }
double GetEnergy(double *data, int n)
double GetTime(double *data, int n=10)
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:82
void HcalDetDiagLaserData::change_status ( int  val)
inline

Definition at line 150 of file HcalDetDiagLaserMonitor.cc.

References status.

150  {
151  status|=val;
152  }
bool HcalDetDiagLaserData::get_average_amp ( double *  ave,
double *  rms 
)
inline

Definition at line 161 of file HcalDetDiagLaserMonitor.cc.

References ds_amp, ds_rms, ds_time, n, mathSSE::sqrt(), Xe, and XXe.

Referenced by HcalDetDiagLaserMonitor::fillHistos(), and HcalDetDiagLaserMonitor::get_ave_subdet().

161  {
162  if(ds_time>-10){ *ave=ds_amp; *rms=ds_rms; return true; }
163  if(n>0){ *ave=Xe/n; *rms=sqrt(XXe/n-(Xe*Xe)/(n*n));} else return false;
164  return true;
165  }
T sqrt(T t)
Definition: SSEVec.h:46
bool HcalDetDiagLaserData::get_average_amp1 ( double *  ave,
double *  rms 
)
inline

Definition at line 186 of file HcalDetDiagLaserMonitor.cc.

References ds_amp, ds_rms, ds_time, n1, mathSSE::sqrt(), Xe1, and XXe1.

Referenced by HcalDetDiagLaserMonitor::SaveReference().

186  {
187  if(ds_time>-10){ *ave=ds_amp; *rms=ds_rms; return true; }
188  if(n1>0){ *ave=Xe1/n1; *rms=sqrt(XXe1/n1-(Xe1*Xe1)/(n1*n1));} else return false;
189  return true;
190  }
T sqrt(T t)
Definition: SSEVec.h:46
bool HcalDetDiagLaserData::get_average_time ( double *  ave,
double *  rms 
)
inline

Definition at line 166 of file HcalDetDiagLaserMonitor.cc.

References ds_time, ds_time_rms, n, mathSSE::sqrt(), Xt, and XXt.

Referenced by HcalDetDiagLaserMonitor::fillHistos(), and HcalDetDiagLaserMonitor::get_ave_subdet().

166  {
167  if(ds_time>-10){ *ave=ds_time; *rms=ds_time_rms; return true; }
168  if(n>0){ *ave=Xt/n; *rms=sqrt(XXt/n-(Xt*Xt)/(n*n));} else return false;
169  return true;
170  }
T sqrt(T t)
Definition: SSEVec.h:46
bool HcalDetDiagLaserData::get_average_time1 ( double *  ave,
double *  rms 
)
inline

Definition at line 191 of file HcalDetDiagLaserMonitor.cc.

References ds_time, ds_time_rms, n1, mathSSE::sqrt(), Xt1, and XXt1.

Referenced by HcalDetDiagLaserMonitor::SaveReference().

191  {
192  if(ds_time>-10){ *ave=ds_time; *rms=ds_time_rms; return true; }
193  if(n1>0){ *ave=Xt1/n1; *rms=sqrt(XXt1/n1-(Xt1*Xt1)/(n1*n1));} else return false;
194  return true;
195  }
T sqrt(T t)
Definition: SSEVec.h:46
int HcalDetDiagLaserData::get_overflow ( )
inline

Definition at line 180 of file HcalDetDiagLaserMonitor.cc.

References overflow.

180  {
181  return overflow;
182  }
int HcalDetDiagLaserData::get_overflow1 ( )
inline

Definition at line 199 of file HcalDetDiagLaserMonitor.cc.

References overflow1.

199  {
200  return overflow1;
201  }
bool HcalDetDiagLaserData::get_reference ( double *  val,
double *  rms,
double *  time,
double *  time_rms 
)
inline
int HcalDetDiagLaserData::get_statistics ( )
inline

Definition at line 171 of file HcalDetDiagLaserMonitor.cc.

References n.

171  {
172  return (int)n;
173  }
int HcalDetDiagLaserData::get_statistics1 ( )
inline

Definition at line 196 of file HcalDetDiagLaserMonitor.cc.

References n1.

Referenced by HcalDetDiagLaserMonitor::SaveReference().

196  {
197  return (int)n1;
198  }
int HcalDetDiagLaserData::get_status ( )
inline

Definition at line 153 of file HcalDetDiagLaserMonitor.cc.

References status.

Referenced by HcalDetDiagLaserMonitor::SaveReference().

153  {
154  return status;
155  }
int HcalDetDiagLaserData::get_undeflow ( )
inline

Definition at line 183 of file HcalDetDiagLaserMonitor.cc.

References undeflow.

183  {
184  return undeflow;
185  }
int HcalDetDiagLaserData::get_undeflow1 ( )
inline

Definition at line 202 of file HcalDetDiagLaserMonitor.cc.

References undeflow1.

202  {
203  return undeflow1;
204  }
double HcalDetDiagLaserData::GetEnergy ( double *  data,
int  n 
)
inline

Definition at line 205 of file HcalDetDiagLaserMonitor.cc.

References j, and n.

Referenced by add_statistics().

205  {
206  int MaxI=0; double Energy,MaxE=0;
207  for(int j=0;j<n;++j) if(MaxE<data[j]){ MaxE=data[j]; MaxI=j; }
208  Energy=data[MaxI];
209  if(MaxI>0) Energy+=data[MaxI-1];
210  if(MaxI>1) Energy+=data[MaxI-2];
211  if(MaxI<(n-1)) Energy+=data[MaxI+1];
212  if(MaxI<(n-2)) Energy+=data[MaxI+2];
213  return Energy;
214  }
int j
Definition: DBlmapReader.cc:9
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:82
double HcalDetDiagLaserData::GetTime ( double *  data,
int  n = 10 
)
inline

Definition at line 215 of file HcalDetDiagLaserMonitor.cc.

References j, and n.

Referenced by add_statistics().

215  {
216  int MaxI=-100; double Time=-9999,SumT=0,MaxT=-10;
217  for(int j=0;j<n;++j) if(MaxT<data[j]){ MaxT=data[j]; MaxI=j; }
218  if (MaxI>=0) // dummy protection so that compiler doesn't think MaxI=-100
219  {
220  Time=MaxI*data[MaxI];
221  SumT=data[MaxI];
222  if(MaxI>0){ Time+=(MaxI-1)*data[MaxI-1]; SumT+=data[MaxI-1]; }
223  if(MaxI<(n-1)){ Time+=(MaxI+1)*data[MaxI+1]; SumT+=data[MaxI+1]; }
224  Time=Time/SumT;
225  }
226  return Time;
227  }
int j
Definition: DBlmapReader.cc:9
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:82
void HcalDetDiagLaserData::reset ( void  )
inline
void HcalDetDiagLaserData::reset1 ( )
inline
void HcalDetDiagLaserData::set_data ( float  val,
float  rms,
float  time,
float  time_rms 
)
inline
void HcalDetDiagLaserData::set_reference ( float  val,
float  rms,
float  time,
float  time_rms 
)
inline
void HcalDetDiagLaserData::set_statistics ( int  stat)
inline

Definition at line 174 of file HcalDetDiagLaserMonitor.cc.

References n.

Referenced by HcalDetDiagLaserMonitor::LoadDataset().

174  {
175  n=stat;
176  }
void HcalDetDiagLaserData::set_statistics1 ( int  stat)
inline

Definition at line 177 of file HcalDetDiagLaserMonitor.cc.

References n1.

Referenced by HcalDetDiagLaserMonitor::LoadDataset().

177  {
178  n1=stat;
179  }

Member Data Documentation

float HcalDetDiagLaserData::ds_amp
float HcalDetDiagLaserData::ds_rms
float HcalDetDiagLaserData::ds_time
float HcalDetDiagLaserData::ds_time_rms
bool HcalDetDiagLaserData::IsRefetence

Definition at line 234 of file HcalDetDiagLaserMonitor.cc.

Referenced by get_reference(), HcalDetDiagLaserData(), and set_reference().

double HcalDetDiagLaserData::n
double HcalDetDiagLaserData::n1
float HcalDetDiagLaserData::nBadEnergy
float HcalDetDiagLaserData::nBadTime
float HcalDetDiagLaserData::nChecks
int HcalDetDiagLaserData::overflow
int HcalDetDiagLaserData::overflow1

Definition at line 230 of file HcalDetDiagLaserMonitor.cc.

Referenced by add_statistics(), get_overflow1(), and reset1().

float HcalDetDiagLaserData::ref_amp

Definition at line 235 of file HcalDetDiagLaserMonitor.cc.

Referenced by get_reference(), and set_reference().

float HcalDetDiagLaserData::ref_rms

Definition at line 236 of file HcalDetDiagLaserMonitor.cc.

Referenced by get_reference(), and set_reference().

float HcalDetDiagLaserData::ref_time

Definition at line 237 of file HcalDetDiagLaserMonitor.cc.

Referenced by get_reference(), and set_reference().

float HcalDetDiagLaserData::ref_time_rms

Definition at line 238 of file HcalDetDiagLaserMonitor.cc.

Referenced by get_reference(), and set_reference().

int HcalDetDiagLaserData::status
int HcalDetDiagLaserData::undeflow

Definition at line 229 of file HcalDetDiagLaserMonitor.cc.

Referenced by add_statistics(), get_undeflow(), and reset().

int HcalDetDiagLaserData::undeflow1

Definition at line 231 of file HcalDetDiagLaserMonitor.cc.

Referenced by add_statistics(), get_undeflow1(), and reset1().

double HcalDetDiagLaserData::Xe

Definition at line 232 of file HcalDetDiagLaserMonitor.cc.

Referenced by add_statistics(), get_average_amp(), and reset().

double HcalDetDiagLaserData::Xe1

Definition at line 233 of file HcalDetDiagLaserMonitor.cc.

Referenced by add_statistics(), get_average_amp1(), and reset1().

double HcalDetDiagLaserData::Xt

Definition at line 232 of file HcalDetDiagLaserMonitor.cc.

Referenced by add_statistics(), get_average_time(), and reset().

double HcalDetDiagLaserData::Xt1

Definition at line 233 of file HcalDetDiagLaserMonitor.cc.

Referenced by add_statistics(), get_average_time1(), and reset1().

double HcalDetDiagLaserData::XXe

Definition at line 232 of file HcalDetDiagLaserMonitor.cc.

Referenced by add_statistics(), get_average_amp(), and reset().

double HcalDetDiagLaserData::XXe1

Definition at line 233 of file HcalDetDiagLaserMonitor.cc.

Referenced by add_statistics(), get_average_amp1(), and reset1().

double HcalDetDiagLaserData::XXt

Definition at line 232 of file HcalDetDiagLaserMonitor.cc.

Referenced by add_statistics(), get_average_time(), and reset().

double HcalDetDiagLaserData::XXt1

Definition at line 233 of file HcalDetDiagLaserMonitor.cc.

Referenced by add_statistics(), get_average_time1(), and reset1().