CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
FastHFFibre.h
Go to the documentation of this file.
1 #ifndef FastHFFibre_H
2 #define FastHFFibre_H
3 // File: FastHFFibre.h
5 // Description: Calculates attenuation length
7 
11 
12 #include "G4ThreeVector.hh"
13 
14 #include <vector>
15 #include <string>
16 
17 class DDCompactView;
18 
19 class FastHFFibre {
20 
21 public:
22 
23  //Constructor and Destructor
24  FastHFFibre(std::string & name, const DDCompactView & cpv, double cFibre);
25  ~FastHFFibre();
26 
27  double attLength(double lambda);
28  double tShift(const G4ThreeVector& point, int depth,
29  int fromEndAbs=0);
30  double zShift(const G4ThreeVector& point, int depth,
31  int fromEndAbs=0);
32 
33 protected:
34 
35  std::vector<double> getDDDArray(const std::string&,
36  const DDsvalues_type&, int&);
37 
38 private:
39 
40  double cFibre;
41  std::vector<double> gpar, radius;
42  std::vector<double> shortFL, longFL;
43  std::vector<double> attL;
44  int nBinR, nBinAtt;
45  double lambLim[2];
46 
47 };
48 #endif
double lambLim[2]
Definition: FastHFFibre.h:45
double cFibre
Definition: FastHFFibre.h:40
std::vector< double > getDDDArray(const std::string &, const DDsvalues_type &, int &)
Definition: FastHFFibre.cc:177
std::vector< double > gpar
Definition: FastHFFibre.h:41
FastHFFibre(std::string &name, const DDCompactView &cpv, double cFibre)
Definition: FastHFFibre.cc:18
type of data representation of DDCompactView
Definition: DDCompactView.h:77
std::vector< double > attL
Definition: FastHFFibre.h:43
std::vector< double > longFL
Definition: FastHFFibre.h:42
double tShift(const G4ThreeVector &point, int depth, int fromEndAbs=0)
Definition: FastHFFibre.cc:128
std::vector< std::pair< unsigned int, DDValue > > DDsvalues_type
std::maps an index to a DDValue. The index corresponds to the index assigned to the name of the std::...
Definition: DDsvalues.h:19
double attLength(double lambda)
Definition: FastHFFibre.cc:110
std::vector< double > radius
Definition: FastHFFibre.h:41
double zShift(const G4ThreeVector &point, int depth, int fromEndAbs=0)
Definition: FastHFFibre.cc:140
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
Definition: invegas.h:5
std::vector< double > shortFL
Definition: FastHFFibre.h:42