CMS 3D CMS Logo

VVIObjF.h
Go to the documentation of this file.
1 //
2 // VVIObjF.h (v2.0)
3 //
4 // Vavilov density and distribution functions
5 //
6 //
7 // Created by Morris Swartz on 1/14/10.
8 // 2010 __TheJohnsHopkinsUniversity__.
9 //
10 // V1.1 - make dzero call both fcns with a switch
11 // V1.2 - remove inappriate initializers and add methods to return non-zero/normalized region
12 // V2.0 - restructuring and speed improvements by V. Innocente
13 // V3.0 - further simplification and speedup by Tamas Vami
14 //
15 
16 #ifndef VVIObjF_h
17 #define VVIObjF_h 1
18 
19 // ***********************************************************************************************************************
24 // ***********************************************************************************************************************
25 class VVIObjF {
26 public:
27  VVIObjF(float kappa, float beta2, int mode);
28  VVIObjF(float kappa);
29 
30  float fcn(float x) const;
31  void limits(float& xl,
32  float& xu) const;
33 
34 private:
35  // Vavilov distribution parameters (inputs and common block /G116C1/)
36  const int mode_;
37  float t0_;
38  float t1_;
39  float t_;
40  float omega_;
41  float x0_;
42  float a_[155];
43  float b_[155];
44 };
45 
46 #endif
float omega_
Definition: VVIObjF.h:40
float t1_
Definition: VVIObjF.h:38
const int mode_
returns the limits on the non-zero (mode=0) or normalized region (mode=1)
Definition: VVIObjF.h:36
float x0_
Definition: VVIObjF.h:41
void limits(float &xl, float &xu) const
density (mode=0) or distribution (mode=1) function
Definition: VVIObjF.cc:277
float t0_
Definition: VVIObjF.h:37
float b_[155]
Definition: VVIObjF.h:43
float fcn(float x) const
Definition: VVIObjF.cc:226
VVIObjF(float kappa, float beta2, int mode)
Constructor.
Definition: VVIObjF.cc:43
float t_
Definition: VVIObjF.h:39
float a_[155]
Definition: VVIObjF.h:42