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 114 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 134 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().

134  {
135  double e=GetEnergy(data,nTS);
136  double t=GetTime(data,nTS);
137  if(e<20){ undeflow++;undeflow1++; }else if(e>10000){ overflow++;overflow1++; }else{
138  n++; Xe+=e; XXe+=e*e; Xt+=t; XXt+=t*t;
139  n1++; Xe1+=e; XXe1+=e*e; Xt1+=t; XXt1+=t*t;
140  }
141  }
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 151 of file HcalDetDiagLaserMonitor.cc.

References status.

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

Definition at line 162 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().

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

Definition at line 187 of file HcalDetDiagLaserMonitor.cc.

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

Referenced by HcalDetDiagLaserMonitor::SaveReference().

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

Definition at line 167 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().

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

Definition at line 192 of file HcalDetDiagLaserMonitor.cc.

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

Referenced by HcalDetDiagLaserMonitor::SaveReference().

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

Definition at line 181 of file HcalDetDiagLaserMonitor.cc.

References overflow.

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

Definition at line 200 of file HcalDetDiagLaserMonitor.cc.

References overflow1.

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

Definition at line 172 of file HcalDetDiagLaserMonitor.cc.

References n.

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

Definition at line 197 of file HcalDetDiagLaserMonitor.cc.

References n1.

Referenced by HcalDetDiagLaserMonitor::SaveReference().

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

Definition at line 154 of file HcalDetDiagLaserMonitor.cc.

References status.

Referenced by HcalDetDiagLaserMonitor::SaveReference().

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

Definition at line 184 of file HcalDetDiagLaserMonitor.cc.

References undeflow.

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

Definition at line 203 of file HcalDetDiagLaserMonitor.cc.

References undeflow1.

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

Definition at line 206 of file HcalDetDiagLaserMonitor.cc.

References j, and n.

Referenced by add_statistics().

206  {
207  int MaxI=0; double Energy,MaxE=0;
208  for(int j=0;j<n;++j) if(MaxE<data[j]){ MaxE=data[j]; MaxI=j; }
209  Energy=data[MaxI];
210  if(MaxI>0) Energy+=data[MaxI-1];
211  if(MaxI>1) Energy+=data[MaxI-2];
212  if(MaxI<(n-1)) Energy+=data[MaxI+1];
213  if(MaxI<(n-2)) Energy+=data[MaxI+2];
214  return Energy;
215  }
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 216 of file HcalDetDiagLaserMonitor.cc.

References j, and n.

Referenced by add_statistics().

216  {
217  int MaxI=-100; double Time=-9999,SumT=0,MaxT=-10;
218  for(int j=0;j<n;++j) if(MaxT<data[j]){ MaxT=data[j]; MaxI=j; }
219  if (MaxI>=0) // dummy protection so that compiler doesn't think MaxI=-100
220  {
221  Time=MaxI*data[MaxI];
222  SumT=data[MaxI];
223  if(MaxI>0){ Time+=(MaxI-1)*data[MaxI-1]; SumT+=data[MaxI-1]; }
224  if(MaxI<(n-1)){ Time+=(MaxI+1)*data[MaxI+1]; SumT+=data[MaxI+1]; }
225  Time=Time/SumT;
226  }
227  return Time;
228  }
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 175 of file HcalDetDiagLaserMonitor.cc.

References n.

Referenced by HcalDetDiagLaserMonitor::LoadDataset().

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

Definition at line 178 of file HcalDetDiagLaserMonitor.cc.

References n1.

Referenced by HcalDetDiagLaserMonitor::LoadDataset().

178  {
179  n1=stat;
180  }

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 235 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 231 of file HcalDetDiagLaserMonitor.cc.

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

float HcalDetDiagLaserData::ref_amp

Definition at line 236 of file HcalDetDiagLaserMonitor.cc.

Referenced by get_reference(), and set_reference().

float HcalDetDiagLaserData::ref_rms

Definition at line 237 of file HcalDetDiagLaserMonitor.cc.

Referenced by get_reference(), and set_reference().

float HcalDetDiagLaserData::ref_time

Definition at line 238 of file HcalDetDiagLaserMonitor.cc.

Referenced by get_reference(), and set_reference().

float HcalDetDiagLaserData::ref_time_rms

Definition at line 239 of file HcalDetDiagLaserMonitor.cc.

Referenced by get_reference(), and set_reference().

int HcalDetDiagLaserData::status
int HcalDetDiagLaserData::undeflow

Definition at line 230 of file HcalDetDiagLaserMonitor.cc.

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

int HcalDetDiagLaserData::undeflow1

Definition at line 232 of file HcalDetDiagLaserMonitor.cc.

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

double HcalDetDiagLaserData::Xe

Definition at line 233 of file HcalDetDiagLaserMonitor.cc.

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

double HcalDetDiagLaserData::Xe1

Definition at line 234 of file HcalDetDiagLaserMonitor.cc.

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

double HcalDetDiagLaserData::Xt

Definition at line 233 of file HcalDetDiagLaserMonitor.cc.

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

double HcalDetDiagLaserData::Xt1

Definition at line 234 of file HcalDetDiagLaserMonitor.cc.

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

double HcalDetDiagLaserData::XXe

Definition at line 233 of file HcalDetDiagLaserMonitor.cc.

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

double HcalDetDiagLaserData::XXe1

Definition at line 234 of file HcalDetDiagLaserMonitor.cc.

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

double HcalDetDiagLaserData::XXt

Definition at line 233 of file HcalDetDiagLaserMonitor.cc.

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

double HcalDetDiagLaserData::XXt1

Definition at line 234 of file HcalDetDiagLaserMonitor.cc.

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