#include <OnlineDB/CSCCondDB/interface/SaturationFcn.h>
Public Member Functions | |
virtual double | operator() (const std::vector< double > &x) const |
SaturationFcn () | |
void | set_data (int N, float *charge_ptr, float *adc_ptr) |
virtual double | Up () const |
~SaturationFcn () | |
Public Attributes | |
double | x0start |
double | x1start |
double | x2start |
double | x3start |
Private Attributes | |
double | datx [20] |
double | daty [20] |
Definition at line 9 of file SaturationFcn.h.
SaturationFcn::SaturationFcn | ( | ) | [inline] |
SaturationFcn::~SaturationFcn | ( | ) | [inline] |
virtual double SaturationFcn::operator() | ( | const std::vector< double > & | x | ) | const [inline, virtual] |
Definition at line 39 of file SaturationFcn.h.
References datx, daty, i, N, funct::pow(), and tmp.
00039 { 00040 double chisq = 0.0; 00041 int N=20; 00042 for(int i=0;i<N;i++){ 00043 double val=1.0+pow(x[1]*datx[i],x[2]); 00044 double val2=1.0/x[2]; 00045 val=x[0]*x[1]*datx[i]/pow(val,val2); 00046 double tmp=(daty[i]-x[3]-val); 00047 //printf(" dat: %d %f %f %f %f \n",i,datx[i],daty[i]-x[3],val,tmp); 00048 chisq=chisq+tmp*tmp; 00049 } 00050 //printf("x0-3 %f %f %f %f chisq %f \n",x[0],x[1],x[2],x[3],chisq); 00051 return chisq; 00052 }
Definition at line 18 of file SaturationFcn.h.
References datx, daty, i, x, x0start, x1start, x2start, x3start, and y.
Referenced by SaturationFit::SaturationFit().
00018 { 00019 00020 float x[20],y[20]; 00021 00022 for(int i=0;i<N;i++){ 00023 x[i]=charge_ptr[i]; 00024 y[i]=adc_ptr[i]; 00025 datx[i]=x[i]; 00026 daty[i]=y[i]; 00027 //printf("%d datx daty %f %f \n",i,datx[i],daty[i]); 00028 } 00029 00030 x3start=(y[4]*x[1]-y[1]*x[4])/(x[1]-x[4]); 00031 x0start=daty[13]-x3start; 00032 x1start=(y[4]-y[1])/(x[4]-x[1])/x0start; 00033 x2start=20.; 00034 //printf(" x0-2start %f %f %f %f\n",x0start,x1start,x2start,x3start); 00035 }
virtual double SaturationFcn::Up | ( | ) | const [inline, virtual] |
double SaturationFcn::datx[20] [private] |
double SaturationFcn::daty[20] [private] |
double SaturationFcn::x0start |
Definition at line 54 of file SaturationFcn.h.
Referenced by SaturationFit::SaturationFit(), and set_data().
double SaturationFcn::x1start |
Definition at line 55 of file SaturationFcn.h.
Referenced by SaturationFit::SaturationFit(), and set_data().
double SaturationFcn::x2start |
Definition at line 56 of file SaturationFcn.h.
Referenced by SaturationFit::SaturationFit(), and set_data().
double SaturationFcn::x3start |
Definition at line 57 of file SaturationFcn.h.
Referenced by SaturationFit::SaturationFit(), and set_data().