CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_6_1_2_SLHC4_patch1/src/RecoLocalTracker/SiPixelRecHits/interface/VVIObjF.h

Go to the documentation of this file.
00001 //
00002 //  VVIObjF.h (v2.0)
00003 //
00004 //  Vavilov density and distribution functions
00005 //
00006 //
00007 // Created by Morris Swartz on 1/14/10.
00008 // Copyright 2010 __TheJohnsHopkinsUniversity__. All rights reserved.
00009 //
00010 // V1.1 - make dzero call both fcns with a switch
00011 // V1.2 - remove inappriate initializers and add methods to return non-zero/normalized region
00012 // V2.0 - restructuring and speed improvements by V. Innocente
00013 //
00014  
00015 #ifndef VVIObjF_h
00016 #define VVIObjF_h 1
00017 
00018 // ***********************************************************************************************************************
00023 // ***********************************************************************************************************************
00024 class VVIObjF {
00025 
00026  public:
00027   
00028   VVIObjF(float kappa = 0.01, float beta2 = 1., int mode = 0); 
00029   
00030   float fcn(float x) const; 
00031   void limits(float& xl, float& xu) const; 
00032   
00033 private:
00034   
00035   // Vavilov distribution parameters (inputs and common block /G116C1/)
00036   
00037   const int mode_;          
00038   float t0_;         
00039   float t1_;         
00040   float t_;          
00041   float omega_;
00042   float x0_;        
00043   float a_[155];    
00044   float b_[155];     
00045 };
00046 
00047 
00048 #endif